What is wrong in this code

1 Ansicht (letzte 30 Tage)
Poonam
Poonam am 12 Sep. 2014
Beantwortet: Pierre Benoit am 12 Sep. 2014
function [jaccard_Idx,jaccardDist]=jacarrd_coefficient(imgorig,imgseg)
{
%check for logical image
if ~islogical(imgorig)
error('Image must be logical');
end
if ~islogical(imgseg)
error('Image must be logical');
end
%find the intersection of both the image
inter_image=img_orig & img_seg;
%find the union of both the image
union_image=img_orig./img_seg;
jaccard_Idx=sum(inter_image(:))./sum(union_image(:));
jaccardDist=1-jaccard_Idx;
}
getting following error
??? Error: File: jacarrd_coefficient.m Line: 4 Column: 1 Illegal use of reserved keyword "if".

Akzeptierte Antwort

Pierre Benoit
Pierre Benoit am 12 Sep. 2014
You're not using the proper Matlab syntax for defining function, i.e. you don't need curly braces to define function. Just remove them and it should be fine.
function [jaccard_Idx,jaccardDist]=jacarrd_coefficient(imgorig,imgseg)
%check for logical image
if ~islogical(imgorig)
error('Image must be logical');
end
if ~islogical(imgseg)
error('Image must be logical');
end
%find the intersection of both the image
inter_image=img_orig & img_seg;
%find the union of both the image
union_image=img_orig./img_seg;
jaccard_Idx=sum(inter_image(:))./sum(union_image(:));
jaccardDist=1-jaccard_Idx;

Weitere Antworten (0)

Kategorien

Mehr zu Images finden Sie in Help Center und File Exchange

Produkte

Community Treasure Hunt

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

Start Hunting!

Translated by