我有一个图像,我想在较大的图像中检测(即查看是否存在类似的版本)。模板匹配不够精确,因为项可以被根和缩放,所以快速似乎是一种有希望的方法:
但是,当我尝试创建描述符时,没有得到任何返回:
下面是我的示例图片:

BRISK = cv2.BRISK_create()
keypoints1, descriptors1 = BRISK.detectAndCompute(img, None)返回
([], None)有什么建议可以让我获得更好的结果吗?为什么Brisk没有检测到任何功能?将阈值更改为0并添加八度似乎没有帮助。
发布于 2021-06-17 14:46:30
您的图像太小,找不到任何有意义的描述符。除非您使用较大尺寸的图像,否则可以使用以下解决方案:
img = cv2.imread("/path/to/image/so_brisk.png")
gray = cv2.cvtColor(img,cv2.COLOR_BGR2GRAY) # Gray
w, h = gray.shape
scale_factor = 3
gray = cv2.resize(gray, (h*scale_factor, w*scale_factor), interpolation = cv2.INTER_AREA)
BRISK = cv2.BRISK_create()
keypoints1, descriptors1 = BRISK.detectAndCompute(gray, None)https://stackoverflow.com/questions/68013921
复制相似问题