【开源】轻量级视频、图片NSFW内容检测工具

nsfwpy

nsfwpy是一个基于深度学习的色情图片识别工具,旨在通过AI模型对图片进行自动化分类,判断其是否包含不宜浏览的内容,并且额外支持GIF图像以及视频检测。

特性

  • 轻量级实现,依赖少,易于部署
  • 支持多种图像格式输入(几乎所有常见格式)
  • 提供命令行工具、Python API和HTTP API接口
  • 支持Windows和其他操作系统
  • 自动下载和缓存模型文件
  • 提供预编译版本
  • 在减小体积的同时提高了检测速度

安装

  • 通过pip安装

    pip install nsfwpy
    
  • 从源码安装

    git clone https://github.com/HG-ha/nsfwpy.git
    cd nsfwpy
    pip install -e .
    
  • Docker

    • docker run -p 8000:8000 yiminger/nsfwpy
  • 使用预编译版本(开箱即用)

    • 请前往 Release 下载对应平台的预编译版本。
    • windows:在cmd中输入 nsfwpy.exe
    • linux:chmod +x nsfwpy && ./nsfwpy

编译其他平台版本

  • 参考 build.bat | build.sh

使用方法

  • Python API

    from nsfwpy import NSFW
    
    # 初始化检测器(首次运行会自动下载模型)
    detector = NSFW()
    
    # 预测单个图像
    result = detector.predict_image("path/to/image.jpg")
    print(result)
    
    # 预测PIL图像
    from PIL import Image
    img = Image.open("path/to/image.jpg")
    result = detector.predict_pil_image(img)
    print(result)
    
    # 批量预测目录中的图像
    results = detector.predict_batch("path/to/image/directory")
    print(results)
    
  • 命令行工具

    # 基本用法
    nsfwpy --input path/to/image.jpg
    
    # 指定自定义模型路径
    nsfwpy --model path/to/model.onnx --input path/to/image.jpg
    
    # 指定模型需要的图像尺寸(通常用不到,因为目前模型只支持224,无需关注此参数)
    nsfwpy --dim 299 --input path/to/image.jpg
    

Web API服务(完全兼容 nsfwjs-api)

  • 启动API服务器:

    # 基本用法
    nsfwpy -w
    
    # 指定主机和端口
    nsfwpy -w --host 127.0.0.1 --port 8080
    
    # 指定自定义模型
    nsfwpy -w --model path/to/model.onnx
    
  • API端点:

    • POST /classify: 分析单张图片
    • POST /classify-many: 批量分析多张图片
  • API文档:

  • 请求:

    • /classify
      curl --location --request POST 'http://127.0.0.1:8000/classify' \
      --form 'image=@"image.jpeg"'
      
    • /classify-many
      curl --location --request POST 'http://127.0.0.1:8000/classify-many' \
      --form 'images=@"image.jpeg"' \
      --form 'images=@"image2.jpeg"'
      

预测结果格式

返回包含以下类别概率值的字典:

{
    "drawings": 0.1,    # 绘画/动画
    "hentai": 0.0,     # 动漫色情内容(変態)
    "neutral": 0.8,    # 中性/安全内容
    "porn": 0.0,       # 色情内容
    "sexy": 0.1        # 性感内容
}

项目地址:https://github.com/HG-ha/nsfwpy

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值