2015-06-06 21 views
-1

Пример обнаруженияSURFFeatures в сравнении с изображением 2 находится ниже. Я не мог заставить функцию detectSURFFeatures работать в моем MATLAB. никакая помощь или doc detectSURFFeatures не дает никакой подсказки. ошибка говорит:>> UncalibratedSterio Неопределенная функция 'detectSURFFeatures' для входных аргументов типа 'uint8'. " но сама функция может покрыть 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'); 

ответ

2

Вы получаете эту ошибку, так как detectSURFFeatures не существует в вашем дистрибутиве MATLAB. Вы должны иметь по крайней мере R2011b, как это было, когда detectSURFFeatures был доступен: http://www.mathworks.com/help/vision/release-notes.html#R2011b

Я подозреваю, что у вас есть старая версия MATLAB, чем R2011b и поэтому, если вы хотите, чтобы сделать его легко на себя, вам необходимо обновить версию MATLAB. Однако, если я могу сделать предложение, я предлагаю проект mexopencv по Kota Yamaguchi: http://kyamagu.github.io/mexopencv/

Он написал OpenCV оберток, которые могут напрямую взаимодействовать с MATLAB, и поэтому вы можете фактически назвать функцию обнаружения SURF OpenCV в и сопоставительные методы из MATLAB, но вы будете для этого нужно установить OpenCV. Это будет немного работать, чтобы заставить его работать, но это одно из решений, которое я могу предоставить, если вы не хотите обновлять свою версию MATLAB.

Удачи вам!

+0

У меня есть версия R_2014b в моем mac. Я проверю Коту. Итак, каковы возможные другие причины? –

+0

@ KontYiğitPsn - (1) У вас есть студенческая версия MATLAB, и у вас есть панель инструментов, но у вас нет этой функции. (2) У вас нет панели инструментов Computer Vision. В любом случае, проверьте проект Kota, потому что единственным вариантом для вас является обновление вашей версии MATLAB. – rayryeng

+1

@ KontYiğitPsn - введите 'ver' в MATLAB и нажмите ENTER. Вы видите Computer Vision Toolbox как часть списка? – rayryeng