黄色-图片识别引擎

黄色-图片自动识别是一个涉及到图像处理、模式识别、机器学习、统计概率的综合领域,其关键技术包括:皮肤检测、人脸检测、连通区域分析、贝叶斯分类、支持向量机等等

关于绿-坝是如何实现的,我一直很感兴趣。我这边也有一些相关的工作心得,拿出来与大家分享一下。

第一步是皮肤检测。
肤色检测并不像我们想象那样简单,要做到不同光照下的肤色识别,并不是只要指定一个所谓的“肉色”的RGB区域那么容易。一般采用转换到HSV色彩空间+变换的方式获得概率模型。
我在获得概率模型之后,用一个二值的Mask去与原图像做&操作,得到如下的结果:
黄色-图片识别引擎
很直观的一点是,非零区域所占面积大的图片很可能是黄色-图片,反之则是正常图片

第二步是连通区域分析。
大块的部分更有可能是手臂、躯干,而孤立地小块很可能是噪声

第三步就是脸部检测
这里采用的是Haar小波特征
黄色-图片识别引擎

脸部检测的作用,其一在于,肤色检测往往会召回某些脸部面积占据较大区域的照片,而这部分图片可以认为是脸部特写,并不属于黄色-图片,比如:
黄色-图片识别引擎

脸部检测的作用,其二在于,往往可以根据脸部的位置来判断身体的位置,从而部分解决肤色模型的准确率问题。
黄色-图片识别引擎

由于室外光照的原因,第一步肤色检测的效果并不是很好,背景很多地方都被误召回了。但是,我们可以根据脸部的大小,推算出躯干的位置以及大小。
黄色-图片识别引擎

由于程序检测是红色区域为脸部,那么人体的躯干应该是在绿色区域以内,所以我们不必费力去检测绿框以外的部分。而内部的区域检测出的肤色区域很小,因此,这是一张正常图片。

上述三步的阈值如果凭经验而定往往不科学,因此最终的第四步就是训练,比如SVM、决策树或者贝叶斯分类器,具体机器学习方法的选择,目前我正在进行一些测试。

顺道感谢一下测试模特:苍井空小姐~

你可能感兴趣的:(工作,ITeye,领域模型)