OpenCV ライブラリ (Win7 x64 および Visual Studio 2010) を使用しています。
私の仕事は、回転することが多い長方形を検出することです。長方形を検出するためにsquares.cpp
、OpenCv を使用し、返されたポイントを使用しfindSquares()
て RotatedRect を次のように作成します。
for (size_t i = 0; i <squares.size(); i++) {
RotatedRect box= cv::minAreaRect(Mat(squares[i]));
ここsquares
で、 は によって返されるベクトルfindSquares()
です。
今私の問題は次のとおりです。box.angle
端末で印刷すると、奇妙な動作が見られます。あります、この画像の中に
これbox.angle
は正しいです (約 0° です)。しかし、カメラの位置を少し変えるbox.angle
と、この 2 番目の画像でわかるように、約 -88° になります。
理由がわかりません!!!!
なぜこの奇妙な振る舞いを知っている人はいますか???
ありがとう!