【问题标题】:OpenCV 2.4, Python - Retrieving the laplacian from a SURF keypointOpenCV 2.4, Python - 从 SURF 关键点检索拉普拉斯算子
【发布时间】:2012-05-30 16:57:28
【问题描述】:

我正在使用 OpenCV 2.4 来提取 SURF 特征,并且需要每个关键点的拉普拉斯值用于匹配过程。

我在使用 OpenCV 2.3 时没有遇到这个问题。在 OpenCV 2.4 cv2.SURF() 中不起作用,所以我不得不这样做:

im2 = cv2.imread(imgPath)
im = cv2.cvtColor(im2, cv2.COLOR_BGR2GRAY)
surfDetector = cv2.FeatureDetector_create("SURF")
surfDescriptorExtractor = cv2.DescriptorExtractor_create("SURF")
keypoints = surfDetector.detect(im)
(keypoints, descriptors) = surfDescriptorExtractor.compute(im,keypoints)

这可行,但是它给了我一组通用关键点对象。有没有办法获得 SURF 的特定值? (拉普拉斯,粗麻布)

很遗憾,我无法回到 2.3,因为 2.4 修复了我之前遇到的另一个问题。

【问题讨论】:

    标签: python opencv computer-vision feature-detection


    【解决方案1】:

    假设keypoint 是一个关键点:

    x = keypoint.pt[0]
    y = keypoint.pt[1]
    size = keypoint.size
    dir_in_degrees = keypoint.angle
    laplacian = round(keypoint.class_id)
    hessian = keypoint.response
    

    【讨论】:

    • 谢谢!正是我想要的。不过我认为round 应该在粗麻布周围而不是拉普拉斯。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-03-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-12-26
    • 1970-01-01
    相关资源
    最近更新 更多