Col*_*ino 12 python opencv feature-detection freak
我试图使用Opencv在Python中实现FREAK描述符.这是我正在使用的代码:
def surf_freak_detect(image,hessianThreshold):
surfDetector = cv2.SURF(hessianThreshold)
surfDetector=cv2.GridAdaptedFeatureDetector(surfDetector,50)
keypoints = surfDetector.detect(image,None)
freakExtractor = cv2.DescriptorExtractor_create('FREAK')
keypoints,descriptors= freakExtractor.compute(image,keypoints)
del freakExtractor
return keypoints,descriptors
Run Code Online (Sandbox Code Playgroud)
这是初始化怪胎描述符的正确方法吗?通过一些调试,我发现解释器需要花费很长时间来计算描述符然后最终崩溃.正确检测关键点.奇怪的是,它有时有效,有时只是崩溃!
Jav*_*ock 10
如果正确检测到关键点但是程序在生成描述符时崩溃,那是因为描述符区域(围绕关键点)来自图像并且存在对不存在的位置的存储器访问.
你必须以某种方式限制freak描述符的操作区域.
现在,OpenCV 3.0中有FREAK的Python绑定。其配置选项在此处介绍。似乎缺少有关如何在Python中实际调用它的文档,但是您可以像这样在Python中使用它:
freakExtractor = cv2.xfeatures2d.FREAK_create()
keypoints,descriptors= freakExtractor.compute(image,keypoints)
Run Code Online (Sandbox Code Playgroud)
(您必须像上面的代码中那样,通过单独的功能检测器获取关键点。)
| 归档时间: |
|
| 查看次数: |
5581 次 |
| 最近记录: |