How can I transmit JPG file within in 8bit array for visible light communication
3 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Thakshila Dayani
el 10 de Dic. de 2021
Comentada: Thakshila Dayani
el 31 de En. de 2022
I tried some progarm. but thre is some issue. How can I fix it? i need to transmit an image.
i=imread('Image.jpg');
R = i(:,:,1); %red
G = i(:,:,2); %green
B = i(:,:,3); %blue
for i=1:183
for j=1:275
R(i,j);
bin_Str = dec2bin(R(i,j));
C = reshape(bin_Str',1,numel(bin_Str));
D = reshape(C,size(bin_Str,2),size(bin_Str,1));
2 comentarios
Walter Roberson
el 10 de Dic. de 2021
What is the point of your C and D? . For example intensity 13, dec2bin would be '1101'. Transpose gives
'1'
'1'
'0'
'1'
reshaping that to 1 row gives '1101' again, exactly what you already had. size('1101',2) is 4, and it has 1 row so D is reshape('1101',4,1) which gives the column vector again. What is the point??
Respuesta aceptada
Walter Roberson
el 11 de Dic. de 2021
filename = 'flamingos.jpg';
img = imread(filename);
bitstream = reshape((dec2bin(img(:), 8) - '0').', 1, []);
reconstructed = uint8( reshape(bin2dec(reshape(char(bitstream + '0'), 8, []).'), size(img)) );
imshow(img);
title('original');
imshow(reconstructed);
title('reconstructed');
7 comentarios
Walter Roberson
el 31 de En. de 2022
I would make the same recommendation for Arduino as for Raspberry Pi: send the entire bytes over the link, and have the destination break out the bits for transmission purpose. Write a bit of C or C++ code that will execute on the destination.
Más respuestas (0)
Ver también
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!


