初めまして。 Python初心者です。
現在画像のマッチング実現のためにHarrisコーナー検出を使用しています。
このときcornerHarris関数を使用していますが、この関数では特徴点しか算出することができません。
ORGやAKAZEみたいにdetectで特徴点を取得し、computeにて特徴量を算出し、
cv2.BFMatcher()等を使用しマッチングをしたいのですが、
cornerHarrisの戻り値であるdstから他の特徴点算出の際に使用されているkeypointへ変換するには、どのようなコードを書けばいいのでしょうか。
また、keypointに変換しなくてもdstからcv2.BFMatcher()で使用できる特徴量を求める方法があるのでしょうか。
以上、宜しくお願い致します。
#Harrisを用いたソースコード(特徴点表示まで)
import cv2
import numpy as np
import sys
import matplotlib.pyplot as plt
fish = cv2.imread('pic/fish.jpg')
fish = cv2.cvtColor(book,cv2.COLOR_BGR2RGB)
g_fish = cv2.cvtColor(book,cv2.COLOR_BGR2GRAY)
gray = np.float32(g_fish)
dst = cv2.cornerHarris(src=gray,blockSize=2,ksize=3,k=0.04)
dst = cv2.dilate(dst,None)
fish= cv2.drawKeypoints(fish, dst, None)
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/06/18 07:37
2021/06/18 07:45 編集
2021/06/18 08:00
2021/06/18 08:58 編集