PACS/RIS連携で画像研究を加速するオープンソースツール「PACScrawler」

解説対象論文: Technical Developments in Radiology: Enhancing Research Workflows with PACScrawler
Journal of Imaging Informatics in Medicine|被引用数: 0(2026年7月23日時点)
医療画像研究において、必要なデータを効率的に収集することは長年の課題でした。特に、膨大な医用画像データと放射線レポートが別々に管理されている現状では、研究コホートの構築は時間と手間がかかり、技術的な障壁が高いとされてきました。この課題に対し、オープンソースツール「PACScrawler」が登場しました。本記事では、この革新的なツールがどのように医療画像インフォマティクスの研究ワークフローを劇的に改善し、データ収集の効率化と研究の加速に貢献するかを詳しく解説します。
はじめに:研究用画像データ収集の課題
どうも、Beyond the Pixelです。医療画像のデータは、日々の診療だけでなく、研究においても非常に重要な役割を担っています。しかし、研究目的で必要な画像検査と放射線レポートを効率的に特定し、収集して研究コホートを構築することは、医療画像データと放射線レポートが別々に保管されていることが多いため、困難を伴います。従来のPACS(医用画像管理システム)やRIS(放射線情報システム)は、個々の対象者のワークフローに最適化されており、広範な検索機能が限られているため、研究目的でのデータ抽出は時間と手間がかかる作業でした。
「PACScrawler」とは?研究ワークフローを効率化する新ツール
この課題に対処するため、私たちはオープンソースツール「PACScrawler」を開発しました。これは、PACS(医用画像管理システム)とRIS(放射線情報システム)を横断して画像検査を効率的に検索し、アクセスできるようにすることで、研究コホートの構築を効率化することを目的としています。PACScrawlerは、臨床画像研究における技術的な障壁を低減し、レトロスペクティブなコホート特定、オンデマンドの画像データ取得、および施設内の画像利用動向の長期監視を可能にします。ソースコードはGitHubで公開されています。
PACScrawlerの主要コンポーネント
PACScrawlerは、その主要な機能を促進するために、3つの主要コンポーネントで構成されています。バックエンドのクローラーモジュール、ユーザー向けのウェブインターフェース、そして専用のダウンロードモジュールです。システム全体のアーキテクチャは

の通りです。
1. クローラーモジュール:メタデータとレポートの収集
バックエンドのクローラーモジュールは、PACSやRISと連携し、画像検査のメタデータと放射線レポートを収集します。DICOM(医療用画像と通信のデジタル規格)標準を利用し、毎日新しく取得された検査からDICOMメタデータとRISレポートテキストを定期的に収集し、ローカルのApache Solr/Luceneインデックスに保存します。このインデックス作成ステップでは、画像ピクセルデータはダウンロードされず、メタデータとレポートテキストのみが転送されます。ピクセルデータは、ダウンロードモジュールを通じてユーザーが明示的に画像取得を開始した場合にのみ転送されます。データ更新プロセスは、Unix系システムで「cron job」(定期的にタスクを実行するスケジューリングツール)と呼ばれる時間ベースのスケジューリングユーティリティによって自動化されています。
2. ウェブインターフェース:直感的な検索と操作
2番目のモジュールはウェブフロントエンドで、標準のウェブブラウザを介してシステムへのユーザーインターフェースを提供します。PythonのFlaskフレームワークとHTML/JavaScript/jQueryスタックで実装されており、専門家や研究者はこれを通じて多種多様なパラメータ検索を実行し、結果を表示し、さらなる分析のためにデータをエクスポートできます。ウェブインターフェースでは、レポートテキストや選択された検査レベル、シリーズレベルのメタデータにわたる複合検索が可能です。主要な検索パラメータには、レポートテキスト、対象者識別子、受付番号、検査内容記述などが含まれます。高度なSolr/Lucene(全文検索機能を持つデータベース)構文に不慣れなユーザーのために、オプションのLLM(大規模言語モデル)コンポーネントが自然言語入力からクエリ候補を生成する機能も提供されています。基本的なプログラミングスキルを持つユーザー向けには、API(アプリケーションプログラミングインターフェース)も利用可能です。

は、PACScrawlerのウェブインターフェースを示しています。
3. 取得モジュール:必要な画像をオンデマンドでダウンロード
取得モジュールは、PACSと他のDICOMノード間でDICOM画像をインポートおよびエクスポートするためのインターフェースとして機能します。このコンポーネントは、DCMTKツールキットのmovescuユーティリティを使用して、すべてのDICOM通信を処理します。取得操作は、効率と粒度のバランスをとるために、シリーズレベル(DICOMタグQueryRetrieveLevel=SERIES)で明示的に実行されます。システムの安定性を維持し、PACSへの過負荷を防ぐため、すべての取得および転送タスクはジョブキューを使用して非同期的に管理されます。これにより、優先度キュー(高優先度と中優先度など)を介したトラフィックシェーピングがサポートされ、NIfTI変換やDICOM匿名化などの依存する後処理ワークフローをダウンロード成功後に直ちに連鎖させることができます。
PACScrawlerの性能と実証結果
PACScrawlerは、単一の施設において持続的な運用が実証されました。2012年から2024年の間に、私たちの施設で316,310人の対象者から2,327,317件の検査がインデックス化されました。これには700万以上のCTシリーズ、770万以上のMRIシリーズ、170万以上のX線シリーズ、53万以上の超音波シリーズ、35万以上のPET-CTシリーズが含まれます。
インデックス作成と画像取得の効率性
インデックス作成の統計では、ある代表的な日に1079件の検査をインデックス化するのに約26.5分かかり、1検査あたりの中央値は1.4秒でした。画像取得の性能ベンチマークでは、10件の頭部MRI検査(合計325シリーズ)をPACScrawlerで取得するのに16分08秒かかりました。これは、手動でPACSから順次エクスポートした場合の31分45秒と比較して大幅な短縮です。単一のシリーズを手動でダウンロードする場合に平均86秒かかったのに対し、PACScrawlerでは33秒で完了しました。これにより、研究者は技術的に複雑なコマンドラインツールや手動でのPACSエクスポートに頼ることなく、包括的なデータセットを構築することができます。
LLMによるクエリ生成支援
自然言語インターフェースを検証するために、20の自由形式のテキスト入力から構造化されたSolr(全文検索機能を持つデータベース)およびLucene(Solrの基盤となるストレージエンジン)構文への変換を評価しました。LLM(大規模言語モデル)によって生成された20のSolr検索クエリのうち、7つ(35%)は直接使用可能であり、7つは検索範囲を手動で最適化する必要があり、3つ(15%)は検索範囲を手動で拡大する必要がありました。3つ(15%)は開始点として使用できませんでした。さらに、使用可能な17の出力(85%)のうち、15個(88.2%)は必要な検索モダリティ(撮影種別)に対する正しいLucene正規表現出力を持ち、手動で調整が必要だったのは2個(11.8%)のみでした。例えば、「Pulmonary Embolism CT Chest(肺塞栓 CT 胸部)」という入力に対しては、LLMは肺塞栓の陽性言及を近接制約とともに明示的に検索し、否定的な用語を除外する構文を生成しました。これにより、複雑な放射線学的クエリの構築における参入障壁が低減されます。
画像利用動向の長期分析
PACScrawlerを利用することで、画像利用の傾向を長期的に監視できます。2012年から2024年の期間において、放射線検査の総数は56%増加しました(2012年の134,611件から2024年には209,543件)。これは主にCT検査の109%増、MRI検査の82%増、超音波検査の324%増によってもたらされました。一方、従来のX線検査は18%減少しました。

は、各臨床部門における画像診断モダリティの使用傾向の長期的な変化を示しています。例えば、心臓・胸部診断では、X線検査の大幅な減少(41%減)がCT検査の増加(197%増)によって相殺され、全体的な検査件数は比較的安定していました。このようなモダリティ固有の変化は、最も一般的な検査内容記述にも反映されています。また、緊急部門からの依頼が他の上位10部門の合計よりも多くのリクエストを占めており、施設内の画像診断業務量において中心的な役割を担っていることが分かります。

は、年間放射線検査件数を依頼部門別に上位10部門に層別化したものです。
検査あたりのシリーズ数と画像数
検査あたりの平均シリーズ数および画像数も増加傾向にあります。平均して、CT検査は28.16シリーズ、MRI検査は45.02シリーズで構成されていました。調査期間中、CTとMRIの両方で検査あたりのシリーズ数は79%増加しました(CTは2012年の18.08から2024年には32.40、MRIは2012年の27.73から2024年には49.71)。同様に、検査あたりの平均画像数もCTで1059.40から2268.26、MRIで702.05から2232.87に増加しました。

は、CTおよびMR検査における検査あたりの年間平均シリーズ数と画像数を示しています。これらの発見は、スキャナー技術の進歩と、より包括的で多平面、多パラメータの画像診断への臨床診療の変化を反映し、検査がより大規模で複雑になっていることを示しています。
研究の限界と今後の展望
PACScrawlerは多くの利点を提供しますが、いくつかの限界も認識されています。まず、クローラーはマルチモーダルではなく、画像ピクセルデータを処理・保存しません。現在の実装はメタデータとレポートテキストに限定されており、画像はオンデマンドでのみ取得されます。次に、インデックス化された情報の品質は、基となるRISおよびPACSエントリの品質に左右されます。可変的な検査記述、プロトコル名、またはレポート習慣は、検索結果に誤解を招くヒットを生じる可能性があります。第三に、インデックス作成およびダウンロードの速度と潜在的なシステムへの影響は、ローカルのPACSおよび現在のシステム負荷に依存します。第四に、Apache Solrは強力な全文検索を可能にするものの、レポートコンテンツのセマンティックな理解は限られています。長期的には、LLM(大規模言語モデル)が概念レベルの検索と全体的な取得品質を大幅に向上させる可能性があります。私たちの結果は、LLMが予備的な検索クエリ生成を支援し、高度な検索フレーズの使用を促進することで、より多くの専門家が複雑なクエリによるコホート生成を利用できるようになる可能性を示唆しています。
結論
PACScrawlerは、PACS/RIS環境から画像メタデータと放射線レポートをインデックス化するための効率的でオープンソースのDICOM(医療用画像と通信のデジタル規格)ベースのアプローチを提供します。これは、レトロスペクティブなコホート特定、オンデマンドの画像取得、および施設内の画像利用動向の長期評価をサポートし、臨床研究における技術的な障壁を低減します。将来の開発には、より広範な標準ベースの統合やAI支援によるクエリの洗練が含まれ、研究ワークフローにおけるその有用性をさらに向上させる可能性があります。
用語集
- PACS: Picture Archiving and Communication System(医用画像管理システム):医療画像を保存・管理し、表示するシステム。
- RIS: Radiology Information System(放射線情報システム):放射線部門のワークフローやレポートを管理するシステム。
- DICOM: Digital Imaging and Communications in Medicine(医療用画像と通信のデジタル規格):医用画像のフォーマットと通信手順を標準化したもの。
- Apache Solr/Lucene: オープンソースの全文検索ライブラリ(Lucene)とその上に構築されたエンタープライズ検索プラットフォーム(Solr)。
- LLM: Large Language Model(大規模言語モデル):大量のテキストデータで訓練された、人間のようなテキストを生成・理解するAIモデル。
- C-FIND/C-MOVE: DICOMプロトコルの一部で、PACSに対して画像を検索(C-FIND)したり、転送(C-MOVE)したりするためのコマンド。
- Cron Job: Unix系OSで利用される、指定した時間に特定のタスクを自動的に実行するためのスケジューリング機能。
- API: Application Programming Interface(アプリケーションプログラミングインターフェース):ソフトウェアコンポーネントが互いに通信するための規約のセット。
Leave a Reply