From: Eric on
I have been trying to experiment with some downloaded code, but MATLAB does not seem to recognize or even have any entries in the help files for some of the arguments in the code. First of all, I am using 7.8.0 (R2009a). The code is part of a SIFT (scale-invariant feature transform) routine.
Basically I get three errors when running a demo m-file. It seems that MATLAB does not recognize 'gaussianss', 'imsmooth', or 'Verbosity'. Here are the errors that come up in the command window:

Computing frames and descriptors.
SIFT: computing scale space...??? Undefined function or method 'imsmooth' for input arguments of type 'double'.

Error in ==> gaussianss at 131
SS.octave{1}(:,:,1) = imsmooth(I, ...

Error in ==> sift at 199
gss = gaussianss(I,sigman,O,S,omin,-1,S+1,sigma0) ;

Error in ==> sift_demo at 55
[frames1,descr1,gss1,dogss1] = sift( I1, 'Verbosity', 1 ) ;

I am stumped as to why these errors occur, because the demo m-file in the original downloaded code files runs fine. I believe the images I am using for comparison are okay, but I guess it is possible they could be causing a problem. Any insight into this would be greatly appreciated.
From: ImageAnalyst on
It seems that you have the functions but you are passing arguments of
the wrong class. There's probably a gate check right inside the
function that checks the class of what you passed. It's only going to
allow a certain type(s) (perhaps uint8 or something) and you passed in
a double (which it's not going to allow) and so it threw an error.
Drill down into that function and see what it's doing and expecting.