Skip to content
Guides5 min read

Potato से चिकित्सा छवियों का एनोटेशन

Potato में चिकित्सा छवियों को एनोटेट करने के बेहतर तरीक़े, DICOM प्रदर्शन, रेडियोलॉजी रिपोर्ट की लेबलिंग, प्रतिकूल घटनाओं का निष्कर्षण और IRB के अनुरूप self-hosted तैनाती।

Potato Team

Potato के छवि एनोटेशन का इस्तेमाल आप चिकित्सा छवियों के लिए भी कर सकते हैं, जैसे X-ray, त्वचा के घावों की तस्वीरें या दूसरी नैदानिक छवियाँ, बशर्ते वे PNG या JPG जैसे मानक प्रारूप में हों। यह गाइड बताती है कि ऐसी परियोजना को ठीक से कैसे सेट किया जाए।

इसके पीछे काम करने वाली छवि एनोटेशन की व्यवस्था के लिए स्रोत दस्तावेज़ देखें।

शुरू करने से पहले

चिकित्सा एनोटेशन परियोजना के साथ कुछ ज़िम्मेदारियाँ आती हैं जिनका Potato से कोई लेना-देना नहीं है। पहले छवियों से सारा PHI हटा दीजिए। भंडारण और प्रोसेसिंग के लिए डेटा अपने संस्थान के सुरक्षित इंफ़्रास्ट्रक्चर पर ही रखिए। एनोटेटर की पहुँच को उसी authentication से नियंत्रित कीजिए जो आपके यहाँ पहले से चल रहा है। और अपने IRB तथा अनुपालन दलों को शुरू में ही साथ ले लीजिए, ताकि संस्थागत शर्तें आप पूरी करें, बाद में उनका पता न चले।

एक बात साफ़ रहनी चाहिए: Potato एक एनोटेशन टूल है, चिकित्सा इमेजिंग प्लेटफ़ॉर्म नहीं। इसमें HIPAA अनुपालन पहले से बना हुआ नहीं है, न कोई DICOM viewer है, न इमेजिंग की विशेष सुविधाएँ। ये सब इंफ़्रास्ट्रक्चर के स्तर पर सँभालिए।

चिकित्सा छवि एनोटेशन का बुनियादी सेटअप

मानक चिकित्सा छवियों के लिए Potato को इस तरह कॉन्फ़िगर किया जाता है:

yaml
annotation_task_name: "Medical Image Annotation"
 
data_files:
  - path: data/medical_images.json
    type: json
 
annotation_schemes:
  - annotation_type: image_annotation
    tools: [bbox]
    name: lesions
    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
    description: "Overall image quality?"
    labels:
      - name: diagnostic
        label: "Diagnostic Quality"
      - name: limited
        label: "Limited Quality"
      - name: non_diagnostic
        label: "Non-Diagnostic"

X-ray और नैदानिक तस्वीरों का एनोटेशन

ऐसे X-ray या नैदानिक तस्वीरों के लिए जिन्हें मानक छवि प्रारूपों में निर्यात किया जा चुका है:

yaml
annotation_task_name: "X-Ray Findings Annotation"
 
data_files:
  - path: data/xray_images.json
    type: json
 
annotation_schemes:
  - annotation_type: image_annotation
    tools: [polygon]
    name: abnormalities
    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
    description: "Select all findings present"
    labels:
      - 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: image_annotation
    tools: [polygon]
    name: lesion_boundary
    labels:
      - name: lesion
        color: "#EF4444"
        description: "Lesion boundary"
 
  - annotation_type: multiselect
    name: dermoscopic_features
    description: "Select all features present"
    labels:
      - 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
    description: "Most likely diagnosis?"
    labels:
      - 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
    description: "Diagnostic confidence"
    size: 5
    min_label: "Low"
    max_label: "High"

रेटिना की छवियों का एनोटेशन

fundus तस्वीरों और रेटिना की दूसरी छवियों के लिए:

yaml
annotation_task_name: "Fundus Image Annotation"
 
data_files:
  - path: data/fundus_images.json
    type: json
 
annotation_schemes:
  - annotation_type: image_annotation
    tools: [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: image_annotation
    tools: [polygon]
    name: pathology
    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
    description: "Diabetic retinopathy grade"
    labels:
      - 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"
    }
  }
]

ध्यान दें: छवियाँ वेब के अनुकूल मानक प्रारूपों (PNG, JPG आदि) में होनी चाहिए। DICOM फ़ाइलों को Potato में इस्तेमाल करने से पहले मानक छवि प्रारूपों में बदलना पड़ता है।

बेहतर तरीक़े

ऐसे एनोटेटर लगाइए जिनके पास असली नैदानिक प्रशिक्षण हो, क्योंकि यह काम किसी को भी नहीं थमाया जा सकता। छवियों को पहले तैयार कीजिए: DICOM और दूसरे विशेष प्रारूपों को मानक प्रारूपों में बदलिए, और पक्का कीजिए कि PHI हट चुका है। हर छवि को एक से ज़्यादा एनोटेटर से लेबल कराइए, ताकि सहमति नापी जा सके। दिशानिर्देश आम-सा लिखने के बजाय अपने नैदानिक क्षेत्र के हिसाब से लिखिए। बीच-बीच में gold standard मामले डालिए, ताकि सटीकता पर नज़र बनी रहे। और डेटा किस तरह सँभाला जा रहा है, इस पर अपने अनुपालन दल को जानकारी देते रहिए।

सीमाएँ

Potato सामान्य कामों के लिए छवि एनोटेशन करता है। यह आपको native DICOM समर्थन या DICOM viewer, कई रेज़ोल्यूशन पर ज़ूम करने वाले whole slide image viewer, पहले से बना HIPAA अनुपालन या audit logging, प्रमाणपत्रों की जाँच, या रेडियोलॉजी के windowing टूल नहीं देता। अगर आपको ये चाहिए, तो अपना डेटा पहले तैयार कर लीजिए या Potato को समर्पित चिकित्सा इमेजिंग इंफ़्रास्ट्रक्चर के साथ रखिए।


छवि एनोटेशन पर और जानकारी के लिए छवि एनोटेशन देखें।