被ばく線量情報抽出ソフト『DoNuTS』を作りました
2020年4月1日より医療法施行規則の一部を改正する省令が施行され,CTなど一部の放射線科領域の医療機器を有する施設は被ばく線量の記録・管理が義務付けられました.多くの大規模施設では線量管理ソフトと呼ばれる高価なソフトを導入し,PACSと紐付けるなどして,簡便に線量の管理を行えるような体制を整えつつあります.しかし,大規模施設と比べて放射線科の検査件数が少ない中小規模施設では,新たに線量管理ソフトを導入することは困難であると考えられます.
そこでRDSR(Radiation Dose Structured Report)とPET画像のヘッダーからCTとPET/CTの被ばく線量情報を抽出し,csvで出力できるフリーソフト『DoNuTS(Dose Counter for Nuclear Medicine and CT Systems)』を作りました.DoNuTSを使用することで,線量管理ソフトの導入が困難な施設においても,線量管理を簡便に行うことができると考えられます.今回はDoNuTSの紹介をしたいと思います.
なお,ソースコードは公開しており,無料でお使いいただけます.ただし,努力して作りましたがプログラミングに関しては素人が作ったため,バクがある可能性があります.ご使用は自己責任でお願いいたしますm(__)m
作成した方法
使用したプログラミング言語はPython(version 3.6.9)です.windows上でソフトとして使用する為には.pyファイルを.exeファイルにする必要があります.今回はpyinstaller
を使用してexe化しました(2021.1.30追記 macでも動作するようになりました).
ダウンロードの方法
ソフトは以下のリンクからダウンロードできます.
リンクをクリックすると,僕のGithubのページに飛びます.
右上のあたりにある緑色のClone or downloadをクリックすると,ファイルのダウンロードが始まります.ダウンロードしたファイルの中にsrcという名前のフォルダがあります.そのsrcの中にdistというフォルダがあり,その中にDoNuTS.exeというファイルがあります.それがDoNuTSの本体となります.
2021.1.30 追記
Githubのアップデートにより,webページのレイアウトが以下のように変わっています.
DoNuTS本体のダウンロード方法も変更しています.右上あたりのRelease v0.1.0をクリック.zipファイルをダウンロードし,解凍すれば実行ファイル(.exeまたは.app)があり,それを使ってください.(追記終わり)
使用方法
データの準備
まずはRDSRとPET画像をDoNuTSを動作させるPC上にexportしておく必要があります.このとき,1つのフォルダ内にデータを取得したいRDSRおよびPET画像を保存してください.なお,DoNuTSはRDSRとPET画像のみを探して処理を行うため,他のファイルがフォルダ内に存在していても動作に問題はありません.
DoNuTSの実行
データの準備ができたらDoNuTSをダブルクリックして実行します.するとコマンドプロンプトが立ち上がります.黒い画面のアレです.次に,取得したいデータが入ってあるフォルダを指定するよう指示されるので,指示に従い先ほど準備したフォルダを選択します.処理が終わると以下の図のようなポップアップが表示されます.
これで処理は完了です.なお,出力されるデータは
- Mean CTDIvol
- DLP
- X-Ray Modulation Type
- CTDIw Phantom Type
- Acquisition Protocol
- Target Region
- CT Acquisition Type
- Procedure Context
- Exposure Time
- Scanning Length
- Exposed Range
- Nominal Single Collimation Width
- Nominal Total Collimation Width
- Pitch Factor
- Identification of the X-Ray Source
- KVP
- Maximum X-Ray Tube Current
- Mean X-Ray Tube Current
- Exposure Time per Rotation
- Device Manufacturer
- Device Serial Number
- Manufacturer Model Name
- Patient ID
- Study Date
- Patient Name
- Study Description
- Patient BirthDate
- Patient Sex
- Patient Age
- Patient Size
- Patient Weight
- CT Dose Length Product Total
- Radionuclide Total Dose (PET画像が存在した場合)
2020.7.17 追記
(出力できるデータが増えたため,リストを変更しました.)
以上です.出力されたcsvは,先ほど指定したフォルダ内に保存されています.
実際の業務における使用例
診療放射線技師会や医学放射線学会のホームーページで線量管理に関するガイドラインが発表されています.その中身を確認してみるとおおよそ以下のことをしておけば問題はないと考えられます.
- 線量の記録
- dose summaryをPACSに転送しておく
- 線量の管理
- 記録してある線量情報をサンプリングし,自施設の線量を算出
- DRL等を利用して自施設の線量を評価し,最適化を行う
ここでDoNuTSは線量の管理で効果を発揮します.たとえばCTの線量管理の場合,検査終了後に撮影した患者のRDSRをPACS等に保存する運用をしていき,線量の管理を行う際に保存しておいたRDSRをexportし,DoNuTSを使用します.そうすることでDLPや体重が患者ごとにcsvとして出力されるので,Excel等をうまく利用すれば被ばく線量の最適化を簡便に行うことができると考えられます.
まとめ
最近の装置はRDSRを出力できるのが一般的になっています.RDSRは構造化されたレポートという名前の通り,データを取り出すことさえできれば,非常に便利なファイルです.しかし,実際は高価な線量管理ソフトを導入しなければ,RDSRからデータを取り出すこと自体困難です.DoNuTSはRDSRの中の線量管理に必要な情報を簡便に取り出すことができるので有用だと思います.是非使ってみて下さい.
また,ソフトに関する要望やバグを発見した場合は,Github上のissueに書き込むか,メール(sugimotokouhei(at)gmail.com)をしていただくか,なんらかの手を使って僕にお知らせいただければ幸いです.