clear all; clc; %图片文件名pic_data = imread('./test800x600.jpg'); pic_red = pic_data(:,:,1); pic_green = pic_data(:,:,2); pic_blue = pic_data(:,:,3); [ROW COL] = size(pic_red); %对原图像进行处理,将处理完的图像数据写入t800x600.txt fid = fopen('./t800x600.txt','w+'); for r = 1:ROW for c =1:COL %red取高三位,green取高三位,blue取高两位,拼成8位; %串口,一帧数据:8bit,原始图像像素点占24bit pic_out(r,c) = bitand(pic_red(r,c),224) + bitshift(bitand(pic_green(r,c),224),-3) + bitshift(bitand(pic_blue(r,c),192),-6); fprintf(fid,'%02x',pic_out(r,c)); end end fclose(fid); 图片自己网上下载,我自己传上去的可能会变形