Overview
Rubric supports evaluation of medical imaging AI, including X-ray analysis, CT interpretation, MRI findings, and ultrasound assessments. Our platform integrates with PACS systems and supports standard DICOM formats.
Supported Modalities
X-Ray (CR/DX) Chest, skeletal, dental radiographs
CT Cross-sectional imaging, 3D reconstruction
MRI Soft tissue, neurological, cardiac
Ultrasound Obstetric, abdominal, cardiac echo
Mammography Screening and diagnostic breast imaging
Nuclear Medicine PET, SPECT, bone scans
PACS Integration
Connect Rubric to your PACS for seamless study retrieval:
# Configure PACS connection (one-time setup)
client.connections.create(
type = "dicomweb" ,
name = "Main PACS" ,
config = {
"base_url" : "https://pacs.hospital.org/dicom-web" ,
"auth_type" : "oauth2" ,
"client_id" : "rubric_integration"
}
)
Supported Standards
Protocol Description DICOMweb RESTful DICOM services (WADO-RS, STOW-RS, QIDO-RS) DIMSE Traditional DICOM networking (C-FIND, C-MOVE, C-STORE) Cloud PACS Google Cloud Healthcare, AWS HealthLake, Azure DICOM
Logging Imaging AI Output
client.imaging.log(
project = "chest-xray-analyzer" ,
# Study reference (from PACS)
study_uid = "1.2.840.113619.2.55.3.123456789" ,
# Or provide image directly
# image_url="https://storage.example.com/dicom/study.dcm",
# DICOM metadata
dicom_metadata = {
"modality" : "CR" ,
"body_part" : "CHEST" ,
"view_position" : "PA" ,
"patient_age" : "67Y" ,
"study_date" : "2024-03-15"
},
# AI analysis output
ai_analysis = {
"findings" : [
{
"type" : "cardiomegaly" ,
"present" : True ,
"confidence" : 0.87 ,
"severity" : "mild" ,
"location" : {
"coordinates" : [ 820 , 680 , 1380 , 1420 ],
"reference" : "pixel"
}
},
{
"type" : "opacity" ,
"present" : True ,
"confidence" : 0.72 ,
"location_text" : "left lower lobe" ,
"location" : {
"coordinates" : [ 1240 , 1560 , 1480 , 1820 ],
"reference" : "pixel"
}
}
],
"measurements" : {
"cardiothoracic_ratio" : 0.55
},
"impression" : "Mild cardiomegaly. Subtle LLL opacity - recommend correlation." ,
"triage_recommendation" : "semi_urgent"
},
# Ground truth (if available)
expected = {
"findings" : [
{ "type" : "cardiomegaly" , "present" : True },
{ "type" : "pneumonia" , "present" : True , "location" : "left_lower_lobe" }
],
"radiologist_read" : "Mild cardiomegaly. LLL pneumonia."
}
)
Imaging Evaluators
Finding Accuracy
Measures whether the AI correctly identified abnormalities:
{
"type" : "finding_accuracy" ,
"config" : {
"finding_types" : [ "cardiomegaly" , "pneumonia" , "fracture" , "nodule" ],
"sensitivity_threshold" : 0.90 ,
"specificity_threshold" : 0.85
}
}
Metrics calculated:
Sensitivity (recall) per finding type
Specificity per finding type
Positive predictive value
Negative predictive value
AUC-ROC
Localization Accuracy
For AI that provides bounding boxes or segmentation:
{
"type" : "localization_accuracy" ,
"config" : {
"iou_threshold" : 0.5 , # Intersection over Union
"distance_threshold_mm" : 10 # For point annotations
}
}
Report Quality
Evaluates the generated radiology report:
{
"type" : "report_quality" ,
"config" : {
"check_completeness" : True ,
"check_terminology" : True ,
"check_structure" : True ,
"required_sections" : [ "findings" , "impression" ]
}
}
Critical Finding Alerts
Configure alerts for findings requiring immediate action:
{
"type" : "critical_finding_detection" ,
"config" : {
"critical_findings" : [
"pneumothorax" ,
"aortic_dissection" ,
"stroke" ,
"pulmonary_embolism" ,
"ruptured_aaa"
],
"alert_threshold" : 0.7 ,
"require_human_review" : True
}
}
Critical findings should always trigger immediate human review, regardless of AI confidence score.
Anatomical Coordinates
Rubric supports multiple coordinate systems:
System Description Use Case Pixel Raw image coordinates 2D analysis Patient DICOM patient coordinate system 3D localization ICS Image coordinate system Cross-modality
{
"location" : {
"coordinates" : [ 120.5 , 45.2 , -180.0 ],
"reference" : "patient" ,
"anatomical_region" : "right_upper_lobe"
}
}
For AI that outputs structured reports (DICOM SR):
client.imaging.log(
study_uid = "1.2.3.4.5" ,
# AI output as DICOM SR
ai_analysis_sr_url = "https://storage.example.com/sr.dcm" ,
# Or provide SR content
ai_analysis_sr = {
"template_id" : "1.2.840.10008.5.1.4.1.1.88.22" ,
"content" : { ... }
}
)
Next Steps