所以我的问题以一般的方式,MATLAB只显示白色图像,有时一个像素蓝色/红色/粉红色。
详细说明:我正在使用PSoC微控制器,数据从图像传感器(OV7620)获取为RGB422(Bayer-Pattern)。然后使用UART将它们发送到MATLAB。
在MATLAB中,我获取数据(按照BGRG的顺序),然后将它们分类为redChannel,greenChannel(取两个绿色的平均值)和blueChannel。
然后我使用函数rgbImage = cat(3,redChannel,greenChannel,blueChannel)来组合红色,绿色和蓝色。
使用imshow(rgbImage)后,我得到了前面描述的结果。
这个过程可能有什么问题?
编辑(请求的示例):
Data = query (obj, ‘*IDN?’); % Receive data from the uC as BGRG for example 65 45 76 60%
%Now the data will be put into blueChannel(BC), GC, RC%
blueChannel = Data(1) % this is blue
greenChannel =( Data(2) + Data(4) ) /2 %Take the AVG of green%
redChannel=Data(3) % This is red
%Now combing those three will only give me 1 pixel
rgbImage = cat(3,redChannel, greenChannel, redChannel);
imshow(rgbImage); %here the results is white picture regardless the rgb values sometimes I get like a single pixel between them blue/red/pink like a random color