问题描述:
当我在visual studio中安装完opencv时,运行第一个Demo文件,出现了如下错误:
icrosoft C 异常: cv::Exception,位于内存位置 0x000000D2956FE120 处。
执行代码:
int main()
{
std::string image_path = "C:\\Users\\86187\\Desktop\\cat.jpg";
Mat img = imread(image_path, IMREAD_COLOR);
if (img.empty())
{
std::cout << "Could not read the image: " << image_path << std::endl;
return 1;
}
imshow("Display window", img);
int k = waitKey(0);
if (k == 's')
{
imwrite("starry_night.png", img);
}
return 0;
}
解决方式:
方法1:
文件路径有问题,”\”要换为”\”
例如:
C:\\Users\\86187\\Desktop\\cat.jpg
方法2:
有可能因为工程的配置为Debug模式,但在配置”链接器->附加依赖项”时,把.lib库一起加入其中,并且将.lib库加在了 d.lib库之前,这样就导致了优先使用.lib。解决办法是把附加依赖项中open的*.lib全删了。
注意:一般在配置工程时,Debug工程的”链接器->附加依赖项”一般只加 d.lib库;而Release工程的”链接器->附加依赖项”一般只加.lib库,这样就可以避免以上问题。
方法3:
有时候图片的显示格式会超过我们Opencv所能显示的格式大小,导致opencv的imread显示不了。
我当时的问题解决方案就是方法3。神奇吧!我也没想到。
希望对你有所帮助。
Original: https://blog.csdn.net/qq_51899357/article/details/123328225
Author: 好饿呀~~~
Title: 解决问题:cv::Exception,位于内存位置 0x000000D2956FE120 处
原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/702391/
转载文章受原作者版权保护。转载请注明原作者出处!