With the rapid development of autonomous driving technology, high-performance camera modules have become an indispensable part of autonomous vehicles. GMSL (GigE Vision and Machine Vision Link) camera is a camera module widely used in the field of machine vision, with the advantages of high resolution, high frame rate and low latency. Deploying GMSL cameras on NVIDIA Jetson AGX Orin can provide more powerful visual perception capabilities for autonomous vehicles.
This article will introduce the deployment steps of GMSL cameras on Jetson AGX Orin, including hardware connection, driver installation, camera configuration and application development.
Hardware:
1. NVIDIA Jetson Agx Orin Development Kit
2. Leetop GMSL camera adapter board 1715
3. GMSL camera
1. Hardware connection
First, you need to connect the 1715 and GMSL cameras to the Jetson AGX Orin. Since the GMSL camera interface is not led out on the interface board of the AGX Orin kit, Leetop-1715 is needed to connect the interface out, and it also needs to provide a stable power supply for the camera.
2. Driver installation and configuration
After installing the driver, the camera needs to be configured so that it meets the needs of your specific application. This includes setting the camera's working mode, resolution, frame rate and other parameters. This can be configured by modifying the configuration file or using tools provided by the manufacturer. During the configuration process, care needs to be taken to ensure that the camera's parameter settings match the needs of the application.
Download gmsl_camera.ko to Jetson AGX Orin, and use the script to load the driver and configure the camera, enter Jetson AGX Orin's Ubuntu environment, and open the console (assuming the driver and configuration script are installed in the HOME directory), run the configuration script:
GMSL can connect to 8 cameras at the same time. yt-ox08b40-h.sh is the configuration script of 8MP-YUV422 camera (different cameras may correspond to different configuration scripts). The configuration script detects and loads the GMSL camera driver and completes the configuration of GMSL parameters.
The running parameters of the script are described as follows:
yt-ox08b40-h.sh 30 # Configure the camera mounting control bus 30, configure the 1st and 2nd cameras, the default is 30
yt-ox08b40-h.sh 31 # Configure the camera mounting control bus 31, configure the 3rd and 4th cameras
yt-ox08b40-h.sh 32 # Configure the camera mounting control bus 32, configure the 5th and 6th cameras
yt-ox08b40-h.sh 33 # Configure the camera mounting control bus 30, configure the 7th and 8th cameras
The device nodes corresponding to the 1st to 8th cameras are /dev/video0~/dev/video7. If the 1st and 5th cameras are detected, then /dev/video0 and /dev/video4 will be operated accordingly.
In the above figure, the failure to detect the camera with the 30-0 address indicates that the camera is not connected normally, and the success of 30-1 indicates that the second camera is detected normally (the corresponding device node is /dev/video1). The detection of other cameras And so on.
You can use the following command to detect the loading of the camera driver:
If there is no problem with the hardware connection and device, then the image can be output normally.
GMSL cameras generally output YUV422 images. The resolution and frame rate are determined by the camera and cannot be set. For example, for the camera in this test, the resolution is 3860x2160, the frame rate is 30 frames/second, and the output image format is UYVY.
4. Application development
After completing the camera configuration, you can start developing applications to obtain and process the camera's image data. During the development process, the corresponding software development kit (SDK) and programming language (such as C++ or Python) need to be used. SDKs usually provide a series of functions and tools to allow developers to easily access and control cameras. You can use the functions provided by the SDK to read the camera's image data and transmit it to the control system or other modules of the autonomous vehicle after processing.
For the development of corresponding cameras, just use the V4L2 standard call of Linux. The key issue is to find the corresponding device node and perform image operations according to the resolution and image format of the camera.
6. Summary
This article introduces the deployment steps of GMSL cameras on Jetson AGX Orin, including hardware connection, driver installation, camera configuration, etc. By following these steps, you can successfully integrate a GMSL camera into a Jetson AGX Orin system and enable it to provide powerful visual perception capabilities for autonomous vehicles. It should be noted that the correctness of each step needs to be carefully checked during the deployment process, and corresponding adjustments and optimizations should be made based on actual application requirements.