2011-12-15 8 views
0

goodFeaturesToTrackを使用して行列のコーナーを返すコマンドを書くにはどうすればよいですか?goodFeaturesToTrackを使用して行列のコーナーを返す方法

goodFeaturesToTrack(gray_image, corners, maxCorners, 
      qualityLevel, minDistance,temp_image, 2, true, 0.04); 

Mat harris; 
harris = original_image.clone(); 

for (unsigned int i=0; i corners.size(); i++) 
{ 
    circle(harris, corners[i], 3, Scalar(0, 255, 0),-1,8,0); 
    cout<<"Corners Vector: " << WHAT TO WRITE HERE? << endl; 
} 
+0

質問は明確ではありません - あなたはそこで検索したいですか?それは 'コーナー[私]'ではありませんか? – Sam

+0

私は基本的に、検出されたコーナーのピクセル位置を見つけたいと思っています。どうすればいいのか知っていますか? – donny

答えて

0

goodFeaturesToTrackタイプvector<Point2f>のコーナーポイントのリストを返します。だから、あなたが次のことを行うことができ、コーナーポイントを印刷するには:

cout << "Corner Point [" << i << "]: " << endl; 
cout << "x = " << corners[i].x << endl; 
cout << "y = " << corners[i].y << endl; 

また、lkdemo.cppを見て、そして使い方の例についてはgoodFeaturesToTrack_Demo.cppを持っています。

+0

メバトロンガイドをありがとう。私はコーナーの後に.xと.yを入れなかった[i]。検出されたコーナーをどのように見つけ出すのか分かりますか?それは境界ボックスのようなmatlabのような順番でですか?それともランダムに選択して表示しますか? – donny

+0

ハリスコーナー検出または固有値とベクトルのいずれかを使用してコーナーを計算します。 'qualityLevel'パラメータでこれをやや制御することができます。ハリスコーナーの裏にある数学のためのwikiは次のとおりです:http://en.wikipedia.org/wiki/Corner_detection#The_Harris_.26_Stephens_.2F_Plessey_.2F_Shi-Tomasi_corner_detection_algorithm – mevatron

+0

oh.doesこれは、最も重要なコーナーが最初に印刷され、その後に最も重要でないコーナーが印刷されることを意味します。 – donny

関連する問題