如何调用双目相机模组

用户您好,请详细描述您所遇到的问题:-

现在使用的RDK鸡西人双目相机模组,在X5板上,使用如下代码,修改cam_id,都是调用的一个相机,如何同时调用两个相机

import sys-
import time-
import cv2-
from hobot_vio import libsrcampy as srcampy-
import numpy as np-
def test_single_camera(cam_id=0):-
“”“-
打开一个相机,并实时显示图像-
:param cam_id: 相机 ID(MIPI 通道),默认为 0(相机 1),可以改为 1(相机 2)-
“””-
cam = srcampy.Camera()-
ret = cam.open_cam(cam_id, -1, 30, 1920, 1080) # 设置相机采集所用的参数-
print(f"Camera {cam_id} open_cam return:", ret)-

if ret != 0:-
print(f"Error: 无法打开相机 {cam_id}")-
return-

# 实时显示相机画面,按 `q` 退出-
while True:-
origin_image = cam.get_img(2, 1920, 1080)-
nv12 = np.frombuffer(origin_image, dtype=np.uint8).reshape(1080 * 3 // 2, 1920)-
bgr = cv2.cvtColor(nv12, cv2.COLOR_YUV2BGR_NV12)# COLOR_YUV420sp2RGB-
if bgr is not None:-
cv2.imshow(f"Camera {cam_id}", bgr)-

if cv2.waitKey(1) & 0xFF == ord(‘q’):-
break-

# 关闭相机-
cam.close_cam()-
print(f"Camera {cam_id} closed. Exiting…")-

# 关闭窗口-
cv2.destroyAllWindows()-

# 运行单相机测试(默认加载相机 1,可改 cam_id=1 选择相机 2)-
for cam_id in [0, 1, 2, 3]:-
print(f"尝试打开 Camera {cam_id} …")-
test_single_camera(cam_id)-


社区求助贴发帖建议-

基础信息

1. 板卡型号及板卡外观图片

RDK X3,RDK X3 Module,RDK X5,RDK X5 Module,RDK Ultra,RDK S100,等等

2. 系统软件版本: 提供 sudo cat /etc/version 命令和 sudo rdkos_info 命令的返回结果

3. 问题涉及的技术领域-
硬件开发 / TROS (TogetheROS.Bot)/ 算法工具链 (OpenExplore)/ 多媒体开发

Linux开发 (驱动,RDK OS)/ RDK Studio / 其他

4. 问题描述:-
- 复现概率:必现、高、中、低,并描述大致的概率数值

- 已进行的排查措施、分析及结果:尽可能详细的描述在进行什么功能的开发或者测试,发现了什么问题,问题现象,并且提供预期的结果

- 搜索一下论坛是否有相关的案例

- 如果涉及到社区的资源或者第三方资源,请尽可能提供资源的网址

- 功能异常,先排查一下是不是运行的代码和demo存在差异,修改不多的情况下直接用对比软件先对比

- 提供必要的问题日志

常见问答100条: https://horizonrobotics.feishu.cn/docx/QYfCddrK8o2IIJxVUypcv3b7nsf-

多媒体相关问题发帖请参考:https://developer.d-robotics.cc/forumDetail/266441979142197461-

TROS 问题基础排查

确保您的tros软件包都是最新的:一些问题在新版本中已经被修复,在apt update确保有地瓜的apt源“archive.d-robotics.cc”后进行apt upgrade。在提问时也请使用apt list | grep tros*apt show tros*命令提供您的软件包版本。

**尝试定位问题出现的node:**参考对应功能报的launch,将日志级别改为debug,重新运行,定位出现问题的node,并提供具体的ros2日志。一般tros的launch处于/opt/tros/share//launch目录下。ros2 日志一般在/root/.ros/log/目录下,排查前可以先rm -rf /root/.ros/log/*清空这个目录,再运行功能包收集日志。

**重新安装相关的tros功能包:**如果launch或者其他功能改乱了可以重装tros的软件包,利用apt重装tros软件包的一般步骤为,以hobot_usb_cam为例,先apt list | grep *hobot* 定位软件包的名称,然后apt remove tros-hobot-usb-cam,然后在apt update确保有地瓜的源“archive.d-robotics.cc”后进行apt install tros-hobot-usb-cam重新安装tros的包。

算法工具链 问题基础排查-
你好,提问请附上您的转化环境的horizon_nn(pip list | grep horizon)包版本,Python(py38/py310/py312)版本,onnx模型,yaml配置文件,编译使用命令,hb_mapper*.log等相关文件。很多问题在一两年前就已经解决,1.0.0的Docker的环境和手册入门章节安装conda中的环境都比较古老,请参考对应的OpenExplore发布帖子,下载对应的最新的Docker和OpenExplore包。-

社区算法资源(Open Explore)-
RDK X3 算法工具链社区手册:https://developer.d-robotics.cc/api/v1/fileData/horizon\_xj3\_open\_explorer\_cn\_doc/index.html-
RDK X3 OpenExplore 产品发布:https://developer.d-robotics.cc/forumDetail/136488103547258769-
RDK Ultra 算法工具链社区手册:https://developer.d-robotics.cc/api/v1/fileData/horizon\_j5\_open\_explorer\_cn\_doc/index.html-
RDK Ultra OpenExplore 产品发布:https://developer.d-robotics.cc/forumDetail/118363912788935318-
RDK X5 算法工具链社区手册:https://developer.d-robotics.cc/api/v1/fileData/x5\_doc-v126cn/index.html-
RDK X5 OpenExplore 产品发布:https://developer.d-robotics.cc/forumDetail/251934919646096384-

ret=cam.open_cam(0,1,30,1920,1080), 第二个参数为1的时候,才能调用成功,我也是只能调用成功一个相机。 你的双目相机现在搞定了吗?

你好,请参考:https://developer.d-robotics.cc/rdk\_doc/Basic\_Application/multi\_media/multi\_media\_api/pydev\_multimedia\_api\_x3/object\_camera

更改Camera.open_cam(pipe_id, video_index, fps, width, height, raw_height, raw_width)中的pipe_id,调用的还是同一个摄像头

并没有,在做深度估计吗,可以互相交流一下

要改的是video index

为什么修改video index,只调用成功1的时候,修改其他数值调用失败