opencv error :assertion faild (src.depth()==dst.depth()&&src.size==dst.size)

在用到opencv中出现

opencv error :assertion faild (src.depth()==dst.depth()&&src.size==dst.size)

找这个bug找了好久,网上有这样几种说法:

1.check这两个图或者矩阵是不是初始化了

2.如果初始化了,初始化的大小是不是一样,即两者有没有相同的长宽

3.两者的depth深度是不是一样,即是不是一个是三通道的,一个是单通道的。

或者一个是单通道32位浮点类型,一个是单通道8位整形类型

还是没解决的话,那么接着往下看

如果你用的是以下代码,

cvSetImageROI(grayEqualizeImage,cvRect(cr->x,cr->y,IMG_WIDTH,IMG_HEIGHT));
cvCopy(grayEqualizeImage,dstImage,0);
cvResetImageROI(grayEqualizeImage);

那么你要检查你 cvSetImageROI 这个函数是否执行成功,因为在cvSetImageROI函数中有一个cvRect结构,

如果你的roi区域因为 IMG_WIDTH,IMG_HEIGHT 而超出图片部分,那么就会造成和上面说的第二种情况冲突

2.如果初始化了,初始化的大小是不是一样,即两者有没有相同的长宽

诶,,,折腾我2小时了,擦!效率太低了!!!

ps:忘了说解决方法了,在cvSetImageROI之前,判断下是否超出图片区域。。。额,等于没说,总之自己加个判断吧

或者用以下方式:

IplImage *pSubImg =cvGetImage(cvGetSubRect(pImg, cvCreateMatHeader(100, 100, CV_8UC1),cvRect(0, 0, 100, 100)), cvCreateImageHeader(cvSize(100, 100), 8,1));

这个函数的用法,附上个链接http://blog.chinaunix.net/uid-24517893-id-3226126.html

opencv error :assertion faild (src.depth()==dst.depth()&&src.size==dst.size),码迷,mamicode.com

时间: 2024-08-27 14:37:54

opencv error :assertion faild (src.depth()==dst.depth()&&src.size==dst.size)的相关文章

OpenCV Error:Assertion failed (scn ==3 || scn==4) in cv::cvtColor

在遍历文件图片时候依次进行人脸检测,但是每隔一段时间出现一条异常,非常纳闷,程序写的都没有问题,上网查了一下. 我的问题是因为:在传入Mat图像的时候是空的,所以在进行cvtColor的时候没有办法进行. Why??为什么会是空的呢?? 查找人脸库看了一下命名顺序才发现,中间会有一些缺失的数据.如: 少了image_0010.png这幅图像. 所以加一个if(!img.empty())条件就好了. 版权声明:本文为博主原创文章,未经博主允许不得转载.

两个常见的OpenCV Error

本人在在调试过程中遇到的两个常见的OpenCV Error,跟大家分享一下解决办法: 第一个:OpenCV Error: Assertion failed <dims <=2 && data && <unsigned >i0 < <unsigned>size.p[0] && <unsigned >< i1,后面一大串,还是直接截图吧 经过调试发现发生这种错误的原因在于,你访问构造矩阵时越界了,所以报

【error】OpenCV Error: Parsing error (Missing or invalid SVM type) in read_params, file modules/ml/src/svm.cpp

前言 移植代码到板子上出现小问题,其实非常简单,但是不一定能立即想到,故还是记录一下.好记性不如烂笔头~ 错误 Vxworks上的error 0x21c411c0 (iRtp_imx6): RTP 0x2117b0e0 has been deleted due to signal 6. OpenCV Error: Parsing error (Missing or invalid SVM type) in read_params, file modules/ml/src/svm.cpp, lin

line 352 Error: Assertion failed (size.width&gt;0 &amp;&amp; size.height&gt;0) in cv::imshow

OpenCV 使用 createtrackerbar()报错问题 Error Error: Assertion failed (size.width>0 && size.height>0) in cv::imshow, file c:\build\master_winpack-build-win64-vc15\opencv\modules\highgui\src\window.cpp, line 352 原因 先上图把 这个问题困扰我几个小时,其实是因为多次imshow一张图造

OpenCV Error: Insufficient memory问题解析

前言 项目程序运行两个月之久之后突然挂了,出现OpenCV Error: Insufficient memory的错误,在此分析一下该问题. 问题的表现形式: 程序内存使用情况: 问题: OpenCV Error: Insufficient memory (Failed to allocate 262144 bytes) in cv::OutOfMemoryError, file C:\builds\2_4_PackSlave-win64-vc12-shared\opencv\modules\c

OpenCV Error: The function/feature is not implemented (OpenCV was built without SURF support) in cvE

OpenCV Error: The function/feature is not implemented (OpenCV was built without SURF support) in cvExtractSURF, file /tmp/buildd/ros-hydro-opencv2-2.4.9-2precise-20141231-1914/modules/legacy/src/features2d.cpp, line 77 terminate called after throwing

错误ERROR datanode.DataNode (DataXceiver.java:run(278)) - hadoop07:50010DataXceiver error processing unknown operation src:127.0.0.136479 dst:127.0.0.150010

原因: Ambari 每分钟会向datanode发送"ping"连接一下去确保datanode是正常工作的.否则它会触发alert.但是datanode并没有处理空内容的逻辑,所以直接异常了 解决办法: 这个可以忽略,或者使用 https://issues.apache.org/jira/browse/HDFS-8738里的patch 如果,您认为阅读这篇博客让您有些收获,不妨点击一下右下角的[推荐]. 如果,您希望更容易地发现我的新博客,不妨点击一下左下角的[关注我]. 如果,您对我

错误ERROR datanode.DataNode (DataXceiver.java:run(278)) - hadoop07:50010DataXceiver error processing unknown operation src:127.0.0.136479 dst:127.0.0.150010

原因: Ambari 每分钟会向datanode发送"ping"连接一下去确保datanode是正常工作的.否则它会触发alert.但是datanode并没有处理空内容的逻辑,所以直接异常了 解决办法: 这个可以忽略,或者使用 https://issues.apache.org/jira/browse/HDFS-8738里的patch 原文地址:https://www.cnblogs.com/felixzh/p/9711868.html

OpenCv error :unresolved external symbol(链接库没有加上)

Error 如下:Linking...: error LNK2001: unresolved external symbol _cvDestroyWindow: error LNK2001: unresolved external symbol _cvLoadImage: error LNK2001: unresolved external symbol _cvReleaseCapture: error LNK2001: unresolved external symbol _cvRelease