0
我正在matlab中处理一批50至800幅图像。 程序读取一些.tif图像,然后在进行一些更改后,使用imwrite输出.tif图像。我试图用matlab中的比例参考条保存图像
问题是,我希望输出图像有我使用的规模的一些refence。 就像是一个n像素的条,它表示mm中的等效值(如通常用于显微镜测量的thos),或者显示以mm为单位的尺寸的几个轴会更好。
我已经知道1个像素的等效值,但我不知道如何在每个图像中显示(请记住有很多图像,所以它必须是自动的)。
谢谢。
这里是我现在使用的代码:
dird=['G:\Alexis\interf camara rapida\Project_2013.08.07_2\W_80_cilindro_4mm\00-50-C2-1D-7E-AB_AutoSave_003_001\00-50-C2-1D-7E-AB_AutoSave_003_001_FR0'];
dirfondo = [dird,'.tif']; % La imagen de fondo debe estar en el mismo lugar que las imagenes a restarselo
fondo = imread(dirfondo);
zonainter=imshow(fondo);
zona=round(ginput(2));
xmin=zona(1,1);
ymin=zona(1,2);
xmax=zona(2,1);
ymax=zona(2,2);
j=0;
for i =1:1:200;
mil=floor(i/1000);
cien=floor((i-mil*1000)/100);
diez=floor((i-mil*1000-cien*100)/10);
uno=(i-mil*1000-cien*100-diez*10);
numero=[num2str(cien),num2str(diez),num2str(uno)];
i; % sin el punto y coma voy viendo por que número va.
j = j + 1 ;
oldfileimage = [dird,numero,'.tif'];
% numerosalida = [num2str(i)];
newfileimage = ['im',numero,'.tif'];
inter = imread(oldfileimage); %Imagen cruda
rango = 255; %// choose the new maximum. (new minimum always at 0.0).
imgMin = double(min(min(inter(xmin:xmax,ymin:ymax))));
imgMax = double(max(max(inter(xmin:xmax,ymin:ymax))));
inter = ((inter - imgMin)*(rango/(imgMax - imgMin)));
imwrite(inter',newfileimage,'tif');
end;
imshow(inter);