why is my difference image black?...

the program works but my difference image is just black...did i do something wrong? or is there a way to make it visible?
%% 3. Interpolation
ori=imread('body.jpg'); %a)Read‘body.jpg’;store into‘ori’
sma=imresize(ori,[32 32]); %b)Resize‘ori’ to 32x32;store into‘sma’
nea=imresize(ori,1,'nearest'); %c)Resize‘sma’ to original using nearest interpolation;store into‘nea’
bil=imresize(ori,1,'bilinear'); %d)Resize‘sma’ to original using bilinear interpolation;store result into‘bil’
bic=imresize(ori,1,'bicubic'); %e)Resize‘sma’to original using bicubic interpolation;store result into‘bic’
figure %f)Display‘ori’,‘nea’,‘bil’,'bic' same figure
subplot(4,1,1);
imshow(ori)
title('ori');
subplot(4,1,2);
imshow(nea)
title('nea');
subplot(4,1,3);
imshow(bil)
title('bil');
subplot(4,1,4);
imshow(bic)
title('bic');
df=imabsdiff(bil,bic);
figure %g)Display the difference image between bil and bic
imshow(df,[])
title('difference image');

4 Comments

nea, bil and bic are all the same, because you are doing no resizing at all. in the comment you want to resize sma and not ori. try
nea=imresize(sma,[256 256],'nearest'); %c)Resize‘sma’ to original using nearest interpolation;store into‘nea’
bil=imresize(sma,[256 256],'bilinear'); %d)Resize‘sma’ to original using bilinear interpolation;store result into‘bil’
bic=imresize(sma,[256 256],'bicubic'); %e)Resize‘sma’to original using bicubic interpolation;store result into‘bic’
regards
Marcel
Matt J
Matt J on 6 Oct 2021
Edited: John Kelly on 9 Dec 2021
I suggest that you attach df in a .mat file so that we can examine it.
why is my difference image black?...
the program works but my difference image is just black...did i do something wrong? or is there a way to make it visible?
%% 3. Interpolation
ori=imread('body.jpg'); %a)Read‘body.jpg’;store into‘ori’
sma=imresize(ori,[32 32]); %b)Resize‘ori’ to 32x32;store into‘sma’
nea=imresize(ori,1,'nearest'); %c)Resize‘sma’ to original using nearest interpolation;store into‘nea’
bil=imresize(ori,1,'bilinear'); %d)Resize‘sma’ to original using bilinear interpolation;store result into‘bil’
bic=imresize(ori,1,'bicubic'); %e)Resize‘sma’to original using bicubic interpolation;store result into‘bic’
figure %f)Display‘ori’,‘nea’,‘bil’,'bic' same figure
subplot(4,1,1);
imshow(ori)
title('ori');
subplot(4,1,2);
imshow(nea)
title('nea');
subplot(4,1,3);
imshow(bil)
title('bil');
subplot(4,1,4);
imshow(bic)
title('bic');
df=imabsdiff(bil,bic);
figure %g)Display the difference image between bil and bic
imshow(df,[])
title('difference image');
(Answers Dev) Restored edit

Sign in to comment.

 Accepted Answer

Matthew Worker
Matthew Worker on 6 Oct 2021

https://www.mathworks.com/matlabcentral/answers/1467816-why-is-my-difference-image-black#comment_1770511

More Answers (1)

Rik
Rik on 1 Dec 2021
Edited: Rena Berman on 13 Dec 2021
Posted after a now-deleted comment:
@Matt J @Marcel Kreuzberg Thank you so much i didnt notice that error. It works well now

Categories

Find more on Read, Write, and Modify Image in Help Center and File Exchange

Products

Release

R2021a

Community Treasure Hunt

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

Start Hunting!