目标检测的调查研究报告
一、引言
计算机视觉问题主要分为四个:图像分类、目标检测、语义分割以及实例分割。作为计算机视觉的基本问题之一,目标检测构成了许多其他视觉任务的基础,例如实例分割,图像标注和目标跟踪等;从检测应用的角度看:行人检测、面部检测、文本检测、交通标注与红绿灯检测,遥感目标检测统称为目标检测的五大应用。本文就目标检测的具体实现,将基于现有的相关论文文献,从基于树莓派的目标检测和多物联网终端共同配合实现视频目标检测两个方面来介绍我们的调研成果。
二、调研成果
1.基于真实树莓派的目标检测所需要考虑的因素调研
树莓派已经成为了一款广泛应用于教育、嵌入式系统、物联网等领域的小型计算机。在树莓派上实现相应的目标检测,需要考虑以下因素
1)树莓派的硬件性能
图1 树莓派4B
作为一个嵌入式开发模板,树莓派的性能虽然一直在增强,在2019年6月发布的树莓派4B,采用了Broadcom BCM2711芯片,包括四个ARM Cortex-A72处理器和1GB、2GB或4GB内存。它的性能比第三代树莓派提高了3倍,同时支持双4K显示器输出和USB 3.0接口。但是相对于大型的计算机而言,树莓派的相对性能是较为弱小的,因此硬件的性能是限制树莓派上目标检测的因素之一。合适的才是最好的,需要注意树莓派的内存和存储容量,以避免算法运行过程中出现内存不足或存储空间不足的情况。因此在算法的选择上,轻量级的目标检测算法,例如:YOLOv3-tiny,YOLOv4-tiny,SSDLite等,这些算法虽然相对于大型的目标检测算法来说精度可能较差,但是更加适用于树莓派这样的嵌入式开发平台。
2)树莓派的系统环境
树莓派一般使用的是linux的运行环境,为了满足实现目标检测的要求,需要向树莓派安装各种各样的库,比如OpenCV、TensorFlow等,来支持对于目标检测算法的运行,只有在系统环境配置好的情况下,相应的软件程序才能成功在树莓派平台上成功运行。
图2 TensorFlow和OpenCV
3)树莓派的数据集准备
目标检测算法脱胎于机器学习,因此在其部署和使用的过程中,需要大量的标注数据来训练其模型,保证目标检测的准确度与速度。因此,在树莓派上实现目标检测,同样需要大量准备好的标注数据集。同时在选择数据集时,应当考虑数据集的规模,质量,标注等问题,根据最后的目标检测要求,选择合适的数据集进行训练,以得到一个优秀的模型。
4)树莓派应用的模型的优化
受限于树莓派的计算性能和内存,我们必须使用轻量化技术,通过一系列技术手段,减少模型的参数量和计算量,以达到模型轻量化的目的。常见的轻量化技术有:剪枝,量化,蒸馏等。同时我们还应当提高模型的训练速度和准确率,确保模型在部署到树莓派后有较好的算法性能。
图3 一般的轻量化步骤
5)树莓派的硬件设备
硬件设施决定了图像的获取速度以及系统的运行效率,因此为了确保一个高效的目标检测的实现,应当选择高性能,轻量化的处理器和图像采集设备。树莓派在条件允许的情况下,可以选择最新版本的树莓派4B。除此之外,可以选择更加优秀的高清摄像头,更加出色的传感器,来保证对于目标获取的准确性与清晰度。此外,还需要提供一个稳定的电源设备,为算法程序的执行提供足够的能量输出。另外,在最后装配阶段的连线需要检查确认,保证不因为自己的连线失误导致了目标检测不能够顺利执行。
图4 网络摄像机和树莓派的连接
2.多物联网终端共同配合实现视频目标检测
视频的目标检测是指在视频中检测出目标物体的位置和大小,并对其进行分类和识别的过程。与图像目标检测不同的是,视频目标检测需要考虑目标物体在时间上的连续性和运动特征。视频目标检测的应用场景包括视频监控、自动驾驶、智能家居等领域。多物联网终端共同配合实现视频的目标检测,有以下好处:
1)提高了检测性能:
多个物联网终端共同进行视频的预定目标进行检测,可以通过综合分析不同物联网终端上传的数据,来提高目标检测的准确率。同时由于多个物联网终端的配合,大大提高了对于目标检测的速度。
2)降低了检测成本,提高系统的鲁棒性:
多个物联网终端实现目标检测,可以避免单一的物联网终端检测的性能瓶颈,可以降低单个终端的成本,实现1+1>=2。同时,由于是多个物联网终端,当某一个终端节点出现故障时,可以调用其余的终端,来保证对目标的检测,提高系统的鲁棒性。
在多物联网终端进行视频检测时,我们应当注意以下问题:
1)确定合适的物联网终端:
我们应当选取合适的终端或者传感器,使得能清晰的采集视频目标数据。此外视频目标检测需要消耗较高的计算资源,虽然我们可以因为应用了多物联网终端来进行视频检测来降低了相应的终端硬件要求,但仍旧需要保证终端的硬件性能能够达到目标检测的要求标准。如果终端性能不足,则可能导致检测结果的准确率降低。
2)多物联网终端的拓扑布置:
基于多物联网终端的目标检测,拓扑结构直接影响着对于目标检测的处理,以往主流的架构都是集中式的框架下处理,即多个传感器仅提供数据采集和传输功能,将最终的计算交付于中心服务器或者云服务器来实现。但随着数据量的不断提升,越来越多的数据传输,网络带宽限制,以及高延迟网络下的视频监控,向这种模式发起了挑战。边缘计算目前作为云计算的补充,边缘+云的模式为多物联网终端实现目标检测提供了一个可行的解决方案。通过利用互联网边缘的存储和计算资源,边缘计算可以为多物联网终端应用提供分布式实时媒体数据处理和分析。同时,与云协同形成边缘云计算,边缘计算也可以作为融合计算,通过AI整合来自分布式边缘设备的数据。
图5 一种云+边端的协同布局模式
3)网络的带宽限制以及多物联网终端的通信与协同
网络传输的带宽时限制数据传输的主要因素。我们必须在端的方面进行一个数据传输的优化,保证可以在多物联网终端组网完成后实现稳定可靠的数据传输。此外,物联网终端需要协同与配合来实现对于视频目标检测。我们应当设置相应的算法来保证多终端始终对感兴趣的目标的检测,以及出现故障时如何调取其余节点接替工作,同时应当设计相应的分布式算法来是实现多物联网终端的消息通信,数据共享以及协同计算。
4)相应的目标检测算法
受限于物联网终端的硬件性能,如前文中提到的常用于物联网系统的树莓派等,在对视频进行目标检测时,我们必须要考虑如何在物联网终端上实现。因此,我们算法可以考虑上文所提到的基于深度学习的轻量级目标检测算法,如YOLOv3-tiny,YOLOv4-tiny,SSDLite实现一个AIot的物联网终端,以此来保证对于目标视频检测的准确性。
图6 YOLOv4-tiny模型
5)多物联网的安全性和隐私保护问题
作为一个多物联网终端共同实现视频目标检测的系统,我们应当考虑到视频数据传递时的安全性和隐私性问题,防止有人恶意破坏物联网终端或者数据传输,以此来达到不能正确检测目标的目标。
6)系统的集成和目标管理
多物联网终端的视频目标检测系统应当提供一个人机交互的接口,我们对于目标的选择应当是选择我们感兴趣的目标或者说有趣的目标,以此为出发点,来进行目标检测。所以我们应当设置一个管理的平台,来保证对于目标选择的人为可控性以及对于物联网终端的可控性与感知能力,提高系统的智能性以及个性化服务的能力。
综上,以上就是我们组对于目标检测的相应调查结果。
三、主要参考文献
[1]舒文灿. 基于YOLOv4的梨子检测算法研究及轻量化系统实现[D].安徽大学,2021.DOI:10.26917/d.cnki.ganhu.2021.000937.
[2]Y. -Y. Chen, Y. -H. Lin, Y. -C. Hu, C. -H. Hsia, Y. -A. Lian and S. -Y. Jhong, "Distributed Real-Time Object Detection Based on Edge-Cloud Collaboration for Smart Video Surveillance Applications," in IEEE Access, vol. 10, pp. 93745-93759, 2022, doi: 10.1109/ACCESS.2022.3203053.
[3]https://blog.csdn.net/best_xiaolong/article/details/117004091?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522168238476716800182144466%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fall.%2522%257D&request_id=168238476716800182144466&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~all~first_rank_ecpm_v1~rank_v31_ecpm-20-117004091-null-null.142^v86^insert_down38v5,239^v2^insert_chatgpt&utm_term=%E6%A0%91%E8%8E%93%E6%B4%BE4b%E5%90%84%E4%B8%AA%E7%AB%AF%E5%8F%A3%E7%9A%84%E5%8A%9F%E8%83%BD&spm=1018.2226.3001.4187
小组成员:宋戈扬,朱柯豪,李卓
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!