作者jb679123 (straw man)
看板MATLAB
标题[问题] 图片偏移
时间Thu Jun 9 20:23:53 2016
大家好:
我尝试用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
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 140.123.103.106
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/MATLAB/M.1465475036.A.10A.html
1F:→ gR7P4zXH: 有传送端的吗 06/10 19:54
2F:→ jb679123: 传送端是写在FPGA里 里面的memory先存好图片 06/10 23:12
3F:→ jb679123: 然後再用UART传给电脑 06/10 23:13
4F:→ jb679123: g大觉得是送端的问题吗? 06/10 23:14
5F:→ gR7P4zXH: 猜是,但我没玩过FPGA。 06/11 13:36
6F:→ jb679123: 如果是FPGA的问题 那应该不会收到正常的图片? 06/11 13:45
7F:→ gR7P4zXH: 我用过arduino读sd卡的图片,用uart透过FT232传回matlab 06/11 13:47
8F:→ gR7P4zXH: ,因为途中有传错几次,所以加入CRC做检验。Serial有可 06/11 13:47
9F:→ gR7P4zXH: 能传错吗? 06/11 13:47
10F:→ jb679123: CRC指的是加上parity bit吗? 之前也有考虑这方式 06/11 15:06
11F:→ jb679123: 但感觉他是偏移掉跟传错好像不太相同 06/11 15:08
12F:→ gR7P4zXH: 我帮不上忙OAO 06/11 16:35
13F:→ jb679123: 感谢g大的意见Orz 06/11 17:32
14F:→ ryanwang: MATLAB是列(row)优先, C语言行(column)优先 06/13 00:57
15F:→ ryanwang: 应该是1维转2维排列顺序搞错 06/13 01:01
16F:→ jb679123: 不过图片有时候是收到正确的结果 06/13 20:01
17F:→ jb679123: 如果是转换错误的话应该不会出现正常的情况? 06/13 20:02