Merging 10 tif files into one in order to get spectral signatures
13 次查看(过去 30 天)
显示 更早的评论
Hi to everyone!
Im working with 10 reflectance maps processed on Pix4D, they have TIF format. I want to see the spectral signature of some pixels and for that I need to merge the 10 bands. How can I do this? Is this the way to proceed?
Thank you!!!
0 个评论
回答(1 个)
Raunak Gupta
2020-8-16
Hi Melisa,
You can read the TIFF files one by one and assign them to a matrix in the 3rd dimension. Since you want to merge the 10 images in band wise fashion, I am assuming the Height and width of every TIF image is same otherwise assigning to a matrix will not work. Below example code might be helpful. Here I assume each TIFF file contains only one channel. You may change accordingly if it contains more channels.
img1 = imread('tif_image1.tif');
[Height,Width] = size(img1,[1,2]);
numberOfBands = 10;
fullImage = zeros(Height,Width,numberOfBands);
% Assuming filename is calculated using dir and fullfile
for i=1:numberOfBands
img = imread('filename_i.tif');
fullImage(:,:,i) = img(:,:,1);
end
2 个评论
Raunak Gupta
2020-8-24
Hi Melisa,
Here F is the 'filename_i.tif' that I mentioned in the answer.
Hope this clarifies.
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Introduction to Installation and Licensing 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!