You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
5 years ago | |
---|---|---|
.github | 5 years ago | |
.idea | 5 years ago | |
app | 5 years ago | |
gradle/wrapper | 5 years ago | |
img | 5 years ago | |
nsfw | 5 years ago | |
nsfw_initializer | 5 years ago | |
.gitattributes | 6 years ago | |
.gitignore | 6 years ago | |
LICENSE | 5 years ago | |
README.md | 5 years ago | |
README_EN.md | 5 years ago | |
build.gradle | 5 years ago | |
gradle.properties | 5 years ago | |
gradlew | 5 years ago | |
gradlew.bat | 6 years ago | |
settings.gradle | 5 years ago |
README.md
open_nsfw_android
色情图片离线识别,基于TensorFlow实现。识别只需20ms,可断网测试,成功率99%,调用只要一行代码,从雅虎的开源项目open_nsfw移植,该模型文件可用于iOS、java、C++等平台
iOS请参考:issues13
Python参考:NSFW-Python、Python-TensorflowLite-Api、Python-Tensorflow-Api
Java参考:Tensorflow-Api
C++参考:TensorflowLite-Api
JavaScript参考JS相关文档
其中Python、C++均有两种数据喂入的方式,可根据需求选择pb模型或tfLite文件,详细请参考上面的链接.Java的目前只能加载pb模型。其他的平台可自行百度
本项目移除测试图片,请下载Demo后自行配图测试
测试图片
开始使用(从1.3.9版本开始,依赖从JetPack移动到Maven仓库,可直接在项目中依赖,无需添加jetpack支持)
- 开启tflite文件支持
android {
aaptOptions {
noCompress "tflite"
}
}
//可选 快速初始化扫描器,可免去初始化代码
implementation 'com.zwy.nsfw:nsfw_initializer:lastVersion'
//必须 扫描器核心文件
implementation 'com.zwy.nsfw:nsfw:lastVersion'
//必须 tensorflow 支持库
implementation 'org.tensorflow:tensorflow-lite:2.1.0'
implementation 'org.tensorflow:tensorflow-lite-gpu:2.1.0'
- 初始化
//方式一,将模型文件放在Assets根目录下并命名为nsfw.tflite
NSFWHelper.init(context = this@Application)
//方式二,适用于产品对apk大小控制严格,无法将模型文件直接放在apk中,可在用户打开Apk后台静默下载后指定模型路径进行初始化
NSFWHelper.init(modelPath = "模型文件存放路径")
//方式三,将模型文件放在Assets根目录下并命名为nsfw.tflite,引用该库可免去初始化代码
implementation 'com.zwy.nsfw:nsfw_initializer:lastVersion'
- 使用:
//val mNSFWScoreBean:NSFWScoreBean = File.getNSFWScore()
//val mNSFWScoreBean:NSFWScoreBean = Bitmap.getNSFWScore()
//val mNSFWScoreBean:NSFWScoreBean = NSFWHelper.getNSFWScore(bitmap)
mNSFWScoreBean.sfw ... 非涉黄数值 数值越大约安全
mNSFWScoreBean.nsfw ... 涉黄数值 数值越大约危险
mNSFWScoreBean.timeConsumingToLoadData ... 装载数据耗时 单位ms
mNSFWScoreBean.timeConsumingToScanData ... 扫描图片耗时 单位ms