How to convert jpg matrix to binary matrix
1 view (last 30 days)
Show older comments
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 Comments
Answers (3)
Star Strider
on 7 Oct 2017
Try the im2bw or the imbinarize functions in the Image Processing Toolbox. See the documentation on them for necessary details.
Image Analyst
on 8 Oct 2017
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.
See Also
Categories
Find more on Convert Image Type in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!