python用10行代码实现对黄色图片的检测功能
更新时间:2015年08月10日 12:44:23 作者:企鹅
这篇文章主要介绍了python用10行代码实现对黄色图片的检测功能,涉及Python基于图片库PIL对图片的检测技巧,具有一定参考借鉴价值,需要的朋友可以参考下
本文实例讲述了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程序设计有所帮助。
相关文章
python3 requests中使用ip代理池随机生成ip的实例
今天小编就为大家分享一篇python3 requests中使用ip代理池随机生成ip的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧2018-05-05
keras的ImageDataGenerator和flow()的用法说明
这篇文章主要介绍了keras的ImageDataGenerator和flow()的用法说明,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧2020-07-07
Python使用progressbar模块实现的显示进度条功能
这篇文章主要介绍了Python使用progressbar模块实现的显示进度条功能,简单介绍了progressbar模块的安装,并结合实例形式分析了Python使用progressbar模块显示进度条的相关操作技巧,需要的朋友可以参考下2018-05-05


最新评论