Hello, how to read a BMP image in MATLAB?
조회 수: 152 (최근 30일)
이전 댓글 표시
I am trying to read the BMP image(160 x 120 x 24 BPP) produced by FLIR Lepton Sensor in MATLAB. I have also attached the BMP image here.I'm using MATLAB R2016a...I used the following command.
Background=imread('...\LeptonTest\current.BMP');
I got the following error:
Error using imbmpinfo>readBMPInfo (line 106)
Header size was 56 bytes. Only values of 12, 40, 64, 108, or 124 are supported.
Error in imbmpinfo (line 23)
metadata = readBMPInfo(fid, metadata);
Error in readbmp (line 14)
info = imbmpinfo(filename);
Error in imread (line 415)
[X, map] = feval(fmt_s.read, filename, extraArgs{:});
Please some body help me to fix this problem.
댓글 수: 0
답변 (3개)
Dinesh Iyer
2016년 7월 5일
This appears to be a bug with IMREAD. The BMP file appears to use a BI_BITFIELD compression to store the image data which appears to be be tripping up IMREAD.
Sorry about this. Will update once a patch is ready.
댓글 수: 0
Dinesh Iyer
2016년 7월 19일
The patch with the fix for this issue can be found at:
댓글 수: 4
Image Analyst
2016년 7월 19일
Sorry, I just thought it was a cute graphic. Actually I haven't tried the patch since I think it's for a fairly rare type of image that I don't use. Anyway, is this fix going to make it into the R2016b version? If not, I guess it would also have to be applied after installing R2016b.
Dinesh Iyer
2016년 7월 19일
This will not be making it to 16b but the patch in the link should work for 16b as well.
Geoff Hayes
2016년 6월 30일
Bal - I get the same error when using R2014a. However, I was able to load this image into MATLAB as follows
>> open('current.BMP');
which would launch the Import Wizard. Pressing the Finish button created a variable called current which is a 120x160x3 array which I could display using the image command.
I'm not sure why there is a difference between using open and imread (i.e. why does open seem to support the 56 byte header but imread does not). Perhaps this should be logged as a bug.
댓글 수: 3
Geoff Hayes
2016년 6월 30일
Hi Bal - I'm not sure why the import wizard would not launch on your computer. What happens if you try to open by right-clicking on the file name in the MATLAB file browser. Or try,
uiimport('current.bmp')
Image Analyst
2016년 7월 5일
open() on my computer also opens the binary data into a text editor window, like for bal. uiimport() did bring up a wizard, but I don't know what to do with it:
참고 항목
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!