-3

私の質問を更新しました

こんにちは、以前の質問に関連しています ( OpenCV - エクササイズの解決に固執しています)。として、コードで提案されている方法を使用したことを提案しましたが、次のエラーが発生しています。

line1.cpp: In function ‘int main(int, char**)’:
line1.cpp:34:10: error: ‘Point2f’ was not declared in this scope
line1.cpp:34:18: error: expected ‘;’ before ‘rgbMat_center’
line1.cpp:35:10: error: ‘Mat’ was not declared in this scope
line1.cpp:35:14: error: expected ‘;’ before ‘mRotation60’
line1.cpp:36:14: error: expected ‘;’ before ‘mFilter60’
line1.cpp:37:28: error: ‘mFilter60’ was not declared in this scope
line1.cpp:37:39: error: ‘mRotation60’ was not declared in this scope
line1.cpp:37:59: error: request for member ‘size’ in ‘rgbMat’, which is of non-class  type ‘CvMat*’
line1.cpp:37:65: error: ‘warpAffine’ was not declared in this scope

私のコードはここにあります。私のコードでは、最初に 5*5 の 2D マトリックスを作成してから、openCV の wrap() を使用して 5*5 マトリックスを 60 度の角度で回転させようとしました。上記のエラーが表示されます。5*5 マトリックスを 60 度回転させたいだけです。

     double angleDegree = 60;
     Point2f rgbMat_center(rgbMat.cols/2.0F, rgbMat.rows/2.0F);
     Mat mRotation60= getRotationMatrix2D(rgbMat_center, -angleDegree, 1.0);
     Mat mFilter60;
     warpAffine(rgbMat, mFilter60, mRotation60, rgbMat.size());

誰かが私が間違っている場所を提案できますか?

4

1 に答える 1

2

Point2f は

#include opencv2\core\core.hpp

そしてPoint2f rgbMat_center(rgbMat.cols/2.0F, rgbMat.rows/2.0F);、これは間違っています。

rgbMat はポインターなので、 のようにする必要がありますrgbMat->cols

于 2013-07-10T11:01:08.170 に答える