驾驶员行为监控系统
驾驶员行为监控(物流公司等对驾驶员的危险驾驶监控)
开发语言 c++
硬件 选用了地平线旭日 3 环境linux
视觉算法 yolo5
功能包括:
1)从摄像头模块采集视帧
用地平线芯片硬件API直接采集
2)缩放视频。
地平线芯片硬件API直接缩放
3)将视频编码成 h264
实际使用时,在地平线开发板上接了两路 usb 摄像头和一个 MIPI 摄像头。用地平线的硬件编码 API,同时对三路码流进行编码.
4)原始音频采集
使用 alsa 库采集的声音。
5) 声音的编码
把原始的声音编码成 mp3
6) 视频和声音的混合
把 h264 和 mp3 混合成 mp4 文件。
7)文件的滚动存储
地平线开发板接硬盘,音视频编码成的 mp4 文件, 5 分钟一个 mp4 文件,超过一个月的文件自动删除。
8)码流传输模块:动态码流传输当某些情况触发时,编码端向服务器即时发送 h264 码流,以及 mp3 声音流。网络是 5G 网络。发送追求最小的延时,其中分辨率、帧率、码流、gopsize 可以根据网络状况等,进行动态的调整。比如编码端感觉网络有点拥堵,就通知接收端要降低分辨率和码流,发送新的分辨率、帧率、码流等参数给解码端,等解码端完成参数的更新调整,编码端发送新的参数的视频流到解码端。
接收端可以马上播放收到的视频流和声音。
9) 驾驶员手离开方向盘监控
这是危险驾驶监控的一项。驾驶员手离开方向盘时,会马上提示他,并截图发送给服务端,同时作出记录。
训练模型,识别手没在方向盘上,转化为地平线格式
10)打电话识别监控
训练模型识别打电话动作,转化为地平线格式
11)驾驶员疲劳状态监控
训练模型识别人员疲劳表情,转化为地平线格式
出行