小小树莓派鉴黄初体验 OpenNSFW on RPi

OpenNSFW是雅虎数年前已经训练好的一个鉴黄模型(是的只是模型而已,素材请自行解决)。既然已经在小树莓派上搭建好了Caffe,那么何不试试基于Caffe的鉴黄模型?

Caffe环境

关于树莓派(64位的,32位可参考)Caffe环境的搭建,之前的一遍文章已经谈过,可以去参考一下。

另外,需要把Caffe的Python接口也编译了,即pycaffe环境:

# 在caffe目录下执行
make pycaffe -j4

然后记得往PYTHONPATH里面添加此库:

vim ~/.zshrc
vim ~/.bashrc
export PYTHONPATH=/path/to/caffe/python:$PYTHONPATH

检验pycaffe库是否配置正确:在python中import一下,如下即可。

小小树莓派鉴黄初体验 OpenNSFW on RPi

如果在编译pycaffe、添加了PYTHONPATH后,在import时出现No module named xxxx的情况,原因是python库还没装好,方法:

  1. caffe/python目录下执行pip install -r requirements.txt
  2. 使用apt安装确实的python包

OpenNSFW

找个地方克隆下这个关键的模型,由于该模型略大,因此git-clone还是会挺久的,有障碍的话可以直接下载zip包。

git clone https://github.com/yahoo/open_nsfw.git

克隆或者解压后进入目录,然后准备一下素材图片:

小小树莓派鉴黄初体验 OpenNSFW on RPi

然后执行命令:

python ./classify_nsfw.py --model_def nsfw_model/deploy.prototxt --pretrained_model nsfw_model/resnet_50_1by2_nsfw.caffemodel INPUT_IMAGE_PATH

把其中的INPUT_IMAGE_PATH改成图片路径即可,比如此处换成test1.png即可,就会得到该图片涉黄的概率:

小小树莓派鉴黄初体验 OpenNSFW on RPi

小小树莓派鉴黄初体验 OpenNSFW on RPi

从结果中看出,XX得分是0.6067,个人可以将它理解为XX概率,即60%的XX概率。

再举个例子(抱歉,重码!):

小小树莓派鉴黄初体验 OpenNSFW on RPi

小小树莓派鉴黄初体验 OpenNSFW on RPi

幸好重码,不然涉黄分数都高达0.8488了。。

再来举个反例试试吧(这次就不用打码了):

小小树莓派鉴黄初体验 OpenNSFW on RPi

得分:

小小树莓派鉴黄初体验 OpenNSFW on RPi

小到不敢相信,诚不欺我!!

初体验总结

试了一下,图像检测的时候资源耗用也没有想象中那么高,似乎也就几百M内存,以及一点点计算资源,连树莓派这样的小机器都能在数秒内检测完。相信结合其他东西会更好玩。

先这样吧

若有错误之处请指出,更多地关注煎鱼

相关推荐