我想在我的颤动应用程序的相机上实现近乎实时的OCR . 为此,我想以快速的方式访问摄像机数据 . 据我所知,我有两个选择,并且两个都遇到了障碍:

  • 通过在其周围放置 RepaintBoundary 并创建 RenderRepaintBoundary 并调用 boundary.toImage() 来获取 CameraPreview 的屏幕截图 . 这种方法的问题在于.toImage方法似乎只捕获边界中的绘制小部件而不是摄像机预览中的数据 . Simmilar对这里描述的问题:https://github.com/flutter/flutter/issues/17687

  • 使用相机0.2.1中的 controller.takePicture(filePath) 捕获图像,类似于示例文档 . 这里的问题是在图像可用之前需要超长时间(2-3秒) . 我想这是因为文件在捕获时保存到光盘,然后需要再次从文件中读取 .

有什么方法可以在捕获后直接访问图片信息,做一些事情,比如预处理和OCR?