В основном я учу себя C++, а часть функции программы - открывать и закрывать указанное изображение. Как мне это сделать? Или какой ресурс я бы использовал?Открытие и отображение изображения на C++?
Спасибо!
В основном я учу себя C++, а часть функции программы - открывать и закрывать указанное изображение. Как мне это сделать? Или какой ресурс я бы использовал?Открытие и отображение изображения на C++?
Спасибо!
В C++ (без дополнительной библиотеки) вы можете открыть изображение. Но не будет ничего полезного, кроме кучи двоичных данных. то вы должны использовать свой собственный декодер. Если вы используете opencv вы можете написать, чтобы открыть изображение и отобразить его:
Mat m("fileName");
imshow("windowName",m);
Чтобы сделать то же самое с общей библиотекой perpouse как 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 виджет go here. Или вы можете посмотреть на here для отображения в виде графического представления.
Для кроссплатформенности, с открытым исходным кодом и очень хорошей библиотеки вы можете использовать libmagick ++.
модифицирована Hello World образец из OpenCV 2 Computer Vision Application Programming Cookbook работает в VS 2012 win32 Консоль приложения
или official OpenCV (Open Source) sample
предупреждение: OpenCV-2.4.10.exe Win инсталлятор 360 MB, которые имеют много особенностей заранее и имеют пример кода, 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;
}
Самый простой способ - использовать некоторые как Qt, которая уже имеет все необходимые библиотеки для работы с изображениями. – cen