python用10行代码实现对黄色图片的检测功能


Posted in Python onAugust 10, 2015

本文实例讲述了python用10行代码实现对黄色图片的检测功能。分享给大家供大家参考。具体如下:

原理:将图片转换为YCbCr模式,在图片中寻找图片色值像素,如果在皮肤色值内的像素面积超过整个画面的1/3,就认为是黄色图片。

申明:简单场景还是够用了,稍微复杂一点就不准确了,例如:整幅画面是人的头像,皮肤色值的像素必然超过50%,被误认为黄色图片就太武断了。

需要安装python图片库PIL支持

porn_detect.py如下:

import sys,PIL.Image as Image
img = Image.open(sys.argv[1]).convert('YCbCr')
w, h = img.size
data = img.getdata()
cnt = 0
for i, ycbcr in enumerate(data):
  y, cb, cr = ycbcr
  if 86 <= cb <= 117 and 140 <= cr <= 168:
    cnt += 1
print '%s %s a porn image.'%(sys.argv[1], 'is' if cnt > w * h * 0.3 else 'is not')

运行:

python porn_detect.py myphoto.png

希望本文所述对大家的Python程序设计有所帮助。

Python 相关文章推荐
Python使用htpasswd实现基本认证授权的例子
Jun 10 Python
Python中的True,False条件判断实例分析
Jan 12 Python
详解python的几种标准输出重定向方式
Aug 15 Python
python bottle框架支持jquery ajax的RESTful风格的PUT和DELETE方法
May 24 Python
Python编程中flask的简介与简单使用
Dec 28 Python
python实现爬山算法的思路详解
Apr 09 Python
python学习——内置函数、数据结构、标准库的技巧(推荐)
Apr 18 Python
Python进阶:生成器 懒人版本的迭代器详解
Jun 29 Python
使用Dajngo 通过代码添加xadmin用户和权限(组)
Jul 03 Python
Python连接Mysql进行增删改查的示例代码
Aug 03 Python
详解pytorch中squeeze()和unsqueeze()函数介绍
Sep 03 Python
使用tensorflow 实现反向传播求导
May 26 Python
详解Python中dict与set的使用
Aug 10 #Python
分析并输出Python代码依赖的库的实现代码
Aug 09 #Python
python根据京东商品url获取产品价格
Aug 09 #Python
python制作一个桌面便签软件
Aug 09 #Python
Python 实现简单的电话本功能
Aug 09 #Python
python批量提取word内信息
Aug 09 #Python
python实现下载指定网址所有图片的方法
Aug 08 #Python
You might like
php+xml编程之xpath的应用实例
2015/01/24 PHP
高质量PHP代码的50个实用技巧必备(上)
2016/01/22 PHP
WordPress中设置Post Type自定义文章类型的实例教程
2016/05/10 PHP
Aster vs KG BO3 第三场2.19
2021/03/10 DOTA
用javascript获取textarea中的光标位置
2008/05/06 Javascript
window.location和document.location的区别分析
2008/12/23 Javascript
jQuery 1.4 15个你应该知道的新特性(译)
2010/01/24 Javascript
鼠标放在图片上显示大图的JS代码
2013/03/26 Javascript
手机号码,密码正则验证
2014/09/04 Javascript
详谈JavaScript 匿名函数及闭包
2014/11/14 Javascript
jQuery实现淡入淡出二级下拉导航菜单的方法
2015/08/28 Javascript
封装获取dom元素的简单实例
2016/07/08 Javascript
javascript设计模式之module(模块)模式
2016/08/19 Javascript
概述BootStrap中role=&quot;form&quot;及role作用角色
2016/12/08 Javascript
vue基于Vue2.0和高德地图的地图组件实例
2017/04/28 Javascript
基于JavaScript实现评论框展开和隐藏功能
2017/08/25 Javascript
微信小程序时间标签和时间范围的联动效果
2019/02/15 Javascript
nodejs中实现用户注册路由功能
2019/05/20 NodeJs
基于layui内置模块(element常用元素的操作)
2019/09/20 Javascript
微信小程序如何通过用户授权获取手机号(getPhoneNumber)
2020/01/21 Javascript
如何解决jQuery 和其他JS库的冲突
2020/06/22 jQuery
vue 保留两位小数 不能直接用toFixed(2) 的解决
2020/08/07 Javascript
[00:20]TI9不朽观赛名额抽取
2019/08/05 DOTA
利用python获取当前日期前后N天或N月日期的方法示例
2017/07/30 Python
详解Python中的type和object
2018/08/15 Python
python 顺时针打印矩阵的超简洁代码
2018/11/14 Python
面向对象学习之pygame坦克大战
2019/09/11 Python
英国领先的亚洲旅游专家:Wendy Wu Tours
2018/01/21 全球购物
女士时装鞋:Chinese Laundry
2018/08/29 全球购物
在C++ 程序中调用被C 编译器编译后的函数,为什么要加extern "C"
2014/08/09 面试题
管理失职检讨书
2014/02/12 职场文书
文明之星事迹材料
2014/05/09 职场文书
秋季运动会广播稿(30篇)
2014/09/13 职场文书
2015年设计师个人工作总结
2015/04/25 职场文书
教你使用Jenkins集成Harbor自动发布镜像
2022/04/03 Servers
Tomcat弱口令复现及利用
2022/05/06 Servers