当前位置:文档之家› 多层次特定类型图像过滤方法

多层次特定类型图像过滤方法

多层次特定类型图像过滤方法
多层次特定类型图像过滤方法

多层次特定类型图像过滤方法

段立娟 高文崔国勤张洪明

(中国科学院计算技术研究所 100080)

摘要 随着网络技术和多媒体技术的发展,对互联网上信息的监督和控制越来越重要。尤其目前互联网色情图像、色情录像的传播问题越来越严重,为有效杜绝此现象,本文提出一种基于计算机视觉和模式识别的裸体图像过滤方法? ? 多层次特定类型图像过滤法,该方法通过研究人眼视觉对图像的分析机理,提出综合肤色模型检验、支持向量机(SVM)分类和最近邻方法校验的多层次图像处理框架,实验结果表明,该方法能够达到85%以上的准确率。

A Hierarchical Method for Nude Image Filtering

Lijuan Duan, Wen Gao, Guoqin Cui and Hongming Zhang

Institute of Computing Technology, Chinese Academy of Sciences,

Beijing 100080

Abstract Internet is a double-edged technology, it pushes the development of multimedia, in other hand, and many pornographic images and videos might make problem to young generation. Techniques are needed to keep these images away from children. We developed a hierarchical nude image detection system. In the processing, images were filtered firstly by skin color model. Then, images were classified by support vector machine. Finally, images were verified by nearest neighbor. Experiments show that 85% images contain nude could be filtered accurately.

关键词图像过滤,肤色模型,SVM,最近邻

1 引言

互联网正在改变着人们的生活方式,促进着全球化经济的形成。然而互联网也给一些犯罪分子带来了有机可乘的机会,例如传播色情图片、非法政治活动、制造病毒、恐怖分子散布谣言或进行匿名恐吓的行为。必须对互联网进行有效的管理和监控,针对这些问题,有关部门已经采取了相应的措施,例如身份验证、加密与数字化水印技术、采用防火墙技术和设立网上警察等,这些措施对有效打击上述犯罪现象起到重要作用。但是,目前蔓延比较严重、难以人工加以控制的就是色情小说、色情图像与色情录像的传播问题。据美国有关机构的调查,全球现有的色情网站多达50万个,一个人在因特网上随便点击,平均每七次,就有一次可能会点击到色情站点。

网络空间的色情传播已在全球引起了关注,一些预防网络色情的软件相继被推出。例如,美籍华人施颖裕推出的网络色情防范系统软件“网络色情锁”(X -STOP)和美国太阳微系统软件公司开发的"电子巡逻者",另外我国的清华大学推出了防黄软件"五行卫士",前两种软件主要采用网址库的形式来封锁色情网址,而“五行卫士”软件采用人工智能技术,对进入计算机的中、英文信息进行分析甄别,只要计算机屏幕上显示任何有关色情文字信息,无论其来自因特网还是光驱、软盘,都会马上关闭程序,并留下相关记录。上述软件在打击黄毒蔓延中起到了一定作用,但是为避开这些“黄毒卫士”的搜查,犯罪分子的作案手段也越来越狡猾,他们以篡改其他网站主页的方式或使用隐蔽代名词的方式来传播色情图像,前一段时间某政府部门的网页居然被换成色情画面,另外在法国曾出现过几起报案,在某些站点上以“茉莉花”为检索点,而查出的却是色情图像。由此可见,仅仅采用封锁网址和过滤色情文字信息的手段来进行网络扫黄是不够的,必须引入计算机视觉技术和语音识别技术,对嵌入在主页中的图像与相应的音频信息进行分析,才能有效打击色情传播问题。早在1996年Forsyth[1]就利用计算机视觉和图像理解技术对裸体图片识别进行了研究,通过对图片肤色分割和人体姿态的几何特征检测来判别图片是否含有裸体。本文提出了一种多层次的裸体类图片过滤方法,该方法综合肤色模型、支持向量机(SVM)和最近邻方法多个处理算法的处理结果,依靠计算机视觉、模式识别等技术对嵌入在主页中的图像进行扫描,把含有裸体的图像过滤出来,以杜绝和减少色情图像在网络上传播的机会,保护青少年的身心健康。

本文第二节主要介绍多层次特定类型图像处理框架、基于和颜色空间的肤色模型和支持向量机方法。第三节分析了多层次特定类型图像过滤算法的性能。第四节对该方法进行了总结。

2 多层次特定类型图像过滤

在本文中,裸体图像过滤问题被看作一个图像理解与识别问题,但是它与一般的人脸识别和指纹识别有所不同,主要是由于图像的背景条件比较复杂、光照条件不一致、人体的表现形式具有多姿态性,因此很难用一个统一的模型把所

有的特征表征出来。通过研究人眼视觉对图像的分析机理,我们提出了一种多层次特定类型图像处理框架,如下图所示。

图2-1 多层次特定类型图像处理框架

多层次特定类型图像处理框架融合了肤色模型、支持向量机(SVM)和最近邻方法多个处理算法的处理结果。根据视觉对图像的分析机理和色情图像本身的特点——有裸露肌肤,我们首先采用肤色模型来检验待过滤图像,该模型可以有效地识别出图像上的肤色区域。但是,有一定肤色区域的图像并不一定是裸体图像,例如一张正常的人脸照片。为了进一步确定图像是否含有裸体,我们应用了模式识别中的分类方法。图像分类是一个比较复杂的问题,本文采用在解决小样本、非线性及高维模式识别具有一定优势的支持向量机(Support Vector Machine, 简写为SVM)方法把图像分成两类,一类是非裸体图像,另一类是裸体图像。由于SVM本身的特性——对于测试样本分类错误率的期望的上界是训练样本中平均的支持向量占总训练样本数的比例,所以在训练样本是线性不可分的情况下,尽管可以用广义最优分类面把它们分开,但支持向量的个数会稍微多一些,分类器的错误率也就相对大一些,为避免错误的发生,我们采用了在图像检索中经常使用的最近邻方法。下面将详细叙述多层过滤算法的各个步骤。

2.1 肤色模型检验

关于肤色模型的理论,在人脸识别中早已被广泛使用[2][3][4]。H. Martin[2]设计了肤色模型表征人脸,利用一个感光模型对输入图像修正和补偿,并建立人脸颜色分类器,其输出作为神经网络的输入进行检测。Tony[3]等采用高斯混合模型表示人脸肤色R、G、B各分量的统计分布,通过阈值比较判断像素是否为人脸像素。Forsyth[1]通过把R、G、B各分量转换成对数值,并进一步得到肤色的色

度和饱和度以进行肤色分割。本文则对肤色色调在和颜色空间中的分布做了线性化处理,具体过程如下。

空间到空间的转换用矩阵表示如下:

(2-1)

和是平面上的两个相互正交的矢量,色度信号(即与之和)是一个二维矢量,称之为色度信号矢量。每一种颜色对应一个色度信号矢量,它的饱和度由模值表示,色调由相位角表示。

(2-2)

(2-3)

图2-2 色彩空间中的色度信号矢量 图2-3 空间上的肤色色调分布

图2-2是色彩空间中的色度信号矢量图。白色和黑色都由原点(0,0)表示,模值等于0,为任意相位角。在空间的平面上,肤色的色调介于

红与黄之间。根据对大量图像的彩色分析,可以确定人的肤色色调的变化范围,如图2-3所示。把彩色图像的象素由空间变换到空间,如果满

足条件:,则是肤色点。上述肤色模型能够有效提取肤色区域,例如图2-5中的白色区域表示从图2-4中提取的肤色区域。但是该模型也会把一些与人的肤色比较接近的其他区域当作肤色区域,例如图2-7、2-9、2-11表示用该模型对图2-6、2-8、2-10过滤后结果,可以看出该肤色模型难以

把肤色与棕色头发或灰色背景分开,为此本文利用空间来过滤掉肤色以外

的其他成分。

图2-4 图2-5 图2-6 图2-7

图2-8 图2-9 图2-10 图2-11

彩色空间的表示法与表示法的原理基本一样,也使用分量表示颜色

的亮度信息,和两个相互正交的分量表示彩色信息。所不同的是色度信号

的两个正交分量不是和分量,而是和分量。表示法的定义是基于

这样一个原则:对颜色编码所得信号的冗余信息最少。或者说,人眼看不见的就无须传送和重现。其中色度分量选在相角为123o的红色和3030的青蓝色色调位置,色度分量选在色分解力弱的紫红色和绿黄色色调位置上,充分利用

了人眼的色分辨力。 将色空间的平面逆时钟方向旋转330,就得到了空间的平面。从空间到空间的矩阵转换表示为[5]:

(2-4)

空间中,分量代表了从桔黄到蓝绿的色调,值越小,包含的黄色越多,蓝绿色越小。所以肤色在空间内的值在一个范围里变化,通过试验和统

计分析可确定其范围。

图2-12 空间内肤色对应的值分布

实验结果表明,根据上述空间的分量分布可以确定肤色区域,图2-13、2-14、2-15就是根据上述模型对图2-6、2-8、2-10进行肤色分割的结果,显然它能区分灰色背景、棕色头发与肤色区域。但是,该模型难以区分肤色与黄绿色,如图2-17是用上述模型对图2-16处理的结果。

图2-13 图2-14 图2-15 图2-16 图 2-17

实验结果表明,空间的相位角和空间的分量对肤色有一定的表征能力,但是空间的相位角易于区分肤色与黄绿色,而空间的分量难以区分肤色与黄绿色,为此采用空间的相位角和空间的分量联合的方法来确定肤色在色度信息上的分布范围。即把彩色图像的象素由

空间变换到空间和空间,如果满足条件:且

,则是肤色点。上述肤色模型能够有效提取亚洲人种和欧美人种肤色区域,例如图2-18、2-19、2-20中的白色区域分别表示从图2-6、2-

8、2-10中提取的肤色区域,显然结果优于单独采用或。图2-21是对

图2-16过滤后的结果,结果表明和的结合对过滤黄绿色等肤色干扰色是有益的。

图2-18 图2-19 图2-20 图2-21

总之,本文所采用的肤色模型能够有效提取亚洲人种和欧美人种肤色区域,但是该模型也会把一些与人的肤色比较接近的其他区域当作肤色区域,例如图2-23、2-25分别表示用上述肤色模型对图2-22、2-24过滤后结果。尽管图2-22有大片的区域在颜色上接近肤色,但这些图像并不是被过滤的对象,图2-24上的黄色衣服却被当作肤色区域。另外,肤色模型本身也有一定的局限性,当有些图像的光照条件比较特殊的时候(例如蓝光或绿光照射条件下),即使一些图像有肤色区域也不能被正确识别,当然也会有一些非肤色区域被误认为是肤色区域。我们对855幅正例(裸体图片)和781反例(非裸体图片,其中包括99幅风景,200幅动物,300幅人物,182其它图片)进行了统计,如表2-1所示。表2-1的第一列表示图片中含有的肤色象素个数及其所占的比例,第二列是对正例统计的结果,第三列是对反例统计的结果。由此可见肤色模型不可能把覆盖所有正例,同时也有一定数量的反例被误认为含有肤色区域,如图2-26和图2-28,因此仅仅采用肤色模型是不够的,我们进一步采用SVM方法和最近邻方法来提高识别率。在本文中,如果一幅图含有3000以上的肤色像素点,且占图像面积10%,则肤色模型过滤算法的输出为“1”,否则为“0”。

图 2-22 图 2-23 图 2-24 图2-25

图 2-26 图 2-27 图 2-28 图 2-29

肤色象素,百分比 正例 反例

1,5000pixcel, 10% 95.1% 39.56%

1,5000pixcel, 15% 90.76% 34.38%

2,0000pixcel, 10% 93.8% 30.87%

2,0000pixcel, 15% 90.4% 29.12%

3,0000pixcel, 10% 93.8%23.2%

表2-1 肤色模型过滤结果

2.2 基于SVM方法识别

图像过滤实质上是一个分类问题,同时也是一个比较困难的问题,主要是因为图像的内容非常丰富,很难简单地从图像中抽取出可以区分不同类别图像的有效特征,计算机所能自动提取出来只是一些低层次的视觉特征,能表征图像内容的高层次语义特征还是靠人工标注。图像是否有色情内容,实际上是一种高层次的语义特征,如果能够通过机器学习手段,从大量色情图像样本中发现出该类图像的规律,利用这些规律去分析现实世界中的其他图像,那么图像过滤问题就可以得到解决。图像过滤就是企图在由低层次视觉特征组成的向量空间中找“有色情内容”和“没有色情内容”两类图像的最优分类面。相对于色情图像来说,其他图像在表现形式上是异常丰富多彩的,在数量上是非常惊人的,为此我们期望通过小样本的学习而达到预期的分类效果。支持向量机在解决小样本、非线性及高维模式识别问题中表现出许多特有的优点,该方法通过把数据点映射到高维空间,使本来在低维空间上线性不可分问题在高维空间上线性可分,从而找到最优分界面[6~11]。为此,我们在图像过滤中采用了支持向量机,具体过程如下图所示:

图 2-30 采用支持向量机进行训练和测试过程

2.2.1 支持向量机

支持向量机(Support Vector Machines –SVM)是在结构风险最小化[6-12]基础上,对两种不同类别的样本数据找到一个最优分类面的方法。下面简单介绍支持向量机算法,希望进一步了解的读者可参考[9-12]。

SVM算法的输入是一个集合:

其中是样本的所属类的标志,d是样本的维数,N是训练样本的个数。

SVM首先将输入空间中的元素, 依映射投影到一个特征空间

, 对应元素,使训练样本在特征空间中线性可分。SVM 的目标是在特征空间中找到一个最优分类面,满足:

(2-51)

若, 则

若, 则

其中,。

可以通过解下面的二次规划()问题得到:

(2-61)

,是一个半正定矩阵对称矩阵,其元素,为了得到,通常并不需要使用映射Φ得到具体的值和.在某些条件下,可以找到一个Kernel函数[9] ,

这时

.例如,对于d次方的多项式分类器。对

于满足的点,根据Karush-Kuhn—Tucker条件[9],对应的训练样本应该在离分类面最近的各类样本集的边界上,这些样本称为支持向量。

对于一个测试样本,首先计算

(2-7) 可得到对应的类别标志

当训练样本在特征空间Γ中不可分时,SVM算法引入非负的松弛变量

这时问题转化为求

(2-8)

这里的C是用户定义的参数,实现在错分样本数和算法复杂性之间的折中。

度量

和的差异, 这时得到的超平面为广义最优分类面,(2-8)可改变为一个

问题:在和条件限制下求(2-6)的最大值

2.2.2 SVM的构造

支持向量机用于分类,其分类函数形式上类似于一个神经网络,其输出是若干中间层节点的线性组合,每一个中间节点对应于输入样本与一个支持向量的内积,如下图所示[11 ][12]:

图 2-31 支持向量机分类示意图

尽管支持向量机解决了以往很多机器学习方法存在的问题,如模型选择与过学习、非线性与维数灾难、局部极小点等问题[6-12],但与其它学习方法一样,支持向量机也存在一个分类错误的问题[6~12]。如果一组训练样本能够被一个最优分类面或广义最优分类面分开,则对于测试样本分类错误率的期望的上界是训练样本中平均的支持向量占总训练样本数的比例[9]。为提高分类器精度,我们进一步提出了多个SVM组合分类方法,即分别抽取图像的色彩直方图和色彩聚合矢量输入相应的支持向量机,并把最后的分类结果合并,如图2-32所示。

图 2-32 多个支持向量机组合过程

3. 试验结果与分析

为验证本文提出的多层次过滤算法,我们建立了一个原型系统和一个图库,图库共有2658幅图,其中1636幅图作为训练例(855个正例,781个反例),另外1022幅图作为测试例(包括312个正例,710个反例)。下面给出多层过滤算法对1022幅测试例进行测试的情况。

多层次过滤方法采用了多种过滤模型,具体包括肤色模型、SVM分类器和最近邻方法,在图像的内容进行判别过程中运用了由粗到细的逐层检验方法。首先提取图像的肤色特征,并进行验证,如果发现含有一定比例(实验数据为10%)的肤色区域,则进行下一步检验,否则认为该图像不含有色情内容;执行第二步检验过程,先提取图像的彩色直方图和彩色聚合矢量,然后把它们输入到SVM分类器,如果分类结果是

“+1”,则认为该图片含有色情内容,否则采用第三个检验过程即最近邻方法进行验证。具体决策过程如图3-1所示。

图 3-1 决策框图

为了显示多层次图像过滤算法的有效性,我们进行了两组实验。第一组实验是对测试例分别单独使用肤色模型、支持向量机和最近邻方法进行过滤,另外一种方法是采用多层次图像过滤方法。表3-1和3-2分别显

示了两组实验的结果,其中弃真率表示把裸体图像识别为非裸体图像的概率,取假率表示把非裸体图像识别为裸体图像的概率,错误率表示把裸体图像识别为非裸体和把非裸体图像识别为裸体图像的总体概率。 从表3-1的显示结果来看,单独采用肤色模型的弃真率很低,表明我们的肤色模型可以覆盖大部分的裸体图片,但是取假率和错误率比较高,由此看来仅仅采用肤色模型过滤对识别裸体图片是不够的。对不同SVM 分类器(SVM1对应的输入向量是彩色直方图,SVM2对应的输入向量是彩色聚合矢量,SVM3则是对SVM1和SVM2输出结果的合并,如图2-32所示)处理结果的分析表明,SVM1的结果要好于SVM2,若把SVM1和SVM2输出结果的合并,则会使弃真率提高,但降低了取假率和错误率。最近邻方法是在图像检索中常常采用的方法,它产生的错误率最大,主要是由于样本的多样性和训练样本数目的有限性引起的,当训练利与测试例差别比较大的时候,往往会带来比较高的错误率。无论采取哪种方法都存在弃真率和取假率一高一低的情况,这表明当对正例过滤效果比较好时,对反例的效果会比较差,反之,当对反例过滤效果比较好时,对正例的效果会比较差。

表3-2是多层次图像过滤算法的实验结果,结果表明多层次过滤算法的效果明显高于单独采用各个算法的效果,它使错误率降低了2%-10%,且克服了表3-1中弃真率和取假率一高一低的现象,说明多层次图像过滤算法无论对正例还是对反例都能有效识别。表3-2的后三列分别列出了多层次过滤算法采用不同SVM 分类器的性能,从总体性能来看,方案3(肤色模型、SVM3与最近邻方法组合)优于其它两种方案。

支持向量机 属性

结果

评价指标

肤色模型 SVM1 SVM2 SVM3 最近邻 弃真率 6.1% 14.74%17.95%

26% 14.1% 取假率 29.85% 19.49%28%

11.7%27.7% 错误率 22.6% 18.8%

24.95%

16% 23.4%

表3-1单独采用个算法的错误率

属性

结果

评价指标肤色模型+ SVM1+最近邻

(方案1)

肤色模型+ SVM2+最近邻

(方案2)

肤色模型+ SVM3+最近邻

(方案3)

弃真率10.65% 12.16% 13.78%

取假率15.61% 17.88% 14.04%

错误率14.09% 16.14% 13.99%

表3-2多层次过滤算法错误率

4. 结论

在网络信息飞速膨胀,网上色情图像泛滥情况下,裸体图像过滤技术已成为一

个具有重大应用价值的研究方向。根据裸体图像的显著特征,通过建立有效描

述被过滤图像特征的肤色模型,结合支持向量机和最近邻算法构造了一个多层

次的过滤方法。以1022幅图作为测试例进行了实验,实验结果表明,该方法能够达到85%的准确率,明显优于文献[1]提出的方法,文献[1]对正例的识别率仅为52%。进一步工作是按照图像内容,把过滤对象分成一定等级,并采用不同的过滤算法,对于情节不严重的图像,允许有一定的弃真率,而对一些严格禁止传

播的图像则弃真率一定要低。

参考文献:

1. D. A. Forsyth. M. Fleek, and C. Bregler. Finding naked people.

In Proc. Forth European Conference on Computer Vision. pp 593-

602. 1996.

2. H. Martin, H. Hunke. Locating and tracing of human Faces With

Neural Network. Vol.8. No. 1, January, 1997:114-132.

3. Tony S. and Alex Pentland. Parameterized Structure from Motion

for 3D Adaptive Feedback Tracing of Faces. MIT Media Laboratory, Perceptual Computing Technical Report#401, November 28, 1996.

4. 姚鸿勋, 刘明宝, 高文等. 基于彩色图像的色系坐标变换的面部定位与

跟踪法. 计算机学报. 2000, 2: 158-165.

5. 彭群生, 鲍虎生, 金小刚. 计算机真实感图形的算法基础.(pp.425-451)

科学出版社.

6. Thorsten Joachims. Making Large-Scale SVM Learning Practical.

http://www-ai.ca.uni-dortmund.de/personal/joachims.html

7. Olvi L. Mangasarian and David R. Musicant. Robust Linear and

Support Vector Regression. IEEE Transactions in Pattern

Analysis and Machine Intelligence. Vol.22, No.9, Sep.

2000.pp950-955.

8. Joachims, Estimating the Generalization Performance of a SVM

Efficiently. Proceedings of the International Conference on

Machine Learning, Morgan Kaufman, 2000.

9. Vapnik,V.N. The Nature of Statistical Learning Theory. New York:

Springer-Verlag.1995

10.C.Burges.A tutorial on support vector machines for pattern

recognition. Data Mining and Knowledge Discovery,2,p.121-

167,1998

11.袁亚湘,孙文瑜 “最优化理论和方法” (pp.422-431) 科学出版社

1999

12.边肇祺,张学工. “模式识别”(pp284-303) 清华大学出版社 1999

相关主题
文本预览
相关文档 最新文档