我正在使用DCMTK(3.6.0)庫來獲取(0020,0013)標記的值,該標記是圖像編號(即圖像序號的切片編號)。DICOM字段具有比預期的更多的值
我使用批處理腳本
for /f "tokens=2 delims=[]" %%a in ('@echo. ^|c:\Libs\dcmtk-3.6.0\bin\dcmdump +P "0020,0013" %%i') do (set img_no=%%a)
它通常遠遠以下,但有時該值始終設置爲「0」整個意甲。
我企圖把與此命令
C:\Libs\dcmtk-3.6.0\bin>dcmdump +P "0020,0013" PathToInvalideDICOM\img.dcm
(0020,0013) IS [0] # 2, 1 InstanceNumber
(0020,0013) IS [4] # 2, 1 InstanceNumber
(0020,0013) IS [0] # 2, 1 InstanceNumber
C:\Libs\dcmtk-3.6.0\bin>dcmdump +P "0020,0013" PathToCorrectDICOM\img.dcm
(0020,0013) IS [0] # 2, 1 InstanceNumber
(0020,0013) IS [5] # 2, 1 InstanceNumber
正如我們所看到的,有時值來獲得(這不是「0」)是最後一個。在這種情況下,一切都很好。但在某些特定情況下,正確的值存儲在兩個「0」之間。
我也試過用不同的自卸車(DCM4CHE 2.0.23),它給了我相同的結果。
我想知道爲什麼會發生這種情況。更重要的是,如何獲得正確的價值?
有沒有一種方法,在批處理文件中,以消除0,直到正確的數字?
默認情況下,我上面引用的命令行採用最後一個字段......我想。
它給了我類似的東西。我仍然有3個實例編號等於0,4和0.顯然,我想要4,這是在中間。這個標籤是(0020,0013)。我做'('@echo。^ | c:\ Libs \ dcmtk-3.6.0 \ bin \ dcmdump + p + P「0020,0013」%% i')'但仍然有最後一個值0。 .. 如何進行 ? – Raccoon