咚咚咚————【Matlab】单片机读取摄像头回传的RGB数组绘制图片

咚咚咚————【Matlab】单片机读取摄像头回传的RGB数组绘制图片

    • (一)效果展示
    • (二)源码分享
    • (三)需要改进的地方及不足

(一)效果展示

咚咚咚————【Matlab】单片机读取摄像头回传的RGB数组绘制图片_第1张图片
咚咚咚————【Matlab】单片机读取摄像头回传的RGB数组绘制图片_第2张图片

咚咚咚————【Matlab】单片机读取摄像头回传的RGB数组绘制图片_第3张图片

(二)源码分享

(Excel部分函数)

=HEX2BIN(A1,8)&HEX2BIN(B1,8)	//将两个字节的十六进制数据转换成二进制,并在单元格C1显示
=BIN2DEC(MID(C1,1,5))*8	//分离RGB565中的red部分并填充0转成RGB888的red数据
=BIN2DEC(MID(C1,6,6))*4	//分离RGB565中的green部分并填充0转成RGB888的green数据
=BIN2DEC(MID(C1,12,5))*8	//分离RGB565中的blue部分并填充0转成RGB888的blue数据

(Matlab部分函数)

image = zeros(480,480,3);		%申请图片变量空间;
image = uint8(image);				 %强制转换成uint8格式
R = reshape(CH1,480,480);	%转换R数组行列(像素大小480*480)
G = reshape(CH2,480,480);	%转换G数组行列
B = reshape(CH3,480,480);	%转换B数组行列
image(:,:,1)= R;				%红色赋值
image(:,:,2)= G;				%绿色赋值
image(:,:,3)= B;				%蓝色赋值
imshow(image)					%绘制图片

(三)需要改进的地方及不足

后期会把Excel部分的函数移植到Matlab中处理,这样子剩下了操作步骤。

你可能感兴趣的:(摄像头,嵌入式,Matlab,绘图)