0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

windows環境でbcil_dcm_convert.pyを使ってみた

Last updated at Posted at 2023-01-13

目的

bcil_dcm_convert.pyを使って情報を取り出したCSVが見たいので、githubのソースを使いたい。
どうやって使うのかしらこれ?
https://github.com/RIKEN-BCIL/BCILDCMCONVERT

前提

・Windows10
・Python3.8は入っている前提
・dcm2niixはインストールしていない。(けど情報の入ったCSVだけ取得ができるとの噂)

手順

まずはソースをダウンロード

緑色の「Code」を押すと「Download ZIP」と書いてある所が出てくるのでそこをポチっとする。
image.png

解凍する

Pythonのパスが通る場所ならどこでも良いから解凍する。Cドラのがめんどくないよね多分・・・
私の場合はとりあえずC:\Users\XXXXXX\Documents\CONVに解凍。
C:\Users\XXXXXX\Documents\CONV\BCILDCMCONVERT-masterができた。
解凍したフォルダの中身はこんな感じ
image.png
うん。邪魔なので「BCILDCMCONVERT-master」ていうフォルダ名は「BCILDCMCONVERT」に変更しておこう・・・そうしよう。

image.png

コマンドプロンプト

解凍先(さっきのフォルダ)に移動する

cd C:\Users\XXXXXX\Documents\CONV\BCILDCMCONVERT

python 入ってるか確認しておこう・・・

python --version

入ってればバージョンが表示される。

Python 3.8.7

環境により「python3 --version」の人などもいるようなので、要確認。
私のところでは python --versionで大丈夫。
ここでコケてる人はPythonのインストールから頑張らないとダメかも・・・

いざ!

python bcil_dcm_convert.py -h

※環境によりpython3 bcil_dcm_convert.py -hなんだけど、適宜自分の環境に沿って修正して・・・
これでヘルプが表示されればOK!

エラー

「python bcil_dcm_convert.py -h」を実行してエラーが出た場合。

Traceback (most recent call last):
  File "bcil_dcm_convert.py", line 3, in <module>
    from bcil_dcm_kspace_info import BcilDcmKspaceInfo
  File "C:\Users\xxxxxx\Documents\CONV\BCILDCMCONVERT\bcil_dcm_kspace_info.py", line 7, in <module>
    import pydicom
ModuleNotFoundError: No module named 'pydicom'

ModuleNotFoundError: No module named 'pydicom'
うーんと、pydicomがいないですぜ・・・と仰っています。
えーと、えーと、そういえばなんか書いてあった・・・
image.png

パッケージの更新とかしばらくしてないや・・・
とりあえずパイセンに教わった通りpipの更新をしてみよう。

pip install --upgrade pip

環境により「pip3 install --upgrade pip」の人などもいるようなので、要確認。

pip list

で入ってるパッケージ確認・・・色々入ってなかったり、入っててもバージョンが足らない事がわかる・・・しばらく触っていなかったので荒れ放題である。(反省)

Package          Version
---------------- -------
alembic          1.5.7
click            7.1.2
dnspython        2.1.0
numpy            1.19.5
pandas           1.2.1
pip              22.3.1
pytz             2020.5

ということでパッケージの更新(一行ずつ)

入ってないパッケージは入れる。

pip install pydicom

入ってるやつのバージョン更新はこんな感じで。

pip install -U pandas

一番手堅いのは

pip install dcm2bids==2.1.6

みたいにgithubに指定してあるバージョンで入れてしまう方法なんだけど、
同じパッケージを使ってる別のプログラムがある場合は、安易にバージョン指定してしまうと別のプログラムに影響があったりするから、ちょっと考えないといけなくて面倒くさい・・・

ということで私の環境では下記の通り!

pip install nibabel
pip install pydicom
pip install tqdm
pip install dcm2bids
pip install -U pandas
pip install -U numpy

いざ!(再)

python bcil_dcm_convert.py -h

どや?

usage:
BCILDCMCONVERT converts DICOM from various MRI scanners to NIFTI volumes, organizes the data into a study directory, and stores MRI scanning params useful for preprocessing brain imaging data with HCP pipeline and FSL. (For details, see https://github.com/RIKEN-BCIL/BCILDCMCONVERT)

 Ex 1). Use an input of directory containing DICOM files
 $ python3 bcil_dcm_convert.py [option(s)] <Folder to save> <input subject's dcm folder>

 Ex 2). Use zipped file as an input of DICOM files
 $ python3 bcil_dcm_convert.py [option(s)] <Folder to save> <input subject's dcm.zip>

positional arguments:
  <Folder to save>      path to parent folder in which a new subject folder will be saved
  <input subject's dcm folder or dcm.zip>
                        path to input folder or zipped file containing a subject's DICOM files

optional arguments:
  -h, --help            show this help message and exit
  -p, --progress        show progress bar
  -n, --no_nii          do not convert to NIFTI
  -s <subject folder name>
                        give an alias to the subject folder
  -w overwrite option <num>
                        overwrite options (0: do not overwrite, 1: replace, 2: append, default is 0)
  -z, --gz              compress NIFTI volumes with .gz (default is not compressed, and saved as .nii)
  -u <Folder to unzip>  path to unzip directory when using an input of zip file (default is the same parent folder of
                        dcm.zip with folder name of bcil_dcm_convert_folder/<date>-<time>)
  -v, --version         print version number

やったー!

んでここに教わった通り、やりたかったコマンドをポチポチ・・・実行!

python bcil_dcm_convert.py (保存用のフォルダまでのパス) (dicomファイルの入ってるフォルダのパス) -n

-nをつけるとdcm2niixを使わないのでWindowsでもOKとの噂はまことであった・・・。
目的のブツをげっとした!

~終~

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?