SU17-Orin Now Supports YOPO for Ready-to-Use End-to-End Obstacle Avoidance
YOPO, or You Only Plan Once, is an open-source end-to-end planning algorithm from Tianjin University. Based on optimal-control theory and adversarial training, YOPO greatly reduces training and inference computation while maintaining model robustness. It enables efficient integration of perception, planning, and control.
To make YOPO easier for researchers, developers, and UAV enthusiasts to use, the SU17-Orin optional package now comes preinstalled and adapted with the YOPO module. Users can use it out of the box without additional environment configuration.
YOPO Advantages
High Computational Efficiency
The biggest advantage of YOPO is computational efficiency. Experiments show that YOPO can reduce adversarial-training time to roughly two to three times that of natural training, while traditional PGD adversarial training may require more than ten times the time.
Theoretical Foundation
YOPO is not just an engineering trick. It is based on rigorous mathematical derivation from differential equations and optimal-control theory, providing theoretical support for convergence and effectiveness.
Maintained Defense Effect
Although the computation cost is significantly reduced, YOPO-trained models maintain robustness comparable to or better than PGD adversarially trained models under both white-box and black-box attacks.
Good Generalization
YOPO is more like a training framework than a single attack algorithm. It can be combined with multiple attack methods such as PGD.
YOPO Autonomous Navigation Guide
The following steps show how to enable YOPO end-to-end visual obstacle avoidance in the SU17-Orin optional package. The software screenshots are kept as original UI references so users can match the steps with the actual ground-station interface.
1. Connection Setup
Open the ground-station connection settings and connect to the aircraft.

2. Start BSA_SLAM
Click the BSA_SLAM startup items in order according to the interface. After startup, wait patiently and check that the localization source switches successfully. When the top-right status in the ground station changes from red to blue, the multi-camera localization has started.


3. Start Depth Map Compression
Click depth-map compression in the function scripts. In the onboard computer terminal, the message “RVL Encoder initialized” indicates that depth-map compression has started.



4. YOPO Visual Obstacle Avoidance
Click the YOPO button in the function scripts to start the end-to-end obstacle-avoidance function. The optional package desktop will automatically open RViz. When the depth map and trajectory are displayed in RViz and the terminal shows “YOPO Net Node Ready!”, the program has started normally.
The message “tensorrt not found” is normal when the PyTorch-format model is being used. This message will not appear when using a TensorRT model.


5. Take Off and Send a Target Point
Unlock and take off. Switch remote-controller channel six to the third position and enter COMMEND_CONTRAL mode.
In RViz on the ground station, select a target point. The operator needs to estimate the target position, input it, and click send. The UAV will use the YOPO algorithm to plan an obstacle-avoidance trajectory toward the target.

When the optional-package terminal displays “Arrive!”, the UAV has reached the target point.

Ready to Use on SU17-Orin
In the SU17-Orin optional package, YOPO has already been configured and adapted to the system. No extra installation or debugging is required.
This makes it easier for researchers to reproduce the YOPO algorithm and provides a reliable platform for end-to-end UAV autonomous navigation research and experiments.
