Why i get this error
11 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Syeda Noor
am 25 Dez. 2020
Kommentiert: Walter Roberson
am 27 Dez. 2020
Undefined operator '&' for input arguments of type 'matlab.graphics.primitive.Image'. why i am getting this error. i have to multiply 2 binary images pixel by pixel in matlab. groungtruth and output are two binary images. both are same but are segmented with two different techniques.
function r=eval_metrics(output,groundtruth)
TP_image=groundtruth&output;
TP=sum(TP_image(:));% # of hits (True Positive)
FN_image=groundtruth&~output;
2 Kommentare
Image Analyst
am 25 Dez. 2020
Bearbeitet: Image Analyst
am 25 Dez. 2020
Before the error, put this:
whos output
whos groundtruth
What do you see in the command window? How did you actually get the image that is not a logical array but is actually of type 'matlab.graphics.primitive.Image'?
Is this the same as https://www.mathworks.com/matlabcentral/answers/702337-why-i-get-this-error?s_tid=srchtitle
where we're not sure if you've accepted an answer or not and never attached your image so people can run your code. If so, then why? If not, what's the difference?
Rik
am 27 Dez. 2020
Akzeptierte Antwort
Steven Lord
am 25 Dez. 2020
Bearbeitet: Steven Lord
am 25 Dez. 2020
Generally you're going to want to perform arithmetic and/or logical operations on the image data not the image graphics object.
im = imread('eight.tif');
h = imagesc(im);
whos im h
Arithmetic and logical operations are defined on variables of class uint8 but not on variables of class matlab.graphics.primitive.Image.
im(1, 1) & im(1, 2) % works
h(1, 1) & true % does not work
13 Kommentare
Weitere Antworten (0)
Siehe auch
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
