Stitching using Clara Xavier SDK

Hi, I’m stitching a group of cameras video images in one to produce a 360° video from a medical device. What will be the best/recommended way to start?
We are migrating our current stitch from OpenCV Intel Arch to NVDIA Jetson. Thanks

Hello, is your inquiry more about the I/O capability of multiple camera inputs to Clara AGX or about the software capabilities for stitching?

Hi, A little bit more details of our case:
We are working for an advanced multi camera system with very limited space for medical applications. All camera signals are assembled in a single stream with a USB3 interface. Input is a single stream (5-6 cameras in the same stream), USB3 cypress video stream. No compression, raw 8 or 10 bits RGB. Minimum 2400x1600 30 fps. Desirable to handle 8Mp raw sensors in the near future or 4MP double exposure at 60fps
Our Output can be a compressed video on USB3 interface or directly to a standard computer PCI for additional user interface post processing. Single HDMI output.
In terms of latency requirements: Real time requirement with absolute worst case below 4 frames delay @30fps (133ms). Average should no be more than 2 frames @30fps or 66ms.
We currently have a working product with lower resolution cameras and a different architecture -Nvidia GPU cards to handle the OpenCV with CUDA - working on Windows 10 and multiple USB camera streams. We are developing an improved version and considering all image processing on the Nvidia platform. We want to migrate the image processing to the Jetson platform by Oct '21.

Thanks for your reply.

Sorry. Our question is more about the software capabilities for stitching, understanding that I/O capability is not a problem.

Thank you for the info! Are you currently using a windows based machine with a GPU? Since our Clara AGX is ARM based, you would need to make sure that Cypress provides ARM64 drivers.

For the data IO, if we’re limited to using the USB interface, Clara AGX has two USB 3.0 ports with 5 Gbps each, which would not work with the setup of 5 channels of 2400x1600 8b 4:2:2 @ 30fps which translates to 1.84 Gbps per camera, or about 11 Gbps for 5 cameras. If the IO can be made through other interfaces that is a different story.

We have an aggregate stream of 5 cameras with a total of 2.6 gpbs. The stream is on USB3, It means, we have only a single USB3 video stream no compression RAW pixel data 10 bits. What about the software stitching capabilities ? Thanks

@nancyqf Thanks for the information. Are you currently using any stitching software?
Clara AGX SDK does not have any stitching software built in.

OpenCV using opencv-python package runs on Clara AGX. There are many stiching algorithms written with OpenCV, would that work for you? A quick search turned up several options, such as:

Image Stitching with OpenCV and Python
OpenCV - High level stitching API (Stitcher class):

Hi, thanks for your help. I’m confirming then that we should use OpenCV for image stitching even on Clara or Jetson? We will start to doing this in our demo. Thanks again.