0

これは簡単なことのように思えますが、私はそれで多くの問題を抱えています。

ハフ変換により、画像から ROI を取得できると思います。しかし、私たちの 3D 世界と私の手の調整が不完全なため、ROI は歪んでいるか、透視投影されています。つまり、さらに分析するための実際の長方形ではありません。

この問題を解決する方法はありますか?

4

2 に答える 2

3

getPerspectiveTransform()とを使用warpPerspective()して、再び長方形にすることができます。

//cornerpoints contains the Point2f corners you detected in the image in clockwise ordering from top left
int rectheight=480;
int rectwidth=640;
Point2f rectpoints[4];
rectpoints[0]=Point2f(0,0);
rectpoints[1]=Point2f(0,rectwidth);
rectpoints[2]=Point2f(rectheight,rectwidth);
rectpoints[3]=Point2f(rectheight,0);
Mat pt=getPerspectiveTransform(cornerpoints,rectpoints);
Mat rectangle(rectheight,rectwidth,CV_8U);
warpPerspective(image,rectangle,pt,Size(rectheight,rectwidth));
于 2012-04-13T07:56:11.020 に答える
0

ゴンザレスが彼の本で提案したように、形状署名を使用することを考えたことがありますか? 図形が既にセグメント化され、ラベル付けされている場合は、簡単かつ迅速に計算できます。

この論文も役立つかもしれません

于 2012-04-13T14:31:10.473 に答える