图片马赛克检测

视频在传输过程中,由于编解码出现问题,会导致视频出现不同程度的损伤,其中就包括视频马赛克现象。马赛克对于视频的观看效果有着很大的影响,为了及时有效地发现视频中是否存在马赛克,这里基于视频图像进行图像马赛克检测,具体步骤如下。

以一幅图片为例,来说明马赛克检测所用方法,这里采用的图片如下所示:
这里写图片描述
可以发现,图片中人物脸部打了马赛克。针对这片区域的马赛克,看本算法是否能够有效识别。

首先,对上图进行Canny边缘检测,阈值分别取40和200,得到图像的检测结果。
这里写图片描述
观察上图,发现马赛克区域经过边缘检测后,出现了一堆方块状或类方块状的区域。这些区域大体可分为如下5种情况。
这里写图片描述
方块和类方块大体分为以上5种,分别为完备的正方形、分别缺一边的不完备正方形。为了统计上述边缘检测结果图中含有的这5类正方形,可以采取下述方式进行统计:
边长从3开始,逐次加1,到33截止(这里有待考究)。判断每个像素以这个边长能否组成正方形(5种情况,以下简称正方形)。如果能,这个边长的正方形数加1,如果不能继续遍历。
上述步骤有一个问题就是,怎样才算构成了正方形的判断准则?
1)整体判断法:以此边长遍历整个正方形区域,如果无缺失的像素/整个正方形的像素大于70%,认为这个正方形存在。这种方法的优点是判断准确,综合利用了正方形所有的像素,但缺点同样明显,运算速度极低;
2)八点判断法:选取正方形中的八个点来进行判断,如果选择的八个点都满足构成正方形条件,那么,认为此正方形存在。这种方法的优点是运算速度有所提升,但是准确率上存在不足;
3)四点判断法:选取正方形上的四个点位置进行判断,如果选择的四个点都满足构成正方的条件,认为此正方形存在。这种方法运算速度最快,伴随着的是不太理想的准确率。

由于视频中马赛克的检测既要考虑处理图片的速度,也要兼顾判断的准确度,所以,这里采用了八点判断法。以上述图片为例,得到以下结果图。
这里写图片描述
可以看到图片中边长为9的正方形数量最多,为37个。经验证,将上图转为灰度图,写入txt,得到图中小方块的边长为9。但是,现在的这个判断方法并没有去除其他的错误选项和重复选项。我们可以发现,如果图片中边长为x的小方块最多的话,那么后续影响较大的肯定是边长为 (n-1)*(x-1)+x 的正方形,且数量均小于边长为x的正方形数量。通过此规律,我们可以找到一个马赛克图片中的小方块数。

最后,利用上述方法,对一些视频帧进行判断,通过人工监督的方式,查看最后的检测准确度。以一组10帧图片为例进行检测,得到如下的结果图。
这里写图片描述
经人工鉴定,这10帧图片中,只有第3张图片不含马赛克,其他的均有马赛克,实验准确率100%。所用时间4.15s。(最后附上实验的视频帧以及程序代码)

总结
1)采用八点判断方式,准确率基本满足要求,但是在耗时上还是有很大缺陷。10帧图片耗时4.15s,一帧图片图片耗时415ms。如果想实时判断高清视频是否含有马赛克的话,这个速度至少再提升10倍,达到25帧/s;
2)此判断方法存在先天缺陷。由于是将图像边缘处理之后进行判断,对于图片中的正方形区域,无法判断是不是由于马赛克影响造成的,比如图片中含有棋盘之类的网格就会造成误判的干扰。

测试视频帧及程序代码:
http://download.csdn.net/detail/zhancf/9254645
(需要配置opencv环境。)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/72088.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

“马赛克”真能去除了?老司机狂喜!

点击“开发者技术前线”,选择“星标” 让一部分开发者看到未来 有人说,马赛克的发明,就是人类文明史上一次重大的“开倒车”。 也有人说,马赛克就是阻碍人类进步的绊脚石。 从功能上讲,马赛克是一种用来遮盖原画面的手…

想给视频去色并加马赛克就用它

怎么才能在给大量视频去色的同时添加一个马赛克呢?其实这个很简单,今天小编就来教大家一个可以快速批量操作的简单方法,下面就一起来看看吧! 首先,打开浏览器搜索“固乔科技”,在固乔科技的官网里下载一个叫…

AI算法:马赛克照片都能还原成高清照

在这个追求高清画质的时代,我们对渣画质的容忍度越来越低。在网络上搜索「低分辨率」、「渣画质」,会看到一大片诸如「如何补救清晰度低的照片」、「如何拯救渣画质」之类的问题。那么,将渣到马赛克级别的画面秒变高清,是一种怎样…

再厚的马赛克都能被扒干净?这款开源「去码」神器火了

↑↑↑关注后"星标"简说Python人人都可以简单入门Python、爬虫、数据分析 简说Python推荐来源:扩展迷EXTFANSOne old watch, like brief python 有人说,马赛克的发明,就是人类文明史上一次重大的“开倒车”。 也有人说,…

【图像处理】马赛克

如何给一张图片打上马赛克呢? 马赛克原理 图像的马赛克效果是通过设置指定大小的像素块,并让这个像素块中的所有像素点设置为统一值来实现的。 方法一 手动制作马赛克 原理:这个过程有点像卷积的过程,如让这个像素块是10*10&a…

太可怕,有码变高清!AI 一秒还原马赛克?

作者 | 贝爽 转自:雷锋网(leiphone-sz) 论文地址:https://arxiv.org/pdf/2003.03808.pdf 像素不够,后期修图来凑? 在知乎搜索低像素修图,结果求助帖多到刷不完,而且从PS技巧、插件神…

计算机类相关比赛(大学生版)

大学生了,就要闷声干大事 提升专业技能:计算机类比赛基本上需要运用编程技巧、数据结构等专业知识,并锻炼团队协作和解决问题的能力。通过参与比赛,可以增强自己的专业技能水平和实际动手能力。 拓展视野:比赛可以为参…

分享五个计算机专业答辩ppt_附录csdn下载

一、基于javaEE网上商城管理系统的答辩ppt 基于javaEE网上商城管理系统答辩ppt-Java文档类资源-CSDN下载新颖的基于javaEE网上商城管理系统答辩ppt成品例子,往年的优秀答辩ppt成品更多下载资源、学习资料请访问CSDN下载频道.https://download.csdn.net/download/weixin_536…

计算机毕业答辩问题整理

我做的是个系统,排在后边没怎么问到技术性问题,前面同学有被问到。 之前总结的答辩问题没用上,所以给大家分享一下,适用于我的系统, 大家根据自己系统改一改。有用的话点个赞吧! 希望大家答辩顺利通过

【答辩问题】计算机专业本科毕业设计答辩指导

下面是总结的一些答辩期间的问题(结合论文中出现过的整理) 1、答辩一般流程是,演示PPT演讲,答辩老师问答,演示系统(具体咨询自己导师) 2、答辩老师一般不懂比较新的技术,只知原理&…

【答辩问题】计算机专业本科毕业设计答辩问题

下面是总结的一些答辩期间的问题(结合论文中出现过的整理) 1、MVC设计模式是指什么,其优缺点,怎样用到在你的程序里 2、SSM/SSH框架是指什么,其优缺点,怎样用到在你的程序里 3、前端用到了什么技术&#xf…

课前课后

测试结果 正确答案内容

java 课前说明习题

java 课前说明习题 1、本课程描述正确的是 本课程专业基础课,考试课(设有期中考试);课程64学时(40理论,24实验) 2、除签到以外,其他教学任务(作业,讨论等&…

2109课前资料及授课说明

第一部分:课前资料说明 博客地址:https://yutian.blog.csdn.net/ 天翼云盘:https://cloud.189.cn/t/MFJVf23u22Un 访问码:tw3w (不限速) 百度网盘:https://pan.baidu.com/s/1uqizNjVidxsAwr_bUGpztg 提取码:geos &…

AutoSAR配置视频讲解:课前准备

AutoSAR实验视频讲解:闪烁一颗LED实验【课前准备】 总目录 1 AutoSAR复习与补充 本节课主要复习一下AutoSAR的基础知识,帮助在看视频的过程中不至于太迷茫。主要给刚入门的朋友们做一个课前引导,也帮助从博客专栏过来的朋友们复习一下旧的知识。本节知识很重要,希望大家…

计算机公开课课前互动小游戏,心理辅导破冰小游戏(也可用于公开课热身)

心理辅导破冰小游戏(也可用于公开课热身) (3页) 本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦! 8.90 积分 心理辅导小游戏1.你追我赶你追我赶目的:目的:培养孩子们的团队协作…

操作系统课前准备

操作系统课前准备 先安装VMware Workstation 网上很多安装方式以及破解方式,这里不赘述了 再安装Ubuntu的ISO文件 可以直接去官网下载,也可以在我这个连接下载,但百度云比较慢 链接:https://pan.baidu.com/s/1Y4KB5TpaadXhu2_OvqvQ8g 提取码:CPCP …

2108 课前资料说明

第一部分:课前资料说明 博客地址:https://blog.csdn.net/maitian_2008 天翼云盘:https://cloud.189.cn/t/MFJVf23u22Un 访问码:tw3w (不限速) 百度网盘:https://pan.baidu.com/s/1uqizNjVidxsAwr_bUGpztg 提取码:geos…

二、课前准备

开发平台的选择 可选用的平台是windows、Linux 在这里,我选择的是Linux 本地开发环境 windows下可以使用phpstudy快速搭建本地的PHP开发环境 Linux 下我选宝塔来搭建 开发工具的选择 开发工具可以根据个人的习惯与喜好进行选择 composer工具 学习本套课程前&…

C语言课前准备

写博客,github,印象笔记,Xmind。