jpeg图片接收显示测试上位机[串口 网络 摄像头上位机软件 开源]

2019-07-20 04:14发布

之前用过一个类似软件,只能用串口接收,而且速度有限,并且还很耗CPU。前不久调USB摄像头的时候自己用C++写了一个,支持串口接收和网络接收JPEG图像序列。现在发出来给需要的同学,方便各位的程序调试。

串口接收功能:
串口端口无限制,自动检测电脑可用端口,波特率从9600到921600可选,默认不支持流控制和奇偶校验,8位数据位一位停止位。不需要通信协议,自动从接收的数据中判断JPG数据的起始(FFD8)结束(FFD9)标志,不包含在起始结束标志之间的数据默认为非jpg数据并显示在数据接收窗口(目前只支持文本显示,16进制暂未实现),支持接收数据量显示,帧速率显示(可能计算的不太准确),一帧JPG图像数据大小显示,图像分辨率显示。串口发送功能暂未实现。

网络接收功能:
上位机也支持通过网络接收JPG图片序列。数据接收功能和图像显示功能同串口。上位机默认作为服务器端,且暂时只支持TCP服务器,UDP未实现。目前只支持一个客户端的连接,可显示客户端的连接状态和IP。

注意:
串口接收功能和网络接收功能可同时开启,但如果同时接收数据会造成数据混乱从而导致图像显示不正常。
串口和网络的发送功能均暂未实现(暂时用不到发送功能)。
本人实测通过TCP本地回环接收TCP客户端发来的MJPG编码的1080P avi视频文件,网络速度3~5MB/s(360加速球显示),图像显示速率20~30fps,CPU(i5 750)占用25%左右,串口传输效果可以看这里链接里的视频http://pan.baidu.com/s/1jGDA9s6
软件目前还算稳定,之前测试传输了几个小时的图像也没什么问题,可能还有些小bug,欢迎反馈。

测试截图
51.jpg

添加不了附件了,二楼传

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
50条回答
xijiele
1楼-- · 2019-07-23 06:30
正点原子 发表于 2016-1-19 10:31
经常.
具体的步骤:  设置921600接收图片.打开串口. 正常接收....
如果此时选择保存图片,然后设置保存路 ...

我这边用921600波特率传输640x480的图片按照你说的操作测试了好几次,但是是没遇到什么问题,只是在传输数据时选择保存图片弹出对话框的时候会稍微卡一下,但不至于卡死。至于后面数据溢出可能是程序卡死所致。如果出现这种问题可以在接收图片前设置保存路径再开始接收。在921600波特率传输的时候串口数据接收本身就会比较占用CPU,然后再加上界面线程的处理,如果CPU处理不过来的话是有可能造成卡死。因此上面提到了下一版的计划,看能不能有所改善。
正点原子
2楼-- · 2019-07-23 09:49
 精彩回答 2  元偷偷看……
login_FAE
3楼-- · 2019-07-23 13:02
你好,麻烦问下,串口收到的数据,你怎么处理的呢?
是一帧一帧的截取再显示么,还是有其他的方法
谢谢,
我现在是这样想的,定时处理收到的数据,取出其中一帧jpeg数据再用pictureBox来显示,怕这样来处理显示速度会限制很多
不知道大神用的什么方法
STM32_2022
4楼-- · 2019-07-23 17:15
很牛!
xijiele
5楼-- · 2019-07-23 18:21
 精彩回答 2  元偷偷看……
hehelloook
6楼-- · 2019-07-23 22:15
GAO DA SHANG!

一周热门 更多>