当前位置:   article > 正文

Leez AI局域网物体检测

ai局域网

1 常见的物 联 网 AI 计算模式

目前,物联网AI物体检测技术已经非常成熟了,它的计算模式只要有两种,一种是用云端来完成AI计算再把结果发回给终端,一种是直接在终端设备上做边缘计算

终端上做边缘计算对设备的计算性能要求比较高,于是谷歌推出了Edge TPU,可以以较低的延迟完成AI计算。如果手头没有Edge TPU,也可以使用ARM处理器来跑,就是速度慢很多,不能实时检测。

在云端计算领域,百度AI推出了EasyDL物体检测服务。在这种计算架构下,终端设备的计算量非常小。终端设备只需要负责图像采集,然后把图像发给云端,所有的AI计算都在云端完成,然后云端再把计算结果还给终端设备。

但是,云计算模式也有缺点,那就是带宽和数据延迟。云服务器实际上就是机房的虚拟主机,每台主机的共享网络带宽是受限的;然后,虚拟主机与你隔了几万里,中间又隔了好多个路由器;它距离你的设备越远,网络延迟也就越大。

2 局域网AI计算

如果使用网络计算模式,有没有方法减少这种延迟呢?
很简单,把计算服务器布置在本地就好了。

技术上,我可以给桌面台式机编写一个程序把它变成计算服务器,让它处理来自LeezP710的图像,然后用低延迟的UDP协议发送回去。另外,要注意WIFI转发的延迟也很大,所以尽量使用千兆以太网。正好,我手头这块Leez P710开发板和我的桌面台式机都带有千兆网络接口。

这个开发需求,对我们这种linux老司机来说,非常简单,一晚上就能把功能实现。

是展示真正的技术的时候啦!

3 功能实现

我很快就把猫咪检测的demo做出来了,而且还是个通用度很高、可维护性很好的代码,稍加修改就可变成检测人、狗或车辆的。
程序我都会开源到github,不管你学或不学,学得会或学不会,我的开源方案全套源代码都在那里。

3.1 终端设备

Leez P710上面开启了两个程序,一个是mjpg streamer,把USB摄像头捕获的图像发给局域网的计算服务器。另一个是我编写的clouddetec客户端程序。这两个程序都不涉及AI计算,所以可以跑得飞快。

其中,mjpg streamer来自开源项目,用于实现Leez P710的USB摄像头图像采集,安装方法见我另一篇帖子《USB摄像头填坑记》

LeezP710启动网络视频流的脚本如下


mjpg_streamer -o "output_http.so -w ./www" -i "input_uvc.so -d

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/空白诗007/article/detail/995500
推荐阅读
相关标签
  

闽ICP备14008679号