@@ -52,27 +52,36 @@ dicom_to_ros/
5252│ ├── Dicom.msg # Central internal message (metadata + pixel data)
5353│ └── StudyInfo.msg # Patient and study metadata subset
5454├── dicom_to_ros/ # Core ROS 2 package — 6 microservice nodes
55- │ └── dicom_to_ros/
56- │ ├── dicom_server.py # DICOM SCP listener (entry point)
57- │ ├── dicom_2_img.py # 2D image publisher
58- │ ├── dicom_2_video.py # 3D volume → video stream publisher
59- │ ├── dicom_2_pcl.py # Point cloud publisher
60- │ ├── dicom_2_tf.py # TF transform publisher
61- │ ├── dicom_2_study_info.py # Study metadata publisher
62- │ └── dicom_utils.py # Shared utilities
55+ │ ├── dicom_to_ros/
56+ │ │ ├── dicom_server.py # DICOM SCP listener (entry point)
57+ │ │ ├── dicom_2_img.py # 2D image publisher
58+ │ │ ├── dicom_2_video.py # 3D volume → video stream publisher
59+ │ │ ├── dicom_2_pcl.py # Point cloud publisher
60+ │ │ ├── dicom_2_tf.py # TF transform publisher
61+ │ │ ├── dicom_2_study_info.py # Study metadata publisher
62+ │ │ └── dicom_utils.py # Shared utilities
63+ │ ├── launch/
64+ │ │ └── dicom_nodes.launch.py
65+ │ └── test/ # Unit tests per node
6366├── dicom_to_ros_demo/ # Demo environment
6467│ ├── dicom_samples/ # DICOM test data (auto-downloaded on first run)
6568│ │ ├── 2D/
69+ │ │ │ ├── CT/
70+ │ │ │ └── MRI/
6671│ │ └── 3D/
72+ │ │ ├── MRI/
73+ │ │ └── US/
6774│ ├── docker/ # Demo-specific Docker setup
6875│ │ ├── Dockerfile.downloader # Sample downloader image
6976│ │ ├── Dockerfile.rviz # RViz2 visualization image
7077│ │ └── docker-compose.yml # Orchestrates downloader + RViz2
7178│ ├── rviz_config/ # Pre-configured RViz2 layout
79+ │ │ └── default.rviz
7280│ └── test_data_utils/
7381│ └── download_samples.py # Script to fetch public DICOM samples
7482└── doc/
75- └── workflow_dicom.png
83+ ├── dicom_to_ros.png
84+ └── video_preview.png
7685```
7786
7887---
0 commit comments