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.
71 lines
3.5 KiB
71 lines
3.5 KiB
# open_nsfw_android
|
|
[](https://github.com/devzwy/open_nsfw_android) [](https://github.com/devzwy/open_nsfw_android) [](https://www.apache.org/licenses/LICENSE-2.0)
|
|
[](https://github.com/devzwy/open_nsfw_android) [](https://github.com/devzwy/open_nsfw_android) 
|
|
|
|
[English Doc](https://github.com/devzwy/open_nsfw_android/blob/dev/README_EN.md)
|
|
|
|
|
|
### 色情图片离线识别,基于TensorFlow实现。识别只需20ms,可断网测试,成功率99%,调用只要一行代码,从雅虎的开源项目open_nsfw移植,该模型文件可用于iOS、java、C++等平台
|
|
### iOS请参考:[issues13](https://github.com/devzwy/open_nsfw_android/issues/13)
|
|
### Python参考:[NSFW-Python](https://github.com/devzwy/NSFW-Python)、[Python-TensorflowLite-Api](https://tensorflow.google.cn/api_docs/python/tf/lite)、[Python-Tensorflow-Api](https://tensorflow.google.cn/api_docs/python/tf)
|
|
### Java参考:[Tensorflow-Api](https://tensorflow.google.cn/api_docs/java/reference/org/tensorflow/package-summary)
|
|
### C++参考:[TensorflowLite-Api](https://tensorflow.google.cn/lite/api_docs/cc)
|
|
### JavaScript参考[JS相关文档](https://js.tensorflow.org/api/latest/)
|
|
>>> 其中Python、C++均有两种数据喂入的方式,可根据需求选择pb模型或tfLite文件,详细请参考上面的链接.Java的目前只能加载pb模型。其他的平台可自行[百度](https://www.baidu.com)
|
|
### 本项目移除测试图片,请下载Demo后自行配图测试
|
|
#### 测试图片
|
|
|
|

|
|
|
|
|
|
### 开始使用
|
|
|
|
- 开启tflite文件支持
|
|
|
|
```
|
|
android {
|
|
aaptOptions {
|
|
noCompress "tflite"
|
|
}
|
|
}
|
|
```
|
|
- 引入依赖
|
|
|
|
```
|
|
//可选 快速初始化扫描器,可免去初始化代码
|
|
implementation 'com.zwy.nsfw:nsfw_initializer:1.3.7'
|
|
//必须 扫描器核心文件
|
|
implementation 'com.zwy.nsfw:nsfw:1.3.7'
|
|
```
|
|
|
|
- 初始化
|
|
|
|
```
|
|
//方式一,将模型文件放在Assets根目录下并命名为nsfw.tflite
|
|
NSFWHelper.init(context = this@Application)
|
|
|
|
//方式二,适用于产品对apk大小控制严格,无法将模型文件直接放在apk中,可在用户打开Apk后台静默下载后指定模型路径进行初始化
|
|
NSFWHelper.init(modelPath = "模型文件存放路径")
|
|
|
|
//方式三,将模型文件放在Assets根目录下并命名为nsfw.tflite,引用该库可免去初始化代码
|
|
implementation 'com.zwy.nsfw:nsfw_initializer:1.3.7'
|
|
|
|
```
|
|
- 使用:
|
|
|
|
```
|
|
//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
|
|
```
|
|
|
|
### 安卓手机直接[点我安装](http://d.6short.com/q9cv)
|
|
|
|
### 扫码下载
|
|
|
|

|
|
|