代码是:
CvMat *rotMapMat = cvCreateMat(2, 3, CV_32SC1);
cv2DRotationMatrix(center, angle, 1, rotMapMat);
cvWarpAffine(image, dst, rotMapMat);
第一个问题:cv2DRotationMatrix无法正确计算矩阵。
然后我通过版本cv2DRotationMatrixOwn更改了该功能
但是还有另一个问题,第二个问题:cvWarpAffine总是失败,并带有未处理的异常错误。
而且我不能使用调试器,并且在发生错误时,调用堆栈不会显示在该位置之前调用的所需函数。
为什么会发生?
使st图像的大小足够大。
EDIT1:Opencv版本2.2
最佳答案
rotMapMat
必须是浮点矩阵。 CV_32S
和cv2DRotationMatrix
不支持cvWarpAffine
类型。将其更改为CV_32F以解决您的问题。
关于opencv - OpenCV:cvWarpAffine未处理的异常,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7509760/