【问题标题】:surface feature detection on image processing图像处理中的表面特征检测
【发布时间】:2015-06-06 00:00:46
【问题描述】:

下面是 2 张图片比较的 detectSURFFeatures 示例。我无法让 detectSURFFeatures 函数在我的 MATLAB 中工作。没有帮助或文档 detectSURFFeatures 提供任何线索。错误说“> UncalibratedSterio 'uint8' 类型的输入参数的未定义函数 'detectSURFFeatures'。”但据我所知,该函数本身可以覆盖 uint8。我该怎么办?

%Rectified Sterio Image Uncalibrated
%   There is no calibration of cameras
I1 = rgb2gray(imread('right_me.jpg'));
I2 = rgb2gray(imread('left_me.jpg'));
Value = 2000.0;
blobs1 = detectSURFFeatures(I1, 'MetricThreshold', Value);
blobs2 = detectSURFFeatures(I2, 'MetricThreshold', Value);
figure;
imshow(I1);
hold on;
plot(selectStrongest(blobs1, 30));
title('Thirty strongest SURF features in I1');
figure;
imshow(I2);
hold on;
plot(selectStrongest(blobs2, 30));
title('Thirty strongest SURF features in I2');

【问题讨论】:

    标签: image matlab image-processing depth matlab-cvst


    【解决方案1】:

    您收到该错误是因为您的 MATLAB 发行版中不存在 detectSURFFeatures。您必须至少拥有 R2011b,因为那时 detectSURFFeatures 可用:http://www.mathworks.com/help/vision/release-notes.html#R2011b

    我怀疑你的 MATLAB 版本比 R2011b 旧,所以如果你想让自己轻松一点,你需要升级你的 MATLAB 版本。但是,如果我可以提出建议,我建议Kota Yamaguchimexopencv 项目:http://kyamagu.github.io/mexopencv/

    他编写了可以直接与 MATLAB 交互的 OpenCV 包装器,因此您实际上可以从 MATLAB 调用 OpenCV 的 SURF 特征检测和匹配方法,但您需要安装 OpenCV 才能做到这一点。让它工作需要一些工作,但如果您不想升级您的 MATLAB 版本,这是我可以提供的一种解决方案。

    祝你好运!

    【讨论】:

    • 我在我的 Mac 上安装了 R_2014b 版本。我会检查科塔。那么可能的其他原因是什么?
    • @KontYiğitPsn - (1) 你有学生版的 MATLAB,你有工具箱,但没有那个功能。 (2) 您没有计算机视觉工具箱。无论哪种方式,请检查 Kota 的项目,因为您唯一的选择是升级您的 MATLAB 版本。
    • @KontYiğitPsn - 在 MATLAB 中输入 ver 并按 Enter。您认为计算机视觉工具箱是列表的一部分吗?
    猜你喜欢
    • 1970-01-01
    • 2012-12-16
    • 1970-01-01
    • 2017-01-08
    • 1970-01-01
    • 2017-03-06
    • 1970-01-01
    • 2018-12-23
    • 2014-04-04
    相关资源
    最近更新 更多