当把摄像头采集到的RGB565格式的数据通过串口发送到电脑,收集到数据后,通过matlab恢复出图片,以便开发图像处理算法。具体代码如下:
function txt2img(filename)
%将txt文本文件转化为矩阵
%并显示为图片
src = textread(filename, '%s');
dst = hex2dec(src);
dst = reshape(dst,320*2,200);
dst = dst';
[width,height] = size(dst);
for i = 1:width
for j = 1:height/2
rgb = uint16(dst(i,j*2))*256 + uint16(dst(i,j*2 - 1));
r = uint8(bitshift(rgb,-11));
g = bitshift(rgb,-5);
g = uint8(bitand(g,63));
b = uint8(bitand(rgb,31));
r = r * 8 + 4;
g = g * 4 + 4;
b = b * 8 + 4;
img(i,j,1) = r;
img(i,j,2) = g;
img(i,j,3) = b;
end
end
figure,imshow(img);