How to convert image (bmp,jpg....) to .bin file ?
45 次查看(过去 30 天)
显示 更早的评论
I have a colour image and I want convert it to binary such as .bin (without losing color). In C code, I can easly use 'fopen' but it can't work in matlab. Anybody help me please.
Sorry my E is not good.
采纳的回答
Geoff Hayes
2014-10-15
dao - if you have read the image from file (as a bmp or jpg) using imread, then you can use fopen and fwrite to write the data to a binary file. For example,
% read the image from file
myImage = imread('someImage.jpg');
% open a file to write to
fid = fopen('myBin.bin','w+');
if fid>0
% write the data to file
fwrite(fid,myImage,'uint8');
% close the file
fclose(fid);
end
In the above, we read in some image and open a file for writing (using w+ to indicate that we wish to open or create a new file for writing). It is assumed that the data type for the image is uint8 so we use that in our precision field of the fwrite function.
4 个评论
Geoff Hayes
2014-10-16
From fread precision, the left hand side of the => is the source, and the right hand side is the output. So 'uint8=>uint8' means that for every 8 bit unsigned integer that we read in, we save this value as an 8-bit unsigned integer in our R (output) matrix. I did this because without it, R would be a matrix of data type double, since the default precision is 'uint8=>double'.
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Convert Image Type 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!