Android页面/边缘检测和转换页面.转换为B/W tiff

kat*_*tit 8 android imaging

可能不是在寻找解决方案,而是在寻找相关指导.这是在我们的Android应用程序中实现"文档扫描程序".

我需要做到这一点:

  1. 用相机拍照(没问题)
  2. 检测页边/角(???)
  3. 允许用户移动/调整角落(没问题)
  4. 变换图像使其成为矩形(???)
  5. 将图像转换为B/W TIFF或其他适当的格式,以便通过移动网络传输(紧凑,每像素位)(???)

我尝试了什么.我们尝试使用Open CV.这是巨大的,有NDK.设置和基础设施相当复杂.

有没有更轻的设计用于完成这项任务?即使商业也可能没问题.

只是寻找关于如何处理这个的建议..主要问题是检测边缘和转换我认为..

Bry*_*yan 5

我不知道有哪个库可以为您处理这个问题,但我遇到过一些可以实现类似结果的开源项目。大多数基于OpenCV库和/或OpenCV4Android SDK。以下是一些值得注意的项目:

另一个类似的库是 Google 的Mobile Vision API,其中包含文本识别 API。虽然这不能让您将文档转换为黑白图像,但它可以让您将文档转换为纯文本。

至于转换图像以通过网络传输;Android 本身并不支持TIFF 文件格式,但至少有一个库可以为您处理这种转换。Android 本身支持将图像压缩为JPEG、PNG 或 WEBP,您可以使用它们以编码字符串的形式通过网络发送数据:

ByteArrayOutputStream outputStream = new ByteArrayOutputStream();
bitmap.compress(Bitmap.CompressFormat.JPEG, 100, outputStream);
byte[] bytes = outputStream.toByteArray();
String encodedImage = Base64.encodeToString(bytes, Base64.DEFAULT);
Run Code Online (Sandbox Code Playgroud)