Oto interaktywna sesja ilustrujący układ danych przy użyciu pliku rtstruct.dcm dołączone pydicom:
>>> import dicom
>>> ds = dicom.read_file("rtstruct.dcm", force=True)
>>> ds.dir("contour")
['ROIContourSequence']
>>> ctrs = ds.ROIContourSequence
>>> ctrs[0]
(3006, 002a) ROI Display Color IS: ['220', '160', '120']
(3006, 0040) Contour Sequence 3 item(s) ----
(3006, 0042) Contour Geometric Type CS: 'CLOSED_PLANAR'
(3006, 0046) Number of Contour Points IS: '5'
(3006, 0048) Contour Number IS: '1'
(3006, 0050) Contour Data DS: ['-200.0', '150.0', '-20
0.0', '-200.0', '-150.0', '-200.0', '200.0', '-150.0', '-200.0', '200.0', '150.0
', '-200.0', '-200.0', '150.0', '-200.0']
---------
(3006, 0042) Contour Geometric Type CS: 'CLOSED_PLANAR'
(3006, 0046) Number of Contour Points IS: '6'
(3006, 0048) Contour Number IS: '2'
(3006, 0050) Contour Data DS: ['200.0', '-0.0', '-190.
0', '200.0', '-150.0', '-190.0', '-200.0', '-150.0', '-190.0', '-200.0', '150.0'
, '-190.0', '200.0', '150.0', '-190.0', '200.0', '-0.0', '-190.0']
---------
(3006, 0042) Contour Geometric Type CS: 'CLOSED_PLANAR'
(3006, 0046) Number of Contour Points IS: '6'
(3006, 0048) Contour Number IS: '3'
(3006, 0050) Contour Data DS: ['200.0', '-0.0', '-180.
0', '200.0', '-150.0', '-180.0', '-200.0', '-150.0', '-180.0', '-200.0', '150.0'
, '-180.0', '200.0', '150.0', '-180.0', '200.0', '-0.0', '-180.0']
---------
(3006, 0084) Referenced ROI Number IS: '1'
Dane są przechowywane (w tym przypadku, jak to zwykle bywa) za pomocą współrzędnych dla każdego samolot. Aby uzyskać dane dla jednego konturu, na jednej płaszczyźnie, można użyć
>>> ctrs[0].ContourSequence[0].ContourData
['-200.0', '150.0', '-200.0', '-200.0', '-150.0', '-200.0', '200.0', '-150.0', '
-200.0', '200.0', '150.0', '-200.0', '-200.0', '150.0', '-200.0']
Są trojaczki z (x, y, z) koordynuje jedna po drugiej.
Możesz uzyskać więcej informacji o każdym konturze (nazwa itp.) W sekwencji StructureSetROISequence
dla indeksu podanego w referencyjnym numerze ROI.
Możesz uzyskać kompletną tablicę dla wszystkich tych elementów, przechodząc przez każdy zestaw danych w ContourSequence dla danego konturu i dołączając je do jednej tablicy.
Proszę podać identyfikator UID klasy SOP danego pliku DICOM, abyśmy wiedzieli, w jaki sposób są kodowane informacje. –
@kritzel_sw Och, przepraszam za powolną odpowiedź. Jeśli użyję tagu "SOP Class UID" w moim pliku struktury, otrzymam: RT Structure Set Storage. Nie wiem, czy o to prosiłeś? –