相关疑难解决方法(0)

OpenCV 2.4.1 - 在Python中计算SURF描述符

我正在尝试更新我的代码以使用cv2.SURF()而不是cv2.FeatureDetector_create("SURF")cv2.DescriptorExtractor_create("SURF").但是在检测到关键点后我无法获取描述符.什么是正确的打电话方式SURF.detect

我试过跟随OpenCV文档,但我有点困惑.这就是它在文档中所说的内容.

Python: cv2.SURF.detect(img, mask) ? keypoints¶
Python: cv2.SURF.detect(img, mask[, descriptors[, useProvidedKeypoints]]) ? keypoints, descriptors
Run Code Online (Sandbox Code Playgroud)

在进行第二次调用时如何传递关键点SURF.detect

python opencv computer-vision

19
推荐指数
1
解决办法
3万
查看次数

使用knnMatch与OpenCV + Python时出错

我想使用Python + OpenCV匹配两张图片.我使用SURF从两者中提取关键点和描述符.现在,我需要匹配这些描述符,因此我决定使用Flann Matcher.

flann_params = dict(algorithm = FLANN_INDEX_KDTREE,trees = 4)    
matcher = cv2.FlannBasedMatcher(flann_params, {})
Run Code Online (Sandbox Code Playgroud)

但是当我尝试将knnMatch与描述符(desc1,desc2)一起使用时,openCV会抛出异常.

raw_matches=matcher.knnMatch(np.asarray(desc1),np.asarray(desc2), 2)
Run Code Online (Sandbox Code Playgroud)

例外情况如下:

raw_matches=matcher.knnMatch(np.asarray(desc1),np.asarray(desc2), 2) #2
cv2.error: /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_graphics_opencv/opencv/work/OpenCV-2.4.2/modules/flann/src/miniflann.cpp:299: error: (-210) type=6
 in function buildIndex_
Run Code Online (Sandbox Code Playgroud)

我怎样才能正确使用knnMatch?这是一个Bug吗?

python opencv runtime-error

10
推荐指数
1
解决办法
9370
查看次数

OpenCV python的API:FlannBasedMatcher

我试图重写这里描述的代码.使用python API for Opencv.

代码的第3步有以下几行:

 FlannBasedMatcher matcher;
 std::vector< DMatch > matches;
 matcher.match( descriptors_object, descriptors_scene, matches );
Run Code Online (Sandbox Code Playgroud)

我在OpenCV引用中反复查看,但发现没有任何与python中的FlannBasedMatcher或其他可以完成工作的对象有关.

有任何想法吗?

注意:我使用的是OpenCV 2.3.1和Python 2.6

python opencv computer-vision

9
推荐指数
1
解决办法
1万
查看次数

标签 统计

opencv ×3

python ×3

computer-vision ×2

runtime-error ×1