2017-11-27 5 views
-1

私はpydicomを読み取り処理する方法を学ぼうとしていますdicomイメージ。私はPython 3を使用しています。pydicomが定義されていません

import dicom 
import numpy 
ds = pydicom.read_file(lstFilesDCM[0]) 
print(ds.pixel_array)` 

私はエラーNameError: name 'pydicom' is not definedを受け取ります。 pydicomが正しくインストールされ、更新されていることを私も検証

NotImplementedError: Pixel Data is compressed in a format 
pydicom does not yet handle. Cannot return array 

:私は(代わりにdicom.read_fileを使用して)

ds = dicom.read_file(lstFilesDCM[0]) 

ds = pydicom.read_file(lstFilesDCM[0]) 

を変更した場合、私は次のエラーを取得します。

どうすれば修正できますか?

あなたは前に輸入されていないクラスを呼び出すようにしようとしている
+0

'import dicom'と言って、' pydicom'を使ってみましょう。どちらが正しい? –

+0

私はこれをpydicomのドキュメントに基づいて行っていましたhttp://pydicom.readthedocs.io/en/latest/working_with_pixel_data.htmlどちらの方法でも、pydicomは動作していないようです。 @serafeimは指摘しているように、互換性のないデータが原因である可能性があります。私はデータが標準的なフォーマットだと思った。それが互換性がないとは思わなかった。私は、私が見つけたものをチェックし、投稿します。 – Kuni

+0

エラー:ピクセルデータは、pydicomがまだ処理していない形式で圧縮されているため、データがライブラリと互換性がないことが示唆されます。可能であれば、データを追加して解決策を見つけてください – sera

答えて

1

用途:

import pydicom 
import numpy 


ds = pydicom.read_file(lstFilesDCM[0]) 
print(ds.pixel_array) 

または

import dicom 
ds = dicom.read_file("the_name_of_file.dcm") 

ドキュメント:http://pydicom.readthedocs.io/en/stable/pydicom_user_guide.html

+0

私もそれを試しましたが、私はそれをインポートしようとすると "No module pydicom"というモジュールがあります。私はjupyterノートブックを使用していて、カーネルを再起動しようとしました。 – Kuni

+0

@dicomとpydicomをインストールしましたか? – sera

+0

と私はこのサイトから聞きました: 'http://pydicom.readthedocs.io/en/latest/working_with_pixel_data。あなたが気づいたら、彼らは私が行ったことを正確に行いました。そして、私は 'dicom.read_file'を使用したときに' NotImplementedError 'を得るという質問にも言及しました – Kuni

-1

ピクセルデータを手に入れたい場合は、ImageMagickスイートのconvertプログラムを使用することをおすすめします。 subprocessモジュールを使ってPythonからこのプログラムを呼び出すこともできます。 (exampleを参照してください。ここでJPEG形式に変換します)、またはPython bindingsのいずれかを使用できます。

イメージを操作する場合は、バインディングを使用することをお勧めします。しかし、すべてのバインディングがImageMagickバージョン7に変換されているわけではないことに注意してください。

関連する問題