detectSURFFeatures shows error.

Im Using Matlab 2013a version and having a problem when using command:
boxPoints = detectSURFFeatures(boxImage);
Got error
Error using detectSURFFeatures
Expected input number 1, I, to be two-dimensional.
Error in detectSURFFeatures>parseInputs (line 82)
validateattributes(I,{'logical','uint8', 'int16', 'uint16', ...
Error in detectSURFFeatures (line 71)
[Iu8 params] = parseInputs(I,varargin{:});
As I am beginner and trying to use Matlab for Image processing and seeking help from the example available on the following link: http://www.mathworks.com/help/vision/examples/object-detection-in-a-cluttered-scene-using-point-feature-matching.html#btt5qyu

3 Comments

I am having same error with greyscale image
Error in detectSURFFeatures (line 71) [Iu8 params] = parseInputs(I,varargin{:});
Please show size() of the image.
It is possible for an image to look gray but actually be an RGB image. If the Red, Green, and Blue color planes are identical at each pixel, then the image will be an RGB image with gray content.
tq dude.... It works

Sign in to comment.

 Accepted Answer

Steven Lord
Steven Lord on 18 Sep 2015
The documentation for detectSURFFeatures states, in part (emphasis added):
"POINTS = detectSURFFeatures(I) returns a SURFPoints object, POINTS, containing information about SURF features detected in the 2-D grayscale input image I."
This indicates that it does not accept RGB images, which would be 3-D (rows-by-pages-by-3 for the 3 color pages.) Convert your image to grayscale before passing it into detectSURFFeatures.

More Answers (0)

Categories

Find more on Image Processing and Computer Vision in Help Center and File Exchange

Products

Release

R2015b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!