[问题] 图片偏移

楼主: jb679123 (straw man)   2016-06-09 20:23:53
大家好:
我尝试用matlab建立serial port来接收图片(UART传输)
但收到的图片有时会跑掉 有时是正常的结果
如图所示: http://imgur.com/tbPd1E1
左边是正常的情况 右边是偏掉的情况
如果往左偏掉的话,原本图最左边的部分会跑到右边
下面是我的程式码:
clear all
close all
s = serial('COM3','BaudRate',115200, 'Parity',
'none','DataBits',8,'StopBits',1);
s.InputBufferSize=200000;
s.timeout=20;
fopen(s);
flushinput(s);
D=fread(s,[200,200]);
E=fread(s,[200,200]);
F=fread(s,[200,200]);
image_RGB(:,:,1)=D;
image_RGB(:,:,2)=E;
image_RGB(:,:,3)=F;
imwrite(image_RGB/256,'myimage.jpg','jpg');
imshow(image_RGB/256);
fclose(s);
fclose all;
不知道哪边还有改善的部分?
还请大家不吝指教 Orz
谢谢X
作者: gR7P4zXH (tpn7gpdx)   2016-06-10 19:54:00
有传送端的吗
楼主: jb679123 (straw man)   2016-06-10 23:12:00
传送端是写在FPGA里 里面的memory先存好图片然后再用UART传给电脑g大觉得是送端的问题吗?
作者: gR7P4zXH (tpn7gpdx)   2016-06-11 13:36:00
猜是,但我没玩过FPGA。
楼主: jb679123 (straw man)   2016-06-11 13:45:00
如果是FPGA的问题 那应该不会收到正常的图片?
作者: gR7P4zXH (tpn7gpdx)   2016-06-11 13:47:00
我用过arduino读sd卡的图片,用uart透过FT232传回matlab,因为途中有传错几次,所以加入CRC做检验。Serial有可能传错吗?
楼主: jb679123 (straw man)   2016-06-11 15:06:00
CRC指的是加上parity bit吗? 之前也有考虑这方式但感觉他是偏移掉跟传错好像不太相同
作者: gR7P4zXH (tpn7gpdx)   2016-06-11 16:35:00
我帮不上忙OAO
楼主: jb679123 (straw man)   2016-06-11 17:32:00
感谢g大的意见Orz
作者: ryanwang (irene)   2016-06-13 00:57:00
MATLAB是列(row)优先, C语言行(column)优先应该是1维转2维排列顺序搞错
楼主: jb679123 (straw man)   2016-06-13 20:01:00
不过图片有时候是收到正确的结果如果是转换错误的话应该不会出现正常的情况?

Links booklink

Contact Us: admin [ a t ] ucptt.com