Ser*_*gio 10 python opencv runtime-error
我想使用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吗?
Ser*_*gio 11
我使用函数np.asarray()使用正确的数据类型解决了这个问题
raw_matches=matcher.knnMatch(np.asarray(desc1,np.float32),np.asarray(desc2,np.float32), 2) #2
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
9370 次 |
| 最近记录: |