В основном я учу себя C ++, и частью функции программы будет открывать и закрывать указанное изображение. Как бы я поступил так? Или какой ресурс я бы использовал?
Спасибо!
В C ++ (без какой-либо дополнительной библиотеки) вы можете открыть изображение. Но не будет ничего особенно полезного, кроме набора двоичных данных. тогда вы должны использовать свой собственный декодер
Если вы используете OpenCV Вы можете написать, чтобы открыть изображение и отобразить его:
Mat m("fileName");
imshow("windowName",m);
Чтобы сделать то же самое с библиотекой общего назначения, такой как qt, вы можете использовать этот код:
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
QGraphicsScene scene;
QGraphicsView view(&scene);
QGraphicsPixmapItem item(QPixmap("c:\\test.png"));
scene.addItem(&item);
view.show();
return a.exec();
}
Чтобы узнать больше о виджете ImageViewer перейдите Вот. Или вы можете взглянуть на Вот для отображения в виде графического представления.
Для кроссплатформенности, с открытым исходным кодом и очень хорошей библиотеки вы можете использовать libmagick ++.
модифицированный образец Hello World из Руководство по программированию приложений OpenCV 2 Computer Vision работает в VS 2012 Win32 Консольное приложение
или же официальный образец OpenCV (Open Source)
предупреждение: opencv-2.4.10.exe Win установщик 360 МБ которые имеют много продвинутых функций и имеют пример кода, Doc и встроенные двоичные файлы на Python и Java тоже x86 и 64 в нем тоже
#include <opencv2/core/core.hpp>
#include <opencv2/highgui/highgui.hpp>
int main()
{
// read an image
cv::Mat image= cv::imread("img.jpg");
// create image window named "My Image"cv::namedWindow("My Image");
// show the image on window
cv::imshow("My Image", image);
// wait key for 5000 ms
cv::waitKey(5000);
return 0;
}