小编HyG*_*ear的帖子

基于特色的图像对齐问题

我正在尝试学习 OpenCV,以改进我为比较工程图而编写的脚本。我正在使用本教程中找到的代码(见下文),但我的成功率为零。在本教程中,作者使用空白表单的示例作为参考图像,并使用已完成表单的照片作为要对齐的图像。我的情况非常相似,因为我尝试使用空白绘图标题块作为参考图像,并使用绘图的扫描图像作为要对齐的图像。

我的目标是使用 OpenCV 清理扫描的工程图纸,以便它们正确对齐,但无论我在 MAX_FEATURES 和 GOOD_MATCH_PERCENT 参数中尝试什么,我都会得到一个看起来像黑白星爆的图像。另外,当我查看脚本生成的“matches.jpg”文件时,似乎没有正确的匹配项。我尝试了多张图,得到了相同的结果。

谁能看出这个脚本无法按照我尝试使用它的方式工作的原因吗?

from __future__ import print_function
import cv2
import numpy as np


MAX_FEATURES = 500
GOOD_MATCH_PERCENT = 0.15


def alignImages(im1, im2):

  # Convert images to grayscale
  im1Gray = cv2.cvtColor(im1, cv2.COLOR_BGR2GRAY)
  im2Gray = cv2.cvtColor(im2, cv2.COLOR_BGR2GRAY)

  # Detect ORB features and compute descriptors.
  orb = cv2.ORB_create(MAX_FEATURES)
  keypoints1, descriptors1 = orb.detectAndCompute(im1Gray, None)
  keypoints2, descriptors2 = orb.detectAndCompute(im2Gray, None)

  # Match features.
  matcher = cv2.DescriptorMatcher_create(cv2.DESCRIPTOR_MATCHER_BRUTEFORCE_HAMMING)
  matches = matcher.match(descriptors1, descriptors2, None)

  # Sort matches by score …
Run Code Online (Sandbox Code Playgroud)

python opencv

0
推荐指数
1
解决办法
2641
查看次数

标签 统计

opencv ×1

python ×1