在C++中打开和显示图像

Opening and Displaying an Image in C++?

本文关键字:显示 显示图 图像 C++      更新时间:2023-10-16

基本上我自学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++。

在VS 2012 win32控制台应用程序中运行的OpenCV 2计算机视觉应用程序编程食谱中修改的Hello World示例

或官方OpenCV(开源)样本

警告:opencv-2.4.10.exe Win安装程序是360 MB,它有许多高级功能,并且有Python和Java中的示例代码、Doc和构建的二进制文件,也有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;
}