Unable to process .img files in MATLAB

3 次查看(过去 30 天)
I am trying to perform operations on images that are in the .img format. I am able to open the files in Matlab. I want to perform manual cropping (using computer mouse) on those files without converting it into jpeg/png or other formats. The result is shown in e4.fig file which is not correct. I am unable to attach the TM570007_LML_08_06.img file as it is not supported in this forum. Any suggestions would be appreciated.
I=imageload('D:\regionGrowing_MLT\TM570007_LML_08_06.img');
imshow(I,[])
% Display image
% imshow(im);
% Use GETRECT to select a rectangle region by using the mouse
sp=getrect;
% Get the x and y co-ordinates
sp(1) = max(floor(sp(1)), 1); %xmin
sp(2) = max(floor(sp(2)), 1);%ymin
sp(3)= min(ceil(sp(1) + sp(3))); %xmax
sp(4)=min(ceil(sp(2) +sp(4))); %ymax
% Index into the original image to create the new image
MM=I(sp(2):sp(4), sp(1): sp(3),:);
image(MM)
set(gca,'Visible','off')

采纳的回答

Kojiro Saito
Kojiro Saito 2021-3-30
编辑:Kojiro Saito 2021-3-30
UPDATED ANSWER
Thank you. I've tested both img files. Suppose you want to clip the image, you just need to do
imshow(MM, [])
instead of image(MM). Because image requires color matrix data, but your img file is a grayscale image.
ORIGINAL ANSWER
I'm not sure what is the root cause of this issue without an actual img file, but you're using R2020b you can use readgeoraster function for ERDAS IMAGIN file (.img). Mapping Toolbox is requred, but it's more easier.
Instead of using imageload, how about using readgeoraster?
I = readgeoraster('D:\regionGrowing_MLT\TM570007_LML_08_06.img');
  5 个评论
Kojiro Saito
Kojiro Saito 2021-3-30
Thank you for sharing the img files. I've updated my answer.

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Convert Image Type 的更多信息

产品


版本

R2020b

Community Treasure Hunt

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

Start Hunting!

Translated by