代码是:

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_32Scv2DRotationMatrix不支持cvWarpAffine类型。将其更改为CV_32F以解决您的问题。

关于opencv - OpenCV:cvWarpAffine未处理的异常,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7509760/

10-11 00:44