How to convert jpg matrix to binary matrix
2 次查看(过去 30 天)
显示 更早的评论
Hi!
I would like to send an image with a LED, and to do that first I need to read the .jpg image with imread(), but here as a result I get a matrix with decimal elements. Later, for sending the image I will need only binary elements (1-LED is ON, 0-LED is OFF). I was thinking of using the dec2bin() conversion and the result I can store in a new matrix as a string (since it has more elements) and at the sending I just run through each string with a loop and turn the on/off depending on the 0/1 values, but the problem is that after the dec2bin() conversion I will get different sized strings and the receiver shouldn't know these sizes. Is there any other solutions for this problem?
Thank you so much.
0 个评论
回答(3 个)
Star Strider
2017-10-7
Try the im2bw or the imbinarize functions in the Image Processing Toolbox. See the documentation on them for necessary details.
Image Analyst
2017-10-8
Here's one approach:
for k = 0 : 255 % Show what happens for every gray level.
thisString = dec2bin(k);
string8 = '00000000';
string8(end-length(thisString)+1:end) = thisString
end
Now all the pixels will be 8 characters, with leading zeros if necessary.
另请参阅
类别
在 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!