Posts RSS Comments RSS 19 文章 and 17 评论 till now

侧眼看绿坝

在稻城的时候看到新闻,得知工信部要求国内出厂的计算机全面预装绿坝-花季护航软件,可以过滤色情内容、暴力内容以及翻落在我阳台盆栽的榕树叶上,叶子颤动,枝丫摇晃,但还是支撑不住这重量。风从东面吹来,雨水砸在窗口上的铁罩,紧凑又墙软件,用来保护未成年人的上网安全。其他的先不看,单单是色情内容过滤,这不就是情买卖。不过他身后的空玻璃水壶把握了最后的呈现机会,反射出光线吸引我,我加了七元钱换下它。此刻房子里的光线较差,色内容识别吗?实验室的师兄也做过类似的研究,让我们来看看绿坝怎么实现的。

从 XFImage.xml可观察到,绿霸使用了OpenCV的haar分类器进行人脸检测。绿霸附带的cximage.dll、CImage.dll、 xcore.dll和Xcv.dll也来自OpenCV的库文件。都反映出绿霸主要使用了OpenCV来进行图像方面的处理。不过就像一般国产软件的做法,绿霸大概也无视了OpenCV的BSD许可证。

OpenCV是Intel资助开发的开源计算机视觉(computer vision)库,包含了许多计算机视觉和图像视频处理领域的算法。绿坝没有在自己的文档中和版权声明中包含BSD协议就算了。我们还是来关注色情内容识别上。

色情图像检测已经发展好多年了,在研究之初,大家最容易想到的方法就是通过肤色来检测(人脸检测也是)。但这种方法有个明显的弊端,怎样区分类肤色在一张图片中所占比例的问题(一张风景照中可能就包含大量的类肤色区域,总不能把自己辛辛苦苦拍得风景照也屏蔽了吧,甚至火焰的颜色和肤色还有点像||若图片中的人脸比例过大,一张脸何来色情?)以及黑人(黑人也色情?不要拍砖给我)白人肤色的问题。于是,检测人脸检测并引入其他图像特征(如纹理等)成为后来常用的方法。

绿坝所使用的方法是:图像检测进程从待检图像队列中获取图像数据,先归一化图像尺寸(在图像变换过程中,不同尺寸的图像体现的边界细节有所不同,因此需要调整到合适的尺寸,同时将大图像调小也可以提高处理速度。),然后分离肤色区域和非肤色区域,在对肤色区域关系进行分析后去除干扰,提取区域的特征送入已训练SVM(support vector machine即支持向量机)分类器得到判决结果。当图像被检为色情图像后再送入人脸检测器,若人脸不是主要部分便确定为色情图像。这套算法的主要问题是,色情图像的识别严重依赖于肤色和肤色形状;而最后使用人脸检测加权判定也只是手工打补丁避免出现大幅人脸识别为色情图像问题的办法,且经验权值可靠性缺乏验证。

由此可以看出此图像识别依然以颜色分割为基础,即使算法再好也无法达到很好的人工智能识别效果。因为这种以颜色为基础的检测,基本检测单位是一个个的像素点,从2维上看2维,缺乏高度的抽象,即使通过模式识别的方法进行训练识别,从本质上还有别于人的识别方式,因此最终的识别结果也就不乐观。

关于色情站点,我们的墙早就保护了我们,而现在互联网上所看到的不健康图片来源于许多门户网站等频道中打擦边球的栏目。同时还听说绿坝会直接关闭浏览器或文字编辑软件,那假如孩子在写程序的时候突然某大型网站弹出个大量肤色的广告,程序的IDE被强制关闭,孩子辛苦写的程序岂不白写了……宜疏不宜堵,且堵也要用个有点技术含量的软件吧。这张政府单子有4000万,看来CV方向还是很有钱途的。

One Response to “侧眼看绿坝”

  1. on 24 七 2009 at 2:34 下午elisawong

    坦白说,我觉得这东西防其它的作用,远大于防色情。而且防色情是个很愚蠢的想法,古往今来,这东西防得了吗?

Trackback this post | Feed on Comments to this post

Leave a Reply