
这两天跨年,就想将自己的 Python 组织和表达能力再提高一下,当然最好的方式自然是读大师的源码,我也就看到实验楼上面的那篇关于色情图片识别的文章,因此依葫芦画瓢才建了这个库。
检测色情或者说判定是否是色情的关键是通过皮肤的裸露程度判别,也就是说色情识别算法的核心就是识别皮肤。
那么现今主要识别皮肤的是通过三个步骤:首先选择合适的颜色空间来表征图像像素;然后使用适当的皮肤模型来建模皮肤和非皮肤部分像素;最后依据此建模来分割出正确的皮肤部分。而识别皮肤的关键在于寻找到合适的像素区间,因为肤色 种族 光照 等等因素都会影响到皮肤的识别。
从 2015 年的厦大陈丽一篇《一种融合方法的皮肤检测技术》上我们了解到 在图片预处理 降噪 resize 后 将二维直方图 高斯模型 动态阈值 三个处理模型进行混合的综合皮肤检测技术,能达到识别率 90+的程度,比其他三种模型高出一到五个百分点。
那么实验楼这位作者是如何去识别一张图片的皮肤部分呢?
试验效果图属不可描述范围~附上 Gayhub 地址~
当然我不会说那个 HeiHeiHei 函数是干嘛的==
github 地址 
|  |      1riaqn      2017-01-03 22:31:27 +08:00  1 只是识别皮肤裸露有问题吧? 那肚皮舞也变 porn 了。 很明显需要更高端的算法。之前我看到有程序,能做到识别并且”标识敏感区域“(就是标识乳头和 XX ) | 
|  |      2Yinz      2017-01-03 22:40:06 +08:00  1 总觉得人工硬编写识别逻辑的做法会被深度学习完全替代掉。。。 | 
|  |      3run2      2017-01-03 22:48:03 +08:00 非洲同胞的皮肤能识别不-。- | 
|  |      4techmoe      2017-01-03 22:56:15 +08:00 via Android 同意一楼看法 | 
|  |      5ericgui      2017-01-03 22:58:14 +08:00 你让微博上那些网红情何以堪? | 
|      6RqPS6rhmP3Nyn3Tm      2017-01-03 23:00:14 +08:00 via iPhone 反向使用,黄的留下? | 
|  |      7murmur      2017-01-03 23:00:31 +08:00 还以为是自动上车 | 
|  |      10Yinz      2017-01-03 23:07:53 +08:00 当然这个轮子出于学习目的还是很棒的!学习了:D | 
|  |      12ihciah      2017-01-03 23:26:36 +08:00 Yahoo 似乎以前放出来过一个 porn-detect 的 network 和 model... | 
|  |      13Mac      2017-01-03 23:27:54 +08:00 对鉴黄程序没兴趣,我只对他们的内容数据库敢兴趣 | 
|  |      15northisland      2017-01-03 23:30:45 +08:00 弟弟 妹妹 咪咪的目标识别比较靠谱, | 
|  |      16roist      2017-01-03 23:44:01 +08:00 很常见的一个案例,一个穿泳装类的,站姿和蹲姿(你懂的那个姿势)的皮肤裸露程度有太大不同?但这两者是色情程度一个天上一个地下 | 
|  |      17slysly759 OP @riaqn 我简单解释一下。 1. 色情图片是分级别的 有皮肤暴露 卡通色情 成人色情 的区分 退一万步来说大数据分析得到所有三点特征匹配的也是成人色情。 2. 皮肤算法不是说识别大块皮肤 或者加个权重就行,具体的识别多少区块 占比多少 像素值多少才能算 这个规则是通过样本采集来的。 3. 判定的 rules 在程序中的确预先写好,后续将会加入训练模型, rules 是可以优化的。 | 
|      18j5shi      2017-01-03 23:56:00 +08:00 via iPhone 建立 Server 用来返回 API 调用…于是 Server 上就会有看不完的 porn 照了…嘿嘿嘿 | 
|  |      21lostvincent      2017-01-04 00:29:08 +08:00 via iPhone 我感觉通过分析音频来鉴黄比较简单... | 
|  |      22SlipStupig      2017-01-04 00:52:55 +08:00 @lostvincent 色情图片,用音频识别,在下佩服佩服 | 
|  |      23lostvincent      2017-01-04 01:03:07 +08:00 via iPhone @SlipStupig 就关注鉴黄没在意是图片了,尴尬(逃 | 
|  |      24nbndco      2017-01-04 07:25:35 +08:00 via iPhone 基本上都是深度学习了,检测皮肤不靠谱的 | 
|      25kankana      2017-01-04 07:53:23 +08:00 via iPhone 试了腾讯万象,这东西还是得用深度学习,现有算法准确率没那么高 | 
|  |      27dobest      2017-01-04 10:23:01 +08:00 一点看法: 1. 基于像素+人工规则 的方法鲁棒性存在问题,像其他同学说的那样,深度学习更靠谱。 2. 为什么不用 scikit-image 或 opencv 等基于 numpy 的库呢? 这样性能不是更好吗? 3. 楼主的代码和 nude.py 的代码有些类似,但没看到说有参考 nude.py ,或者楼主是参考的实验楼该项目作者的代码? https://github.com/hhatto/nude.py/blob/master/nude.py https://github.com/songluyi/PornDetective/blob/master/porndetective/__init__.py | 
|  |      28slysly759 OP @dobest 的确借鉴他的,我也在文中说明了我改了那些 新加了那些东西。 看起来诸位都看好深度学习的| ू•ૅω•́)ᵎᵎᵎ我还是默默去看文献了⊙▽⊙ | 
|  |      29dsphper      2017-01-04 12:36:25 +08:00 求原始训练集高清五码图片。 | 
|      30iamnuomi      2017-01-04 13:10:29 +08:00 yahoo 的鉴黄开源项目在这里  https://github.com/yahoo/open_nsfw 另外,还有人根据 yahoo 的模型反向制作了图片生成器,在这里: https://open_nsfw.gitlab.io/, 其中有大量算法生成的图片,怎么说呢,还是值得一看的 anyway ,请大家搭配服用 | 
|  |      31ericgui      2017-01-04 13:23:28 +08:00 其实微博上很多网红露太多了,都不穿衣服,但都利用手势或者其他姿势恰好遮住了三点,虽然也是几乎没遮住。。。这种情况啊,连微博管理员都不知道到底该删不该删。 | 
|  |      32figofuture      2017-01-04 15:41:49 +08:00 mark | 
|  |      33winglight2016      2017-01-05 15:13:15 +08:00 @lostvincent 正如前人所说:你叫那些直播网红怎么办啊? | 
|  |      34hjq98765      2017-01-06 11:55:19 +08:00 胶衣丝袜控有福了→_→ | 
|      35Pythonwanted001      2017-01-12 16:28:57 +08:00 大项目,有兴趣合作吗?可加 QQ 1005367713 私聊。 | 
|  |      36saintatgod      2017-07-21 18:09:37 +08:00 挖个坟,已经被机器学习甩掉几条街了。准确度太低 |