dcmdumpとdcmodify

dcmdump file.dcm +W dump
でディレクトリ"dump"にピクセルデータがリトルエンディアンのrawデータで保存される。
そしてrawデータを開いてピクセル値をいじれるプログラムを作成、実行。
このときデータサイズやエンディアン、階調数を変更しないこと。
最後に処理後のrawデータを元のDICOMファイルにくっつける!
dcmodify file.dcm -if "PixelData=file.raw"
これでヘッダには影響なくピクセルデータ部分のみが置換される。
医療画像に元の階調を維持したままでフィルタ処理などを試したい場合はこれが簡単かもね…。
ヘッダの解釈と変更、最適化が一番めんどくさい規格だこと、DICOMは。
C++のライブラリを用いてC++を使うのは敷居が高い人にとっては。
rawデータをdumpしてネガポジ反転してくっつけてみた。