opencv调用cvCopy函数出现assertion faild (src.depth()dst.depth()&&src.sizedst.size)的解决方法
CvRect ROI = cvRect(x, y, width, height);
cvSetImageROI(src, ROI);
cvCopy(src, dst);
cvResetImageROI(src);
很多时候在使用这个函数功能时会出现错误,解决方案如下:
在使用cvCopy(src,dst)函数之前需要建立两个模板,
src=cvLoadImage(“D:\text.png”);
dst=cvCreateImage(cvSize(宽度值,高度值), 8, 3);
因为dst中的宽度值和高度值与cvSetImageROI(src, ROI);中提取的ROI的宽度值和高度值不相同导致的错误,所以需要调试的时候在cvCopy(src, dst);语句处打断点,看一下运行cvSetImageROI(src, ROI);语句之后,src中roi的宽度值和高度值,然后填入dst=cvCreateImage(cvSize(宽度值,高度值), 8, 3);中就能解决问题。