使用 ML Kit 文档扫描器 API 轻松将文档扫描功能添加至您的应用

a2c7ada3d0193367f120ad386ac6a205.png

作者 / 高级开发者关系工程师 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) 驱动的各种功能。

b673221b9282d82cc12e5edd4242a76a.png

765ca8541bf106e9028ebf35f1e223ff.png

为什么选择文档扫描器 SDK?

尽管我们正处于数字时代,但在我们的日常生活中仍会接触许多纸质文档和打印文件,更别提身份证和收据等实体文件了。

ML Kit 文档扫描器 API 具有许多优势,包括:

  • 高质量且一致的用户界面,用于对实体文档进行数字化处理。

  • 借助精准的角点和边缘检测技术进行精确的文档检测,实现无缝扫描体验和最佳扫描效果。

  • 用户可借助灵活的功能裁剪已扫描的文档和添加滤镜,并且去除手指、污渍以及其他瑕疵,最终还能将数字化文件以 PDF 和 JPEG 格式发送回您的应用。

  • 设备端处理,保护您的隐私。

  • 无需相机权限的完整解决方案。

Google Drive Android 应用和 Google Pixel 相机现均已采用 ML Kit 文档扫描器 API。

55df2528ae5ccc6dd666db7cab45eb76.gif

△ ML Kit 文档扫描器 API 在 Google Drive 上的实际应用

c34667ef487b192fb0e2b8d1aa86b035.png

即刻探索

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

9f832047f9731e04d112929e889d42d8.png

推荐阅读

如页面未加载,请刷新重试

a4b64eb58e91c8030277766720f2abc9.gif 点击屏末 阅读原文 | 即刻了解更多开发信息技术动态


dfc14b628d9794bada2ff6f8efaff3ad.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值