繁体   English   中英

CImg读取图像异常

[英]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); 尝试加载图像时。 图像在那里,所以我想知道我在哪里弄乱了,以及如何阅读图像?

您需要libpngimagemagick才能使用CImg加载PNG文件。

要本地读取.jpeg或.png文件,CImg需要您将代码与libpng或libjpeg链接,并定义宏cimg_use_pngcimg_use_jpeg 这样,根本不需要ImageMagick。 我更喜欢这种解决方案,因为它不需要安装新的(外部)软件来读取图像文件,并且还简化了二进制文件的分发。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM