快捷导航
您好,我现在使用的设备是Apex2,我们在使用中有如下的需求:
通过gmsl获取原始相机帧及曝光时间戳,同时会将该帧通过NVJPG引擎压缩成jpg格式输出
通过查阅nvidia和米文论坛资料
为了获取曝光时间戳应该是使用cameras_sdk_demo中的接口比较合适,但是该接口链接了opencv库,而opencv库跟NVJPG引擎的libnvjpeg.so是是冲突的(根据我们的测试和nvidia论坛的说法),请问如何适配我们的需求呢


根据论坛的帖子ApexII从V4L接口取时间戳 , 如果用这个帖子中提到的方法来单独获取时间戳,那么:
1、gmsl外部触发的帧率如何修改,譬如10Hz(相机支持30Hz),触发需要使能吗(如何使能)
2、"同时用自己的方式获取图像",是指直接v4l2的接口获取吗
3、获取的图像帧跟通过"/dev/miivii-sync-out"获取的时间戳,二者如何对应

谢谢

举报 使用道具
| 回复

共 5 个关于本帖的回复 最后回复于 2021-5-17 17:38

Hcheng 游客 发表于 2021-5-17 13:57 | 显示全部楼层
您好:

先初步回答一下您的问题:
>> 通过gmsl获取原始相机帧及曝光时间戳,同时会将该帧通过NVJPG引擎压缩成jpg格式输出
您遇到的问题应该是这个:https://forums.developer.nvidia.com/t/opencv-with-libnvjpeg/69949
我们的SDK依赖OpenCV是让大部分用户使用更加简单,本身是比较合理的。
因此这是一个NVJPG和opencv冲突的问题,而不是我们SDK不应该用OpenCV的问题。我们不太会因为这种原因修改我们的SDK。

综上所属:
建议可以通过我们销售来触发一个项目,来对您这边进行特殊的支持。如提供特殊的库支持。

下午我们会对这个需求进行一个深入讨论。
1、gmsl外部触发的帧率如何修改,譬如10Hz(相机支持30Hz),触发需要使能吗(如何使能)
目前这部分只能通过我们的SDK来修改,并没有提供底层的SDK来进行修改。

2、"同时用自己的方式获取图像",是指直接v4l2的接口获取吗
是的。

3、获取的图像帧跟通过"/dev/miivii-sync-out"获取的时间戳,二者如何对应
在Apex2上获取图像时间戳的方式改变了,/dev/miivii-sync-out只是获取sync out输出的时间戳,并不是图像的时间戳。
Hcheng 游客 发表于 2021-5-17 16:23 | 显示全部楼层
再确认一下:

您的这个问题,是只要链接了opencv库就会发生?
还是说使用了OpenCV Mat格式的数据才会发生?

如果是后者,我们的cameras_sdk_demo中有获取非CV Mat的API示例,您可以尝试使用。
xiao 会员 发表于 2021-5-17 16:54 | 显示全部楼层
Hcheng 发表于 2021-5-17 13:57
您好:

先初步回答一下您的问题:

1.可以说的具体点吗?或者有文档吗?
2.和3. 是说目前除了sdk,并不能获取图像帧和曝光,所以没办法不通过SDK,也就是会间接链接到opencv

链接出来的二进制,执行会出问题
nvidia的api实现很奇怪,直接钩掉了libjpeg.so的函数的内部实现
导致一旦链接opencv(间接链接了libjpeg.so),而使用nvjpg引擎再链接libnvjpeg.so就会出现同名函数
xiao 会员 发表于 2021-5-17 16:59 | 显示全部楼层
本帖最后由 xiao 于 2021-5-17 17:00 编辑

如果您这边能够提供v4l2的接口的同时,很方便的获取到对应时间戳(能够调整帧率到10Hz)
那么这个问题就可以比较好的解决,这样就不用链接opencv,也就没冲突这个问题
Hcheng 游客 发表于 2021-5-17 17:38 | 显示全部楼层
xiao 发表于 2021-5-17 16:59
如果您这边能够提供v4l2的接口的同时,很方便的获取到对应时间戳(能够调整帧率到10Hz)
那么这个问题就可以比 ...

您好

这个唯一的方式是通过我们销售触发一个支持项目,我们给您单独的一个库,就可以解决这样的问题了。
您需要登录后才可以回帖 登录 | 点我注册

精彩推荐

  • canbus与vcu相连接,出现bus-off状态
  • 有线连接失败
  • Apex 串口通讯
  • 关于SPI通信问题咨询
  • MIIVII APEX DUAL ORIN米文域控制器产品合

明星用户