项目介绍:NSFWDetector
NSFWDetector 是一个轻量级的 CoreML 模型,用于扫描图像中的裸露内容。该模型大小仅为 17 kB,是通过使用 CreateML 进行训练,以区分色情/裸露图片和适宜的图片。其主要目标是区分类似 Instagram 模特的图片和色情内容。
功能与使用
NSFWDetector 使用简单。它提供了一套接口来检测图像中裸露内容的概率值,帮助开发者进行更精确的内容筛选。在 iOS 12.0 及以上版本中,通过 NSFWDetector 的单例模式,可以轻松调用其检测功能。
guard #available(iOS 12.0, *), let detector = NSFWDetector.shared else {
return
}
detector.check(image: image, completion: { result in
switch result {
case let .success(nsfwConfidence: confidence):
if confidence > 0.9 {
// 检测为不适宜内容
} else {
// 内容适宜
}
default:
break
}
})
开发者可以根据平台需求调整判断标准的置信度阈值,以实现更加严格的内容审查。
安装方法
NSFWDetector 提供了不同的安装方式,以便开发者根据项目需求选择合适的集成方式。
Swift Package Manager
在 Swift Package Manager 中,可以通过以下配置进行集成:
dependencies: [
.package(url: "https://github.com/lovoo/NSFWDetector.git", .upToNextMajor(from: "1.1.2"))
]
CocoaPods
在 CocoaPods 中,可以使用以下简单指令安装:
pod 'NSFWDetector'
注意:由于模型是通过 CreateML 训练的,编译该项目需要 Xcode 10 或更高版本。
应用程序大小
相比于其他使用 Yahoo 模型的库,NSFWDetector 的机器学习模型仅为 17 kB,因此对应用程序大小影响甚微。
仅使用模型文件
如果开发者只对模型文件感兴趣而不想使用检测代码,可以直接从最新发布版本下载 .MLModel 文件进行使用。
反馈与支持
如果在特定类型的图片中发现识别问题,开发者可以通过邮件或 Twitter 联系项目作者 Michael Berg,提供反馈以改进模型。
授权信息
NSFWDetector 项目可在 BSD 许可证下使用,具体信息详见 LICENSE 文件。
通过 NSFWDetector,开发者能够轻松集成图像内容审查能力,帮助创建更加安全和适宜的用户体验。