Not enough input arguments. Error in feature_extract3 (line 3) imdist=rgb2gray(imdist);
7 次查看(过去 30 天)
显示 更早的评论
CODE :
function f = feature_extract3( imdist ,scale)
f=[];
imdist=rgb2gray(imdist);
weight=[0.2 0.8];
for i=1:scale
im=imdist;
fun0=@(x)secal(x);
emat=blkproc(im,[8 8] ,fun0);
sort_t = sort(emat(:),'ascend');
len = length(sort_t);
t=sort_t(ceil(len*weight(1)):ceil(len*weight(2)));
mu= mean(t);
ske=skewness(sort_t);
f1=[ mu ske];
im=imdist;
fun1=@(x)fecal(x);
im=double(im);
femat=blkproc(im,[8 8],fun1);
sort_t = sort(femat(:),'ascend');
len = length(sort_t);
t=sort_t(ceil(len*weight(1)):ceil(len*weight(2)));
mu= mean(t);
ske=skewness(sort_t);
f2=[ mu ske];
f=[f f1 f2] ;
imdist = imresize(imdist,0.5);
end
end
Q: This a code for feature extraction from the web, i am getting the error in rgb2gray function
1 个评论
回答(1 个)
Abhishek
2025-6-24
Generally, MATLAB throws “not enough input arguments” error when a function is called with fewer input parameters than it requires to execute correctly.
The function ‘feature_extract3’ in the code shared requires two input arguments: ‘imdist’ and ‘scale’. However, only ‘imdist’ argument is being passed, which leads to the error.
To resolve the issue, pass the ‘scale’ parameter along with ‘imdist’ parameter when calling the function.
2 个评论
Walter Roberson
2025-6-24
In order for this errror message to appear, imdist must not have been passed to the function -- the function is being called with no parameters at all. For example the function might have been invoked by pressing the green Run button instead of by calling it at the command line passing in appropriate parameters.
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Point Cloud Processing 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!