firefly-rk3399 开发记录6-摄像头处理错误

1.记录一个错误

在当前的使用方式下,在运行一段时间,几分钟,或者十几分钟之后出现如下错误,然后摄像头卡死了,整体程序就算是假死状态

CameraBin error: "Internal data stream error."

这个问题,没得什么头绪,度娘和谷歌都没看到有什么问题。这个问题在之前没有引入人脸检测时,是没有问题的,直到引入opencv做检测才出现。所以这里首先还是从检测部分还是入手检查,屏蔽cascade.detectMultiScale之后,程序又可正常运行,但是这里cv一般是没得什么问题的,有问题也不会影响到摄像头部分逻辑。分析了一下,初步估计是因为这个接口太耗时了,引入这个接口是map的,map和umap之间消耗接近400ms+,可能导致了什么内部资源的处理问题,才导致前面出现的错误信息。这里暂且先处理为将数据直接拷贝出来,map和unmap之间,仅仅是先做一个数据拷贝,结果还是不行。。。哎,GG了。难道是由于这里处理时间过长,不能用movetothread的方式。。。。。试一下,通过线程子类化method接口类,在run里面一直处理,通过全部变量处理值,把需要处理的frame映射之后,拷贝出来,放入全局变量,。。。结果还是不行

折腾了很久,发现是自定义的viewfinder有问题,取消之后,后面就可以了。。。暂时没找到原因,先不采用自定义的viewfinder。

2.YUV2RGB

在前面自定义的viewfinder测试中,每次通过手动YUV2RGB之后,刷label展示,发现CPU占用很高

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值