Anotação de Imagens Médicas com o Potato
Boas práticas para anotar imagens médicas no Potato, exibição de DICOM, rotulagem de laudos radiológicos, extração de eventos adversos e implantação auto-hospedada em conformidade com o CEP.
Você pode usar a anotação de imagens do Potato para imagens médicas como radiografias, fotografias de lesões de pele ou outras imagens clínicas, desde que estejam em um formato padrão como PNG ou JPG. Este guia mostra como montar bem um projeto desse tipo.
Para entender os mecanismos básicos da anotação de imagens, consulte a documentação de origem.
Antes de começar
Um projeto de anotação médica traz obrigações que não têm nada a ver com o Potato. Remova todas as informações de saúde protegidas (PHI) das imagens antes de tudo. Mantenha os dados na infraestrutura segura da sua instituição para armazenamento e processamento. Controle o acesso dos anotadores pelo mecanismo de autenticação que você já utiliza. E envolva suas equipes de CEP e conformidade desde cedo, para atender aos requisitos institucionais em vez de descobri-los depois.
Vale deixar uma coisa clara: o Potato é uma ferramenta de anotação, não uma plataforma de imagens médicas. Ele não tem conformidade com HIPAA embutida, não tem visualizador de DICOM e não tem recursos especializados de imagem. Trate disso no nível da infraestrutura.
Configuração básica de anotação de imagens médicas
Veja como configurar o Potato para imagens médicas padrão:
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"Anotação de radiografias e fotos clínicas
Para radiografias ou fotografias clínicas que foram exportadas para formatos de imagem padrão:
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"Anotação de lesões de pele
Para imagens de dermatologia:
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"Anotação de imagens da retina
Para retinografias e outras imagens da retina:
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"Formato dos dados
Prepare os dados das imagens em 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"
}
}
]Observação: as imagens precisam estar em formatos compatíveis com a web (PNG, JPG, etc.). Arquivos DICOM precisam ser convertidos para formatos de imagem padrão antes de serem usados com o Potato.
Boas práticas
Use anotadores com treinamento clínico de verdade, pois este não é um trabalho que você possa entregar a qualquer pessoa. Faça o pré-processamento das imagens antes: converta DICOM e outros formatos especializados para formatos padrão e confirme que as PHI foram removidas. Tenha mais de um anotador rotulando cada imagem, para que você possa medir a concordância. Escreva diretrizes específicas para o seu domínio clínico, em vez de genéricas. Inclua casos de padrão-ouro para acompanhar a precisão. E mantenha sua equipe de conformidade a par de como os dados são tratados.
Limitações
O Potato faz anotação de imagens de uso geral. Ele não oferece suporte nativo a DICOM nem visualizador de DICOM, visualizadores de lâminas inteiras com zoom multirresolução, conformidade com HIPAA embutida ou registro de auditoria, verificação de credenciais nem ferramentas de janelamento radiológico. Se você precisa disso, faça o pré-processamento dos seus dados ou coloque o Potato ao lado de uma infraestrutura dedicada de imagens médicas.
Para saber mais sobre anotação de imagens, consulte /docs/features/image-annotation.