Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/eclipse/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在opencv2.4.6中加载图像_Opencv_Mat - Fatal编程技术网

在opencv2.4.6中加载图像

在opencv2.4.6中加载图像,opencv,mat,Opencv,Mat,在opencv 2.4.6中。我试图加载一个mat图像文件,下面给出了一个简单的代码。但在我打印图像大小时未加载图像,它显示为“0”。谁能告诉我,出了什么问题 int main(int argc, char argv[]) { Mat a=imread("C:/image3.jpg"); cv::Size frame11_size = a.size(); printf("%d",frame11_size.height); return 0; } 更新:我解决了问

在opencv 2.4.6中。我试图加载一个mat图像文件,下面给出了一个简单的代码。但在我打印图像大小时未加载图像,它显示为“0”。谁能告诉我,出了什么问题

int main(int argc, char argv[])
{
    Mat a=imread("C:/image3.jpg");
    cv::Size frame11_size = a.size();
    printf("%d",frame11_size.height);
    return 0;
}

更新:我解决了问题。问题是,我只在“调试模式”中包含所有库、include和其他依赖项。在“发布模式”中,我没有更改任何内容。当我在“发布模式”中更改属性时,它也起了作用。感谢大家的友好回复,我给你们的答案加上“+1”。

我认为图像路径上应该有一个斜杠,并始终检查图像是否成功加载

 Mat a=imread("C:/image3.jpg");

 if(! a.data )  // Check for invalid input
    {
       cout <<  "Could not open or find the image" << std::endl ;
       return -1;
    }
mata=imread(“C:/image3.jpg”);
if(!a.data)//检查输入是否无效
{

coutOpenCV无法单独打开jpg文件。这取决于第三方。可能您缺少某些DLL,或者您的OpenCV安装没有正确的路径。若要测试此假设,请以其他格式存储图像。例如pgm或ppm。这些格式不执行任何编码,只需将图像缓冲区存储在f中ile原样。因此,OpenCV不需要任何外部库来打开ppm格式的图像。

你好,Haris,谢谢你的回复。每次打印图像时,我都尝试了单斜杠和双斜杠“无法打开或找到图像”。但是imahe存在于C文件夹中。您可以从当前目录加载图像吗?从当前目录可以加载图像,如Mat a=imread(“image3.jpg”),如果不起作用,请检查您的图像名称。然后可能是其他问题,正如Michael Burdinov所说。我也尝试了.ppm文件,它返回“无法打开或找到映像:”(…再进行一次测试以确保这不是某个错误路径的问题:将相关的exe和dll文件与映像文件复制到同一目录,然后运行exe文件。不要忘记从代码中删除任何路径引用,即只保留Mat a=imread(“image.ppm”);