python-3.x - 尝试检测时 orb 检测崩溃

标签 python-3.x opencv orb keypoint

我正在尝试使用 open cv 创建一个基本的图像检测器。
我正在使用 ORB,我尝试打开图像,然后尝试检测图像中的关键点。
这是我的代码

import cv2
from cv2 import ORB

image1 = cv2.imread("original.jpg", cv2.IMREAD_GRAYSCALE)

orb = ORB()

# find the keypoints with ORB
kp = orb.detect(image1, None)

但是,当我运行我的代码时,程序崩溃并出现以下错误
Process finished with exit code -1073741819 (0xC0000005)

我搜索此错误,发现这是内存访问冲突,但我不知道哪里可能存在冲突?

最佳答案

我得到了同样的错误。经过一番搜索,我得到了 ORB_create()而不是 ORB()修复它。

来源:

matching error in ORB with opencv 3

outImage 错误修复,

https://github.com/opencv/opencv/issues/6487

代码:

import numpy as np
import cv2
from matplotlib import pyplot as plt

img = cv2.imread('extra/sample.jpg',0)

## ERROR
#orb = cv2.ORB()

## FIX
orb = cv2.ORB_create()

# find the keypoints with ORB
kp = orb.detect(img,None)


# compute the descriptors with ORB
kp, des = orb.compute(img, kp)

## ERROR
#img2 = cv2.drawKeypoints(img,kp,color=(0,255,0), flags=0)


## Use This or the one below, One at a time
#img2 = cv2.drawKeypoints(img, kp, None, flags=cv2.DRAW_MATCHES_FLAGS_DRAW_RICH_KEYPOINTS)

img2 = cv2.drawKeypoints(img, kp, outImage = None, color=(255,0,0))

plt.imshow(img2),plt.show()

关于python-3.x - 尝试检测时 orb 检测崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60477706/

相关文章:

python - 给定 1/4/2014 时如何在 python 3.0 中从 mm/dd/yyyy 格式转换为 yyyy-mm-dd

python - 访问模型文件中的用户值

python - 如何使用OpenCV python自动检测图像的修剪和裁切部分?

c++ - 是否有可能在单目 ORB-SLAM2 中获得距离缩放?

Python多线程不是并行执行的

python - 自动礼物的循环问题

python - 旋转图像而不平均像素值

c++ - 是否有任何版本的 CvBlobs 库可以与 cv::Mat 一起使用?

python - 从比赛中获得注册的准确性

python-2.7 - 使用 ORB 检查重复图像