Skip to content

Bug fixes 01302026#23

Merged
GerdsenAI-Admin merged 90 commits into
mainfrom
bug-fixes-01302026
Feb 2, 2026
Merged

Bug fixes 01302026#23
GerdsenAI-Admin merged 90 commits into
mainfrom
bug-fixes-01302026

Conversation

@GerdsenAI-Admin

Copy link
Copy Markdown
Contributor

This pull request introduces major improvements for NVIDIA Jetson support, validates TensorRT 10.3 performance, and adds robust hardware detection, model setup, and testing infrastructure. It also resolves critical compatibility issues with OpenCV, PyTorch, and ROS2 on Jetson platforms, and updates the Docker build process for seamless deployment across CPU, CUDA, and Jetson ARM64 environments.

Jetson and TensorRT Support

  • Validated TensorRT 10.3 performance for DA3-SMALL on Jetson Orin NX, achieving a 6.8x speedup over PyTorch baseline and resolving incompatibility with TensorRT 8.6 by updating the Docker base image to L4T r36.4.0.
  • Added a dedicated Jetson build stage in the Dockerfile using dustynv/ros:humble-pytorch-l4t-${L4T_VERSION}, with full OpenCV 4.8.1 CUDA support and source builds for cv_bridge and image_geometry to resolve ROS/OpenCV conflicts.
  • Integrated TensorRT dependencies and ONNX Runtime GPU for ARM64, with runtime verification deferred to container startup.

Hardware Detection and Model Setup

  • Added jetson_detector.py for automatic Jetson module, GPU, VRAM, JetPack, and CUDA detection.
  • Introduced a hardware-aware model setup system with a model catalog and interactive selection script, enabling platform-specific recommendations and downloads.
  • Extended Docker build arguments to support model selection, download at build time, and TensorRT engine build options.

Testing and CI Improvements

  • Expanded test suite with Jetson hardware detection unit tests and improved ROS2 environment handling in integration tests, ensuring tests can run conditionally based on environment availability.
  • Added .gitignore entries for new files and enforced LF line endings for shell scripts to avoid Windows CRLF issues.

Documentation and Developer Guidance

  • Added CLAUDE.md with detailed build, test, and deployment instructions, architecture overview, coding standards, and specialized agent usage for Jetson and NVIDIA troubleshooting.
  • Updated CHANGELOG.md with comprehensive release notes, critical findings, and resolved issues for Jetson and TensorRT support.

Dependency and Build Fixes

  • Switched PyTorch installation on Jetson from pip index to direct NVIDIA wheel download, and built torchvision from source to match the NVIDIA PyTorch ABI, resolving runtime crashes. [1] [2]
  • Installed Depth Anything 3 with --no-deps and manually managed ARM64 dependencies, patching for missing modules at runtime. [1] [2]
  • Ensured proper handling of line endings in entrypoint scripts to prevent failures on Windows checkouts.

References:
[1] [2] [3] [4] [5]## Description

Changes:
1. Added OpenMPI/OpenBLAS libraries in builder stage
   - Installs libopenmpi3, libopenmpi-dev, libopenblas0, libopenblas-dev
   - Required dependencies for PyTorch on Jetson
2. Fixed PyTorch installation for Jetson
   - Before: Used broken pypi.jetson-ai-lab.dev/jp6/cu126 index (wrong CUDA version)
   - After: Downloads PyTorch 2.3.0 wheel directly from NVIDIA Box
   - Pins torchvision==0.18.0 for compatibility
3. Added build-time verification
   - Prints PyTorch version and CUDA build version
   - Informational only (no assertion since GPU not available during build)
4. Added runtime libraries
   - Installs libopenmpi3, libopenblas0 in runtime stage
   - Required for PyTorch to load at runtime
GerdsenAI-Admin and others added 29 commits January 31, 2026 17:37
- Auto-detects ROS2 distribution (Humble/Jazzy/Iron)
- Installs all required ROS2 packages (cv-bridge, rviz2, image-publisher, etc.)
- Installs Python dependencies (PyTorch, transformers, OpenCV, etc.)
- Installs Depth Anything 3 from ByteDance
- Builds ROS2 workspace automatically
- Downloads sample images
- Handles Jetson ARM64 architecture
- Auto-sources ROS2 and builds workspace if needed
- Auto-installs missing ROS2 packages (rviz2, image-publisher, etc.)
- Launches 5 gnome-terminal windows for comprehensive demo:
  1. Depth estimation node with image publisher
  2. RViz2 visualization
  3. Topic monitoring with interactive menu
  4. Parameter inspection
  5. Additional topics (confidence, colored depth)
- Correct namespace handling (/test/depth_anything_3)
- Comprehensive logging to /tmp/da3_demo_logs/
- Python dependency checks before launch
- Clean shutdown with Ctrl+C
- Add Quick Install section with one-command setup
- Document install_dependencies.sh script
- Update Table of Contents with new sections
- Add troubleshooting info for demo script
- Document logging locations
- Indoor, outdoor, and objects test images
- Used by demo script for depth estimation
…p checks and instructions - Handle dustynv Jetson image ROS paths in entrypoint
…vert CRLF to LF for Python and shell scripts
…registry instead of direct DepthAnything3Net - Map HuggingFace model names to registry names
… - Use correct ROS setup path for dustynv images
@GerdsenAI-Admin GerdsenAI-Admin merged commit d8dbb39 into main Feb 2, 2026
1 of 2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant