概要
根据客户的需求,基于Mongoose平台搭建了视频质量服务系统,该系统的主要功能包含生成base64图像数据、接收postman的数据参数推送、视频质量算法分析以及处理结果的指定地址推送功能,该系统已经在windows、centos、kylin、ubuntu等系统上做过相关适配工作,算法已经达到商业级应用需求。
这次把之前积累的单机版工具和算法的server版本都做了说明,并记录一下自己的成果。
![](https://i-blog.csdnimg.cn/direct/aca87b7b26824650855be4a4678b0f68.gif)
Mongoose介绍
Mongoose 是一个 C/C++ 网络库。它实现了事件驱动, TCP、UDP、HTTP、WebSocket、MQTT 的非阻塞 API。它连接设备 并将它们带到网上。自 2004 年以来,一些开源和商业 产品已经利用了它。它甚至运行在 国际空间站! Mongoose 使嵌入式网络编程变得快速, 坚固且简单。
具体算法介绍,可以参考我的另一个博客:
算法单机版测试工具
视频质量诊断算法,由于之前数据不足,因此采用传统的方法进行检测,存在一些疑难的问题解决不掉,当前已经积累了10几年的数据,采用分类模型做了训练和检测工作并设计了更高精度的算法模型,主要涉及的功能有:亮度异常检测、偏色检测、图像噪声检测、条纹噪声检测、清晰度检测、信号丢失检测、遮挡检测和对比度检测等算法。具体的检测方法如下:
![视频质量诊断单机版工具](https://i-blog.csdnimg.cn/direct/ff5aa2e6e3114bb98c3b1bfc74ad7856.png)
工具下载地址:链接:https://pan.baidu.com/s/1OIna94RygMs37EoHUBVoqA 提取码:2avj
算法服务的使用方法
1、genBase64Data.bat
生成base64图像数据,该接口产生的数据为标准的数据。
2、运行程序
双击run.bat,启动算法服务。
3、启动异步接收
双击http_server.exe,可以异步接收算法服务的推送结果。
4、通过postman测试
具体的操作流程可以观看runAlg.mp4
![](https://i-blog.csdnimg.cn/direct/3596f5a1ab2a421493d14dd67f2b02a4.png)
诊断服务应用软件地址:
百度网盘分享:链接:https://pan.baidu.com/s/19POiqVWOUjl4defSzppk9g 提取码:4tc0
小结
整个数据的筛选也比较耗时,把之前积攒的十几年的数据和自己搜集的数据,加上一些预处理工作,大概花了几年的时间,一共搜集了近200w张样本数据,目前算法已经支持Python和C++代码,并只依赖了opencv库,也算小有成就。通过深度学习进行训练之后,整个算法精度比传统算法提高30%,满足了大多项目上的需求,需要沟通,可以加上面图中单机版本工具左下角的QQ,一起讨论技术。