Skip to content
Guides3 min read

Potatoを使った医療画像アノテーション

Potatoの標準的な画像アノテーション機能を使用した医療画像アノテーションのベストプラクティス。

Potato Team·

Potatoを使った医療画像アノテーション

Potatoの画像アノテーション機能は、X線画像、皮膚病変の写真、またはその他の標準フォーマット(PNG、JPG)の臨床画像のアノテーションに使用できます。本ガイドでは、医療画像アノテーションプロジェクトのセットアップに関するベストプラクティスを紹介します。

重要な考慮事項

医療アノテーションプロジェクトを開始する前に:

  1. 匿名化: アノテーション前に画像からすべてのPHI(保護医療情報)が除去されていることを確認する
  2. データ取り扱い: 医療データの保存と処理には所属機関のセキュアなインフラを使用する
  3. アクセス管理: 既存の認証システムを通じてアノテーターのアクセスを管理する
  4. コンプライアンス: IRBおよびコンプライアンスチームと連携して機関の要件を満たす

注意:Potatoはアノテーションツールであり、HIPAA準拠機能、DICOMビューア、または専門的な医療画像機能は組み込まれていません。これらの要件はインフラレベルで対応する必要があります。

基本的な医療画像アノテーションの設定

Potatoを標準的な医療画像のアノテーション用に設定する方法は以下の通りです:

yaml
annotation_task_name: "Medical Image Annotation"
 
data_files:
  - path: data/medical_images.json
    type: json
 
annotation_schemes:
  - annotation_type: bounding_box
    name: lesions
    allow_multiple: true
    labels:
      - name: primary
        color: "#EF4444"
        description: "Primary finding"
 
      - name: secondary
        color: "#F97316"
        description: "Secondary finding"
 
      - name: artifact
        color: "#6B7280"
        description: "Artifact or noise"
 
  - annotation_type: radio
    name: image_quality
    question: "Overall image quality?"
    options:
      - name: diagnostic
        label: "Diagnostic Quality"
      - name: limited
        label: "Limited Quality"
      - name: non_diagnostic
        label: "Non-Diagnostic"

X線および臨床写真のアノテーション

標準的な画像フォーマットにエクスポートされたX線や臨床写真のアノテーション用:

yaml
annotation_task_name: "X-Ray Findings Annotation"
 
data_files:
  - path: data/xray_images.json
    type: json
 
annotation_schemes:
  - annotation_type: polygon
    name: abnormalities
    allow_multiple: true
    labels:
      - name: opacity
        color: "#EF4444"
        description: "Pulmonary opacity"
 
      - name: consolidation
        color: "#F97316"
        description: "Consolidation"
 
      - name: nodule
        color: "#EAB308"
        description: "Pulmonary nodule"
 
      - name: effusion
        color: "#3B82F6"
        description: "Pleural effusion"
 
  - annotation_type: multiselect
    name: findings
    question: "Select all findings present"
    options:
      - name: normal
        label: "No acute findings"
      - name: pneumonia
        label: "Pneumonia"
      - name: atelectasis
        label: "Atelectasis"
      - name: pneumothorax
        label: "Pneumothorax"
      - name: fracture
        label: "Fracture"

皮膚病変のアノテーション

皮膚科画像用:

yaml
annotation_task_name: "Dermoscopy Annotation"
 
data_files:
  - path: data/skin_lesions.json
    type: json
 
annotation_schemes:
  - annotation_type: polygon
    name: lesion_boundary
    labels:
      - name: lesion
        color: "#EF4444"
        description: "Lesion boundary"
 
  - annotation_type: multiselect
    name: dermoscopic_features
    question: "Select all features present"
    options:
      - name: pigment_network
        label: "Pigment Network"
      - name: dots_globules
        label: "Dots/Globules"
      - name: streaks
        label: "Streaks"
      - name: blue_white_veil
        label: "Blue-White Veil"
      - name: regression
        label: "Regression Structures"
      - name: vascular
        label: "Vascular Structures"
 
  - annotation_type: radio
    name: diagnosis
    question: "Most likely diagnosis?"
    options:
      - name: benign_nevus
        label: "Benign Nevus"
      - name: seborrheic_keratosis
        label: "Seborrheic Keratosis"
      - name: basal_cell
        label: "Basal Cell Carcinoma"
      - name: melanoma
        label: "Melanoma"
      - name: other
        label: "Other"
 
  - annotation_type: likert
    name: confidence
    question: "Diagnostic confidence"
    size: 5
    min_label: "Low"
    max_label: "High"

網膜画像のアノテーション

眼底写真やその他の網膜画像用:

yaml
annotation_task_name: "Fundus Image Annotation"
 
data_files:
  - path: data/fundus_images.json
    type: json
 
annotation_schemes:
  - annotation_type: polygon
    name: anatomical_structures
    labels:
      - name: optic_disc
        color: "#FDE68A"
        description: "Optic disc boundary"
 
      - name: fovea
        color: "#A78BFA"
        description: "Fovea region"
 
      - name: macula
        color: "#93C5FD"
        description: "Macular region"
 
  - annotation_type: polygon
    name: pathology
    allow_multiple: true
    labels:
      - name: hemorrhage
        color: "#EF4444"
        description: "Retinal hemorrhage"
 
      - name: exudate
        color: "#FCD34D"
        description: "Hard/soft exudate"
 
      - name: microaneurysm
        color: "#F97316"
        description: "Microaneurysm"
 
  - annotation_type: radio
    name: dr_grade
    question: "Diabetic retinopathy grade"
    options:
      - name: none
        label: "No DR"
      - name: mild
        label: "Mild NPDR"
      - name: moderate
        label: "Moderate NPDR"
      - name: severe
        label: "Severe NPDR"
      - name: proliferative
        label: "PDR"

データフォーマット

画像データをJSON形式で準備します:

json
[
  {
    "id": "case_001",
    "image": "images/case_001.png",
    "metadata": {
      "body_part": "chest",
      "modality": "xray"
    }
  },
  {
    "id": "case_002",
    "image": "images/case_002.png",
    "metadata": {
      "body_part": "chest",
      "modality": "xray"
    }
  }
]

注意:画像は標準的なWeb対応フォーマット(PNG、JPGなど)である必要があります。DICOMファイルはPotatoで使用する前に標準的な画像フォーマットに変換する必要があります。

ベストプラクティス

  1. 資格のあるアノテーターを使用する: 医療アノテーションには臨床専門知識が必要 - アノテーターが適切な訓練を受けていることを確認する
  2. 画像を前処理する: 専門フォーマット(DICOMなど)を標準的な画像フォーマットに変換し、PHIが除去されていることを確認する
  3. 複数のアノテーター: アノテーター間の一致度を測定するために、各画像に複数のアノテーターを割り当てる
  4. 明確なガイドライン: 臨床ドメインに特化した詳細なアノテーションガイドラインを提供する
  5. 品質チェック: アノテーターの精度を監視するためにゴールドスタンダードケースを含める
  6. 機関のコンプライアンス: データ取り扱いが要件を満たしていることをコンプライアンスチームと連携して確認する

制限事項

Potatoは汎用的な画像アノテーションを提供しており、以下の機能は含まれていません:

  • ネイティブDICOMファイルサポートまたはDICOMビューア
  • 多解像度ズーム付きのホールスライドイメージ(WSI)ビューア
  • 組み込みのHIPAA準拠または監査ログ
  • 医療資格の検証
  • 専門的な放射線ウィンドウイングツール

これらの機能については、データの前処理を行うか、Potatoを専門的な医療画像インフラと統合することを検討してください。


画像アノテーションの詳細は/docs/features/image-annotationをご覧ください。