[英]CImg reading image exception
我正在使用CImg读取.png文件,如下所示:
// DGT.cpp : Defines the entry point for the console application.
#include "stdafx.h"
#include <iostream>
#include <fstream>
#include "..\CImg\CImg.h"
using namespace std;
using namespace cimg_library;
long ReadImage(char *fileName)
{
CImg<unsigned char> image(fileName); // stackover flow exceptions thrown here.
return 0;
}
int _tmain(int argc, _TCHAR* argv[])
{
ReadImage("D:\\Projects\\DGT\\DGT\\shepplogan256.png");
return 0;
}
但是,堆栈溢出异常将在CImg<unsigned char> image(fileName);
处抛出CImg<unsigned char> image(fileName);
尝试加载图像时。 图像在那里,所以我想知道我在哪里弄乱了,以及如何阅读图像?
您需要libpng或imagemagick才能使用CImg
加载PNG文件。
要本地读取.jpeg或.png文件,CImg需要您将代码与libpng或libjpeg链接,并定义宏cimg_use_png
或cimg_use_jpeg
。 这样,根本不需要ImageMagick。 我更喜欢这种解决方案,因为它不需要安装新的(外部)软件来读取图像文件,并且还简化了二进制文件的分发。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.