【发布时间】:2021-08-31 10:32:37
【问题描述】:
对于一个涉及光学相机通信 (OCC) 的研究项目,我需要主动分析视频帧,我目前正在使用 python 和 opencv 在我的电脑上离线进行分析(我用智能手机录制视频,然后进行处理) .我想使用我的三星 Galaxy A40 上的相机实时处理视频。我对android开发相当陌生,所以我只想创建一个基本的应用程序来捕获视频并将其传输到我的电脑进行分析。我的应用程序需要 30 fps 或更高的 1080p 捕捉。
我目前正在使用提供 imageAnalysis 用例的 Android Camerax API,它使我能够访问原始图像平面:我得到一个 YUV_420_888 格式的 ImageProxy。
我仍在熟悉 API,但已经能够根据在线示例重现一些基本应用程序。我还有一个具体问题:
将图像序列化并传输到我在电脑上的 python 应用程序的最佳方法是什么? 我正计划使用套接字创建一个简单的 TCP 连接,将图像转换为位图并像这样直接发送它。但是,我不确定这种方法是否非常有效,并且我不知道如何转换图像并对其进行缓冲。代码示例当然是受欢迎的。有线连接(我的电脑的 USB 电缆)也是可能的,但我没有找到任何支持。
欢迎任何想法!提前致谢。
【问题讨论】:
-
通常在设备上处理摄像头馈送不需要流式传输。如果只是出于监控/演示目的需要,您可以使用scrcpy 之类的工具,无论您将在设备上图像处理之外增加转换/传输的开销成本。
标签: android serialization android-camera2 android-camerax