0

位置に関する情報を維持しながら、Dicomシリーズをトリミングして結果をDicomシリーズとして再度保存する必要があります。私の問題はDICOMファイルの圧縮に似ていますが、残念ながらすべての答えは圧縮に関するものであり、トリミングではありませんでした。

追加の問題は、元のシリーズが非常に大きく、コンピュータのメモリにすべてをロードできないことです(ただし、必要に応じて、計算にUnixサーバーを使用できます)。

ITKを使用しようとしました。書き込み前にcropimageFilterを使用して、サンプルDicomSeriesReadSeriesWrite.cxx(ITKソフトウェアガイドで説明)をコピーしました。問題は、命令を使用することです

seriesWriter->SetMetaDataDictionaryArray(reader->GetMetaDataDictionaryArray() );

その結果、画像位置の3次元(0020,0037)は常に0に設定されます。その指示にコメントすると、画像位置は正しいですが、画像番号(0020,0013)とSliceLocation(0020,1041)は正しくありません。結果シリーズは、Osirixとして一部のソフトウェアに読み込まれません。

また、Dicom2(http://www.barre.nom.fr/medical/dicom2/)を使用してみました。この場合も、画像は適切にトリミングされますが、メタデータには一貫性がありません(元の画像とまったく同じです)。

Amiraを使用してみましたが、メモリの問題は別として、トリミングされたデータをdicomとして保存するプロセスでは、元のdicomタグが無視されます(たとえば、画像の位置は[-1.#ND /-1.#ND/-1.#ND ]、「シリーズ日付」としての他のタグも変更されます)。

4

1 に答える 1

0

タグの元の値と画像がどのようにトリミングされているかがわかっているので、dicomファイルを保存する前にタグを正しい値に変更できます。

于 2012-11-25T22:23:10.680 に答える