overlapping and coloring pictures in a sequence

1 次查看(过去 30 天)
I have thi code to colorize pictures in folders and overlapping every two pictures to gether, but I manually change the name of each two files to overlap and also change the name of the written file. Is there is a code could help me to change the name automatically as I have about 1000 files in each folder. this is my code.
if true
a=imread('square 27_filter 4.tif');
b=imread('square 27_filter 5.tif');
% C = imfuse(a,b,'blend','Scaling','joint');
% imwrite(C,'Square_1.png');
% figure;imshow(a)
% figure;imshow(b)
% figure;imshow(C);
blackImage = zeros(size(a), 'uint8');
a_green = cat(3, blackImage, a, blackImage);
%blackImage = zeros(size(b), 'uint8');
b_red = cat(3, b, blackImage, blackImage);
%C_rg = imfuse(a_green,b_red,'blend','Scaling','joint');
imwrite(C_rg,'Square_27_Cycle_1.tif');
end

回答(1 个)

Gayatri Menon
Gayatri Menon 2018-6-28
Hi,
If the name of the images you are trying to read differs only in some number in the name, for example name of images are square 27_filter 1, square 27_filter 2 etc, then you can use a sprintf command in a "for" loop to read the images without manually changing the names.
for i=1:n
name = sprintf('square 27_filter %d.tif', i);
a=imread(name)
blackImage = zeros(size(a), 'uint8');
% rest of your code
end
Hope this helps.
Thanks

类别

Help CenterFile Exchange 中查找有关 Images 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by