SIM800彩信 Opencv fopen与imencode数据不一致

aYoungProgramer 2018-03-21 11:09:20
我做一个用opencv读取摄像头,然后将图片发送给sim800c再彩信发送的报警小程序。无法把opencv的Mat类型直接发送。目前采取了一个折中方案,先imwrite写入jpg,然后用fopen打开图片然后用串口发送就可以。
然后我发现有个imencode函数。我就写了个测试,先用imread读取图片然后imencode到vector<uchar>里,再一位一位发送,发现就报错。调试后发现imencode获得的数据量比fopen的大一倍大概。
目前也没啥解决思路,所以请各位高手看看,是什么问题,有更好的解决方案么?
...全文
445 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
aYoungProgramer 2018-03-23
  • 打赏
  • 举报
回复
我试过data按位发送没有效果,还是报错,目前只有fopen jpg图像然后发送才能正确收到
robertbo 2018-03-22
  • 打赏
  • 举报
回复
可以使用img_color.data按位发送,或者img_color.ptr<uchar>(y)按行发送,当然,如果是3通道的需要根据实际情况使用数据
赵4老师 2018-03-21
  • 打赏
  • 举报
回复
无profiler不要谈效率!!尤其在这个云计算、虚拟机、模拟器、CUDA、多核 、多级cache、指令流水线、多种存储介质、……满天飞的时代! 如果你实在担心写读文件磨损硬盘且效率不高的话,把文件放在一个RamDisk上。

2,425

社区成员

发帖
与我相关
我的任务
社区描述
硬件/嵌入开发 其他硬件开发
社区管理员
  • 其他硬件开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧