VideoPipe从国庆节上线源代码到现在经历过了一个月时间 , 期间吸引了若干小伙伴的参与 , 现将本阶段新增内容总结如下 , 有兴趣的朋友可以加微信拉群交流 。
项目地址:https://github.com/sherlockchou86/video_pipe_c
以往文章:https://www.cnblogs.com/xiaozhi_5638/p/16767917.html
跟踪插件新增了跟踪插件 , 同时实现了默认的SORT目标跟踪算法 , 后期扩展Deep SORT算法非常方便 。下面是车辆跟踪的效果(底部是pipe运行状态图):
![2022-11-4 VideoPipe可视化视频结构化框架新增功能详解](https://m.360buyimg.com/jdcms/jfs/t1/30953/40/18651/10171280/6364cc91E96b0788a/6d23be4829b03922.gif)
文章插图
下面是人脸跟踪的效果:
![2022-11-4 VideoPipe可视化视频结构化框架新增功能详解](https://m.360buyimg.com/jdcms/jfs/t1/211738/35/22829/6277173/6364cc98E7dded614/bc9ffc6390a4fd55.gif)
文章插图
录像和截图插件新增了录像截图插件 , 同时提供了一个人工模拟录像或截图的接口供测试 。当用户向管道中发送录像、截图控制指令时 , 录像截图插件就开始异步工作 。下面是异步录像原理:
![2022-11-4 VideoPipe可视化视频结构化框架新增功能详解](http://shimg.jingyanzongjie.com/230727/1I63B191-2.png)
文章插图
日志库新增了一个轻量级的日志库 , 支持多线程异步日志写入、支持日志文件自动拆分 。日志没使用第三方库 , 下面是日志使用方法和效果:
1 // log level 2 VP_SET_LOG_LEVEL(_log_level); 3 // log file dir 4 VP_SET_LOG_DIR(_log_dir); 5 6 // log to console or not 7 VP_SET_LOG_TO_CONSOLE(_log_to_console); 8 // log to file or not 9 VP_SET_LOG_TO_FILE(_log_to_file);10 // TO-DO11 VP_SET_LOG_TO_KAFKA(_log_to_kafka);1213 // include log level or not14 VP_SET_LOG_INCLUDE_LEVEL(_include_level);15 // include code location or not (where the log occurs)16 VP_SET_LOG_INCLUDE_CODE_LOCATION(_include_code_location);17 // include thread id or not (std::this_thread::get_id())18 VP_SET_LOG_INCLUDE_THREAD_ID(_include_thread_id);1920 // warn if log cache in memory exceed this value21 VP_SET_LOG_CACHE_WARN_THRES(_log_cache_warn_threshold); 1 [2022-11-04 14:12:47.218][Info ] [file_src_0] reading frame complete, total frame==>354 2 [2022-11-04 14:12:47.219][Info ] [file_src_0] cycle flag is true, continue! 3 [2022-11-04 14:15:23.416][Warn ][7ffff7f81000][../nodes/vp_infer_node.cpp:39] [vehicle_detector] cv::dnn::readNet load network failed! 4 [2022-11-04 14:15:24.227][Info ][7ffff7f81000][../nodes/vp_screen_des_node.cpp:14] [screen_des_0] [appsrc ! videoconvert ! textoverlay text=screen_des_0 halignment=left valignment=top font-desc='Sans,16' shaded-background=true ! timeoverlay halignment=right valignment=top font-desc='Sans,16' shaded-background=true ! queue ! fpsdisplaysink video-sink=ximagesink sync=false] 5 [2022-11-04 14:15:24.227][Info ][7ffff7f81000][../utils/analysis_board/../vp_pipe_checker.h:167] 6 ############# pipe check summary ############## 7total layers: 5 8layer index,node names 91file_src_0,102vehicle_detector,113track_0,124osd_0,135screen_des_0,14 ############# pipe check summary ##############1516 [2022-11-04 14:16:04.638][Info ][7fff47318700][../nodes/vp_file_src_node.cpp:66] [file_src_0] reading frame complete, total frame==>99917 [2022-11-04 14:16:04.639][Info ][7fff47318700][../nodes/vp_file_src_node.cpp:68] [file_src_0] cycle flag is true, continue!18 [2022-11-04 14:16:45.258][Info ][7fff47318700][../nodes/vp_file_src_node.cpp:66] [file_src_0] reading frame complete, total frame==>199919 [2022-11-04 14:16:45.259][Info ][7fff47318700][../nodes/vp_file_src_node.cpp:68] [file_src_0] cycle flag is true, continue!20 [2022-11-04 14:17:25.838][Info ][7fff47318700][../nodes/vp_file_src_node.cpp:66] [file_src_0] reading frame complete, total frame==>299921 [2022-11-04 14:17:25.839][Info ][7fff47318700][../nodes/vp_file_src_node.cpp:68] [file_src_0] cycle flag is true, continue!22 [2022-11-04 14:18:06.498][Info ][7fff47318700][../nodes/vp_file_src_node.cpp:66] [file_src_0] reading frame complete, total frame==>3999
经验总结扩展阅读
- 图数据 3D 可视化在 Explorer 中的应用
- three.js webgl3D光伏,3D太阳能能源,3D智慧光伏、光伏发电、清洁能源三维可视化解决方案——第十六课
- three.js 如何用webgl搭建一个3D库房,3D仓库3D码头,3D集装箱,车辆定位,叉车定位可视化孪生系统——第十五课
- three.js 如何用webgl搭建一个3D库房,3D仓库,3D码头,3D集装箱可视化孪生系统——第十五课
- reportportal 集成 robotframework 自动化执行及结果可视化
- react 可视化编辑器1
- python-绘图与可视化
- kubernetes Tcp流量可视化
- VideoPipe可视化视频结构化框架开源了!
- 【.NET 6+Loki+Grafana】实现轻量级日志可视化服务功能