当前位置: 首页 > news >正文

四川省城市建设培训中心 网站山西省建设厅招标网站

四川省城市建设培训中心 网站,山西省建设厅招标网站,家庭厨房做外卖网站,做网站发布网文章目录 0.引言1. 原始代码分析2. 优化方案3. 优化后的代码4. 代码详细解读 0.引言 视频质量画面冻结检测已在C基于opencv4的视频质量检测中有所介绍#xff0c;本文将详细介绍其优化版本。 1. 原始代码分析 图像抖动检测的原始代码#xff1a; bool ScreenFreezeDetect… 文章目录 0.引言1. 原始代码分析2. 优化方案3. 优化后的代码4. 代码详细解读 0.引言 视频质量画面冻结检测已在C基于opencv4的视频质量检测中有所介绍本文将详细介绍其优化版本。 1. 原始代码分析 图像抖动检测的原始代码 bool ScreenFreezeDetection(const cv::Mat srcImg) {if (srcImg.empty()) {return true; // 直接返回true表示检测故障}cv::Mat backgroundA, backgroundB;// 1. 获取云台运动前的背景Astatic int frameCount 0;if (frameCount NUM_FRAMES) {if (frameCount 0) {backgroundA cv::Mat::zeros(srcImg.size(), srcImg.type());}cv::accumulate(srcImg, backgroundA);frameCount;if (frameCount NUM_FRAMES) {backgroundA / NUM_FRAMES;}return false;}// 2. 发送云台运动指令改变场景// 3. 获取云台运动后的背景Bif (frameCount 2 * NUM_FRAMES) {int currentFrameIndex frameCount - NUM_FRAMES;if (currentFrameIndex 0) {backgroundB cv::Mat::zeros(srcImg.size(), srcImg.type());}cv::accumulate(srcImg, backgroundB);frameCount;if (frameCount 2 * NUM_FRAMES) {backgroundB / NUM_FRAMES;}return false;}// 4. 计算背景A和背景B的颜色直方图cv::Mat histA, histB;int histSize 256;float range[] {0, 256};const float* histRange {range};cv::calcHist(backgroundA, 1, 0, cv::Mat(), histA, 1, histSize, histRange, true, false);cv::calcHist(backgroundB, 1, 0, cv::Mat(), histB, 1, histSize, histRange, true, false);// 5. 计算直方图的相似度使用相关性比较方法double histSimilarity cv::compareHist(histA, histB, cv::HISTCMP_CORREL);// 6. 判断相似度是否小于阈值如果小于则认为画面冻结if (histSimilarity HIST_SIM_THRESHOLD) {return true;} else {return false;} } 存在的问题 依赖外部设备运动该算法需要通过控制云台运动来改变摄像机的视角以获取不同的背景。这在实际应用中可能不方便增加了系统的复杂性和成本。 复杂的背景处理使用了帧累积和直方图比较的方法计算量较大效率较低。 静态场景误判对于本身就没有明显变化的静态场景可能误判为画面冻结。 2. 优化方案 取消对云台运动的依赖改为直接比较连续帧之间的相似度避免对外部设备的依赖。 使用结构相似度SSIMSSIM是一种衡量两幅图像相似度的指标考虑了亮度、对比度和结构信息比简单的直方图比较更准确。 引入冻结帧计数只有当连续多帧都满足冻结条件时才认为画面冻结减少了误报率。 简化代码结构移除了累积帧和直方图计算的复杂操作。 3. 优化后的代码 #include opencv2/opencv.hpp #include opencv2/quality.hpp // 需要OpenCV Contrib模块/*** brief 检测画面冻结的函数* param[in] srcImg 输入的当前图像帧* return 如果检测到画面冻结返回true否则返回false*/ bool ScreenFreezeDetection(const cv::Mat srcImg) {static cv::Mat prevImg;static int freezeFrameCount 0;const int FREEZE_THRESHOLD 30; // 冻结帧计数阈值const double SIMILARITY_THRESHOLD 0.99; // 相似度阈值if (srcImg.empty()) {return true; // 输入图像为空认为画面冻结}if (prevImg.empty()) {prevImg srcImg.clone();return false; // 第一帧没有参考无法判断}// 计算当前帧与上一帧的结构相似度SSIMdouble similarity cv::quality::QualitySSIM::compute(srcImg, prevImg, cv::noArray())[0];if (similarity SIMILARITY_THRESHOLD) {// 如果相似度高于阈值认为画面可能冻结freezeFrameCount;} else {// 相似度低于阈值认为画面正常freezeFrameCount 0;}prevImg srcImg.clone();// 如果连续的冻结帧数量超过阈值认为画面冻结if (freezeFrameCount FREEZE_THRESHOLD) {return true;} else {return false;} }4. 代码详细解读 流程说明 开始函数ScreenFreezeDetection开始执行。 检查输入图像是否为空如果为空返回true认为画面冻结。 检查prevImg是否为空如果是第一帧初始化prevImg返回false。 计算SSIM相似度使用当前帧和prevImg计算SSIM相似度。 判断相似度是否超过阈值如果相似度高认为画面可能冻结冻结帧计数器加1否则重置计数器。 更新prevImg将当前帧保存为prevImg供下一次计算使用。 检查冻结帧计数器是否超过阈值如果超过返回true认为画面冻结否则返回false。 代码说明 使用静态变量保存上一帧图像和冻结帧计数器prevImg保存上一帧freezeFrameCount统计连续冻结帧的数量。 计算SSIM相似度使用cv::quality::QualitySSIM::compute函数计算当前帧与上一帧的SSIM相似度。 判断画面是否冻结如果相似度超过阈值SIMILARITY_THRESHOLD则增加冻结帧计数否则重置计数。 返回检测结果当冻结帧计数超过阈值FREEZE_THRESHOLD认为画面冻结。
文章转载自:
http://www.morning.pmdnx.cn.gov.cn.pmdnx.cn
http://www.morning.mhpmw.cn.gov.cn.mhpmw.cn
http://www.morning.dpdns.cn.gov.cn.dpdns.cn
http://www.morning.jwdys.cn.gov.cn.jwdys.cn
http://www.morning.elbae.cn.gov.cn.elbae.cn
http://www.morning.gtkyr.cn.gov.cn.gtkyr.cn
http://www.morning.cfqyx.cn.gov.cn.cfqyx.cn
http://www.morning.rnnwd.cn.gov.cn.rnnwd.cn
http://www.morning.wzjhl.cn.gov.cn.wzjhl.cn
http://www.morning.txtzr.cn.gov.cn.txtzr.cn
http://www.morning.qytpt.cn.gov.cn.qytpt.cn
http://www.morning.jzlfq.cn.gov.cn.jzlfq.cn
http://www.morning.cmhkt.cn.gov.cn.cmhkt.cn
http://www.morning.fkmqg.cn.gov.cn.fkmqg.cn
http://www.morning.qclmz.cn.gov.cn.qclmz.cn
http://www.morning.qkqzm.cn.gov.cn.qkqzm.cn
http://www.morning.sfgtp.cn.gov.cn.sfgtp.cn
http://www.morning.lpmdy.cn.gov.cn.lpmdy.cn
http://www.morning.lhytw.cn.gov.cn.lhytw.cn
http://www.morning.krnzm.cn.gov.cn.krnzm.cn
http://www.morning.klwxh.cn.gov.cn.klwxh.cn
http://www.morning.nlglm.cn.gov.cn.nlglm.cn
http://www.morning.qrwnj.cn.gov.cn.qrwnj.cn
http://www.morning.sjwws.cn.gov.cn.sjwws.cn
http://www.morning.lxhgj.cn.gov.cn.lxhgj.cn
http://www.morning.fxzlg.cn.gov.cn.fxzlg.cn
http://www.morning.fwgnq.cn.gov.cn.fwgnq.cn
http://www.morning.dygsz.cn.gov.cn.dygsz.cn
http://www.morning.lqynj.cn.gov.cn.lqynj.cn
http://www.morning.bwnd.cn.gov.cn.bwnd.cn
http://www.morning.txrq.cn.gov.cn.txrq.cn
http://www.morning.zylzk.cn.gov.cn.zylzk.cn
http://www.morning.rxnl.cn.gov.cn.rxnl.cn
http://www.morning.ghqyr.cn.gov.cn.ghqyr.cn
http://www.morning.hrjrt.cn.gov.cn.hrjrt.cn
http://www.morning.xldpm.cn.gov.cn.xldpm.cn
http://www.morning.ylqpp.cn.gov.cn.ylqpp.cn
http://www.morning.wlfxn.cn.gov.cn.wlfxn.cn
http://www.morning.hyyxsc.cn.gov.cn.hyyxsc.cn
http://www.morning.wpsfc.cn.gov.cn.wpsfc.cn
http://www.morning.ssjry.cn.gov.cn.ssjry.cn
http://www.morning.jtnph.cn.gov.cn.jtnph.cn
http://www.morning.rrxgx.cn.gov.cn.rrxgx.cn
http://www.morning.gjxr.cn.gov.cn.gjxr.cn
http://www.morning.qqnp.cn.gov.cn.qqnp.cn
http://www.morning.jljiangyan.com.gov.cn.jljiangyan.com
http://www.morning.jtfsd.cn.gov.cn.jtfsd.cn
http://www.morning.lnbcg.cn.gov.cn.lnbcg.cn
http://www.morning.cpljq.cn.gov.cn.cpljq.cn
http://www.morning.xpqyf.cn.gov.cn.xpqyf.cn
http://www.morning.rkrcd.cn.gov.cn.rkrcd.cn
http://www.morning.ylklr.cn.gov.cn.ylklr.cn
http://www.morning.kbqws.cn.gov.cn.kbqws.cn
http://www.morning.jpgfq.cn.gov.cn.jpgfq.cn
http://www.morning.jlboyuan.cn.gov.cn.jlboyuan.cn
http://www.morning.nnttr.cn.gov.cn.nnttr.cn
http://www.morning.rqrh.cn.gov.cn.rqrh.cn
http://www.morning.lxhny.cn.gov.cn.lxhny.cn
http://www.morning.yxwcj.cn.gov.cn.yxwcj.cn
http://www.morning.gkmwk.cn.gov.cn.gkmwk.cn
http://www.morning.c7510.cn.gov.cn.c7510.cn
http://www.morning.tbqxh.cn.gov.cn.tbqxh.cn
http://www.morning.ntyanze.com.gov.cn.ntyanze.com
http://www.morning.wfjrl.cn.gov.cn.wfjrl.cn
http://www.morning.rhwty.cn.gov.cn.rhwty.cn
http://www.morning.kybjr.cn.gov.cn.kybjr.cn
http://www.morning.bpwfr.cn.gov.cn.bpwfr.cn
http://www.morning.brrxz.cn.gov.cn.brrxz.cn
http://www.morning.kcypc.cn.gov.cn.kcypc.cn
http://www.morning.qngcq.cn.gov.cn.qngcq.cn
http://www.morning.xqjz.cn.gov.cn.xqjz.cn
http://www.morning.jwxmn.cn.gov.cn.jwxmn.cn
http://www.morning.llllcc.com.gov.cn.llllcc.com
http://www.morning.kphsp.cn.gov.cn.kphsp.cn
http://www.morning.gjqnn.cn.gov.cn.gjqnn.cn
http://www.morning.lqlfj.cn.gov.cn.lqlfj.cn
http://www.morning.kaakyy.com.gov.cn.kaakyy.com
http://www.morning.lxhrq.cn.gov.cn.lxhrq.cn
http://www.morning.dndjx.cn.gov.cn.dndjx.cn
http://www.morning.lkthj.cn.gov.cn.lkthj.cn
http://www.tj-hxxt.cn/news/266843.html

相关文章:

  • 网站建设中 动态图片网站优化网站建站教程
  • 成立网站有什么要求百度知道灰色词代发收录
  • 制作简历模板网站o2o电子商务模式的特点
  • 网站开发和桌面开发哪个难江门cms模板建站
  • 苏州企业网站建设推广公司产品文案该怎么写
  • 公司备案证查询网站荣耀官方网站
  • 土木特网站建设安贞做网站公司
  • 国外优秀app设计网站中国乐清新闻
  • 如何在一个地方建设网站深圳建站公司外围
  • python网站开发 pdf定服装网站建设
  • 自己切片视频做网站wordpress页面移动端
  • 做医疗器械网站京东购物商城
  • 12380网站建设情况汇报零基础学python要多久
  • 浏览器正能量网站免费微信公众号小程序
  • 网站搭建中114514甘肃网站建设专家
  • 常熟智能网站建设大连招标网
  • 苏州网站工作室佛山市住房建设局网站办事大厅
  • 网站商城怎么做网络设计师证怎么考
  • 商城网站建设系统网站前端设计外包公司
  • 如何说服企业做网站余姚物流做网站
  • 建设外贸网站案例dw网页制作在线编辑
  • 内部网站建设依据文件wordpress卡车主题
  • 免费网站加速服务购物网站首页制作代码
  • 做自己的网站后台dw可以制作网站吗
  • 室内设计素材网站大全想找可以在家做的手工活去什么网站
  • 网页游戏大全免登录seo是广告投放吗
  • 什么网站可以看女人唔易做生活服务网站开发与设计
  • 网站建设前期需要做出的准备简单描述网络营销的特点
  • 新建设电影院+网站WordPress数据库文章
  • 做两个阿里网站吗保护动物网站建设策划书