feat(camera): add configurable Jetson camera module for LMS visualization

This commit is contained in:
2026-09-23 13:52:13 +09:00
commit 7167f559e8
14 changed files with 383 additions and 0 deletions
Executable
+27
View File
@@ -0,0 +1,27 @@
#!/usr/bin/env bash
set -euo pipefail
MODULE_PATH="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
FOLDER_NAME="$(basename "$MODULE_PATH")"
CONTAINER_NAME="${FOLDER_NAME#[}"; CONTAINER_NAME="${CONTAINER_NAME/]/-}"
CONTAINER_NAME="${CONTAINER_NAME%_ws}"
MODULE_ROOT="$(dirname "$MODULE_PATH")"
IMAGE="${NAV2_DOCKER_IMAGE:-future-nav2-camera-test:humble-jetson_orin}"
DEVICE=/dev/video0
for arg in "$@"; do
case "$arg" in video_device:=*) DEVICE=${arg#video_device:=} ;; esac
done
[[ "$DEVICE" =~ ^/dev/video[0-9]+$ ]] && [ -c "$DEVICE" ] || { echo "Camera device not found: $DEVICE" >&2; exit 1; }
test -f "$MODULE_PATH/install/setup.bash" || { echo 'Module is not built' >&2; exit 1; }
docker rm -f "$CONTAINER_NAME" >/dev/null 2>&1 || true
exec docker run --rm -d --device "$DEVICE:$DEVICE" --network host --ipc=host \
--name "$CONTAINER_NAME" \
-e "ROS_DOMAIN_ID=${ROS_DOMAIN_ID:-77}" \
-e "ROS_LOCALHOST_ONLY=${ROS_LOCALHOST_ONLY:-0}" \
-v "$MODULE_ROOT:/modules" \
"$IMAGE" bash -lc "
source /opt/ros/humble/setup.bash
source '/modules/$FOLDER_NAME/install/setup.bash'
exec ros2 launch camera_test_pkg camera.launch.py \"\$@\"
" bash "$@"