Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Google Cloud によるDICOM管理

Google Cloud によるDICOM管理

mmorito

May 17, 2024
Tweet

More Decks by mmorito

Other Decks in Programming

Transcript

  1. copyright © 2024 MNES Inc. 
 自己紹介 Medical 遠隔画像診断 Technolog

    y 医療⽀援クラウドサービス 名前: 所属: 所在: コミュニティ: 森藤 敏之 (もりとう) 株式会社エムネス (バックエンドエンジニア) 広島 GCPUG Hiroshima オーガナイザー
  2. copyright © 2024 MNES Inc. 
 日本は検査装置大国 a. MRIとCTの合計台数が世界ダントツ第1位 b.

    放射線科医数が世界ダントツ最下位 図. 人口100万人あたりの放射線診断医 (縦軸) および 装置台数(横軸)
  3. copyright © 2024 MNES Inc. 
 DICOM規格 医用画像検査の情報をやり取りするための 「世界標準規格」 Digital

    Imaging and Communications in Medicine の略。 • 通信プロトコルのデファクトスタンダード • 1人の患者から撮影された連続する画像のセットを Study / Series / Image の階層構造で管理する • 画像1枚1枚にタグ(Tag)と呼ばれる属性情報を持つ • .dcm拡張子のファイルとして出力し持ち運ぶことが可能 ◦ 1枚: 500KB〜30MB程度が一般的 • 1回の検査で 1〜1000枚 の画像が撮影される https://exiftool.org/TagNames/DICOM.html
  4. copyright © 2024 MNES Inc. 
 医療支援クラウドサービス「LOOKREC」 検査画像 約9億6000万枚 約2000万枚/月、

    約70万枚/日に画像がアップロードされる これらを分散処理で解析し、3分以内にViewer配信することが目標 遠隔画像診断のための レポーティングシステムも提供
  5. copyright © 2024 MNES Inc. 
 DICOM ストレージ基盤 1. DICOMファイルのパース(タグの解析)

    2. Datastore へ保存 3. Signed URLの発行 4. GCSへアップロード 5. Pub/Sub へメッセージ送信 6. バケットからファイルDL 7. 匿名化加工 8. 匿名保管バケットへアップロード 9. Datastore を更新 10. 枚数のカウント
  6. copyright © 2024 MNES Inc. 
 DICOM ストレージ基盤 1. DICOMファイルのパース(タグの解析)

    2. Datastore へ保存 3. Signed URLの発行 4. GCSへアップロード 5. Pub/Sub へメッセージ送信 6. バケットからファイルDL 7. 匿名化加工 8. 匿名保管バケットへアップロード 9. Datastore を更新 10. 枚数のカウント
  7. copyright © 2024 MNES Inc. 
 1. マネージドサービス(GAE, Cloud Run

    等) の強力なオートスケールによる恩恵 2. 稀に規格外(1GB〜)のファイルがアップロードされる場合がある 3. 稀にDICOM規約違反のファイルがアップロードされる場合がある DICOM ストレージ基盤 a. オンプレ→クラウドへのファイルアップロードに10〜13枚/s 程度のスループットを実現 b. サーバー側では 最大500/s 程度 のリクエストを問題なく処理 a. Pub/Sub topic を2系統に分け、大容量メモリのCloud Runで処理 a. 1検査単位(数百枚)でエラーが発生すると、Pub/Subの配信レートが大幅に下がる b. Pub/Sub の再配信に頼らず、実装内で再度メッセージを積むように変更
  8. copyright © 2024 MNES Inc. 
 DICOMWeb の誕生 もっと手軽にDICOM見たい 依頼しなくてもDICOM見たい

    レスポンスがめっちゃ遅い 画像とタグどっちを見るかは こっちで決めたい オンプレソフトと同じように 検査/シリーズの検索がしたい 見るだけじゃなくて 保存もしたくなりました 見る時と同じように画像と タグ別々ってできる…? DICOM規格内にウェブサービスを使用して DICOM オブジェクトを取得または保存するための手段が規定される DICOMWeb
  9. copyright © 2024 MNES Inc. 
 DICOMWeb 1検査 丸ごと ください

    Content-Type: multipart/related 1イメージ だけ ください Content-Type: application/dicom png で ください Content-Type: image/png タグ情報 だけ ください Content-Type: application/json json + jpeg を dicom に変換して保管しておいて 患者ID: 001 のデータを検索して
  10. copyright © 2024 MNES Inc. 
 DICOM適合宣言 + 独自に良く使いそうな呼び出し構文をサポート +

    DICOM Adaptor がOSSで提供されており、 オンプレの装置やアーカイブシステムとのシームレスな連携を簡単に構築可能
  11. copyright © 2024 MNES Inc. 
 config を設定することで、 指定したDICOMタグの値を編集、秘匿化することができる •

    置換 • 削除 • リセット • UIDの再生成 ImageConfig を指定することで、 画像内に焼き込まれたテキストも秘匿化することができる • すべてのテキストを秘匿化 • 機密性の高いテキストを秘匿化 ◦ 年齢 ◦ 人名 ◦ クレジットカード番号、電話番号 ◦ IPアドレス  など DICOMの匿名化
  12. copyright © 2024 MNES Inc. 
 1. 症例群など特定の単位でDICOMの処理を行うことができる 2. 他ストアとの組み合わせで安全にデータ利活用

    データ利活用の用途としてみた DICOMStore や将来的な可能性 a. データセットやストアを作成し、一括で操作を行うことができる b. Pub/Sub 通知もできるため、データドリブンなパイプラインを構築することが可能 c. BigQuery へタグ情報をストリーミング/一括エクスポートする機能など、 研究や分析、MLのための機能が統合されている d. DICOMWebに適合しているため、様々なメディアでのデータ取り出しなどが可能 a. FHIRストアやアノテーションストアを組み合わせることで、 DICOMデータの匿名化に関するオペレーションや変換結果、削除された機密データを分離して管理す ることが可能 その他の医療情報システムから収集したデータと組み合わせることで安全に匿名化後データの紐付け を実現 b. 同意ストアを組み合わせることで、 医療データのオプトイン/オプトアウトを管理して安全にデータへのアクセスや抽出を実現
  13. copyright © 2024 MNES Inc. 
 業務システムのバックエンドとしてみた DICOMStore 1. 医療機関からアップロードされる単位(検査やシリーズ)でオンデマンドに移動や秘匿化などの

    処理を行うためのパイプラインを構築する必要がある 2. 業務システムの要件に特化して機能開発を行った方が利用料の節約になる a. 基本的に格納されたDICOMへの操作はデータセットやストア単位 i. GCSへエクスポート、匿名化加工を検査やシリーズ単位で実行も可能だが、 事前にフィルタファイルの作成が必要 b. 上書き更新が許容されない (already exists) c. Pub/Sub 通知 が来るのはデータのストア時のみ (削除時には来ない) a. .dcmファイルとしてGCSに保管するほうがストレージ料金、Ops料金ともに安価    → 昨年11月にストレージクラス変更がプレビューリリース b. DICOMタグの匿名化のみであればPython数行で実装が可能 c. PHRサービスのようにユーザーのデータ通信量などに制約がある場合は良いかも