我正在尝试转换在MATLAB中使用的函数,以将RGB图像与IR图像(均为JPG格式)合并,以创建具有4个波段(R,G,B,IR)的Tiff图像。但是,在实现Tiff
函数时遇到了一些问题,因为Tiff
似乎没有在Octave中实现。
有人知道如何将以下函数的Tiff
部分转换为Octave?
for fidx = 1:numel(filelist1)
rgb = imread(fullfile(folder1, filelist1{fidx}));
numrows = size(rgb,1);
numcols = size(rgb,2);
ir = imread(fullfile(folder2, filelist2{fidx}));
data = cat(3,rgb,ir);
t = Tiff(fullfile(folderout, sprintf(outfilepattern, fidx))','w');
setTag(t,'Photometric',Tiff.Photometric.RGB);
setTag(t,'Compression',Tiff.Compression.None);
setTag(t,'BitsPerSample',8);
setTag(t,'SamplesPerPixel',4);
setTag(t,'SampleFormat',Tiff.SampleFormat.UInt);
setTag(t,'ExtraSamples',Tiff.ExtraSamples.Unspecified);
setTag(t,'ImageLength',numrows);
setTag(t,'ImageWidth',numcols);
setTag(t,'TileLength',32);
setTag(t,'TileWidth',32);
setTag(t,'PlanarConfiguration',Tiff.PlanarConfiguration.Chunky);
write(t,data);
close(t);