###DMatch内の各項目を表示させたい
初質問・プログラミング初心者で、稚拙な質問で恐縮ですが回答していただけると幸いです。
現在、python3とopenCV3を用いた画像処理を行っております。その中で、「openCV3で新たに実装されたKAZE特徴量による画像間のマッチング」を行っており、KAZE特徴点を検出しマッチング、その後にkNN法によって対応点を間引く処理の部分のコードを次のように記述しています。
このコードにおいて、goodの中にDMatchとしてマッチング結果の4つの属性(distance,trainidx,queryidx,imgidx)が格納されていることは調べた結果わかったのですが、これらの数値を表示させる方法がわからないのです…
プログラミングの学習自体もpythonが初めてで、何についての理解が足りていないのかもわかっていない状況です。
ご指導いただけると大変助かります。よろしくお願いします。
###該当のソースコード
detector = cv2.AKAZE_create() kp1,des1 = detector.detectAndCompute(img1,None) kp2,des2 = detector.detectAndCompute(img2,None) bf = cv2.BFMatcher() matches = bf.knnMatch(des1,des2,k = 2) good = [] ratio = 0.5 for m,n in matches: if m.distance < ratio*n.distance: good.append([m]) print(good[0])
出力:
[<DMatch 000001CA000B5B10>]
###試したこと
「パーフェクトpython」(第4刷)という書籍をもとにクラスなどの理解を深めようと努力しているところです。
###補足情報(言語/FW/ツール等のバージョンなど)
今回のプログラムを作るにあたり、参考にしたサイト様を以下に示します。
python/OpenCV3.0でAKAZE特徴量を用いたマッチング
OpenCV 3とPython 3で特徴量マッチング(A-KAZE, KNN)
OpenCV 2.4.13.4 documentationCommon Interfaces of Descriptor Matchers
また、画像のマッチング自体は問題なく行えております。
※おそらく、python3のプログラミングについての問題であると思うため、タグにopenCV3はつけておりません。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/10/18 03:19