You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

基于android.hardware.camera2调用Intel RealSense同步采集深度与普通图像问题

问题解答

结论:可以通过camera2实现该需求,但需要针对Intel RealSense相机的特性调整实现逻辑,无需急着切换到RealSense SDK

崩溃原因排查与修复步骤

  • 核心前提:RealSense相机的101(深度)和105(普通图像)属于同一物理设备的两个逻辑摄像头,camera2框架下不能直接按两个独立设备来创建并发会话,这是崩溃的核心诱因之一。
  • 检查设备是否支持逻辑多摄像头(Logical Multi-Camera):
    1. 通过CameraManager获取两个摄像头的CameraCharacteristics,查看REQUEST_AVAILABLE_CAPABILITIES中是否包含REQUEST_AVAILABLE_CAPABILITIES_LOGICAL_MULTI_CAMERA。
    2. 如果支持,需找到对应的组合摄像头ID,而非单独打开101和105。通过组合ID创建CameraDevice后,可在同一个CaptureSession中同时配置RGB预览、人脸检测和深度流的输出Surface。
  • 若设备不支持逻辑多摄像头,尝试以下操作:
    1. 确认是否允许同时持有两个CameraDevice实例:部分USB相机支持同时打开多个逻辑摄像头,但需要为每个CameraDevice分配独立的回调线程,避免线程冲突。
    2. 检查createCaptureSession的Surface配置:确保深度流(比如格式为DEPTH16)和RGB流(比如YUV_420_888)的尺寸、格式是设备支持的组合配置。可通过CameraCharacteristics.get(SCALER_STREAM_CONFIGURATION_MAP)查询支持的流参数组合。
    3. 查看崩溃日志定位具体问题:如果是权限问题,确认已申请CAMERA权限(Android 13及以上需单独申请CAMERA_RECORD_AUDIO等细分权限);如果是硬件限制,则需考虑RealSense SDK方案。

关于RealSense SDK的选择

如果上述camera2方案均无法解决问题,使用Intel官方的RealSense SDK是更稳妥的选择——它针对RealSense相机做了深度优化,原生支持同步采集RGB与深度图像、自动对齐等功能,但确实需要对现有代码进行适配改造。建议优先排查camera2的实现问题,再考虑切换SDK。

内容的提问来源于stack exchange,提问作者Chris Smeets

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.02 20:01:11