作者 / 高级开发者关系工程师 Thomas Ezan;机器学习套件工程师 Chengji Yan 和 Penny Li;产品经理 David Miro Llopis
我们很高兴为您介绍近期推出的 ML Kit 文档扫描器 API。该全新 API 能帮助您轻松地将高级文档扫描功能添加至您的 Android 应用,并提供高质量且一致的用户界面。ML Kit 文档扫描器 API 能让您的用户快速轻松地对纸质文档进行数字化处理。
ML Kit 文档扫描器 API
https://developers.google.cn/ml-kit/vision/doc-scanner
与其他 ML Kit API 一样,ML Kit 文档扫描器 API 能让您在不具备任何机器学习 (ML) 知识的情况下,无缝集成由机器学习 (ML) 驱动的各种功能。
为什么选择文档扫描器 SDK?
尽管我们正处于数字时代,但在我们的日常生活中仍会接触许多纸质文档和打印文件,更别提身份证和收据等实体文件了。
ML Kit 文档扫描器 API 具有许多优势,包括:
高质量且一致的用户界面,用于对实体文档进行数字化处理。
借助精准的角点和边缘检测技术进行精确的文档检测,实现无缝扫描体验和最佳扫描效果。
用户可借助灵活的功能裁剪已扫描的文档和添加滤镜,并且去除手指、污渍以及其他瑕疵,最终还能将数字化文件以 PDF 和 JPEG 格式发送回您的应用。
设备端处理,保护您的隐私。
无需相机权限的完整解决方案。
Google Drive Android 应用和 Google Pixel 相机现均已采用 ML Kit 文档扫描器 API。
△ ML Kit 文档扫描器 API 在 Google Drive 上的实际应用
即刻探索
ML Kit 文档扫描器 API 需要 Android API 级别 21 及更高版本。模型、扫描逻辑和用户界面流程都是通过 Google Play 服务动态下载的,因此 ML Kit 文档扫描器 API 并不会占用您应用的太多内存。
如要将该 API 集成到您的应用中,请先配置扫描器选项并获取扫描器客户端:
val options = GmsDocumentScannerOptions.Builder()
.setGalleryImportAllowed(false)
.setPageLimit(2)
.setResultFormats(RESULT_FORMAT_JPEG, RESULT_FORMAT_PDF)
.setScannerMode(SCANNER_MODE_FULL)
.build()
val scanner = GmsDocumentScanning.getClient(options)
然后注册 ActivityResultCallback 以接收扫描结果:
val scannerLauncher = registerForActivityResult(StartIntentSenderForResult()) {
result -> {
if (result.resultCode == RESULT_OK) {
val result =
GmsDocumentScanningResult.fromActivityResultIntent(result.data)
result.getPages()?.let { pages ->
for (page in pages) {
val imageUri = page.getImageUri()
}
}
result.getPdf()?.let { pdf ->
val pdfUri = pdf.getUri()
val pageCount = pdf.getPageCount()
}
}
}
}
最后启动文档扫描器 Activity:
scanner.getStartScanIntent(activity)
.addOnSuccessListener { intentSender ->
scannescannerrLauncher.launch(IntentSenderRequest.Builder(intentSender).build())
}
.addOnFailureListener { ... }
如要开始使用 ML Kit 文档扫描器 API,您可以访问官方文档了解更多详情。我们热切期待看到您借助该 API 打造更全面的应用与功能!欢迎您持续关注 "Android 开发者" 微信公众号,及时了解更多开发技术和产品更新等资讯动态。
官方文档
https://developers.google.cn/ml-kit/vision/doc-scanner
推荐阅读
如页面未加载,请刷新重试
点击屏末 | 阅读原文 | 即刻了解更多开发信息技术动态