saving a processed image of the same size as the original for comparison
3 次查看(过去 30 天)
显示 更早的评论
I have an image (tif) which I import into Matlab, this becomes my reference.I draw a white line on it and save with the line on, I want to be able to check this lined image against the reference image but the image saved is not the same size as the reference image giving me an error. Any idea how I could compare the images?
Best regards, Steve
close all
clear all
clc
my_image = imread('liney.png');
my_image = my_image(:,:,1:3);
imshow(my_image);
A=(my_image);
im=(my_image);
imshow(im)
hold on
line([0 4487], [40 40],'Color','white');
hold on
title('line on')
hold on
Image = getframe(gcf);
imwrite(Image.cdata,'liney2.png')
B=imread('liney2.png');
Z = imabsdiff(B,A);
imshow(B)
hold on
imshow(Z,[])
Error:
*Error using checkForSameSizeAndClass (line 12) X and Y must be the same size.
Error in imabsdiff (line 42) checkForSameSizeAndClass(X, Y, mfilename);
Error in image_proc_04 (line 21) Z = imabsdiff(B,A);*
0 个评论
采纳的回答
Guillaume
2018-5-11
If you have the computer vision toolbox you can use insertShape to draw directly into your image rather than a figure. This avoids all the problems with getframe or print.
更多回答(0 个)
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!