{
  "generated_at_utc": "2026-05-14T22:13:10+00:00",
  "experiment": "pact_transporter_hardcase_ot_vlm_20260514",
  "source_run": "/data/250010098/PAct-Transporter/reports/20260513_pact_transporter_exploration/runs/pact_transporter_gapartnet_nonpm_100_20260514",
  "source_summary": {
    "sample_count": 100,
    "segmentation_dependence": {
      "mask_part_to_pred_node_corr": 0.5244731490589858,
      "mask_part_to_pred_joint_corr": 0.5058628639549553,
      "visible_movable_fraction_to_f1_corr": 0.32336656975172084,
      "occluded_movable_to_recall_corr": -0.2677917777741101,
      "mean_abs_pred_minus_mask_parts": 1.67,
      "mean_pred_minus_mask_parts": -1.67,
      "f1_by_visible_movable_bucket": {
        "complete": 0.47761904761904755,
        "none": 0.07692307692307693,
        "partial": 0.2701889900032315
      },
      "recall_by_visible_movable_bucket": {
        "complete": 0.45972222222222214,
        "none": 0.07692307692307693,
        "partial": 0.21901185234518564
      }
    },
    "joint_quality": {
      "mean_f1": 0.36952245587230104,
      "median_f1": 0.09808612440191387,
      "mean_recall": 0.34496653346653344,
      "mean_precision": 0.42419871794871794,
      "mean_type_match_rate": 0.5800149659708483,
      "mean_axis_error_deg": 44.80449213170913,
      "mean_origin_error": 0.23047340163881738,
      "mean_joint_count_abs_error": 2.0,
      "joint_count_under_rate": 0.49,
      "joint_count_exact_rate": 0.49,
      "joint_count_over_rate": 0.02,
      "degenerate_axis_sample_rate": 0.0,
      "reversed_range_sample_rate": 0.59,
      "zero_span_nonfixed_sample_rate": 0.0,
      "extreme_revolute_range_sample_rate": 0.8,
      "matched_range_span_abs_error_mean": 52.80509582709967
    },
    "internal_structure": {
      "tree_valid_proxy_rate": 0.95,
      "root_count_mean": 1.05,
      "multi_root_rate": 0.05,
      "cycle_sample_rate": 0.0,
      "dangling_parent_sample_rate": 0.0,
      "child_mismatch_sample_rate": 0.0,
      "thin_part_sample_rate": 1.0,
      "high_overlap_sample_rate": 0.73,
      "mean_max_pair_aabb_overlap_ratio": 0.7893936266770655,
      "mean_parent_child_aabb_gap": 0.0004426727786869563,
      "mean_axis_origin_to_child_aabb_distance": 0.050476577598520304
    },
    "worst_cases": {
      "lowest_f1": [
        {
          "sample": "electronics_104011",
          "object_category": "Printer",
          "f1": 0.0,
          "pred_joints": 4,
          "gt_joints": 27
        },
        {
          "sample": "electronics_103972",
          "object_category": "Printer",
          "f1": 0.0,
          "pred_joints": 1,
          "gt_joints": 22
        },
        {
          "sample": "electronics_103867",
          "object_category": "Printer",
          "f1": 0.0,
          "pred_joints": 2,
          "gt_joints": 17
        },
        {
          "sample": "electronics_103978",
          "object_category": "Printer",
          "f1": 0.0,
          "pred_joints": 0,
          "gt_joints": 16
        },
        {
          "sample": "small_appliances_103043",
          "object_category": "CoffeeMachine",
          "f1": 0.0,
          "pred_joints": 1,
          "gt_joints": 12
        },
        {
          "sample": "electronics_104020",
          "object_category": "Printer",
          "f1": 0.0,
          "pred_joints": 0,
          "gt_joints": 9
        },
        {
          "sample": "electronics_103988",
          "object_category": "Printer",
          "f1": 0.0,
          "pred_joints": 0,
          "gt_joints": 8
        },
        {
          "sample": "electronics_103878",
          "object_category": "Printer",
          "f1": 0.0,
          "pred_joints": 1,
          "gt_joints": 8
        },
        {
          "sample": "electronics_104030",
          "object_category": "Printer",
          "f1": 0.0,
          "pred_joints": 3,
          "gt_joints": 8
        },
        {
          "sample": "small_appliances_103016",
          "object_category": "CoffeeMachine",
          "f1": 0.0,
          "pred_joints": 4,
          "gt_joints": 6
        }
      ],
      "largest_joint_count_error": [
        {
          "sample": "electronics_104011",
          "object_category": "Printer",
          "count_abs_error": 23.0,
          "pred_joints": 4,
          "gt_joints": 27
        },
        {
          "sample": "electronics_103972",
          "object_category": "Printer",
          "count_abs_error": 21.0,
          "pred_joints": 1,
          "gt_joints": 22
        },
        {
          "sample": "electronics_103978",
          "object_category": "Printer",
          "count_abs_error": 16.0,
          "pred_joints": 0,
          "gt_joints": 16
        },
        {
          "sample": "electronics_103867",
          "object_category": "Printer",
          "count_abs_error": 15.0,
          "pred_joints": 2,
          "gt_joints": 17
        },
        {
          "sample": "small_appliances_103043",
          "object_category": "CoffeeMachine",
          "count_abs_error": 11.0,
          "pred_joints": 1,
          "gt_joints": 12
        },
        {
          "sample": "electronics_104020",
          "object_category": "Printer",
          "count_abs_error": 9.0,
          "pred_joints": 0,
          "gt_joints": 9
        },
        {
          "sample": "electronics_103988",
          "object_category": "Printer",
          "count_abs_error": 8.0,
          "pred_joints": 0,
          "gt_joints": 8
        },
        {
          "sample": "major_appliances_103351",
          "object_category": "WashingMachine",
          "count_abs_error": 8.0,
          "pred_joints": 2,
          "gt_joints": 10
        },
        {
          "sample": "major_appliances_103452",
          "object_category": "WashingMachine",
          "count_abs_error": 8.0,
          "pred_joints": 5,
          "gt_joints": 13
        },
        {
          "sample": "electronics_103878",
          "object_category": "Printer",
          "count_abs_error": 7.0,
          "pred_joints": 1,
          "gt_joints": 8
        }
      ],
      "largest_structure_overlap": [
        {
          "sample": "small_appliances_103466",
          "object_category": "Toaster",
          "max_overlap": 1.0,
          "node_count": 4
        },
        {
          "sample": "household_fixtures_102708",
          "object_category": "Toilet",
          "max_overlap": 1.0,
          "node_count": 4
        },
        {
          "sample": "storage_100162",
          "object_category": "Box",
          "max_overlap": 1.0,
          "node_count": 5
        },
        {
          "sample": "large_furniture_46955",
          "object_category": "StorageFurniture",
          "max_overlap": 1.0,
          "node_count": 4
        },
        {
          "sample": "household_items_100056",
          "object_category": "KitchenPot",
          "max_overlap": 1.0,
          "node_count": 2
        },
        {
          "sample": "small_furniture_20985",
          "object_category": "Table",
          "max_overlap": 1.0,
          "node_count": 2
        },
        {
          "sample": "small_appliances_7265",
          "object_category": "Microwave",
          "max_overlap": 1.0,
          "node_count": 15
        },
        {
          "sample": "storage_101583",
          "object_category": "Safe",
          "max_overlap": 1.0,
          "node_count": 10
        },
        {
          "sample": "household_items_102181",
          "object_category": "TrashCan",
          "max_overlap": 1.0,
          "node_count": 3
        },
        {
          "sample": "small_furniture_22692",
          "object_category": "Table",
          "max_overlap": 1.0,
          "node_count": 3
        }
      ]
    },
    "object_category_count": {
      "StorageFurniture": 12,
      "Refrigerator": 2,
      "Bucket": 3,
      "Table": 11,
      "Toaster": 1,
      "Toilet": 11,
      "Box": 3,
      "Printer": 11,
      "Door": 11,
      "Dishwasher": 4,
      "KitchenPot": 3,
      "Microwave": 3,
      "Safe": 7,
      "TrashCan": 5,
      "CoffeeMachine": 6,
      "Oven": 3,
      "WashingMachine": 3,
      "Suitcase": 1
    },
    "object_category_f1": {
      "Box": 0.0,
      "Bucket": 0.0,
      "CoffeeMachine": 0.3333333333333333,
      "Dishwasher": 0.0,
      "Door": 0.8181818181818182,
      "KitchenPot": 0.0,
      "Microwave": 0.7212121212121213,
      "Oven": 0.3333333333333333,
      "Printer": 0.0,
      "Refrigerator": 1.0,
      "Safe": 0.31373889268626115,
      "StorageFurniture": 0.7936507936507938,
      "Suitcase": 0.0,
      "Table": 0.6818181818181818,
      "Toaster": 0.3333333333333333,
      "Toilet": 0.0,
      "TrashCan": 0.1,
      "WashingMachine": 0.2450980392156863
    }
  },
  "portal": {
    "slug": "pact-transporter-hardcase-ot-vlm-20260514",
    "public_url": "http://106.14.105.96:28080/experiments/pact-transporter-hardcase-ot-vlm-20260514/index.html"
  },
  "summary": {
    "sample_count": 11,
    "caption_model": "microsoft/git-base",
    "caption_prompt": "Unprompted image caption from microsoft/git-base.",
    "hard_samples": [
      "electronics_104011",
      "electronics_103972",
      "electronics_103867",
      "electronics_103978",
      "small_appliances_103043",
      "electronics_104020",
      "electronics_103988",
      "electronics_103878",
      "electronics_104030",
      "small_appliances_103016",
      "small_appliances_103466"
    ],
    "raw": {
      "strict_joint_f1": 0.0,
      "strict_joint_precision": 0.0,
      "strict_joint_recall": 0.0,
      "strict_joint_count_abs_error": 1.7272727272727273,
      "strict_type_match_rate": 0.0,
      "strict_axis_mean_error_deg": 65.45454545454545,
      "strict_origin_mean_error": 0.0,
      "strict_tree_valid": 1.0
    },
    "variants": {
      "ot_2d": {
        "strict_joint_f1": 0.0,
        "strict_joint_precision": 0.0,
        "strict_joint_recall": 0.0,
        "strict_joint_count_abs_error": 2.8181818181818183,
        "strict_type_match_rate": 0.0,
        "strict_axis_mean_error_deg": 90.0,
        "strict_origin_mean_error": 0.0,
        "strict_tree_valid": 1.0,
        "raw_strict_joint_f1": 0.0,
        "raw_strict_joint_count_abs_error": 1.7272727272727273,
        "raw_strict_tree_valid": 1.0,
        "raw_axis_mean_error_deg": 65.45454545454545,
        "raw_origin_mean_error": 0.0
      },
      "ot_proto": {
        "strict_joint_f1": 0.0,
        "strict_joint_precision": 0.0,
        "strict_joint_recall": 0.0,
        "strict_joint_count_abs_error": 1.1818181818181819,
        "strict_type_match_rate": 0.0,
        "strict_axis_mean_error_deg": 90.0,
        "strict_origin_mean_error": 0.0,
        "strict_tree_valid": 1.0,
        "raw_strict_joint_f1": 0.0,
        "raw_strict_joint_count_abs_error": 1.7272727272727273,
        "raw_strict_tree_valid": 1.0,
        "raw_axis_mean_error_deg": 65.45454545454545,
        "raw_origin_mean_error": 0.0
      },
      "nonot_hier": {
        "strict_joint_f1": 0.0,
        "strict_joint_precision": 0.0,
        "strict_joint_recall": 0.0,
        "strict_joint_count_abs_error": 1.9090909090909092,
        "strict_type_match_rate": 0.0,
        "strict_axis_mean_error_deg": 65.45454545454545,
        "strict_origin_mean_error": 0.0,
        "strict_tree_valid": 1.0,
        "raw_strict_joint_f1": 0.0,
        "raw_strict_joint_count_abs_error": 1.7272727272727273,
        "raw_strict_tree_valid": 1.0,
        "raw_axis_mean_error_deg": 65.45454545454545,
        "raw_origin_mean_error": 0.0
      },
      "vlm_seg": {
        "strict_joint_f1": 0.0,
        "strict_joint_precision": 0.0,
        "strict_joint_recall": 0.0,
        "strict_joint_count_abs_error": 2.909090909090909,
        "strict_type_match_rate": 0.0,
        "strict_axis_mean_error_deg": 90.0,
        "strict_origin_mean_error": 0.0,
        "strict_tree_valid": 1.0,
        "raw_strict_joint_f1": 0.0,
        "raw_strict_joint_count_abs_error": 1.7272727272727273,
        "raw_strict_tree_valid": 1.0,
        "raw_axis_mean_error_deg": 65.45454545454545,
        "raw_origin_mean_error": 0.0
      },
      "vlm_joint": {
        "strict_joint_f1": 0.0,
        "strict_joint_precision": 0.0,
        "strict_joint_recall": 0.0,
        "strict_joint_count_abs_error": 1.1818181818181819,
        "strict_type_match_rate": 0.0,
        "strict_axis_mean_error_deg": 90.0,
        "strict_origin_mean_error": 0.0,
        "strict_tree_valid": 1.0,
        "raw_strict_joint_f1": 0.0,
        "raw_strict_joint_count_abs_error": 1.7272727272727273,
        "raw_strict_tree_valid": 1.0,
        "raw_axis_mean_error_deg": 65.45454545454545,
        "raw_origin_mean_error": 0.0
      },
      "vlm_struct": {
        "strict_joint_f1": 0.0,
        "strict_joint_precision": 0.0,
        "strict_joint_recall": 0.0,
        "strict_joint_count_abs_error": 1.9090909090909092,
        "strict_type_match_rate": 0.0,
        "strict_axis_mean_error_deg": 65.45454545454545,
        "strict_origin_mean_error": 0.0,
        "strict_tree_valid": 1.0,
        "raw_strict_joint_f1": 0.0,
        "raw_strict_joint_count_abs_error": 1.7272727272727273,
        "raw_strict_tree_valid": 1.0,
        "raw_axis_mean_error_deg": 65.45454545454545,
        "raw_origin_mean_error": 0.0
      }
    },
    "caption_samples": {
      "electronics_104011": "this is a vector illustration of a computer screen.",
      "electronics_103972": "digital art selected for the #",
      "electronics_103867": "digital art selected for the #",
      "electronics_103978": "3d model of a box",
      "small_appliances_103043": "digital art selected for the #",
      "electronics_104020": "digital art selected for the #",
      "electronics_103988": "a box of chocolates.................................",
      "electronics_103878": "the box for the printer.",
      "electronics_104030": "the box in the middle of the road",
      "small_appliances_103016": "3d model of a box",
      "small_appliances_103466": "3d model of a box"
    },
    "profile_samples": {
      "electronics_104011": {
        "caption": "this is a vector illustration of a computer screen.",
        "category": "Printer",
        "joint_type": "revolute",
        "structure_mode": "doors",
        "count_bias": 0,
        "caption_useful": false
      },
      "electronics_103972": {
        "caption": "digital art selected for the #",
        "category": "Printer",
        "joint_type": "revolute",
        "structure_mode": "doors",
        "count_bias": 0,
        "caption_useful": false
      },
      "electronics_103867": {
        "caption": "digital art selected for the #",
        "category": "Printer",
        "joint_type": "revolute",
        "structure_mode": "doors",
        "count_bias": 0,
        "caption_useful": false
      },
      "electronics_103978": {
        "caption": "3d model of a box",
        "category": "Printer",
        "joint_type": "revolute",
        "structure_mode": "doors",
        "count_bias": 0,
        "caption_useful": false
      },
      "small_appliances_103043": {
        "caption": "digital art selected for the #",
        "category": "CoffeeMachine",
        "joint_type": "revolute",
        "structure_mode": "doors",
        "count_bias": 0,
        "caption_useful": false
      },
      "electronics_104020": {
        "caption": "digital art selected for the #",
        "category": "Printer",
        "joint_type": "revolute",
        "structure_mode": "doors",
        "count_bias": 0,
        "caption_useful": false
      },
      "electronics_103988": {
        "caption": "a box of chocolates.................................",
        "category": "Printer",
        "joint_type": "revolute",
        "structure_mode": "doors",
        "count_bias": 0,
        "caption_useful": false
      },
      "electronics_103878": {
        "caption": "the box for the printer.",
        "category": "Printer",
        "joint_type": "revolute",
        "structure_mode": "doors",
        "count_bias": 0,
        "caption_useful": true
      },
      "electronics_104030": {
        "caption": "the box in the middle of the road",
        "category": "Printer",
        "joint_type": "revolute",
        "structure_mode": "doors",
        "count_bias": 0,
        "caption_useful": false
      },
      "small_appliances_103016": {
        "caption": "3d model of a box",
        "category": "CoffeeMachine",
        "joint_type": "revolute",
        "structure_mode": "doors",
        "count_bias": 0,
        "caption_useful": false
      },
      "small_appliances_103466": {
        "caption": "3d model of a box",
        "category": "Toaster",
        "joint_type": "revolute",
        "structure_mode": "doors",
        "count_bias": 0,
        "caption_useful": false
      }
    },
    "mean_visible_movable_fraction": 0.10909090909090909
  },
  "figures": {
    "strict_f1": "visualizations/strict_f1_comparison.png",
    "strict_count_error": "visualizations/strict_count_error_comparison.png",
    "strict_axis_error": "visualizations/strict_axis_error_comparison.png",
    "strict_tree_valid": "visualizations/strict_tree_valid_comparison.png"
  },
  "records": [
    {
      "sample": "electronics_104011",
      "dataset_category": "electronics",
      "object_category": "Printer",
      "pm_id": "104011",
      "caption": "this is a vector illustration of a computer screen.",
      "profile": {
        "caption": "this is a vector illustration of a computer screen.",
        "category": "Printer",
        "joint_type": "revolute",
        "structure_mode": "doors",
        "count_bias": 0,
        "caption_useful": false
      },
      "assets": {
        "raw_open": "samples/electronics_104011/raw_open.glb",
        "pact_mesh": "samples/electronics_104011/pact_generated_parts.glb",
        "reference_mesh": "samples/electronics_104011/reference_parts.glb",
        "processed": "samples/electronics_104011/processed.png",
        "mask": "samples/electronics_104011/mask.png"
      },
      "raw": {
        "object_json": "samples/electronics_104011/object_raw.json",
        "open_glb": "samples/electronics_104011/raw_open.glb",
        "scores": {
          "raw": {
            "pred_joint_count": 4,
            "gt_joint_count": 0,
            "joint_count_accuracy": 0.0,
            "joint_count_abs_error": 4,
            "joint_type_accuracy": 0.0,
            "axis_mean_error_deg": 90.0,
            "origin_mean_error": 0.0,
            "axis_finite_rate": 1.0,
            "limit_sanity_rate": 1.0,
            "kinematic_tree_valid": 1.0
          },
          "strict": {
            "strict_pred_joint_count": 4,
            "strict_gt_joint_count": 0,
            "strict_joint_count_abs_error": 4,
            "strict_match_count": 0,
            "strict_joint_precision": 0.0,
            "strict_joint_recall": 0.0,
            "strict_joint_f1": 0.0,
            "strict_type_match_rate": 0.0,
            "strict_axis_mean_error_deg": 90.0,
            "strict_origin_mean_error": 0.0,
            "strict_tree_valid": 1.0,
            "strict_matches": []
          },
          "structure": {
            "root_count": 1,
            "duplicate_ids": 0,
            "dangling_parent_count": 0,
            "self_parent_count": 0,
            "cycle_node_count": 0,
            "child_mismatch_count": 0,
            "tree_valid_proxy": 1,
            "node_count": 5,
            "thin_part_count": 5,
            "invalid_aabb_count": 0,
            "mean_pair_aabb_overlap_ratio": 0.3093801548767477,
            "max_pair_aabb_overlap_ratio": 1.0,
            "mean_parent_child_aabb_gap": 0.0,
            "max_parent_child_aabb_gap": 0.0,
            "mean_axis_origin_to_child_aabb_distance": 0.12337104114228382,
            "max_axis_origin_to_child_aabb_distance": 0.2524434430334526
          }
        }
      },
      "pact_mesh": {
        "open_glb": "samples/electronics_104011/pact_generated_parts.glb"
      },
      "variants": {
        "ot_2d": {
          "mode": "ot_2d_mask_transport",
          "actions": [
            {
              "type": "activate_joint",
              "node_id": 1,
              "reason": "mask_transport_count"
            }
          ],
          "object_json": "samples/electronics_104011/object_ot_2d.json",
          "open_glb": "samples/electronics_104011/ot_2d_mesh_open.glb",
          "scores": {
            "raw": {
              "pred_joint_count": 5,
              "gt_joint_count": 0,
              "joint_count_accuracy": 0.0,
              "joint_count_abs_error": 5,
              "joint_type_accuracy": 0.0,
              "axis_mean_error_deg": 90.0,
              "origin_mean_error": 0.0,
              "axis_finite_rate": 1.0,
              "limit_sanity_rate": 1.0,
              "kinematic_tree_valid": 1.0
            },
            "strict": {
              "strict_pred_joint_count": 5,
              "strict_gt_joint_count": 0,
              "strict_joint_count_abs_error": 5,
              "strict_match_count": 0,
              "strict_joint_precision": 0.0,
              "strict_joint_recall": 0.0,
              "strict_joint_f1": 0.0,
              "strict_type_match_rate": 0.0,
              "strict_axis_mean_error_deg": 90.0,
              "strict_origin_mean_error": 0.0,
              "strict_tree_valid": 1.0,
              "strict_matches": []
            },
            "structure": {
              "root_count": 1,
              "duplicate_ids": 0,
              "dangling_parent_count": 0,
              "self_parent_count": 0,
              "cycle_node_count": 0,
              "child_mismatch_count": 0,
              "tree_valid_proxy": 1,
              "node_count": 5,
              "thin_part_count": 5,
              "invalid_aabb_count": 0,
              "mean_pair_aabb_overlap_ratio": 0.3093801548767477,
              "max_pair_aabb_overlap_ratio": 1.0,
              "mean_parent_child_aabb_gap": 0.0,
              "max_parent_child_aabb_gap": 0.0,
              "mean_axis_origin_to_child_aabb_distance": 0.09869683291382705,
              "max_axis_origin_to_child_aabb_distance": 0.2524434430334526
            }
          },
          "meta": {
            "mode": "ot_2d_mask_transport",
            "target_count": 27,
            "template_pm_id": "5477",
            "assignment_confidence": 0.25528079874017845
          },
          "proxy_glb": "samples/electronics_104011/ot_2d_open.glb",
          "mesh_glb": "samples/electronics_104011/ot_2d_mesh_open.glb"
        },
        "ot_proto": {
          "mode": "ot_prototype_bank",
          "actions": [
            {
              "type": "deactivate_joint",
              "node_id": 2,
              "reason": "prototype_count"
            },
            {
              "type": "deactivate_joint",
              "node_id": 3,
              "reason": "prototype_count"
            },
            {
              "type": "deactivate_joint",
              "node_id": 4,
              "reason": "prototype_count"
            },
            {
              "type": "prototype_align",
              "node_id": 0,
              "joint_type": "revolute",
              "category": "Printer"
            }
          ],
          "object_json": "samples/electronics_104011/object_ot_proto.json",
          "open_glb": "samples/electronics_104011/ot_proto_mesh_open.glb",
          "scores": {
            "raw": {
              "pred_joint_count": 1,
              "gt_joint_count": 0,
              "joint_count_accuracy": 0.0,
              "joint_count_abs_error": 1,
              "joint_type_accuracy": 0.0,
              "axis_mean_error_deg": 90.0,
              "origin_mean_error": 0.0,
              "axis_finite_rate": 1.0,
              "limit_sanity_rate": 1.0,
              "kinematic_tree_valid": 1.0
            },
            "strict": {
              "strict_pred_joint_count": 1,
              "strict_gt_joint_count": 0,
              "strict_joint_count_abs_error": 1,
              "strict_match_count": 0,
              "strict_joint_precision": 0.0,
              "strict_joint_recall": 0.0,
              "strict_joint_f1": 0.0,
              "strict_type_match_rate": 0.0,
              "strict_axis_mean_error_deg": 90.0,
              "strict_origin_mean_error": 0.0,
              "strict_tree_valid": 1.0,
              "strict_matches": []
            },
            "structure": {
              "root_count": 1,
              "duplicate_ids": 0,
              "dangling_parent_count": 0,
              "self_parent_count": 0,
              "cycle_node_count": 0,
              "child_mismatch_count": 0,
              "tree_valid_proxy": 1,
              "node_count": 5,
              "thin_part_count": 5,
              "invalid_aabb_count": 0,
              "mean_pair_aabb_overlap_ratio": 0.3093801548767477,
              "max_pair_aabb_overlap_ratio": 1.0,
              "mean_parent_child_aabb_gap": 0.0,
              "max_parent_child_aabb_gap": 0.0,
              "mean_axis_origin_to_child_aabb_distance": 0.0,
              "max_axis_origin_to_child_aabb_distance": 0.0
            }
          },
          "meta": {
            "mode": "ot_prototype_bank",
            "target_count": 1,
            "category": "Printer"
          },
          "proxy_glb": "samples/electronics_104011/ot_proto_open.glb",
          "mesh_glb": "samples/electronics_104011/ot_proto_mesh_open.glb"
        },
        "nonot_hier": {
          "mode": "nonot_hierarchy_repair",
          "actions": [
            {
              "type": "repair_hierarchy"
            }
          ],
          "object_json": "samples/electronics_104011/object_nonot_hier.json",
          "open_glb": "samples/electronics_104011/nonot_hier_mesh_open.glb",
          "scores": {
            "raw": {
              "pred_joint_count": 4,
              "gt_joint_count": 0,
              "joint_count_accuracy": 0.0,
              "joint_count_abs_error": 4,
              "joint_type_accuracy": 0.0,
              "axis_mean_error_deg": 90.0,
              "origin_mean_error": 0.0,
              "axis_finite_rate": 1.0,
              "limit_sanity_rate": 1.0,
              "kinematic_tree_valid": 1.0
            },
            "strict": {
              "strict_pred_joint_count": 4,
              "strict_gt_joint_count": 0,
              "strict_joint_count_abs_error": 4,
              "strict_match_count": 0,
              "strict_joint_precision": 0.0,
              "strict_joint_recall": 0.0,
              "strict_joint_f1": 0.0,
              "strict_type_match_rate": 0.0,
              "strict_axis_mean_error_deg": 90.0,
              "strict_origin_mean_error": 0.0,
              "strict_tree_valid": 1.0,
              "strict_matches": []
            },
            "structure": {
              "root_count": 1,
              "duplicate_ids": 0,
              "dangling_parent_count": 0,
              "self_parent_count": 0,
              "cycle_node_count": 0,
              "child_mismatch_count": 0,
              "tree_valid_proxy": 1,
              "node_count": 5,
              "thin_part_count": 5,
              "invalid_aabb_count": 0,
              "mean_pair_aabb_overlap_ratio": 0.3093801548767477,
              "max_pair_aabb_overlap_ratio": 1.0,
              "mean_parent_child_aabb_gap": 0.0,
              "max_parent_child_aabb_gap": 0.0,
              "mean_axis_origin_to_child_aabb_distance": 0.09375587967799592,
              "max_axis_origin_to_child_aabb_distance": 0.15859228468006806
            }
          },
          "meta": {
            "mode": "nonot_hierarchy_repair"
          },
          "proxy_glb": "samples/electronics_104011/nonot_hier_open.glb",
          "mesh_glb": "samples/electronics_104011/nonot_hier_mesh_open.glb"
        },
        "vlm_seg": {
          "mode": "vlm_segmentation",
          "actions": [
            {
              "type": "activate_joint",
              "node_id": 1,
              "reason": "vlm_segmentation"
            }
          ],
          "object_json": "samples/electronics_104011/object_vlm_seg.json",
          "open_glb": "samples/electronics_104011/vlm_seg_mesh_open.glb",
          "scores": {
            "raw": {
              "pred_joint_count": 5,
              "gt_joint_count": 0,
              "joint_count_accuracy": 0.0,
              "joint_count_abs_error": 5,
              "joint_type_accuracy": 0.0,
              "axis_mean_error_deg": 90.0,
              "origin_mean_error": 0.0,
              "axis_finite_rate": 1.0,
              "limit_sanity_rate": 1.0,
              "kinematic_tree_valid": 1.0
            },
            "strict": {
              "strict_pred_joint_count": 5,
              "strict_gt_joint_count": 0,
              "strict_joint_count_abs_error": 5,
              "strict_match_count": 0,
              "strict_joint_precision": 0.0,
              "strict_joint_recall": 0.0,
              "strict_joint_f1": 0.0,
              "strict_type_match_rate": 0.0,
              "strict_axis_mean_error_deg": 90.0,
              "strict_origin_mean_error": 0.0,
              "strict_tree_valid": 1.0,
              "strict_matches": []
            },
            "structure": {
              "root_count": 1,
              "duplicate_ids": 0,
              "dangling_parent_count": 0,
              "self_parent_count": 0,
              "cycle_node_count": 0,
              "child_mismatch_count": 0,
              "tree_valid_proxy": 1,
              "node_count": 5,
              "thin_part_count": 5,
              "invalid_aabb_count": 0,
              "mean_pair_aabb_overlap_ratio": 0.3093801548767477,
              "max_pair_aabb_overlap_ratio": 1.0,
              "mean_parent_child_aabb_gap": 0.0,
              "max_parent_child_aabb_gap": 0.0,
              "mean_axis_origin_to_child_aabb_distance": 0.0,
              "max_axis_origin_to_child_aabb_distance": 0.0
            }
          },
          "meta": {
            "mode": "vlm_segmentation",
            "caption_category": "Printer",
            "caption": "this is a vector illustration of a computer screen."
          },
          "proxy_glb": "samples/electronics_104011/vlm_seg_open.glb",
          "mesh_glb": "samples/electronics_104011/vlm_seg_mesh_open.glb"
        },
        "vlm_joint": {
          "mode": "vlm_joint",
          "actions": [
            {
              "type": "deactivate_joint",
              "node_id": 2,
              "reason": "vlm_joint_count"
            },
            {
              "type": "deactivate_joint",
              "node_id": 3,
              "reason": "vlm_joint_count"
            },
            {
              "type": "deactivate_joint",
              "node_id": 4,
              "reason": "vlm_joint_count"
            },
            {
              "type": "vlm_joint_retype",
              "node_id": 0,
              "target_type": "revolute"
            }
          ],
          "object_json": "samples/electronics_104011/object_vlm_joint.json",
          "open_glb": "samples/electronics_104011/vlm_joint_mesh_open.glb",
          "scores": {
            "raw": {
              "pred_joint_count": 1,
              "gt_joint_count": 0,
              "joint_count_accuracy": 0.0,
              "joint_count_abs_error": 1,
              "joint_type_accuracy": 0.0,
              "axis_mean_error_deg": 90.0,
              "origin_mean_error": 0.0,
              "axis_finite_rate": 1.0,
              "limit_sanity_rate": 1.0,
              "kinematic_tree_valid": 1.0
            },
            "strict": {
              "strict_pred_joint_count": 1,
              "strict_gt_joint_count": 0,
              "strict_joint_count_abs_error": 1,
              "strict_match_count": 0,
              "strict_joint_precision": 0.0,
              "strict_joint_recall": 0.0,
              "strict_joint_f1": 0.0,
              "strict_type_match_rate": 0.0,
              "strict_axis_mean_error_deg": 90.0,
              "strict_origin_mean_error": 0.0,
              "strict_tree_valid": 1.0,
              "strict_matches": []
            },
            "structure": {
              "root_count": 1,
              "duplicate_ids": 0,
              "dangling_parent_count": 0,
              "self_parent_count": 0,
              "cycle_node_count": 0,
              "child_mismatch_count": 0,
              "tree_valid_proxy": 1,
              "node_count": 5,
              "thin_part_count": 5,
              "invalid_aabb_count": 0,
              "mean_pair_aabb_overlap_ratio": 0.3093801548767477,
              "max_pair_aabb_overlap_ratio": 1.0,
              "mean_parent_child_aabb_gap": 0.0,
              "max_parent_child_aabb_gap": 0.0,
              "mean_axis_origin_to_child_aabb_distance": 0.0,
              "max_axis_origin_to_child_aabb_distance": 0.0
            }
          },
          "meta": {
            "mode": "vlm_joint",
            "caption_category": "Printer",
            "caption": "this is a vector illustration of a computer screen."
          },
          "proxy_glb": "samples/electronics_104011/vlm_joint_open.glb",
          "mesh_glb": "samples/electronics_104011/vlm_joint_mesh_open.glb"
        },
        "vlm_struct": {
          "mode": "vlm_structure",
          "actions": [
            {
              "type": "repair_hierarchy"
            }
          ],
          "object_json": "samples/electronics_104011/object_vlm_struct.json",
          "open_glb": "samples/electronics_104011/vlm_struct_mesh_open.glb",
          "scores": {
            "raw": {
              "pred_joint_count": 4,
              "gt_joint_count": 0,
              "joint_count_accuracy": 0.0,
              "joint_count_abs_error": 4,
              "joint_type_accuracy": 0.0,
              "axis_mean_error_deg": 90.0,
              "origin_mean_error": 0.0,
              "axis_finite_rate": 1.0,
              "limit_sanity_rate": 1.0,
              "kinematic_tree_valid": 1.0
            },
            "strict": {
              "strict_pred_joint_count": 4,
              "strict_gt_joint_count": 0,
              "strict_joint_count_abs_error": 4,
              "strict_match_count": 0,
              "strict_joint_precision": 0.0,
              "strict_joint_recall": 0.0,
              "strict_joint_f1": 0.0,
              "strict_type_match_rate": 0.0,
              "strict_axis_mean_error_deg": 90.0,
              "strict_origin_mean_error": 0.0,
              "strict_tree_valid": 1.0,
              "strict_matches": []
            },
            "structure": {
              "root_count": 1,
              "duplicate_ids": 0,
              "dangling_parent_count": 0,
              "self_parent_count": 0,
              "cycle_node_count": 0,
              "child_mismatch_count": 0,
              "tree_valid_proxy": 1,
              "node_count": 5,
              "thin_part_count": 5,
              "invalid_aabb_count": 0,
              "mean_pair_aabb_overlap_ratio": 0.3093801548767477,
              "max_pair_aabb_overlap_ratio": 1.0,
              "mean_parent_child_aabb_gap": 0.0,
              "max_parent_child_aabb_gap": 0.0,
              "mean_axis_origin_to_child_aabb_distance": 0.09375587967799592,
              "max_axis_origin_to_child_aabb_distance": 0.15859228468006806
            }
          },
          "meta": {
            "mode": "vlm_structure",
            "caption_category": "Printer",
            "caption": "this is a vector illustration of a computer screen."
          },
          "proxy_glb": "samples/electronics_104011/vlm_struct_open.glb",
          "mesh_glb": "samples/electronics_104011/vlm_struct_mesh_open.glb"
        }
      },
      "reference": {
        "open_glb": "samples/electronics_104011/reference_parts.glb"
      },
      "input": {
        "processed": "samples/electronics_104011/processed.png",
        "mask": "samples/electronics_104011/mask.png"
      }
    },
    {
      "sample": "electronics_103972",
      "dataset_category": "electronics",
      "object_category": "Printer",
      "pm_id": "103972",
      "caption": "digital art selected for the #",
      "profile": {
        "caption": "digital art selected for the #",
        "category": "Printer",
        "joint_type": "revolute",
        "structure_mode": "doors",
        "count_bias": 0,
        "caption_useful": false
      },
      "assets": {
        "raw_open": "samples/electronics_103972/raw_open.glb",
        "pact_mesh": "samples/electronics_103972/pact_generated_parts.glb",
        "reference_mesh": "samples/electronics_103972/reference_parts.glb",
        "processed": "samples/electronics_103972/processed.png",
        "mask": "samples/electronics_103972/mask.png"
      },
      "raw": {
        "object_json": "samples/electronics_103972/object_raw.json",
        "open_glb": "samples/electronics_103972/raw_open.glb",
        "scores": {
          "raw": {
            "pred_joint_count": 1,
            "gt_joint_count": 0,
            "joint_count_accuracy": 0.0,
            "joint_count_abs_error": 1,
            "joint_type_accuracy": 0.0,
            "axis_mean_error_deg": 90.0,
            "origin_mean_error": 0.0,
            "axis_finite_rate": 1.0,
            "limit_sanity_rate": 1.0,
            "kinematic_tree_valid": 1.0
          },
          "strict": {
            "strict_pred_joint_count": 1,
            "strict_gt_joint_count": 0,
            "strict_joint_count_abs_error": 1,
            "strict_match_count": 0,
            "strict_joint_precision": 0.0,
            "strict_joint_recall": 0.0,
            "strict_joint_f1": 0.0,
            "strict_type_match_rate": 0.0,
            "strict_axis_mean_error_deg": 90.0,
            "strict_origin_mean_error": 0.0,
            "strict_tree_valid": 1.0,
            "strict_matches": []
          },
          "structure": {
            "root_count": 1,
            "duplicate_ids": 0,
            "dangling_parent_count": 0,
            "self_parent_count": 0,
            "cycle_node_count": 0,
            "child_mismatch_count": 0,
            "tree_valid_proxy": 1,
            "node_count": 2,
            "thin_part_count": 2,
            "invalid_aabb_count": 0,
            "mean_pair_aabb_overlap_ratio": 0.9807507500619251,
            "max_pair_aabb_overlap_ratio": 0.9807507500619251,
            "mean_parent_child_aabb_gap": 0.0,
            "max_parent_child_aabb_gap": 0.0,
            "mean_axis_origin_to_child_aabb_distance": 0.21111908555030823,
            "max_axis_origin_to_child_aabb_distance": 0.21111908555030823
          }
        }
      },
      "pact_mesh": {
        "open_glb": "samples/electronics_103972/pact_generated_parts.glb"
      },
      "variants": {
        "ot_2d": {
          "mode": "ot_2d_mask_transport",
          "actions": [
            {
              "type": "activate_joint",
              "node_id": 0,
              "reason": "mask_transport_count"
            }
          ],
          "object_json": "samples/electronics_103972/object_ot_2d.json",
          "open_glb": "samples/electronics_103972/ot_2d_mesh_open.glb",
          "scores": {
            "raw": {
              "pred_joint_count": 2,
              "gt_joint_count": 0,
              "joint_count_accuracy": 0.0,
              "joint_count_abs_error": 2,
              "joint_type_accuracy": 0.0,
              "axis_mean_error_deg": 90.0,
              "origin_mean_error": 0.0,
              "axis_finite_rate": 1.0,
              "limit_sanity_rate": 1.0,
              "kinematic_tree_valid": 1.0
            },
            "strict": {
              "strict_pred_joint_count": 2,
              "strict_gt_joint_count": 0,
              "strict_joint_count_abs_error": 2,
              "strict_match_count": 0,
              "strict_joint_precision": 0.0,
              "strict_joint_recall": 0.0,
              "strict_joint_f1": 0.0,
              "strict_type_match_rate": 0.0,
              "strict_axis_mean_error_deg": 90.0,
              "strict_origin_mean_error": 0.0,
              "strict_tree_valid": 1.0,
              "strict_matches": []
            },
            "structure": {
              "root_count": 1,
              "duplicate_ids": 0,
              "dangling_parent_count": 0,
              "self_parent_count": 0,
              "cycle_node_count": 0,
              "child_mismatch_count": 0,
              "tree_valid_proxy": 1,
              "node_count": 2,
              "thin_part_count": 2,
              "invalid_aabb_count": 0,
              "mean_pair_aabb_overlap_ratio": 0.9807507500619251,
              "max_pair_aabb_overlap_ratio": 0.9807507500619251,
              "mean_parent_child_aabb_gap": 0.0,
              "max_parent_child_aabb_gap": 0.0,
              "mean_axis_origin_to_child_aabb_distance": 0.10555954277515411,
              "max_axis_origin_to_child_aabb_distance": 0.21111908555030823
            }
          },
          "meta": {
            "mode": "ot_2d_mask_transport",
            "target_count": 22,
            "template_pm_id": "3894",
            "assignment_confidence": 0.6654852311197161
          },
          "proxy_glb": "samples/electronics_103972/ot_2d_open.glb",
          "mesh_glb": "samples/electronics_103972/ot_2d_mesh_open.glb"
        },
        "ot_proto": {
          "mode": "ot_prototype_bank",
          "actions": [
            {
              "type": "prototype_align",
              "node_id": 1,
              "joint_type": "revolute",
              "category": "Printer"
            }
          ],
          "object_json": "samples/electronics_103972/object_ot_proto.json",
          "open_glb": "samples/electronics_103972/ot_proto_mesh_open.glb",
          "scores": {
            "raw": {
              "pred_joint_count": 1,
              "gt_joint_count": 0,
              "joint_count_accuracy": 0.0,
              "joint_count_abs_error": 1,
              "joint_type_accuracy": 0.0,
              "axis_mean_error_deg": 90.0,
              "origin_mean_error": 0.0,
              "axis_finite_rate": 1.0,
              "limit_sanity_rate": 1.0,
              "kinematic_tree_valid": 1.0
            },
            "strict": {
              "strict_pred_joint_count": 1,
              "strict_gt_joint_count": 0,
              "strict_joint_count_abs_error": 1,
              "strict_match_count": 0,
              "strict_joint_precision": 0.0,
              "strict_joint_recall": 0.0,
              "strict_joint_f1": 0.0,
              "strict_type_match_rate": 0.0,
              "strict_axis_mean_error_deg": 90.0,
              "strict_origin_mean_error": 0.0,
              "strict_tree_valid": 1.0,
              "strict_matches": []
            },
            "structure": {
              "root_count": 1,
              "duplicate_ids": 0,
              "dangling_parent_count": 0,
              "self_parent_count": 0,
              "cycle_node_count": 0,
              "child_mismatch_count": 0,
              "tree_valid_proxy": 1,
              "node_count": 2,
              "thin_part_count": 2,
              "invalid_aabb_count": 0,
              "mean_pair_aabb_overlap_ratio": 0.9807507500619251,
              "max_pair_aabb_overlap_ratio": 0.9807507500619251,
              "mean_parent_child_aabb_gap": 0.0,
              "max_parent_child_aabb_gap": 0.0,
              "mean_axis_origin_to_child_aabb_distance": 0.0,
              "max_axis_origin_to_child_aabb_distance": 0.0
            }
          },
          "meta": {
            "mode": "ot_prototype_bank",
            "target_count": 1,
            "category": "Printer"
          },
          "proxy_glb": "samples/electronics_103972/ot_proto_open.glb",
          "mesh_glb": "samples/electronics_103972/ot_proto_mesh_open.glb"
        },
        "nonot_hier": {
          "mode": "nonot_hierarchy_repair",
          "actions": [
            {
              "type": "repair_hierarchy"
            }
          ],
          "object_json": "samples/electronics_103972/object_nonot_hier.json",
          "open_glb": "samples/electronics_103972/nonot_hier_mesh_open.glb",
          "scores": {
            "raw": {
              "pred_joint_count": 1,
              "gt_joint_count": 0,
              "joint_count_accuracy": 0.0,
              "joint_count_abs_error": 1,
              "joint_type_accuracy": 0.0,
              "axis_mean_error_deg": 90.0,
              "origin_mean_error": 0.0,
              "axis_finite_rate": 1.0,
              "limit_sanity_rate": 1.0,
              "kinematic_tree_valid": 1.0
            },
            "strict": {
              "strict_pred_joint_count": 1,
              "strict_gt_joint_count": 0,
              "strict_joint_count_abs_error": 1,
              "strict_match_count": 0,
              "strict_joint_precision": 0.0,
              "strict_joint_recall": 0.0,
              "strict_joint_f1": 0.0,
              "strict_type_match_rate": 0.0,
              "strict_axis_mean_error_deg": 90.0,
              "strict_origin_mean_error": 0.0,
              "strict_tree_valid": 1.0,
              "strict_matches": []
            },
            "structure": {
              "root_count": 1,
              "duplicate_ids": 0,
              "dangling_parent_count": 0,
              "self_parent_count": 0,
              "cycle_node_count": 0,
              "child_mismatch_count": 0,
              "tree_valid_proxy": 1,
              "node_count": 2,
              "thin_part_count": 2,
              "invalid_aabb_count": 0,
              "mean_pair_aabb_overlap_ratio": 0.9807507500619251,
              "max_pair_aabb_overlap_ratio": 0.9807507500619251,
              "mean_parent_child_aabb_gap": 0.0,
              "max_parent_child_aabb_gap": 0.0,
              "mean_axis_origin_to_child_aabb_distance": 0.09110504388809204,
              "max_axis_origin_to_child_aabb_distance": 0.09110504388809204
            }
          },
          "meta": {
            "mode": "nonot_hierarchy_repair"
          },
          "proxy_glb": "samples/electronics_103972/nonot_hier_open.glb",
          "mesh_glb": "samples/electronics_103972/nonot_hier_mesh_open.glb"
        },
        "vlm_seg": {
          "mode": "vlm_segmentation",
          "actions": [
            {
              "type": "activate_joint",
              "node_id": 0,
              "reason": "vlm_segmentation"
            }
          ],
          "object_json": "samples/electronics_103972/object_vlm_seg.json",
          "open_glb": "samples/electronics_103972/vlm_seg_mesh_open.glb",
          "scores": {
            "raw": {
              "pred_joint_count": 2,
              "gt_joint_count": 0,
              "joint_count_accuracy": 0.0,
              "joint_count_abs_error": 2,
              "joint_type_accuracy": 0.0,
              "axis_mean_error_deg": 90.0,
              "origin_mean_error": 0.0,
              "axis_finite_rate": 1.0,
              "limit_sanity_rate": 1.0,
              "kinematic_tree_valid": 1.0
            },
            "strict": {
              "strict_pred_joint_count": 2,
              "strict_gt_joint_count": 0,
              "strict_joint_count_abs_error": 2,
              "strict_match_count": 0,
              "strict_joint_precision": 0.0,
              "strict_joint_recall": 0.0,
              "strict_joint_f1": 0.0,
              "strict_type_match_rate": 0.0,
              "strict_axis_mean_error_deg": 90.0,
              "strict_origin_mean_error": 0.0,
              "strict_tree_valid": 1.0,
              "strict_matches": []
            },
            "structure": {
              "root_count": 1,
              "duplicate_ids": 0,
              "dangling_parent_count": 0,
              "self_parent_count": 0,
              "cycle_node_count": 0,
              "child_mismatch_count": 0,
              "tree_valid_proxy": 1,
              "node_count": 2,
              "thin_part_count": 2,
              "invalid_aabb_count": 0,
              "mean_pair_aabb_overlap_ratio": 0.9807507500619251,
              "max_pair_aabb_overlap_ratio": 0.9807507500619251,
              "mean_parent_child_aabb_gap": 0.0,
              "max_parent_child_aabb_gap": 0.0,
              "mean_axis_origin_to_child_aabb_distance": 0.0,
              "max_axis_origin_to_child_aabb_distance": 0.0
            }
          },
          "meta": {
            "mode": "vlm_segmentation",
            "caption_category": "Printer",
            "caption": "digital art selected for the #"
          },
          "proxy_glb": "samples/electronics_103972/vlm_seg_open.glb",
          "mesh_glb": "samples/electronics_103972/vlm_seg_mesh_open.glb"
        },
        "vlm_joint": {
          "mode": "vlm_joint",
          "actions": [
            {
              "type": "vlm_joint_retype",
              "node_id": 1,
              "target_type": "revolute"
            }
          ],
          "object_json": "samples/electronics_103972/object_vlm_joint.json",
          "open_glb": "samples/electronics_103972/vlm_joint_mesh_open.glb",
          "scores": {
            "raw": {
              "pred_joint_count": 1,
              "gt_joint_count": 0,
              "joint_count_accuracy": 0.0,
              "joint_count_abs_error": 1,
              "joint_type_accuracy": 0.0,
              "axis_mean_error_deg": 90.0,
              "origin_mean_error": 0.0,
              "axis_finite_rate": 1.0,
              "limit_sanity_rate": 1.0,
              "kinematic_tree_valid": 1.0
            },
            "strict": {
              "strict_pred_joint_count": 1,
              "strict_gt_joint_count": 0,
              "strict_joint_count_abs_error": 1,
              "strict_match_count": 0,
              "strict_joint_precision": 0.0,
              "strict_joint_recall": 0.0,
              "strict_joint_f1": 0.0,
              "strict_type_match_rate": 0.0,
              "strict_axis_mean_error_deg": 90.0,
              "strict_origin_mean_error": 0.0,
              "strict_tree_valid": 1.0,
              "strict_matches": []
            },
            "structure": {
              "root_count": 1,
              "duplicate_ids": 0,
              "dangling_parent_count": 0,
              "self_parent_count": 0,
              "cycle_node_count": 0,
              "child_mismatch_count": 0,
              "tree_valid_proxy": 1,
              "node_count": 2,
              "thin_part_count": 2,
              "invalid_aabb_count": 0,
              "mean_pair_aabb_overlap_ratio": 0.9807507500619251,
              "max_pair_aabb_overlap_ratio": 0.9807507500619251,
              "mean_parent_child_aabb_gap": 0.0,
              "max_parent_child_aabb_gap": 0.0,
              "mean_axis_origin_to_child_aabb_distance": 0.0,
              "max_axis_origin_to_child_aabb_distance": 0.0
            }
          },
          "meta": {
            "mode": "vlm_joint",
            "caption_category": "Printer",
            "caption": "digital art selected for the #"
          },
          "proxy_glb": "samples/electronics_103972/vlm_joint_open.glb",
          "mesh_glb": "samples/electronics_103972/vlm_joint_mesh_open.glb"
        },
        "vlm_struct": {
          "mode": "vlm_structure",
          "actions": [
            {
              "type": "repair_hierarchy"
            }
          ],
          "object_json": "samples/electronics_103972/object_vlm_struct.json",
          "open_glb": "samples/electronics_103972/vlm_struct_mesh_open.glb",
          "scores": {
            "raw": {
              "pred_joint_count": 1,
              "gt_joint_count": 0,
              "joint_count_accuracy": 0.0,
              "joint_count_abs_error": 1,
              "joint_type_accuracy": 0.0,
              "axis_mean_error_deg": 90.0,
              "origin_mean_error": 0.0,
              "axis_finite_rate": 1.0,
              "limit_sanity_rate": 1.0,
              "kinematic_tree_valid": 1.0
            },
            "strict": {
              "strict_pred_joint_count": 1,
              "strict_gt_joint_count": 0,
              "strict_joint_count_abs_error": 1,
              "strict_match_count": 0,
              "strict_joint_precision": 0.0,
              "strict_joint_recall": 0.0,
              "strict_joint_f1": 0.0,
              "strict_type_match_rate": 0.0,
              "strict_axis_mean_error_deg": 90.0,
              "strict_origin_mean_error": 0.0,
              "strict_tree_valid": 1.0,
              "strict_matches": []
            },
            "structure": {
              "root_count": 1,
              "duplicate_ids": 0,
              "dangling_parent_count": 0,
              "self_parent_count": 0,
              "cycle_node_count": 0,
              "child_mismatch_count": 0,
              "tree_valid_proxy": 1,
              "node_count": 2,
              "thin_part_count": 2,
              "invalid_aabb_count": 0,
              "mean_pair_aabb_overlap_ratio": 0.9807507500619251,
              "max_pair_aabb_overlap_ratio": 0.9807507500619251,
              "mean_parent_child_aabb_gap": 0.0,
              "max_parent_child_aabb_gap": 0.0,
              "mean_axis_origin_to_child_aabb_distance": 0.09110504388809204,
              "max_axis_origin_to_child_aabb_distance": 0.09110504388809204
            }
          },
          "meta": {
            "mode": "vlm_structure",
            "caption_category": "Printer",
            "caption": "digital art selected for the #"
          },
          "proxy_glb": "samples/electronics_103972/vlm_struct_open.glb",
          "mesh_glb": "samples/electronics_103972/vlm_struct_mesh_open.glb"
        }
      },
      "reference": {
        "open_glb": "samples/electronics_103972/reference_parts.glb"
      },
      "input": {
        "processed": "samples/electronics_103972/processed.png",
        "mask": "samples/electronics_103972/mask.png"
      }
    },
    {
      "sample": "electronics_103867",
      "dataset_category": "electronics",
      "object_category": "Printer",
      "pm_id": "103867",
      "caption": "digital art selected for the #",
      "profile": {
        "caption": "digital art selected for the #",
        "category": "Printer",
        "joint_type": "revolute",
        "structure_mode": "doors",
        "count_bias": 0,
        "caption_useful": false
      },
      "assets": {
        "raw_open": "samples/electronics_103867/raw_open.glb",
        "pact_mesh": "samples/electronics_103867/pact_generated_parts.glb",
        "reference_mesh": "samples/electronics_103867/reference_parts.glb",
        "processed": "samples/electronics_103867/processed.png",
        "mask": "samples/electronics_103867/mask.png"
      },
      "raw": {
        "object_json": "samples/electronics_103867/object_raw.json",
        "open_glb": "samples/electronics_103867/raw_open.glb",
        "scores": {
          "raw": {
            "pred_joint_count": 2,
            "gt_joint_count": 0,
            "joint_count_accuracy": 0.0,
            "joint_count_abs_error": 2,
            "joint_type_accuracy": 0.0,
            "axis_mean_error_deg": 90.0,
            "origin_mean_error": 0.0,
            "axis_finite_rate": 1.0,
            "limit_sanity_rate": 1.0,
            "kinematic_tree_valid": 1.0
          },
          "strict": {
            "strict_pred_joint_count": 2,
            "strict_gt_joint_count": 0,
            "strict_joint_count_abs_error": 2,
            "strict_match_count": 0,
            "strict_joint_precision": 0.0,
            "strict_joint_recall": 0.0,
            "strict_joint_f1": 0.0,
            "strict_type_match_rate": 0.0,
            "strict_axis_mean_error_deg": 90.0,
            "strict_origin_mean_error": 0.0,
            "strict_tree_valid": 1.0,
            "strict_matches": []
          },
          "structure": {
            "root_count": 1,
            "duplicate_ids": 0,
            "dangling_parent_count": 0,
            "self_parent_count": 0,
            "cycle_node_count": 0,
            "child_mismatch_count": 0,
            "tree_valid_proxy": 1,
            "node_count": 3,
            "thin_part_count": 3,
            "invalid_aabb_count": 0,
            "mean_pair_aabb_overlap_ratio": 0.6666500862352832,
            "max_pair_aabb_overlap_ratio": 1.0,
            "mean_parent_child_aabb_gap": 0.0,
            "max_parent_child_aabb_gap": 0.0,
            "mean_axis_origin_to_child_aabb_distance": 0.12148498507643757,
            "max_axis_origin_to_child_aabb_distance": 0.24296997015287514
          }
        }
      },
      "pact_mesh": {
        "open_glb": "samples/electronics_103867/pact_generated_parts.glb"
      },
      "variants": {
        "ot_2d": {
          "mode": "ot_2d_mask_transport",
          "actions": [
            {
              "type": "activate_joint",
              "node_id": 0,
              "reason": "mask_transport_count"
            }
          ],
          "object_json": "samples/electronics_103867/object_ot_2d.json",
          "open_glb": "samples/electronics_103867/ot_2d_mesh_open.glb",
          "scores": {
            "raw": {
              "pred_joint_count": 3,
              "gt_joint_count": 0,
              "joint_count_accuracy": 0.0,
              "joint_count_abs_error": 3,
              "joint_type_accuracy": 0.0,
              "axis_mean_error_deg": 90.0,
              "origin_mean_error": 0.0,
              "axis_finite_rate": 1.0,
              "limit_sanity_rate": 1.0,
              "kinematic_tree_valid": 1.0
            },
            "strict": {
              "strict_pred_joint_count": 3,
              "strict_gt_joint_count": 0,
              "strict_joint_count_abs_error": 3,
              "strict_match_count": 0,
              "strict_joint_precision": 0.0,
              "strict_joint_recall": 0.0,
              "strict_joint_f1": 0.0,
              "strict_type_match_rate": 0.0,
              "strict_axis_mean_error_deg": 90.0,
              "strict_origin_mean_error": 0.0,
              "strict_tree_valid": 1.0,
              "strict_matches": []
            },
            "structure": {
              "root_count": 1,
              "duplicate_ids": 0,
              "dangling_parent_count": 0,
              "self_parent_count": 0,
              "cycle_node_count": 0,
              "child_mismatch_count": 0,
              "tree_valid_proxy": 1,
              "node_count": 3,
              "thin_part_count": 3,
              "invalid_aabb_count": 0,
              "mean_pair_aabb_overlap_ratio": 0.6666500862352832,
              "max_pair_aabb_overlap_ratio": 1.0,
              "mean_parent_child_aabb_gap": 0.0,
              "max_parent_child_aabb_gap": 0.0,
              "mean_axis_origin_to_child_aabb_distance": 0.08098999005095837,
              "max_axis_origin_to_child_aabb_distance": 0.24296997015287514
            }
          },
          "meta": {
            "mode": "ot_2d_mask_transport",
            "target_count": 17,
            "template_pm_id": "3392",
            "assignment_confidence": 0.5617093773942192
          },
          "proxy_glb": "samples/electronics_103867/ot_2d_open.glb",
          "mesh_glb": "samples/electronics_103867/ot_2d_mesh_open.glb"
        },
        "ot_proto": {
          "mode": "ot_prototype_bank",
          "actions": [
            {
              "type": "deactivate_joint",
              "node_id": 1,
              "reason": "prototype_count"
            },
            {
              "type": "prototype_align",
              "node_id": 2,
              "joint_type": "revolute",
              "category": "Printer"
            }
          ],
          "object_json": "samples/electronics_103867/object_ot_proto.json",
          "open_glb": "samples/electronics_103867/ot_proto_mesh_open.glb",
          "scores": {
            "raw": {
              "pred_joint_count": 1,
              "gt_joint_count": 0,
              "joint_count_accuracy": 0.0,
              "joint_count_abs_error": 1,
              "joint_type_accuracy": 0.0,
              "axis_mean_error_deg": 90.0,
              "origin_mean_error": 0.0,
              "axis_finite_rate": 1.0,
              "limit_sanity_rate": 1.0,
              "kinematic_tree_valid": 1.0
            },
            "strict": {
              "strict_pred_joint_count": 1,
              "strict_gt_joint_count": 0,
              "strict_joint_count_abs_error": 1,
              "strict_match_count": 0,
              "strict_joint_precision": 0.0,
              "strict_joint_recall": 0.0,
              "strict_joint_f1": 0.0,
              "strict_type_match_rate": 0.0,
              "strict_axis_mean_error_deg": 90.0,
              "strict_origin_mean_error": 0.0,
              "strict_tree_valid": 1.0,
              "strict_matches": []
            },
            "structure": {
              "root_count": 1,
              "duplicate_ids": 0,
              "dangling_parent_count": 0,
              "self_parent_count": 0,
              "cycle_node_count": 0,
              "child_mismatch_count": 0,
              "tree_valid_proxy": 1,
              "node_count": 3,
              "thin_part_count": 3,
              "invalid_aabb_count": 0,
              "mean_pair_aabb_overlap_ratio": 0.6666500862352832,
              "max_pair_aabb_overlap_ratio": 1.0,
              "mean_parent_child_aabb_gap": 0.0,
              "max_parent_child_aabb_gap": 0.0,
              "mean_axis_origin_to_child_aabb_distance": 0.0,
              "max_axis_origin_to_child_aabb_distance": 0.0
            }
          },
          "meta": {
            "mode": "ot_prototype_bank",
            "target_count": 1,
            "category": "Printer"
          },
          "proxy_glb": "samples/electronics_103867/ot_proto_open.glb",
          "mesh_glb": "samples/electronics_103867/ot_proto_mesh_open.glb"
        },
        "nonot_hier": {
          "mode": "nonot_hierarchy_repair",
          "actions": [
            {
              "type": "repair_hierarchy"
            }
          ],
          "object_json": "samples/electronics_103867/object_nonot_hier.json",
          "open_glb": "samples/electronics_103867/nonot_hier_mesh_open.glb",
          "scores": {
            "raw": {
              "pred_joint_count": 2,
              "gt_joint_count": 0,
              "joint_count_accuracy": 0.0,
              "joint_count_abs_error": 2,
              "joint_type_accuracy": 0.0,
              "axis_mean_error_deg": 90.0,
              "origin_mean_error": 0.0,
              "axis_finite_rate": 1.0,
              "limit_sanity_rate": 1.0,
              "kinematic_tree_valid": 1.0
            },
            "strict": {
              "strict_pred_joint_count": 2,
              "strict_gt_joint_count": 0,
              "strict_joint_count_abs_error": 2,
              "strict_match_count": 0,
              "strict_joint_precision": 0.0,
              "strict_joint_recall": 0.0,
              "strict_joint_f1": 0.0,
              "strict_type_match_rate": 0.0,
              "strict_axis_mean_error_deg": 90.0,
              "strict_origin_mean_error": 0.0,
              "strict_tree_valid": 1.0,
              "strict_matches": []
            },
            "structure": {
              "root_count": 1,
              "duplicate_ids": 0,
              "dangling_parent_count": 0,
              "self_parent_count": 0,
              "cycle_node_count": 0,
              "child_mismatch_count": 0,
              "tree_valid_proxy": 1,
              "node_count": 3,
              "thin_part_count": 3,
              "invalid_aabb_count": 0,
              "mean_pair_aabb_overlap_ratio": 0.6666500862352832,
              "max_pair_aabb_overlap_ratio": 1.0,
              "mean_parent_child_aabb_gap": 0.0,
              "max_parent_child_aabb_gap": 0.0,
              "mean_axis_origin_to_child_aabb_distance": 0.08872853062263579,
              "max_axis_origin_to_child_aabb_distance": 0.09247478528244199
            }
          },
          "meta": {
            "mode": "nonot_hierarchy_repair"
          },
          "proxy_glb": "samples/electronics_103867/nonot_hier_open.glb",
          "mesh_glb": "samples/electronics_103867/nonot_hier_mesh_open.glb"
        },
        "vlm_seg": {
          "mode": "vlm_segmentation",
          "actions": [
            {
              "type": "activate_joint",
              "node_id": 0,
              "reason": "vlm_segmentation"
            }
          ],
          "object_json": "samples/electronics_103867/object_vlm_seg.json",
          "open_glb": "samples/electronics_103867/vlm_seg_mesh_open.glb",
          "scores": {
            "raw": {
              "pred_joint_count": 3,
              "gt_joint_count": 0,
              "joint_count_accuracy": 0.0,
              "joint_count_abs_error": 3,
              "joint_type_accuracy": 0.0,
              "axis_mean_error_deg": 90.0,
              "origin_mean_error": 0.0,
              "axis_finite_rate": 1.0,
              "limit_sanity_rate": 1.0,
              "kinematic_tree_valid": 1.0
            },
            "strict": {
              "strict_pred_joint_count": 3,
              "strict_gt_joint_count": 0,
              "strict_joint_count_abs_error": 3,
              "strict_match_count": 0,
              "strict_joint_precision": 0.0,
              "strict_joint_recall": 0.0,
              "strict_joint_f1": 0.0,
              "strict_type_match_rate": 0.0,
              "strict_axis_mean_error_deg": 90.0,
              "strict_origin_mean_error": 0.0,
              "strict_tree_valid": 1.0,
              "strict_matches": []
            },
            "structure": {
              "root_count": 1,
              "duplicate_ids": 0,
              "dangling_parent_count": 0,
              "self_parent_count": 0,
              "cycle_node_count": 0,
              "child_mismatch_count": 0,
              "tree_valid_proxy": 1,
              "node_count": 3,
              "thin_part_count": 3,
              "invalid_aabb_count": 0,
              "mean_pair_aabb_overlap_ratio": 0.6666500862352832,
              "max_pair_aabb_overlap_ratio": 1.0,
              "mean_parent_child_aabb_gap": 0.0,
              "max_parent_child_aabb_gap": 0.0,
              "mean_axis_origin_to_child_aabb_distance": 0.0,
              "max_axis_origin_to_child_aabb_distance": 0.0
            }
          },
          "meta": {
            "mode": "vlm_segmentation",
            "caption_category": "Printer",
            "caption": "digital art selected for the #"
          },
          "proxy_glb": "samples/electronics_103867/vlm_seg_open.glb",
          "mesh_glb": "samples/electronics_103867/vlm_seg_mesh_open.glb"
        },
        "vlm_joint": {
          "mode": "vlm_joint",
          "actions": [
            {
              "type": "deactivate_joint",
              "node_id": 1,
              "reason": "vlm_joint_count"
            },
            {
              "type": "vlm_joint_retype",
              "node_id": 2,
              "target_type": "revolute"
            }
          ],
          "object_json": "samples/electronics_103867/object_vlm_joint.json",
          "open_glb": "samples/electronics_103867/vlm_joint_mesh_open.glb",
          "scores": {
            "raw": {
              "pred_joint_count": 1,
              "gt_joint_count": 0,
              "joint_count_accuracy": 0.0,
              "joint_count_abs_error": 1,
              "joint_type_accuracy": 0.0,
              "axis_mean_error_deg": 90.0,
              "origin_mean_error": 0.0,
              "axis_finite_rate": 1.0,
              "limit_sanity_rate": 1.0,
              "kinematic_tree_valid": 1.0
            },
            "strict": {
              "strict_pred_joint_count": 1,
              "strict_gt_joint_count": 0,
              "strict_joint_count_abs_error": 1,
              "strict_match_count": 0,
              "strict_joint_precision": 0.0,
              "strict_joint_recall": 0.0,
              "strict_joint_f1": 0.0,
              "strict_type_match_rate": 0.0,
              "strict_axis_mean_error_deg": 90.0,
              "strict_origin_mean_error": 0.0,
              "strict_tree_valid": 1.0,
              "strict_matches": []
            },
            "structure": {
              "root_count": 1,
              "duplicate_ids": 0,
              "dangling_parent_count": 0,
              "self_parent_count": 0,
              "cycle_node_count": 0,
              "child_mismatch_count": 0,
              "tree_valid_proxy": 1,
              "node_count": 3,
              "thin_part_count": 3,
              "invalid_aabb_count": 0,
              "mean_pair_aabb_overlap_ratio": 0.6666500862352832,
              "max_pair_aabb_overlap_ratio": 1.0,
              "mean_parent_child_aabb_gap": 0.0,
              "max_parent_child_aabb_gap": 0.0,
              "mean_axis_origin_to_child_aabb_distance": 0.0,
              "max_axis_origin_to_child_aabb_distance": 0.0
            }
          },
          "meta": {
            "mode": "vlm_joint",
            "caption_category": "Printer",
            "caption": "digital art selected for the #"
          },
          "proxy_glb": "samples/electronics_103867/vlm_joint_open.glb",
          "mesh_glb": "samples/electronics_103867/vlm_joint_mesh_open.glb"
        },
        "vlm_struct": {
          "mode": "vlm_structure",
          "actions": [
            {
              "type": "repair_hierarchy"
            }
          ],
          "object_json": "samples/electronics_103867/object_vlm_struct.json",
          "open_glb": "samples/electronics_103867/vlm_struct_mesh_open.glb",
          "scores": {
            "raw": {
              "pred_joint_count": 2,
              "gt_joint_count": 0,
              "joint_count_accuracy": 0.0,
              "joint_count_abs_error": 2,
              "joint_type_accuracy": 0.0,
              "axis_mean_error_deg": 90.0,
              "origin_mean_error": 0.0,
              "axis_finite_rate": 1.0,
              "limit_sanity_rate": 1.0,
              "kinematic_tree_valid": 1.0
            },
            "strict": {
              "strict_pred_joint_count": 2,
              "strict_gt_joint_count": 0,
              "strict_joint_count_abs_error": 2,
              "strict_match_count": 0,
              "strict_joint_precision": 0.0,
              "strict_joint_recall": 0.0,
              "strict_joint_f1": 0.0,
              "strict_type_match_rate": 0.0,
              "strict_axis_mean_error_deg": 90.0,
              "strict_origin_mean_error": 0.0,
              "strict_tree_valid": 1.0,
              "strict_matches": []
            },
            "structure": {
              "root_count": 1,
              "duplicate_ids": 0,
              "dangling_parent_count": 0,
              "self_parent_count": 0,
              "cycle_node_count": 0,
              "child_mismatch_count": 0,
              "tree_valid_proxy": 1,
              "node_count": 3,
              "thin_part_count": 3,
              "invalid_aabb_count": 0,
              "mean_pair_aabb_overlap_ratio": 0.6666500862352832,
              "max_pair_aabb_overlap_ratio": 1.0,
              "mean_parent_child_aabb_gap": 0.0,
              "max_parent_child_aabb_gap": 0.0,
              "mean_axis_origin_to_child_aabb_distance": 0.08872853062263579,
              "max_axis_origin_to_child_aabb_distance": 0.09247478528244199
            }
          },
          "meta": {
            "mode": "vlm_structure",
            "caption_category": "Printer",
            "caption": "digital art selected for the #"
          },
          "proxy_glb": "samples/electronics_103867/vlm_struct_open.glb",
          "mesh_glb": "samples/electronics_103867/vlm_struct_mesh_open.glb"
        }
      },
      "reference": {
        "open_glb": "samples/electronics_103867/reference_parts.glb"
      },
      "input": {
        "processed": "samples/electronics_103867/processed.png",
        "mask": "samples/electronics_103867/mask.png"
      }
    },
    {
      "sample": "electronics_103978",
      "dataset_category": "electronics",
      "object_category": "Printer",
      "pm_id": "103978",
      "caption": "3d model of a box",
      "profile": {
        "caption": "3d model of a box",
        "category": "Printer",
        "joint_type": "revolute",
        "structure_mode": "doors",
        "count_bias": 0,
        "caption_useful": false
      },
      "assets": {
        "raw_open": "samples/electronics_103978/raw_open.glb",
        "pact_mesh": "samples/electronics_103978/pact_generated_parts.glb",
        "reference_mesh": "samples/electronics_103978/reference_parts.glb",
        "processed": "samples/electronics_103978/processed.png",
        "mask": "samples/electronics_103978/mask.png"
      },
      "raw": {
        "object_json": "samples/electronics_103978/object_raw.json",
        "open_glb": "samples/electronics_103978/raw_open.glb",
        "scores": {
          "raw": {
            "pred_joint_count": 0,
            "gt_joint_count": 0,
            "joint_count_accuracy": 0.0,
            "joint_count_abs_error": 0,
            "joint_type_accuracy": 0.0,
            "axis_mean_error_deg": 0.0,
            "origin_mean_error": 0.0,
            "axis_finite_rate": 0.0,
            "limit_sanity_rate": 0.0,
            "kinematic_tree_valid": 1.0
          },
          "strict": {
            "strict_pred_joint_count": 0,
            "strict_gt_joint_count": 0,
            "strict_joint_count_abs_error": 0,
            "strict_match_count": 0,
            "strict_joint_precision": 0.0,
            "strict_joint_recall": 0.0,
            "strict_joint_f1": 0.0,
            "strict_type_match_rate": 0.0,
            "strict_axis_mean_error_deg": 0.0,
            "strict_origin_mean_error": 0.0,
            "strict_tree_valid": 1.0,
            "strict_matches": []
          },
          "structure": {
            "root_count": 1,
            "duplicate_ids": 0,
            "dangling_parent_count": 0,
            "self_parent_count": 0,
            "cycle_node_count": 0,
            "child_mismatch_count": 0,
            "tree_valid_proxy": 1,
            "node_count": 1,
            "thin_part_count": 1,
            "invalid_aabb_count": 0,
            "mean_pair_aabb_overlap_ratio": 0.0,
            "max_pair_aabb_overlap_ratio": 0.0,
            "mean_parent_child_aabb_gap": 0.0,
            "max_parent_child_aabb_gap": 0.0,
            "mean_axis_origin_to_child_aabb_distance": 0.0,
            "max_axis_origin_to_child_aabb_distance": 0.0
          }
        }
      },
      "pact_mesh": {
        "open_glb": "samples/electronics_103978/pact_generated_parts.glb"
      },
      "variants": {
        "ot_2d": {
          "mode": "ot_2d_mask_transport",
          "actions": [
            {
              "type": "activate_joint",
              "node_id": 0,
              "reason": "mask_transport_count"
            }
          ],
          "object_json": "samples/electronics_103978/object_ot_2d.json",
          "open_glb": "samples/electronics_103978/ot_2d_mesh_open.glb",
          "scores": {
            "raw": {
              "pred_joint_count": 1,
              "gt_joint_count": 0,
              "joint_count_accuracy": 0.0,
              "joint_count_abs_error": 1,
              "joint_type_accuracy": 0.0,
              "axis_mean_error_deg": 90.0,
              "origin_mean_error": 0.0,
              "axis_finite_rate": 1.0,
              "limit_sanity_rate": 1.0,
              "kinematic_tree_valid": 1.0
            },
            "strict": {
              "strict_pred_joint_count": 1,
              "strict_gt_joint_count": 0,
              "strict_joint_count_abs_error": 1,
              "strict_match_count": 0,
              "strict_joint_precision": 0.0,
              "strict_joint_recall": 0.0,
              "strict_joint_f1": 0.0,
              "strict_type_match_rate": 0.0,
              "strict_axis_mean_error_deg": 90.0,
              "strict_origin_mean_error": 0.0,
              "strict_tree_valid": 1.0,
              "strict_matches": []
            },
            "structure": {
              "root_count": 1,
              "duplicate_ids": 0,
              "dangling_parent_count": 0,
              "self_parent_count": 0,
              "cycle_node_count": 0,
              "child_mismatch_count": 0,
              "tree_valid_proxy": 1,
              "node_count": 1,
              "thin_part_count": 1,
              "invalid_aabb_count": 0,
              "mean_pair_aabb_overlap_ratio": 0.0,
              "max_pair_aabb_overlap_ratio": 0.0,
              "mean_parent_child_aabb_gap": 0.0,
              "max_parent_child_aabb_gap": 0.0,
              "mean_axis_origin_to_child_aabb_distance": 0.0,
              "max_axis_origin_to_child_aabb_distance": 0.0
            }
          },
          "meta": {
            "mode": "ot_2d_mask_transport",
            "target_count": 16,
            "template_pm_id": "3393",
            "assignment_confidence": 0.3333333333333333
          },
          "proxy_glb": "samples/electronics_103978/ot_2d_open.glb",
          "mesh_glb": "samples/electronics_103978/ot_2d_mesh_open.glb"
        },
        "ot_proto": {
          "mode": "ot_prototype_bank",
          "actions": [
            {
              "type": "activate_joint",
              "node_id": 0,
              "reason": "prototype_count"
            },
            {
              "type": "prototype_align",
              "node_id": 0,
              "joint_type": "revolute",
              "category": "Printer"
            }
          ],
          "object_json": "samples/electronics_103978/object_ot_proto.json",
          "open_glb": "samples/electronics_103978/ot_proto_mesh_open.glb",
          "scores": {
            "raw": {
              "pred_joint_count": 1,
              "gt_joint_count": 0,
              "joint_count_accuracy": 0.0,
              "joint_count_abs_error": 1,
              "joint_type_accuracy": 0.0,
              "axis_mean_error_deg": 90.0,
              "origin_mean_error": 0.0,
              "axis_finite_rate": 1.0,
              "limit_sanity_rate": 1.0,
              "kinematic_tree_valid": 1.0
            },
            "strict": {
              "strict_pred_joint_count": 1,
              "strict_gt_joint_count": 0,
              "strict_joint_count_abs_error": 1,
              "strict_match_count": 0,
              "strict_joint_precision": 0.0,
              "strict_joint_recall": 0.0,
              "strict_joint_f1": 0.0,
              "strict_type_match_rate": 0.0,
              "strict_axis_mean_error_deg": 90.0,
              "strict_origin_mean_error": 0.0,
              "strict_tree_valid": 1.0,
              "strict_matches": []
            },
            "structure": {
              "root_count": 1,
              "duplicate_ids": 0,
              "dangling_parent_count": 0,
              "self_parent_count": 0,
              "cycle_node_count": 0,
              "child_mismatch_count": 0,
              "tree_valid_proxy": 1,
              "node_count": 1,
              "thin_part_count": 1,
              "invalid_aabb_count": 0,
              "mean_pair_aabb_overlap_ratio": 0.0,
              "max_pair_aabb_overlap_ratio": 0.0,
              "mean_parent_child_aabb_gap": 0.0,
              "max_parent_child_aabb_gap": 0.0,
              "mean_axis_origin_to_child_aabb_distance": 0.0,
              "max_axis_origin_to_child_aabb_distance": 0.0
            }
          },
          "meta": {
            "mode": "ot_prototype_bank",
            "target_count": 1,
            "category": "Printer"
          },
          "proxy_glb": "samples/electronics_103978/ot_proto_open.glb",
          "mesh_glb": "samples/electronics_103978/ot_proto_mesh_open.glb"
        },
        "nonot_hier": {
          "mode": "nonot_hierarchy_repair",
          "actions": [
            {
              "type": "repair_hierarchy"
            }
          ],
          "object_json": "samples/electronics_103978/object_nonot_hier.json",
          "open_glb": "samples/electronics_103978/nonot_hier_mesh_open.glb",
          "scores": {
            "raw": {
              "pred_joint_count": 0,
              "gt_joint_count": 0,
              "joint_count_accuracy": 0.0,
              "joint_count_abs_error": 0,
              "joint_type_accuracy": 0.0,
              "axis_mean_error_deg": 0.0,
              "origin_mean_error": 0.0,
              "axis_finite_rate": 0.0,
              "limit_sanity_rate": 0.0,
              "kinematic_tree_valid": 1.0
            },
            "strict": {
              "strict_pred_joint_count": 0,
              "strict_gt_joint_count": 0,
              "strict_joint_count_abs_error": 0,
              "strict_match_count": 0,
              "strict_joint_precision": 0.0,
              "strict_joint_recall": 0.0,
              "strict_joint_f1": 0.0,
              "strict_type_match_rate": 0.0,
              "strict_axis_mean_error_deg": 0.0,
              "strict_origin_mean_error": 0.0,
              "strict_tree_valid": 1.0,
              "strict_matches": []
            },
            "structure": {
              "root_count": 1,
              "duplicate_ids": 0,
              "dangling_parent_count": 0,
              "self_parent_count": 0,
              "cycle_node_count": 0,
              "child_mismatch_count": 0,
              "tree_valid_proxy": 1,
              "node_count": 1,
              "thin_part_count": 1,
              "invalid_aabb_count": 0,
              "mean_pair_aabb_overlap_ratio": 0.0,
              "max_pair_aabb_overlap_ratio": 0.0,
              "mean_parent_child_aabb_gap": 0.0,
              "max_parent_child_aabb_gap": 0.0,
              "mean_axis_origin_to_child_aabb_distance": 0.0,
              "max_axis_origin_to_child_aabb_distance": 0.0
            }
          },
          "meta": {
            "mode": "nonot_hierarchy_repair"
          },
          "proxy_glb": "samples/electronics_103978/nonot_hier_open.glb",
          "mesh_glb": "samples/electronics_103978/nonot_hier_mesh_open.glb"
        },
        "vlm_seg": {
          "mode": "vlm_segmentation",
          "actions": [
            {
              "type": "activate_joint",
              "node_id": 0,
              "reason": "vlm_segmentation"
            }
          ],
          "object_json": "samples/electronics_103978/object_vlm_seg.json",
          "open_glb": "samples/electronics_103978/vlm_seg_mesh_open.glb",
          "scores": {
            "raw": {
              "pred_joint_count": 1,
              "gt_joint_count": 0,
              "joint_count_accuracy": 0.0,
              "joint_count_abs_error": 1,
              "joint_type_accuracy": 0.0,
              "axis_mean_error_deg": 90.0,
              "origin_mean_error": 0.0,
              "axis_finite_rate": 1.0,
              "limit_sanity_rate": 1.0,
              "kinematic_tree_valid": 1.0
            },
            "strict": {
              "strict_pred_joint_count": 1,
              "strict_gt_joint_count": 0,
              "strict_joint_count_abs_error": 1,
              "strict_match_count": 0,
              "strict_joint_precision": 0.0,
              "strict_joint_recall": 0.0,
              "strict_joint_f1": 0.0,
              "strict_type_match_rate": 0.0,
              "strict_axis_mean_error_deg": 90.0,
              "strict_origin_mean_error": 0.0,
              "strict_tree_valid": 1.0,
              "strict_matches": []
            },
            "structure": {
              "root_count": 1,
              "duplicate_ids": 0,
              "dangling_parent_count": 0,
              "self_parent_count": 0,
              "cycle_node_count": 0,
              "child_mismatch_count": 0,
              "tree_valid_proxy": 1,
              "node_count": 1,
              "thin_part_count": 1,
              "invalid_aabb_count": 0,
              "mean_pair_aabb_overlap_ratio": 0.0,
              "max_pair_aabb_overlap_ratio": 0.0,
              "mean_parent_child_aabb_gap": 0.0,
              "max_parent_child_aabb_gap": 0.0,
              "mean_axis_origin_to_child_aabb_distance": 0.0,
              "max_axis_origin_to_child_aabb_distance": 0.0
            }
          },
          "meta": {
            "mode": "vlm_segmentation",
            "caption_category": "Printer",
            "caption": "3d model of a box"
          },
          "proxy_glb": "samples/electronics_103978/vlm_seg_open.glb",
          "mesh_glb": "samples/electronics_103978/vlm_seg_mesh_open.glb"
        },
        "vlm_joint": {
          "mode": "vlm_joint",
          "actions": [
            {
              "type": "activate_joint",
              "node_id": 0,
              "reason": "vlm_joint_count"
            },
            {
              "type": "vlm_joint_retype",
              "node_id": 0,
              "target_type": "revolute"
            }
          ],
          "object_json": "samples/electronics_103978/object_vlm_joint.json",
          "open_glb": "samples/electronics_103978/vlm_joint_mesh_open.glb",
          "scores": {
            "raw": {
              "pred_joint_count": 1,
              "gt_joint_count": 0,
              "joint_count_accuracy": 0.0,
              "joint_count_abs_error": 1,
              "joint_type_accuracy": 0.0,
              "axis_mean_error_deg": 90.0,
              "origin_mean_error": 0.0,
              "axis_finite_rate": 1.0,
              "limit_sanity_rate": 1.0,
              "kinematic_tree_valid": 1.0
            },
            "strict": {
              "strict_pred_joint_count": 1,
              "strict_gt_joint_count": 0,
              "strict_joint_count_abs_error": 1,
              "strict_match_count": 0,
              "strict_joint_precision": 0.0,
              "strict_joint_recall": 0.0,
              "strict_joint_f1": 0.0,
              "strict_type_match_rate": 0.0,
              "strict_axis_mean_error_deg": 90.0,
              "strict_origin_mean_error": 0.0,
              "strict_tree_valid": 1.0,
              "strict_matches": []
            },
            "structure": {
              "root_count": 1,
              "duplicate_ids": 0,
              "dangling_parent_count": 0,
              "self_parent_count": 0,
              "cycle_node_count": 0,
              "child_mismatch_count": 0,
              "tree_valid_proxy": 1,
              "node_count": 1,
              "thin_part_count": 1,
              "invalid_aabb_count": 0,
              "mean_pair_aabb_overlap_ratio": 0.0,
              "max_pair_aabb_overlap_ratio": 0.0,
              "mean_parent_child_aabb_gap": 0.0,
              "max_parent_child_aabb_gap": 0.0,
              "mean_axis_origin_to_child_aabb_distance": 0.0,
              "max_axis_origin_to_child_aabb_distance": 0.0
            }
          },
          "meta": {
            "mode": "vlm_joint",
            "caption_category": "Printer",
            "caption": "3d model of a box"
          },
          "proxy_glb": "samples/electronics_103978/vlm_joint_open.glb",
          "mesh_glb": "samples/electronics_103978/vlm_joint_mesh_open.glb"
        },
        "vlm_struct": {
          "mode": "vlm_structure",
          "actions": [
            {
              "type": "repair_hierarchy"
            }
          ],
          "object_json": "samples/electronics_103978/object_vlm_struct.json",
          "open_glb": "samples/electronics_103978/vlm_struct_mesh_open.glb",
          "scores": {
            "raw": {
              "pred_joint_count": 0,
              "gt_joint_count": 0,
              "joint_count_accuracy": 0.0,
              "joint_count_abs_error": 0,
              "joint_type_accuracy": 0.0,
              "axis_mean_error_deg": 0.0,
              "origin_mean_error": 0.0,
              "axis_finite_rate": 0.0,
              "limit_sanity_rate": 0.0,
              "kinematic_tree_valid": 1.0
            },
            "strict": {
              "strict_pred_joint_count": 0,
              "strict_gt_joint_count": 0,
              "strict_joint_count_abs_error": 0,
              "strict_match_count": 0,
              "strict_joint_precision": 0.0,
              "strict_joint_recall": 0.0,
              "strict_joint_f1": 0.0,
              "strict_type_match_rate": 0.0,
              "strict_axis_mean_error_deg": 0.0,
              "strict_origin_mean_error": 0.0,
              "strict_tree_valid": 1.0,
              "strict_matches": []
            },
            "structure": {
              "root_count": 1,
              "duplicate_ids": 0,
              "dangling_parent_count": 0,
              "self_parent_count": 0,
              "cycle_node_count": 0,
              "child_mismatch_count": 0,
              "tree_valid_proxy": 1,
              "node_count": 1,
              "thin_part_count": 1,
              "invalid_aabb_count": 0,
              "mean_pair_aabb_overlap_ratio": 0.0,
              "max_pair_aabb_overlap_ratio": 0.0,
              "mean_parent_child_aabb_gap": 0.0,
              "max_parent_child_aabb_gap": 0.0,
              "mean_axis_origin_to_child_aabb_distance": 0.0,
              "max_axis_origin_to_child_aabb_distance": 0.0
            }
          },
          "meta": {
            "mode": "vlm_structure",
            "caption_category": "Printer",
            "caption": "3d model of a box"
          },
          "proxy_glb": "samples/electronics_103978/vlm_struct_open.glb",
          "mesh_glb": "samples/electronics_103978/vlm_struct_mesh_open.glb"
        }
      },
      "reference": {
        "open_glb": "samples/electronics_103978/reference_parts.glb"
      },
      "input": {
        "processed": "samples/electronics_103978/processed.png",
        "mask": "samples/electronics_103978/mask.png"
      }
    },
    {
      "sample": "small_appliances_103043",
      "dataset_category": "small_appliances",
      "object_category": "CoffeeMachine",
      "pm_id": "103043",
      "caption": "digital art selected for the #",
      "profile": {
        "caption": "digital art selected for the #",
        "category": "CoffeeMachine",
        "joint_type": "revolute",
        "structure_mode": "doors",
        "count_bias": 0,
        "caption_useful": false
      },
      "assets": {
        "raw_open": "samples/small_appliances_103043/raw_open.glb",
        "pact_mesh": "samples/small_appliances_103043/pact_generated_parts.glb",
        "reference_mesh": "samples/small_appliances_103043/reference_parts.glb",
        "processed": "samples/small_appliances_103043/processed.png",
        "mask": "samples/small_appliances_103043/mask.png"
      },
      "raw": {
        "object_json": "samples/small_appliances_103043/object_raw.json",
        "open_glb": "samples/small_appliances_103043/raw_open.glb",
        "scores": {
          "raw": {
            "pred_joint_count": 1,
            "gt_joint_count": 0,
            "joint_count_accuracy": 0.0,
            "joint_count_abs_error": 1,
            "joint_type_accuracy": 0.0,
            "axis_mean_error_deg": 90.0,
            "origin_mean_error": 0.0,
            "axis_finite_rate": 1.0,
            "limit_sanity_rate": 1.0,
            "kinematic_tree_valid": 1.0
          },
          "strict": {
            "strict_pred_joint_count": 1,
            "strict_gt_joint_count": 0,
            "strict_joint_count_abs_error": 1,
            "strict_match_count": 0,
            "strict_joint_precision": 0.0,
            "strict_joint_recall": 0.0,
            "strict_joint_f1": 0.0,
            "strict_type_match_rate": 0.0,
            "strict_axis_mean_error_deg": 90.0,
            "strict_origin_mean_error": 0.0,
            "strict_tree_valid": 1.0,
            "strict_matches": []
          },
          "structure": {
            "root_count": 1,
            "duplicate_ids": 0,
            "dangling_parent_count": 0,
            "self_parent_count": 0,
            "cycle_node_count": 0,
            "child_mismatch_count": 0,
            "tree_valid_proxy": 1,
            "node_count": 2,
            "thin_part_count": 2,
            "invalid_aabb_count": 0,
            "mean_pair_aabb_overlap_ratio": 0.9127458672250551,
            "max_pair_aabb_overlap_ratio": 0.9127458672250551,
            "mean_parent_child_aabb_gap": 0.0,
            "max_parent_child_aabb_gap": 0.0,
            "mean_axis_origin_to_child_aabb_distance": 0.0,
            "max_axis_origin_to_child_aabb_distance": 0.0
          }
        }
      },
      "pact_mesh": {
        "open_glb": "samples/small_appliances_103043/pact_generated_parts.glb"
      },
      "variants": {
        "ot_2d": {
          "mode": "ot_2d_mask_transport",
          "actions": [
            {
              "type": "activate_joint",
              "node_id": 0,
              "reason": "mask_transport_count"
            }
          ],
          "object_json": "samples/small_appliances_103043/object_ot_2d.json",
          "open_glb": "samples/small_appliances_103043/ot_2d_mesh_open.glb",
          "scores": {
            "raw": {
              "pred_joint_count": 2,
              "gt_joint_count": 0,
              "joint_count_accuracy": 0.0,
              "joint_count_abs_error": 2,
              "joint_type_accuracy": 0.0,
              "axis_mean_error_deg": 90.0,
              "origin_mean_error": 0.0,
              "axis_finite_rate": 1.0,
              "limit_sanity_rate": 1.0,
              "kinematic_tree_valid": 1.0
            },
            "strict": {
              "strict_pred_joint_count": 2,
              "strict_gt_joint_count": 0,
              "strict_joint_count_abs_error": 2,
              "strict_match_count": 0,
              "strict_joint_precision": 0.0,
              "strict_joint_recall": 0.0,
              "strict_joint_f1": 0.0,
              "strict_type_match_rate": 0.0,
              "strict_axis_mean_error_deg": 90.0,
              "strict_origin_mean_error": 0.0,
              "strict_tree_valid": 1.0,
              "strict_matches": []
            },
            "structure": {
              "root_count": 1,
              "duplicate_ids": 0,
              "dangling_parent_count": 0,
              "self_parent_count": 0,
              "cycle_node_count": 0,
              "child_mismatch_count": 0,
              "tree_valid_proxy": 1,
              "node_count": 2,
              "thin_part_count": 2,
              "invalid_aabb_count": 0,
              "mean_pair_aabb_overlap_ratio": 0.9127458672250551,
              "max_pair_aabb_overlap_ratio": 0.9127458672250551,
              "mean_parent_child_aabb_gap": 0.0,
              "max_parent_child_aabb_gap": 0.0,
              "mean_axis_origin_to_child_aabb_distance": 0.0,
              "max_axis_origin_to_child_aabb_distance": 0.0
            }
          },
          "meta": {
            "mode": "ot_2d_mask_transport",
            "target_count": 12,
            "template_pm_id": "7304",
            "assignment_confidence": 0.6654852311197164
          },
          "proxy_glb": "samples/small_appliances_103043/ot_2d_open.glb",
          "mesh_glb": "samples/small_appliances_103043/ot_2d_mesh_open.glb"
        },
        "ot_proto": {
          "mode": "ot_prototype_bank",
          "actions": [
            {
              "type": "prototype_align",
              "node_id": 1,
              "joint_type": "revolute",
              "category": "CoffeeMachine"
            }
          ],
          "object_json": "samples/small_appliances_103043/object_ot_proto.json",
          "open_glb": "samples/small_appliances_103043/ot_proto_mesh_open.glb",
          "scores": {
            "raw": {
              "pred_joint_count": 1,
              "gt_joint_count": 0,
              "joint_count_accuracy": 0.0,
              "joint_count_abs_error": 1,
              "joint_type_accuracy": 0.0,
              "axis_mean_error_deg": 90.0,
              "origin_mean_error": 0.0,
              "axis_finite_rate": 1.0,
              "limit_sanity_rate": 1.0,
              "kinematic_tree_valid": 1.0
            },
            "strict": {
              "strict_pred_joint_count": 1,
              "strict_gt_joint_count": 0,
              "strict_joint_count_abs_error": 1,
              "strict_match_count": 0,
              "strict_joint_precision": 0.0,
              "strict_joint_recall": 0.0,
              "strict_joint_f1": 0.0,
              "strict_type_match_rate": 0.0,
              "strict_axis_mean_error_deg": 90.0,
              "strict_origin_mean_error": 0.0,
              "strict_tree_valid": 1.0,
              "strict_matches": []
            },
            "structure": {
              "root_count": 1,
              "duplicate_ids": 0,
              "dangling_parent_count": 0,
              "self_parent_count": 0,
              "cycle_node_count": 0,
              "child_mismatch_count": 0,
              "tree_valid_proxy": 1,
              "node_count": 2,
              "thin_part_count": 2,
              "invalid_aabb_count": 0,
              "mean_pair_aabb_overlap_ratio": 0.9127458672250551,
              "max_pair_aabb_overlap_ratio": 0.9127458672250551,
              "mean_parent_child_aabb_gap": 0.0,
              "max_parent_child_aabb_gap": 0.0,
              "mean_axis_origin_to_child_aabb_distance": 0.0,
              "max_axis_origin_to_child_aabb_distance": 0.0
            }
          },
          "meta": {
            "mode": "ot_prototype_bank",
            "target_count": 1,
            "category": "CoffeeMachine"
          },
          "proxy_glb": "samples/small_appliances_103043/ot_proto_open.glb",
          "mesh_glb": "samples/small_appliances_103043/ot_proto_mesh_open.glb"
        },
        "nonot_hier": {
          "mode": "nonot_hierarchy_repair",
          "actions": [
            {
              "type": "repair_hierarchy"
            }
          ],
          "object_json": "samples/small_appliances_103043/object_nonot_hier.json",
          "open_glb": "samples/small_appliances_103043/nonot_hier_mesh_open.glb",
          "scores": {
            "raw": {
              "pred_joint_count": 1,
              "gt_joint_count": 0,
              "joint_count_accuracy": 0.0,
              "joint_count_abs_error": 1,
              "joint_type_accuracy": 0.0,
              "axis_mean_error_deg": 90.0,
              "origin_mean_error": 0.0,
              "axis_finite_rate": 1.0,
              "limit_sanity_rate": 1.0,
              "kinematic_tree_valid": 1.0
            },
            "strict": {
              "strict_pred_joint_count": 1,
              "strict_gt_joint_count": 0,
              "strict_joint_count_abs_error": 1,
              "strict_match_count": 0,
              "strict_joint_precision": 0.0,
              "strict_joint_recall": 0.0,
              "strict_joint_f1": 0.0,
              "strict_type_match_rate": 0.0,
              "strict_axis_mean_error_deg": 90.0,
              "strict_origin_mean_error": 0.0,
              "strict_tree_valid": 1.0,
              "strict_matches": []
            },
            "structure": {
              "root_count": 1,
              "duplicate_ids": 0,
              "dangling_parent_count": 0,
              "self_parent_count": 0,
              "cycle_node_count": 0,
              "child_mismatch_count": 0,
              "tree_valid_proxy": 1,
              "node_count": 2,
              "thin_part_count": 2,
              "invalid_aabb_count": 0,
              "mean_pair_aabb_overlap_ratio": 0.9127458672250551,
              "max_pair_aabb_overlap_ratio": 0.9127458672250551,
              "mean_parent_child_aabb_gap": 0.0,
              "max_parent_child_aabb_gap": 0.0,
              "mean_axis_origin_to_child_aabb_distance": 0.030552439391613007,
              "max_axis_origin_to_child_aabb_distance": 0.030552439391613007
            }
          },
          "meta": {
            "mode": "nonot_hierarchy_repair"
          },
          "proxy_glb": "samples/small_appliances_103043/nonot_hier_open.glb",
          "mesh_glb": "samples/small_appliances_103043/nonot_hier_mesh_open.glb"
        },
        "vlm_seg": {
          "mode": "vlm_segmentation",
          "actions": [
            {
              "type": "activate_joint",
              "node_id": 0,
              "reason": "vlm_segmentation"
            }
          ],
          "object_json": "samples/small_appliances_103043/object_vlm_seg.json",
          "open_glb": "samples/small_appliances_103043/vlm_seg_mesh_open.glb",
          "scores": {
            "raw": {
              "pred_joint_count": 2,
              "gt_joint_count": 0,
              "joint_count_accuracy": 0.0,
              "joint_count_abs_error": 2,
              "joint_type_accuracy": 0.0,
              "axis_mean_error_deg": 90.0,
              "origin_mean_error": 0.0,
              "axis_finite_rate": 1.0,
              "limit_sanity_rate": 1.0,
              "kinematic_tree_valid": 1.0
            },
            "strict": {
              "strict_pred_joint_count": 2,
              "strict_gt_joint_count": 0,
              "strict_joint_count_abs_error": 2,
              "strict_match_count": 0,
              "strict_joint_precision": 0.0,
              "strict_joint_recall": 0.0,
              "strict_joint_f1": 0.0,
              "strict_type_match_rate": 0.0,
              "strict_axis_mean_error_deg": 90.0,
              "strict_origin_mean_error": 0.0,
              "strict_tree_valid": 1.0,
              "strict_matches": []
            },
            "structure": {
              "root_count": 1,
              "duplicate_ids": 0,
              "dangling_parent_count": 0,
              "self_parent_count": 0,
              "cycle_node_count": 0,
              "child_mismatch_count": 0,
              "tree_valid_proxy": 1,
              "node_count": 2,
              "thin_part_count": 2,
              "invalid_aabb_count": 0,
              "mean_pair_aabb_overlap_ratio": 0.9127458672250551,
              "max_pair_aabb_overlap_ratio": 0.9127458672250551,
              "mean_parent_child_aabb_gap": 0.0,
              "max_parent_child_aabb_gap": 0.0,
              "mean_axis_origin_to_child_aabb_distance": 0.0,
              "max_axis_origin_to_child_aabb_distance": 0.0
            }
          },
          "meta": {
            "mode": "vlm_segmentation",
            "caption_category": "CoffeeMachine",
            "caption": "digital art selected for the #"
          },
          "proxy_glb": "samples/small_appliances_103043/vlm_seg_open.glb",
          "mesh_glb": "samples/small_appliances_103043/vlm_seg_mesh_open.glb"
        },
        "vlm_joint": {
          "mode": "vlm_joint",
          "actions": [
            {
              "type": "vlm_joint_retype",
              "node_id": 1,
              "target_type": "revolute"
            }
          ],
          "object_json": "samples/small_appliances_103043/object_vlm_joint.json",
          "open_glb": "samples/small_appliances_103043/vlm_joint_mesh_open.glb",
          "scores": {
            "raw": {
              "pred_joint_count": 1,
              "gt_joint_count": 0,
              "joint_count_accuracy": 0.0,
              "joint_count_abs_error": 1,
              "joint_type_accuracy": 0.0,
              "axis_mean_error_deg": 90.0,
              "origin_mean_error": 0.0,
              "axis_finite_rate": 1.0,
              "limit_sanity_rate": 1.0,
              "kinematic_tree_valid": 1.0
            },
            "strict": {
              "strict_pred_joint_count": 1,
              "strict_gt_joint_count": 0,
              "strict_joint_count_abs_error": 1,
              "strict_match_count": 0,
              "strict_joint_precision": 0.0,
              "strict_joint_recall": 0.0,
              "strict_joint_f1": 0.0,
              "strict_type_match_rate": 0.0,
              "strict_axis_mean_error_deg": 90.0,
              "strict_origin_mean_error": 0.0,
              "strict_tree_valid": 1.0,
              "strict_matches": []
            },
            "structure": {
              "root_count": 1,
              "duplicate_ids": 0,
              "dangling_parent_count": 0,
              "self_parent_count": 0,
              "cycle_node_count": 0,
              "child_mismatch_count": 0,
              "tree_valid_proxy": 1,
              "node_count": 2,
              "thin_part_count": 2,
              "invalid_aabb_count": 0,
              "mean_pair_aabb_overlap_ratio": 0.9127458672250551,
              "max_pair_aabb_overlap_ratio": 0.9127458672250551,
              "mean_parent_child_aabb_gap": 0.0,
              "max_parent_child_aabb_gap": 0.0,
              "mean_axis_origin_to_child_aabb_distance": 0.0,
              "max_axis_origin_to_child_aabb_distance": 0.0
            }
          },
          "meta": {
            "mode": "vlm_joint",
            "caption_category": "CoffeeMachine",
            "caption": "digital art selected for the #"
          },
          "proxy_glb": "samples/small_appliances_103043/vlm_joint_open.glb",
          "mesh_glb": "samples/small_appliances_103043/vlm_joint_mesh_open.glb"
        },
        "vlm_struct": {
          "mode": "vlm_structure",
          "actions": [
            {
              "type": "repair_hierarchy"
            }
          ],
          "object_json": "samples/small_appliances_103043/object_vlm_struct.json",
          "open_glb": "samples/small_appliances_103043/vlm_struct_mesh_open.glb",
          "scores": {
            "raw": {
              "pred_joint_count": 1,
              "gt_joint_count": 0,
              "joint_count_accuracy": 0.0,
              "joint_count_abs_error": 1,
              "joint_type_accuracy": 0.0,
              "axis_mean_error_deg": 90.0,
              "origin_mean_error": 0.0,
              "axis_finite_rate": 1.0,
              "limit_sanity_rate": 1.0,
              "kinematic_tree_valid": 1.0
            },
            "strict": {
              "strict_pred_joint_count": 1,
              "strict_gt_joint_count": 0,
              "strict_joint_count_abs_error": 1,
              "strict_match_count": 0,
              "strict_joint_precision": 0.0,
              "strict_joint_recall": 0.0,
              "strict_joint_f1": 0.0,
              "strict_type_match_rate": 0.0,
              "strict_axis_mean_error_deg": 90.0,
              "strict_origin_mean_error": 0.0,
              "strict_tree_valid": 1.0,
              "strict_matches": []
            },
            "structure": {
              "root_count": 1,
              "duplicate_ids": 0,
              "dangling_parent_count": 0,
              "self_parent_count": 0,
              "cycle_node_count": 0,
              "child_mismatch_count": 0,
              "tree_valid_proxy": 1,
              "node_count": 2,
              "thin_part_count": 2,
              "invalid_aabb_count": 0,
              "mean_pair_aabb_overlap_ratio": 0.9127458672250551,
              "max_pair_aabb_overlap_ratio": 0.9127458672250551,
              "mean_parent_child_aabb_gap": 0.0,
              "max_parent_child_aabb_gap": 0.0,
              "mean_axis_origin_to_child_aabb_distance": 0.030552439391613007,
              "max_axis_origin_to_child_aabb_distance": 0.030552439391613007
            }
          },
          "meta": {
            "mode": "vlm_structure",
            "caption_category": "CoffeeMachine",
            "caption": "digital art selected for the #"
          },
          "proxy_glb": "samples/small_appliances_103043/vlm_struct_open.glb",
          "mesh_glb": "samples/small_appliances_103043/vlm_struct_mesh_open.glb"
        }
      },
      "reference": {
        "open_glb": "samples/small_appliances_103043/reference_parts.glb"
      },
      "input": {
        "processed": "samples/small_appliances_103043/processed.png",
        "mask": "samples/small_appliances_103043/mask.png"
      }
    },
    {
      "sample": "electronics_104020",
      "dataset_category": "electronics",
      "object_category": "Printer",
      "pm_id": "104020",
      "caption": "digital art selected for the #",
      "profile": {
        "caption": "digital art selected for the #",
        "category": "Printer",
        "joint_type": "revolute",
        "structure_mode": "doors",
        "count_bias": 0,
        "caption_useful": false
      },
      "assets": {
        "raw_open": "samples/electronics_104020/raw_open.glb",
        "pact_mesh": "samples/electronics_104020/pact_generated_parts.glb",
        "reference_mesh": "samples/electronics_104020/reference_parts.glb",
        "processed": "samples/electronics_104020/processed.png",
        "mask": "samples/electronics_104020/mask.png"
      },
      "raw": {
        "object_json": "samples/electronics_104020/object_raw.json",
        "open_glb": "samples/electronics_104020/raw_open.glb",
        "scores": {
          "raw": {
            "pred_joint_count": 0,
            "gt_joint_count": 0,
            "joint_count_accuracy": 0.0,
            "joint_count_abs_error": 0,
            "joint_type_accuracy": 0.0,
            "axis_mean_error_deg": 0.0,
            "origin_mean_error": 0.0,
            "axis_finite_rate": 0.0,
            "limit_sanity_rate": 0.0,
            "kinematic_tree_valid": 1.0
          },
          "strict": {
            "strict_pred_joint_count": 0,
            "strict_gt_joint_count": 0,
            "strict_joint_count_abs_error": 0,
            "strict_match_count": 0,
            "strict_joint_precision": 0.0,
            "strict_joint_recall": 0.0,
            "strict_joint_f1": 0.0,
            "strict_type_match_rate": 0.0,
            "strict_axis_mean_error_deg": 0.0,
            "strict_origin_mean_error": 0.0,
            "strict_tree_valid": 1.0,
            "strict_matches": []
          },
          "structure": {
            "root_count": 1,
            "duplicate_ids": 0,
            "dangling_parent_count": 0,
            "self_parent_count": 0,
            "cycle_node_count": 0,
            "child_mismatch_count": 0,
            "tree_valid_proxy": 1,
            "node_count": 1,
            "thin_part_count": 1,
            "invalid_aabb_count": 0,
            "mean_pair_aabb_overlap_ratio": 0.0,
            "max_pair_aabb_overlap_ratio": 0.0,
            "mean_parent_child_aabb_gap": 0.0,
            "max_parent_child_aabb_gap": 0.0,
            "mean_axis_origin_to_child_aabb_distance": 0.0,
            "max_axis_origin_to_child_aabb_distance": 0.0
          }
        }
      },
      "pact_mesh": {
        "open_glb": "samples/electronics_104020/pact_generated_parts.glb"
      },
      "variants": {
        "ot_2d": {
          "mode": "ot_2d_mask_transport",
          "actions": [
            {
              "type": "activate_joint",
              "node_id": 0,
              "reason": "mask_transport_count"
            }
          ],
          "object_json": "samples/electronics_104020/object_ot_2d.json",
          "open_glb": "samples/electronics_104020/ot_2d_mesh_open.glb",
          "scores": {
            "raw": {
              "pred_joint_count": 1,
              "gt_joint_count": 0,
              "joint_count_accuracy": 0.0,
              "joint_count_abs_error": 1,
              "joint_type_accuracy": 0.0,
              "axis_mean_error_deg": 90.0,
              "origin_mean_error": 0.0,
              "axis_finite_rate": 1.0,
              "limit_sanity_rate": 1.0,
              "kinematic_tree_valid": 1.0
            },
            "strict": {
              "strict_pred_joint_count": 1,
              "strict_gt_joint_count": 0,
              "strict_joint_count_abs_error": 1,
              "strict_match_count": 0,
              "strict_joint_precision": 0.0,
              "strict_joint_recall": 0.0,
              "strict_joint_f1": 0.0,
              "strict_type_match_rate": 0.0,
              "strict_axis_mean_error_deg": 90.0,
              "strict_origin_mean_error": 0.0,
              "strict_tree_valid": 1.0,
              "strict_matches": []
            },
            "structure": {
              "root_count": 1,
              "duplicate_ids": 0,
              "dangling_parent_count": 0,
              "self_parent_count": 0,
              "cycle_node_count": 0,
              "child_mismatch_count": 0,
              "tree_valid_proxy": 1,
              "node_count": 1,
              "thin_part_count": 1,
              "invalid_aabb_count": 0,
              "mean_pair_aabb_overlap_ratio": 0.0,
              "max_pair_aabb_overlap_ratio": 0.0,
              "mean_parent_child_aabb_gap": 0.0,
              "max_parent_child_aabb_gap": 0.0,
              "mean_axis_origin_to_child_aabb_distance": 0.0,
              "max_axis_origin_to_child_aabb_distance": 0.0
            }
          },
          "meta": {
            "mode": "ot_2d_mask_transport",
            "target_count": 9,
            "template_pm_id": "3393",
            "assignment_confidence": 0.3333333333333333
          },
          "proxy_glb": "samples/electronics_104020/ot_2d_open.glb",
          "mesh_glb": "samples/electronics_104020/ot_2d_mesh_open.glb"
        },
        "ot_proto": {
          "mode": "ot_prototype_bank",
          "actions": [
            {
              "type": "activate_joint",
              "node_id": 0,
              "reason": "prototype_count"
            },
            {
              "type": "prototype_align",
              "node_id": 0,
              "joint_type": "revolute",
              "category": "Printer"
            }
          ],
          "object_json": "samples/electronics_104020/object_ot_proto.json",
          "open_glb": "samples/electronics_104020/ot_proto_mesh_open.glb",
          "scores": {
            "raw": {
              "pred_joint_count": 1,
              "gt_joint_count": 0,
              "joint_count_accuracy": 0.0,
              "joint_count_abs_error": 1,
              "joint_type_accuracy": 0.0,
              "axis_mean_error_deg": 90.0,
              "origin_mean_error": 0.0,
              "axis_finite_rate": 1.0,
              "limit_sanity_rate": 1.0,
              "kinematic_tree_valid": 1.0
            },
            "strict": {
              "strict_pred_joint_count": 1,
              "strict_gt_joint_count": 0,
              "strict_joint_count_abs_error": 1,
              "strict_match_count": 0,
              "strict_joint_precision": 0.0,
              "strict_joint_recall": 0.0,
              "strict_joint_f1": 0.0,
              "strict_type_match_rate": 0.0,
              "strict_axis_mean_error_deg": 90.0,
              "strict_origin_mean_error": 0.0,
              "strict_tree_valid": 1.0,
              "strict_matches": []
            },
            "structure": {
              "root_count": 1,
              "duplicate_ids": 0,
              "dangling_parent_count": 0,
              "self_parent_count": 0,
              "cycle_node_count": 0,
              "child_mismatch_count": 0,
              "tree_valid_proxy": 1,
              "node_count": 1,
              "thin_part_count": 1,
              "invalid_aabb_count": 0,
              "mean_pair_aabb_overlap_ratio": 0.0,
              "max_pair_aabb_overlap_ratio": 0.0,
              "mean_parent_child_aabb_gap": 0.0,
              "max_parent_child_aabb_gap": 0.0,
              "mean_axis_origin_to_child_aabb_distance": 0.0,
              "max_axis_origin_to_child_aabb_distance": 0.0
            }
          },
          "meta": {
            "mode": "ot_prototype_bank",
            "target_count": 1,
            "category": "Printer"
          },
          "proxy_glb": "samples/electronics_104020/ot_proto_open.glb",
          "mesh_glb": "samples/electronics_104020/ot_proto_mesh_open.glb"
        },
        "nonot_hier": {
          "mode": "nonot_hierarchy_repair",
          "actions": [
            {
              "type": "repair_hierarchy"
            }
          ],
          "object_json": "samples/electronics_104020/object_nonot_hier.json",
          "open_glb": "samples/electronics_104020/nonot_hier_mesh_open.glb",
          "scores": {
            "raw": {
              "pred_joint_count": 0,
              "gt_joint_count": 0,
              "joint_count_accuracy": 0.0,
              "joint_count_abs_error": 0,
              "joint_type_accuracy": 0.0,
              "axis_mean_error_deg": 0.0,
              "origin_mean_error": 0.0,
              "axis_finite_rate": 0.0,
              "limit_sanity_rate": 0.0,
              "kinematic_tree_valid": 1.0
            },
            "strict": {
              "strict_pred_joint_count": 0,
              "strict_gt_joint_count": 0,
              "strict_joint_count_abs_error": 0,
              "strict_match_count": 0,
              "strict_joint_precision": 0.0,
              "strict_joint_recall": 0.0,
              "strict_joint_f1": 0.0,
              "strict_type_match_rate": 0.0,
              "strict_axis_mean_error_deg": 0.0,
              "strict_origin_mean_error": 0.0,
              "strict_tree_valid": 1.0,
              "strict_matches": []
            },
            "structure": {
              "root_count": 1,
              "duplicate_ids": 0,
              "dangling_parent_count": 0,
              "self_parent_count": 0,
              "cycle_node_count": 0,
              "child_mismatch_count": 0,
              "tree_valid_proxy": 1,
              "node_count": 1,
              "thin_part_count": 1,
              "invalid_aabb_count": 0,
              "mean_pair_aabb_overlap_ratio": 0.0,
              "max_pair_aabb_overlap_ratio": 0.0,
              "mean_parent_child_aabb_gap": 0.0,
              "max_parent_child_aabb_gap": 0.0,
              "mean_axis_origin_to_child_aabb_distance": 0.0,
              "max_axis_origin_to_child_aabb_distance": 0.0
            }
          },
          "meta": {
            "mode": "nonot_hierarchy_repair"
          },
          "proxy_glb": "samples/electronics_104020/nonot_hier_open.glb",
          "mesh_glb": "samples/electronics_104020/nonot_hier_mesh_open.glb"
        },
        "vlm_seg": {
          "mode": "vlm_segmentation",
          "actions": [
            {
              "type": "activate_joint",
              "node_id": 0,
              "reason": "vlm_segmentation"
            }
          ],
          "object_json": "samples/electronics_104020/object_vlm_seg.json",
          "open_glb": "samples/electronics_104020/vlm_seg_mesh_open.glb",
          "scores": {
            "raw": {
              "pred_joint_count": 1,
              "gt_joint_count": 0,
              "joint_count_accuracy": 0.0,
              "joint_count_abs_error": 1,
              "joint_type_accuracy": 0.0,
              "axis_mean_error_deg": 90.0,
              "origin_mean_error": 0.0,
              "axis_finite_rate": 1.0,
              "limit_sanity_rate": 1.0,
              "kinematic_tree_valid": 1.0
            },
            "strict": {
              "strict_pred_joint_count": 1,
              "strict_gt_joint_count": 0,
              "strict_joint_count_abs_error": 1,
              "strict_match_count": 0,
              "strict_joint_precision": 0.0,
              "strict_joint_recall": 0.0,
              "strict_joint_f1": 0.0,
              "strict_type_match_rate": 0.0,
              "strict_axis_mean_error_deg": 90.0,
              "strict_origin_mean_error": 0.0,
              "strict_tree_valid": 1.0,
              "strict_matches": []
            },
            "structure": {
              "root_count": 1,
              "duplicate_ids": 0,
              "dangling_parent_count": 0,
              "self_parent_count": 0,
              "cycle_node_count": 0,
              "child_mismatch_count": 0,
              "tree_valid_proxy": 1,
              "node_count": 1,
              "thin_part_count": 1,
              "invalid_aabb_count": 0,
              "mean_pair_aabb_overlap_ratio": 0.0,
              "max_pair_aabb_overlap_ratio": 0.0,
              "mean_parent_child_aabb_gap": 0.0,
              "max_parent_child_aabb_gap": 0.0,
              "mean_axis_origin_to_child_aabb_distance": 0.0,
              "max_axis_origin_to_child_aabb_distance": 0.0
            }
          },
          "meta": {
            "mode": "vlm_segmentation",
            "caption_category": "Printer",
            "caption": "digital art selected for the #"
          },
          "proxy_glb": "samples/electronics_104020/vlm_seg_open.glb",
          "mesh_glb": "samples/electronics_104020/vlm_seg_mesh_open.glb"
        },
        "vlm_joint": {
          "mode": "vlm_joint",
          "actions": [
            {
              "type": "activate_joint",
              "node_id": 0,
              "reason": "vlm_joint_count"
            },
            {
              "type": "vlm_joint_retype",
              "node_id": 0,
              "target_type": "revolute"
            }
          ],
          "object_json": "samples/electronics_104020/object_vlm_joint.json",
          "open_glb": "samples/electronics_104020/vlm_joint_mesh_open.glb",
          "scores": {
            "raw": {
              "pred_joint_count": 1,
              "gt_joint_count": 0,
              "joint_count_accuracy": 0.0,
              "joint_count_abs_error": 1,
              "joint_type_accuracy": 0.0,
              "axis_mean_error_deg": 90.0,
              "origin_mean_error": 0.0,
              "axis_finite_rate": 1.0,
              "limit_sanity_rate": 1.0,
              "kinematic_tree_valid": 1.0
            },
            "strict": {
              "strict_pred_joint_count": 1,
              "strict_gt_joint_count": 0,
              "strict_joint_count_abs_error": 1,
              "strict_match_count": 0,
              "strict_joint_precision": 0.0,
              "strict_joint_recall": 0.0,
              "strict_joint_f1": 0.0,
              "strict_type_match_rate": 0.0,
              "strict_axis_mean_error_deg": 90.0,
              "strict_origin_mean_error": 0.0,
              "strict_tree_valid": 1.0,
              "strict_matches": []
            },
            "structure": {
              "root_count": 1,
              "duplicate_ids": 0,
              "dangling_parent_count": 0,
              "self_parent_count": 0,
              "cycle_node_count": 0,
              "child_mismatch_count": 0,
              "tree_valid_proxy": 1,
              "node_count": 1,
              "thin_part_count": 1,
              "invalid_aabb_count": 0,
              "mean_pair_aabb_overlap_ratio": 0.0,
              "max_pair_aabb_overlap_ratio": 0.0,
              "mean_parent_child_aabb_gap": 0.0,
              "max_parent_child_aabb_gap": 0.0,
              "mean_axis_origin_to_child_aabb_distance": 0.0,
              "max_axis_origin_to_child_aabb_distance": 0.0
            }
          },
          "meta": {
            "mode": "vlm_joint",
            "caption_category": "Printer",
            "caption": "digital art selected for the #"
          },
          "proxy_glb": "samples/electronics_104020/vlm_joint_open.glb",
          "mesh_glb": "samples/electronics_104020/vlm_joint_mesh_open.glb"
        },
        "vlm_struct": {
          "mode": "vlm_structure",
          "actions": [
            {
              "type": "repair_hierarchy"
            }
          ],
          "object_json": "samples/electronics_104020/object_vlm_struct.json",
          "open_glb": "samples/electronics_104020/vlm_struct_mesh_open.glb",
          "scores": {
            "raw": {
              "pred_joint_count": 0,
              "gt_joint_count": 0,
              "joint_count_accuracy": 0.0,
              "joint_count_abs_error": 0,
              "joint_type_accuracy": 0.0,
              "axis_mean_error_deg": 0.0,
              "origin_mean_error": 0.0,
              "axis_finite_rate": 0.0,
              "limit_sanity_rate": 0.0,
              "kinematic_tree_valid": 1.0
            },
            "strict": {
              "strict_pred_joint_count": 0,
              "strict_gt_joint_count": 0,
              "strict_joint_count_abs_error": 0,
              "strict_match_count": 0,
              "strict_joint_precision": 0.0,
              "strict_joint_recall": 0.0,
              "strict_joint_f1": 0.0,
              "strict_type_match_rate": 0.0,
              "strict_axis_mean_error_deg": 0.0,
              "strict_origin_mean_error": 0.0,
              "strict_tree_valid": 1.0,
              "strict_matches": []
            },
            "structure": {
              "root_count": 1,
              "duplicate_ids": 0,
              "dangling_parent_count": 0,
              "self_parent_count": 0,
              "cycle_node_count": 0,
              "child_mismatch_count": 0,
              "tree_valid_proxy": 1,
              "node_count": 1,
              "thin_part_count": 1,
              "invalid_aabb_count": 0,
              "mean_pair_aabb_overlap_ratio": 0.0,
              "max_pair_aabb_overlap_ratio": 0.0,
              "mean_parent_child_aabb_gap": 0.0,
              "max_parent_child_aabb_gap": 0.0,
              "mean_axis_origin_to_child_aabb_distance": 0.0,
              "max_axis_origin_to_child_aabb_distance": 0.0
            }
          },
          "meta": {
            "mode": "vlm_structure",
            "caption_category": "Printer",
            "caption": "digital art selected for the #"
          },
          "proxy_glb": "samples/electronics_104020/vlm_struct_open.glb",
          "mesh_glb": "samples/electronics_104020/vlm_struct_mesh_open.glb"
        }
      },
      "reference": {
        "open_glb": "samples/electronics_104020/reference_parts.glb"
      },
      "input": {
        "processed": "samples/electronics_104020/processed.png",
        "mask": "samples/electronics_104020/mask.png"
      }
    },
    {
      "sample": "electronics_103988",
      "dataset_category": "electronics",
      "object_category": "Printer",
      "pm_id": "103988",
      "caption": "a box of chocolates.................................",
      "profile": {
        "caption": "a box of chocolates.................................",
        "category": "Printer",
        "joint_type": "revolute",
        "structure_mode": "doors",
        "count_bias": 0,
        "caption_useful": false
      },
      "assets": {
        "raw_open": "samples/electronics_103988/raw_open.glb",
        "pact_mesh": "samples/electronics_103988/pact_generated_parts.glb",
        "reference_mesh": "samples/electronics_103988/reference_parts.glb",
        "processed": "samples/electronics_103988/processed.png",
        "mask": "samples/electronics_103988/mask.png"
      },
      "raw": {
        "object_json": "samples/electronics_103988/object_raw.json",
        "open_glb": "samples/electronics_103988/raw_open.glb",
        "scores": {
          "raw": {
            "pred_joint_count": 0,
            "gt_joint_count": 0,
            "joint_count_accuracy": 0.0,
            "joint_count_abs_error": 0,
            "joint_type_accuracy": 0.0,
            "axis_mean_error_deg": 0.0,
            "origin_mean_error": 0.0,
            "axis_finite_rate": 0.0,
            "limit_sanity_rate": 0.0,
            "kinematic_tree_valid": 1.0
          },
          "strict": {
            "strict_pred_joint_count": 0,
            "strict_gt_joint_count": 0,
            "strict_joint_count_abs_error": 0,
            "strict_match_count": 0,
            "strict_joint_precision": 0.0,
            "strict_joint_recall": 0.0,
            "strict_joint_f1": 0.0,
            "strict_type_match_rate": 0.0,
            "strict_axis_mean_error_deg": 0.0,
            "strict_origin_mean_error": 0.0,
            "strict_tree_valid": 1.0,
            "strict_matches": []
          },
          "structure": {
            "root_count": 1,
            "duplicate_ids": 0,
            "dangling_parent_count": 0,
            "self_parent_count": 0,
            "cycle_node_count": 0,
            "child_mismatch_count": 0,
            "tree_valid_proxy": 1,
            "node_count": 1,
            "thin_part_count": 1,
            "invalid_aabb_count": 0,
            "mean_pair_aabb_overlap_ratio": 0.0,
            "max_pair_aabb_overlap_ratio": 0.0,
            "mean_parent_child_aabb_gap": 0.0,
            "max_parent_child_aabb_gap": 0.0,
            "mean_axis_origin_to_child_aabb_distance": 0.0,
            "max_axis_origin_to_child_aabb_distance": 0.0
          }
        }
      },
      "pact_mesh": {
        "open_glb": "samples/electronics_103988/pact_generated_parts.glb"
      },
      "variants": {
        "ot_2d": {
          "mode": "ot_2d_mask_transport",
          "actions": [
            {
              "type": "activate_joint",
              "node_id": 0,
              "reason": "mask_transport_count"
            }
          ],
          "object_json": "samples/electronics_103988/object_ot_2d.json",
          "open_glb": "samples/electronics_103988/ot_2d_mesh_open.glb",
          "scores": {
            "raw": {
              "pred_joint_count": 1,
              "gt_joint_count": 0,
              "joint_count_accuracy": 0.0,
              "joint_count_abs_error": 1,
              "joint_type_accuracy": 0.0,
              "axis_mean_error_deg": 90.0,
              "origin_mean_error": 0.0,
              "axis_finite_rate": 1.0,
              "limit_sanity_rate": 1.0,
              "kinematic_tree_valid": 1.0
            },
            "strict": {
              "strict_pred_joint_count": 1,
              "strict_gt_joint_count": 0,
              "strict_joint_count_abs_error": 1,
              "strict_match_count": 0,
              "strict_joint_precision": 0.0,
              "strict_joint_recall": 0.0,
              "strict_joint_f1": 0.0,
              "strict_type_match_rate": 0.0,
              "strict_axis_mean_error_deg": 90.0,
              "strict_origin_mean_error": 0.0,
              "strict_tree_valid": 1.0,
              "strict_matches": []
            },
            "structure": {
              "root_count": 1,
              "duplicate_ids": 0,
              "dangling_parent_count": 0,
              "self_parent_count": 0,
              "cycle_node_count": 0,
              "child_mismatch_count": 0,
              "tree_valid_proxy": 1,
              "node_count": 1,
              "thin_part_count": 1,
              "invalid_aabb_count": 0,
              "mean_pair_aabb_overlap_ratio": 0.0,
              "max_pair_aabb_overlap_ratio": 0.0,
              "mean_parent_child_aabb_gap": 0.0,
              "max_parent_child_aabb_gap": 0.0,
              "mean_axis_origin_to_child_aabb_distance": 0.0,
              "max_axis_origin_to_child_aabb_distance": 0.0
            }
          },
          "meta": {
            "mode": "ot_2d_mask_transport",
            "target_count": 8,
            "template_pm_id": "3393",
            "assignment_confidence": 0.3333333333333333
          },
          "proxy_glb": "samples/electronics_103988/ot_2d_open.glb",
          "mesh_glb": "samples/electronics_103988/ot_2d_mesh_open.glb"
        },
        "ot_proto": {
          "mode": "ot_prototype_bank",
          "actions": [
            {
              "type": "activate_joint",
              "node_id": 0,
              "reason": "prototype_count"
            },
            {
              "type": "prototype_align",
              "node_id": 0,
              "joint_type": "revolute",
              "category": "Printer"
            }
          ],
          "object_json": "samples/electronics_103988/object_ot_proto.json",
          "open_glb": "samples/electronics_103988/ot_proto_mesh_open.glb",
          "scores": {
            "raw": {
              "pred_joint_count": 1,
              "gt_joint_count": 0,
              "joint_count_accuracy": 0.0,
              "joint_count_abs_error": 1,
              "joint_type_accuracy": 0.0,
              "axis_mean_error_deg": 90.0,
              "origin_mean_error": 0.0,
              "axis_finite_rate": 1.0,
              "limit_sanity_rate": 1.0,
              "kinematic_tree_valid": 1.0
            },
            "strict": {
              "strict_pred_joint_count": 1,
              "strict_gt_joint_count": 0,
              "strict_joint_count_abs_error": 1,
              "strict_match_count": 0,
              "strict_joint_precision": 0.0,
              "strict_joint_recall": 0.0,
              "strict_joint_f1": 0.0,
              "strict_type_match_rate": 0.0,
              "strict_axis_mean_error_deg": 90.0,
              "strict_origin_mean_error": 0.0,
              "strict_tree_valid": 1.0,
              "strict_matches": []
            },
            "structure": {
              "root_count": 1,
              "duplicate_ids": 0,
              "dangling_parent_count": 0,
              "self_parent_count": 0,
              "cycle_node_count": 0,
              "child_mismatch_count": 0,
              "tree_valid_proxy": 1,
              "node_count": 1,
              "thin_part_count": 1,
              "invalid_aabb_count": 0,
              "mean_pair_aabb_overlap_ratio": 0.0,
              "max_pair_aabb_overlap_ratio": 0.0,
              "mean_parent_child_aabb_gap": 0.0,
              "max_parent_child_aabb_gap": 0.0,
              "mean_axis_origin_to_child_aabb_distance": 0.0,
              "max_axis_origin_to_child_aabb_distance": 0.0
            }
          },
          "meta": {
            "mode": "ot_prototype_bank",
            "target_count": 1,
            "category": "Printer"
          },
          "proxy_glb": "samples/electronics_103988/ot_proto_open.glb",
          "mesh_glb": "samples/electronics_103988/ot_proto_mesh_open.glb"
        },
        "nonot_hier": {
          "mode": "nonot_hierarchy_repair",
          "actions": [
            {
              "type": "repair_hierarchy"
            }
          ],
          "object_json": "samples/electronics_103988/object_nonot_hier.json",
          "open_glb": "samples/electronics_103988/nonot_hier_mesh_open.glb",
          "scores": {
            "raw": {
              "pred_joint_count": 0,
              "gt_joint_count": 0,
              "joint_count_accuracy": 0.0,
              "joint_count_abs_error": 0,
              "joint_type_accuracy": 0.0,
              "axis_mean_error_deg": 0.0,
              "origin_mean_error": 0.0,
              "axis_finite_rate": 0.0,
              "limit_sanity_rate": 0.0,
              "kinematic_tree_valid": 1.0
            },
            "strict": {
              "strict_pred_joint_count": 0,
              "strict_gt_joint_count": 0,
              "strict_joint_count_abs_error": 0,
              "strict_match_count": 0,
              "strict_joint_precision": 0.0,
              "strict_joint_recall": 0.0,
              "strict_joint_f1": 0.0,
              "strict_type_match_rate": 0.0,
              "strict_axis_mean_error_deg": 0.0,
              "strict_origin_mean_error": 0.0,
              "strict_tree_valid": 1.0,
              "strict_matches": []
            },
            "structure": {
              "root_count": 1,
              "duplicate_ids": 0,
              "dangling_parent_count": 0,
              "self_parent_count": 0,
              "cycle_node_count": 0,
              "child_mismatch_count": 0,
              "tree_valid_proxy": 1,
              "node_count": 1,
              "thin_part_count": 1,
              "invalid_aabb_count": 0,
              "mean_pair_aabb_overlap_ratio": 0.0,
              "max_pair_aabb_overlap_ratio": 0.0,
              "mean_parent_child_aabb_gap": 0.0,
              "max_parent_child_aabb_gap": 0.0,
              "mean_axis_origin_to_child_aabb_distance": 0.0,
              "max_axis_origin_to_child_aabb_distance": 0.0
            }
          },
          "meta": {
            "mode": "nonot_hierarchy_repair"
          },
          "proxy_glb": "samples/electronics_103988/nonot_hier_open.glb",
          "mesh_glb": "samples/electronics_103988/nonot_hier_mesh_open.glb"
        },
        "vlm_seg": {
          "mode": "vlm_segmentation",
          "actions": [
            {
              "type": "activate_joint",
              "node_id": 0,
              "reason": "vlm_segmentation"
            }
          ],
          "object_json": "samples/electronics_103988/object_vlm_seg.json",
          "open_glb": "samples/electronics_103988/vlm_seg_mesh_open.glb",
          "scores": {
            "raw": {
              "pred_joint_count": 1,
              "gt_joint_count": 0,
              "joint_count_accuracy": 0.0,
              "joint_count_abs_error": 1,
              "joint_type_accuracy": 0.0,
              "axis_mean_error_deg": 90.0,
              "origin_mean_error": 0.0,
              "axis_finite_rate": 1.0,
              "limit_sanity_rate": 1.0,
              "kinematic_tree_valid": 1.0
            },
            "strict": {
              "strict_pred_joint_count": 1,
              "strict_gt_joint_count": 0,
              "strict_joint_count_abs_error": 1,
              "strict_match_count": 0,
              "strict_joint_precision": 0.0,
              "strict_joint_recall": 0.0,
              "strict_joint_f1": 0.0,
              "strict_type_match_rate": 0.0,
              "strict_axis_mean_error_deg": 90.0,
              "strict_origin_mean_error": 0.0,
              "strict_tree_valid": 1.0,
              "strict_matches": []
            },
            "structure": {
              "root_count": 1,
              "duplicate_ids": 0,
              "dangling_parent_count": 0,
              "self_parent_count": 0,
              "cycle_node_count": 0,
              "child_mismatch_count": 0,
              "tree_valid_proxy": 1,
              "node_count": 1,
              "thin_part_count": 1,
              "invalid_aabb_count": 0,
              "mean_pair_aabb_overlap_ratio": 0.0,
              "max_pair_aabb_overlap_ratio": 0.0,
              "mean_parent_child_aabb_gap": 0.0,
              "max_parent_child_aabb_gap": 0.0,
              "mean_axis_origin_to_child_aabb_distance": 0.0,
              "max_axis_origin_to_child_aabb_distance": 0.0
            }
          },
          "meta": {
            "mode": "vlm_segmentation",
            "caption_category": "Printer",
            "caption": "a box of chocolates................................."
          },
          "proxy_glb": "samples/electronics_103988/vlm_seg_open.glb",
          "mesh_glb": "samples/electronics_103988/vlm_seg_mesh_open.glb"
        },
        "vlm_joint": {
          "mode": "vlm_joint",
          "actions": [
            {
              "type": "activate_joint",
              "node_id": 0,
              "reason": "vlm_joint_count"
            },
            {
              "type": "vlm_joint_retype",
              "node_id": 0,
              "target_type": "revolute"
            }
          ],
          "object_json": "samples/electronics_103988/object_vlm_joint.json",
          "open_glb": "samples/electronics_103988/vlm_joint_mesh_open.glb",
          "scores": {
            "raw": {
              "pred_joint_count": 1,
              "gt_joint_count": 0,
              "joint_count_accuracy": 0.0,
              "joint_count_abs_error": 1,
              "joint_type_accuracy": 0.0,
              "axis_mean_error_deg": 90.0,
              "origin_mean_error": 0.0,
              "axis_finite_rate": 1.0,
              "limit_sanity_rate": 1.0,
              "kinematic_tree_valid": 1.0
            },
            "strict": {
              "strict_pred_joint_count": 1,
              "strict_gt_joint_count": 0,
              "strict_joint_count_abs_error": 1,
              "strict_match_count": 0,
              "strict_joint_precision": 0.0,
              "strict_joint_recall": 0.0,
              "strict_joint_f1": 0.0,
              "strict_type_match_rate": 0.0,
              "strict_axis_mean_error_deg": 90.0,
              "strict_origin_mean_error": 0.0,
              "strict_tree_valid": 1.0,
              "strict_matches": []
            },
            "structure": {
              "root_count": 1,
              "duplicate_ids": 0,
              "dangling_parent_count": 0,
              "self_parent_count": 0,
              "cycle_node_count": 0,
              "child_mismatch_count": 0,
              "tree_valid_proxy": 1,
              "node_count": 1,
              "thin_part_count": 1,
              "invalid_aabb_count": 0,
              "mean_pair_aabb_overlap_ratio": 0.0,
              "max_pair_aabb_overlap_ratio": 0.0,
              "mean_parent_child_aabb_gap": 0.0,
              "max_parent_child_aabb_gap": 0.0,
              "mean_axis_origin_to_child_aabb_distance": 0.0,
              "max_axis_origin_to_child_aabb_distance": 0.0
            }
          },
          "meta": {
            "mode": "vlm_joint",
            "caption_category": "Printer",
            "caption": "a box of chocolates................................."
          },
          "proxy_glb": "samples/electronics_103988/vlm_joint_open.glb",
          "mesh_glb": "samples/electronics_103988/vlm_joint_mesh_open.glb"
        },
        "vlm_struct": {
          "mode": "vlm_structure",
          "actions": [
            {
              "type": "repair_hierarchy"
            }
          ],
          "object_json": "samples/electronics_103988/object_vlm_struct.json",
          "open_glb": "samples/electronics_103988/vlm_struct_mesh_open.glb",
          "scores": {
            "raw": {
              "pred_joint_count": 0,
              "gt_joint_count": 0,
              "joint_count_accuracy": 0.0,
              "joint_count_abs_error": 0,
              "joint_type_accuracy": 0.0,
              "axis_mean_error_deg": 0.0,
              "origin_mean_error": 0.0,
              "axis_finite_rate": 0.0,
              "limit_sanity_rate": 0.0,
              "kinematic_tree_valid": 1.0
            },
            "strict": {
              "strict_pred_joint_count": 0,
              "strict_gt_joint_count": 0,
              "strict_joint_count_abs_error": 0,
              "strict_match_count": 0,
              "strict_joint_precision": 0.0,
              "strict_joint_recall": 0.0,
              "strict_joint_f1": 0.0,
              "strict_type_match_rate": 0.0,
              "strict_axis_mean_error_deg": 0.0,
              "strict_origin_mean_error": 0.0,
              "strict_tree_valid": 1.0,
              "strict_matches": []
            },
            "structure": {
              "root_count": 1,
              "duplicate_ids": 0,
              "dangling_parent_count": 0,
              "self_parent_count": 0,
              "cycle_node_count": 0,
              "child_mismatch_count": 0,
              "tree_valid_proxy": 1,
              "node_count": 1,
              "thin_part_count": 1,
              "invalid_aabb_count": 0,
              "mean_pair_aabb_overlap_ratio": 0.0,
              "max_pair_aabb_overlap_ratio": 0.0,
              "mean_parent_child_aabb_gap": 0.0,
              "max_parent_child_aabb_gap": 0.0,
              "mean_axis_origin_to_child_aabb_distance": 0.0,
              "max_axis_origin_to_child_aabb_distance": 0.0
            }
          },
          "meta": {
            "mode": "vlm_structure",
            "caption_category": "Printer",
            "caption": "a box of chocolates................................."
          },
          "proxy_glb": "samples/electronics_103988/vlm_struct_open.glb",
          "mesh_glb": "samples/electronics_103988/vlm_struct_mesh_open.glb"
        }
      },
      "reference": {
        "open_glb": "samples/electronics_103988/reference_parts.glb"
      },
      "input": {
        "processed": "samples/electronics_103988/processed.png",
        "mask": "samples/electronics_103988/mask.png"
      }
    },
    {
      "sample": "electronics_103878",
      "dataset_category": "electronics",
      "object_category": "Printer",
      "pm_id": "103878",
      "caption": "the box for the printer.",
      "profile": {
        "caption": "the box for the printer.",
        "category": "Printer",
        "joint_type": "revolute",
        "structure_mode": "doors",
        "count_bias": 0,
        "caption_useful": true
      },
      "assets": {
        "raw_open": "samples/electronics_103878/raw_open.glb",
        "pact_mesh": "samples/electronics_103878/pact_generated_parts.glb",
        "reference_mesh": "samples/electronics_103878/reference_parts.glb",
        "processed": "samples/electronics_103878/processed.png",
        "mask": "samples/electronics_103878/mask.png"
      },
      "raw": {
        "object_json": "samples/electronics_103878/object_raw.json",
        "open_glb": "samples/electronics_103878/raw_open.glb",
        "scores": {
          "raw": {
            "pred_joint_count": 1,
            "gt_joint_count": 0,
            "joint_count_accuracy": 0.0,
            "joint_count_abs_error": 1,
            "joint_type_accuracy": 0.0,
            "axis_mean_error_deg": 90.0,
            "origin_mean_error": 0.0,
            "axis_finite_rate": 1.0,
            "limit_sanity_rate": 1.0,
            "kinematic_tree_valid": 1.0
          },
          "strict": {
            "strict_pred_joint_count": 1,
            "strict_gt_joint_count": 0,
            "strict_joint_count_abs_error": 1,
            "strict_match_count": 0,
            "strict_joint_precision": 0.0,
            "strict_joint_recall": 0.0,
            "strict_joint_f1": 0.0,
            "strict_type_match_rate": 0.0,
            "strict_axis_mean_error_deg": 90.0,
            "strict_origin_mean_error": 0.0,
            "strict_tree_valid": 1.0,
            "strict_matches": []
          },
          "structure": {
            "root_count": 1,
            "duplicate_ids": 0,
            "dangling_parent_count": 0,
            "self_parent_count": 0,
            "cycle_node_count": 0,
            "child_mismatch_count": 0,
            "tree_valid_proxy": 1,
            "node_count": 3,
            "thin_part_count": 3,
            "invalid_aabb_count": 0,
            "mean_pair_aabb_overlap_ratio": 0.5792465360380068,
            "max_pair_aabb_overlap_ratio": 0.9878948160313789,
            "mean_parent_child_aabb_gap": 0.0,
            "max_parent_child_aabb_gap": 0.0,
            "mean_axis_origin_to_child_aabb_distance": 0.0,
            "max_axis_origin_to_child_aabb_distance": 0.0
          }
        }
      },
      "pact_mesh": {
        "open_glb": "samples/electronics_103878/pact_generated_parts.glb"
      },
      "variants": {
        "ot_2d": {
          "mode": "ot_2d_mask_transport",
          "actions": [
            {
              "type": "activate_joint",
              "node_id": 1,
              "reason": "mask_transport_count"
            },
            {
              "type": "activate_joint",
              "node_id": 2,
              "reason": "mask_transport_count"
            }
          ],
          "object_json": "samples/electronics_103878/object_ot_2d.json",
          "open_glb": "samples/electronics_103878/ot_2d_mesh_open.glb",
          "scores": {
            "raw": {
              "pred_joint_count": 3,
              "gt_joint_count": 0,
              "joint_count_accuracy": 0.0,
              "joint_count_abs_error": 3,
              "joint_type_accuracy": 0.0,
              "axis_mean_error_deg": 90.0,
              "origin_mean_error": 0.0,
              "axis_finite_rate": 1.0,
              "limit_sanity_rate": 1.0,
              "kinematic_tree_valid": 1.0
            },
            "strict": {
              "strict_pred_joint_count": 3,
              "strict_gt_joint_count": 0,
              "strict_joint_count_abs_error": 3,
              "strict_match_count": 0,
              "strict_joint_precision": 0.0,
              "strict_joint_recall": 0.0,
              "strict_joint_f1": 0.0,
              "strict_type_match_rate": 0.0,
              "strict_axis_mean_error_deg": 90.0,
              "strict_origin_mean_error": 0.0,
              "strict_tree_valid": 1.0,
              "strict_matches": []
            },
            "structure": {
              "root_count": 1,
              "duplicate_ids": 0,
              "dangling_parent_count": 0,
              "self_parent_count": 0,
              "cycle_node_count": 0,
              "child_mismatch_count": 0,
              "tree_valid_proxy": 1,
              "node_count": 3,
              "thin_part_count": 3,
              "invalid_aabb_count": 0,
              "mean_pair_aabb_overlap_ratio": 0.5792465360380068,
              "max_pair_aabb_overlap_ratio": 0.9878948160313789,
              "mean_parent_child_aabb_gap": 0.0,
              "max_parent_child_aabb_gap": 0.0,
              "mean_axis_origin_to_child_aabb_distance": 0.0,
              "max_axis_origin_to_child_aabb_distance": 0.0
            }
          },
          "meta": {
            "mode": "ot_2d_mask_transport",
            "target_count": 8,
            "template_pm_id": "3393",
            "assignment_confidence": 0.66532024748595
          },
          "proxy_glb": "samples/electronics_103878/ot_2d_open.glb",
          "mesh_glb": "samples/electronics_103878/ot_2d_mesh_open.glb"
        },
        "ot_proto": {
          "mode": "ot_prototype_bank",
          "actions": [
            {
              "type": "prototype_align",
              "node_id": 0,
              "joint_type": "revolute",
              "category": "Printer"
            }
          ],
          "object_json": "samples/electronics_103878/object_ot_proto.json",
          "open_glb": "samples/electronics_103878/ot_proto_mesh_open.glb",
          "scores": {
            "raw": {
              "pred_joint_count": 1,
              "gt_joint_count": 0,
              "joint_count_accuracy": 0.0,
              "joint_count_abs_error": 1,
              "joint_type_accuracy": 0.0,
              "axis_mean_error_deg": 90.0,
              "origin_mean_error": 0.0,
              "axis_finite_rate": 1.0,
              "limit_sanity_rate": 1.0,
              "kinematic_tree_valid": 1.0
            },
            "strict": {
              "strict_pred_joint_count": 1,
              "strict_gt_joint_count": 0,
              "strict_joint_count_abs_error": 1,
              "strict_match_count": 0,
              "strict_joint_precision": 0.0,
              "strict_joint_recall": 0.0,
              "strict_joint_f1": 0.0,
              "strict_type_match_rate": 0.0,
              "strict_axis_mean_error_deg": 90.0,
              "strict_origin_mean_error": 0.0,
              "strict_tree_valid": 1.0,
              "strict_matches": []
            },
            "structure": {
              "root_count": 1,
              "duplicate_ids": 0,
              "dangling_parent_count": 0,
              "self_parent_count": 0,
              "cycle_node_count": 0,
              "child_mismatch_count": 0,
              "tree_valid_proxy": 1,
              "node_count": 3,
              "thin_part_count": 3,
              "invalid_aabb_count": 0,
              "mean_pair_aabb_overlap_ratio": 0.5792465360380068,
              "max_pair_aabb_overlap_ratio": 0.9878948160313789,
              "mean_parent_child_aabb_gap": 0.0,
              "max_parent_child_aabb_gap": 0.0,
              "mean_axis_origin_to_child_aabb_distance": 0.0,
              "max_axis_origin_to_child_aabb_distance": 0.0
            }
          },
          "meta": {
            "mode": "ot_prototype_bank",
            "target_count": 1,
            "category": "Printer"
          },
          "proxy_glb": "samples/electronics_103878/ot_proto_open.glb",
          "mesh_glb": "samples/electronics_103878/ot_proto_mesh_open.glb"
        },
        "nonot_hier": {
          "mode": "nonot_hierarchy_repair",
          "actions": [
            {
              "type": "repair_hierarchy"
            }
          ],
          "object_json": "samples/electronics_103878/object_nonot_hier.json",
          "open_glb": "samples/electronics_103878/nonot_hier_mesh_open.glb",
          "scores": {
            "raw": {
              "pred_joint_count": 2,
              "gt_joint_count": 0,
              "joint_count_accuracy": 0.0,
              "joint_count_abs_error": 2,
              "joint_type_accuracy": 0.0,
              "axis_mean_error_deg": 90.0,
              "origin_mean_error": 0.0,
              "axis_finite_rate": 1.0,
              "limit_sanity_rate": 1.0,
              "kinematic_tree_valid": 1.0
            },
            "strict": {
              "strict_pred_joint_count": 2,
              "strict_gt_joint_count": 0,
              "strict_joint_count_abs_error": 2,
              "strict_match_count": 0,
              "strict_joint_precision": 0.0,
              "strict_joint_recall": 0.0,
              "strict_joint_f1": 0.0,
              "strict_type_match_rate": 0.0,
              "strict_axis_mean_error_deg": 90.0,
              "strict_origin_mean_error": 0.0,
              "strict_tree_valid": 1.0,
              "strict_matches": []
            },
            "structure": {
              "root_count": 1,
              "duplicate_ids": 0,
              "dangling_parent_count": 0,
              "self_parent_count": 0,
              "cycle_node_count": 0,
              "child_mismatch_count": 0,
              "tree_valid_proxy": 1,
              "node_count": 3,
              "thin_part_count": 3,
              "invalid_aabb_count": 0,
              "mean_pair_aabb_overlap_ratio": 0.5792465360380068,
              "max_pair_aabb_overlap_ratio": 0.9878948160313789,
              "mean_parent_child_aabb_gap": 0.0,
              "max_parent_child_aabb_gap": 0.0,
              "mean_axis_origin_to_child_aabb_distance": 0.08123472239822149,
              "max_axis_origin_to_child_aabb_distance": 0.11743445694446564
            }
          },
          "meta": {
            "mode": "nonot_hierarchy_repair"
          },
          "proxy_glb": "samples/electronics_103878/nonot_hier_open.glb",
          "mesh_glb": "samples/electronics_103878/nonot_hier_mesh_open.glb"
        },
        "vlm_seg": {
          "mode": "vlm_segmentation",
          "actions": [
            {
              "type": "activate_joint",
              "node_id": 1,
              "reason": "vlm_segmentation"
            },
            {
              "type": "activate_joint",
              "node_id": 2,
              "reason": "vlm_segmentation"
            }
          ],
          "object_json": "samples/electronics_103878/object_vlm_seg.json",
          "open_glb": "samples/electronics_103878/vlm_seg_mesh_open.glb",
          "scores": {
            "raw": {
              "pred_joint_count": 3,
              "gt_joint_count": 0,
              "joint_count_accuracy": 0.0,
              "joint_count_abs_error": 3,
              "joint_type_accuracy": 0.0,
              "axis_mean_error_deg": 90.0,
              "origin_mean_error": 0.0,
              "axis_finite_rate": 1.0,
              "limit_sanity_rate": 1.0,
              "kinematic_tree_valid": 1.0
            },
            "strict": {
              "strict_pred_joint_count": 3,
              "strict_gt_joint_count": 0,
              "strict_joint_count_abs_error": 3,
              "strict_match_count": 0,
              "strict_joint_precision": 0.0,
              "strict_joint_recall": 0.0,
              "strict_joint_f1": 0.0,
              "strict_type_match_rate": 0.0,
              "strict_axis_mean_error_deg": 90.0,
              "strict_origin_mean_error": 0.0,
              "strict_tree_valid": 1.0,
              "strict_matches": []
            },
            "structure": {
              "root_count": 1,
              "duplicate_ids": 0,
              "dangling_parent_count": 0,
              "self_parent_count": 0,
              "cycle_node_count": 0,
              "child_mismatch_count": 0,
              "tree_valid_proxy": 1,
              "node_count": 3,
              "thin_part_count": 3,
              "invalid_aabb_count": 0,
              "mean_pair_aabb_overlap_ratio": 0.5792465360380068,
              "max_pair_aabb_overlap_ratio": 0.9878948160313789,
              "mean_parent_child_aabb_gap": 0.0,
              "max_parent_child_aabb_gap": 0.0,
              "mean_axis_origin_to_child_aabb_distance": 0.0,
              "max_axis_origin_to_child_aabb_distance": 0.0
            }
          },
          "meta": {
            "mode": "vlm_segmentation",
            "caption_category": "Printer",
            "caption": "the box for the printer."
          },
          "proxy_glb": "samples/electronics_103878/vlm_seg_open.glb",
          "mesh_glb": "samples/electronics_103878/vlm_seg_mesh_open.glb"
        },
        "vlm_joint": {
          "mode": "vlm_joint",
          "actions": [
            {
              "type": "vlm_joint_retype",
              "node_id": 0,
              "target_type": "revolute"
            }
          ],
          "object_json": "samples/electronics_103878/object_vlm_joint.json",
          "open_glb": "samples/electronics_103878/vlm_joint_mesh_open.glb",
          "scores": {
            "raw": {
              "pred_joint_count": 1,
              "gt_joint_count": 0,
              "joint_count_accuracy": 0.0,
              "joint_count_abs_error": 1,
              "joint_type_accuracy": 0.0,
              "axis_mean_error_deg": 90.0,
              "origin_mean_error": 0.0,
              "axis_finite_rate": 1.0,
              "limit_sanity_rate": 1.0,
              "kinematic_tree_valid": 1.0
            },
            "strict": {
              "strict_pred_joint_count": 1,
              "strict_gt_joint_count": 0,
              "strict_joint_count_abs_error": 1,
              "strict_match_count": 0,
              "strict_joint_precision": 0.0,
              "strict_joint_recall": 0.0,
              "strict_joint_f1": 0.0,
              "strict_type_match_rate": 0.0,
              "strict_axis_mean_error_deg": 90.0,
              "strict_origin_mean_error": 0.0,
              "strict_tree_valid": 1.0,
              "strict_matches": []
            },
            "structure": {
              "root_count": 1,
              "duplicate_ids": 0,
              "dangling_parent_count": 0,
              "self_parent_count": 0,
              "cycle_node_count": 0,
              "child_mismatch_count": 0,
              "tree_valid_proxy": 1,
              "node_count": 3,
              "thin_part_count": 3,
              "invalid_aabb_count": 0,
              "mean_pair_aabb_overlap_ratio": 0.5792465360380068,
              "max_pair_aabb_overlap_ratio": 0.9878948160313789,
              "mean_parent_child_aabb_gap": 0.0,
              "max_parent_child_aabb_gap": 0.0,
              "mean_axis_origin_to_child_aabb_distance": 0.0,
              "max_axis_origin_to_child_aabb_distance": 0.0
            }
          },
          "meta": {
            "mode": "vlm_joint",
            "caption_category": "Printer",
            "caption": "the box for the printer."
          },
          "proxy_glb": "samples/electronics_103878/vlm_joint_open.glb",
          "mesh_glb": "samples/electronics_103878/vlm_joint_mesh_open.glb"
        },
        "vlm_struct": {
          "mode": "vlm_structure",
          "actions": [
            {
              "type": "repair_hierarchy"
            }
          ],
          "object_json": "samples/electronics_103878/object_vlm_struct.json",
          "open_glb": "samples/electronics_103878/vlm_struct_mesh_open.glb",
          "scores": {
            "raw": {
              "pred_joint_count": 2,
              "gt_joint_count": 0,
              "joint_count_accuracy": 0.0,
              "joint_count_abs_error": 2,
              "joint_type_accuracy": 0.0,
              "axis_mean_error_deg": 90.0,
              "origin_mean_error": 0.0,
              "axis_finite_rate": 1.0,
              "limit_sanity_rate": 1.0,
              "kinematic_tree_valid": 1.0
            },
            "strict": {
              "strict_pred_joint_count": 2,
              "strict_gt_joint_count": 0,
              "strict_joint_count_abs_error": 2,
              "strict_match_count": 0,
              "strict_joint_precision": 0.0,
              "strict_joint_recall": 0.0,
              "strict_joint_f1": 0.0,
              "strict_type_match_rate": 0.0,
              "strict_axis_mean_error_deg": 90.0,
              "strict_origin_mean_error": 0.0,
              "strict_tree_valid": 1.0,
              "strict_matches": []
            },
            "structure": {
              "root_count": 1,
              "duplicate_ids": 0,
              "dangling_parent_count": 0,
              "self_parent_count": 0,
              "cycle_node_count": 0,
              "child_mismatch_count": 0,
              "tree_valid_proxy": 1,
              "node_count": 3,
              "thin_part_count": 3,
              "invalid_aabb_count": 0,
              "mean_pair_aabb_overlap_ratio": 0.5792465360380068,
              "max_pair_aabb_overlap_ratio": 0.9878948160313789,
              "mean_parent_child_aabb_gap": 0.0,
              "max_parent_child_aabb_gap": 0.0,
              "mean_axis_origin_to_child_aabb_distance": 0.08123472239822149,
              "max_axis_origin_to_child_aabb_distance": 0.11743445694446564
            }
          },
          "meta": {
            "mode": "vlm_structure",
            "caption_category": "Printer",
            "caption": "the box for the printer."
          },
          "proxy_glb": "samples/electronics_103878/vlm_struct_open.glb",
          "mesh_glb": "samples/electronics_103878/vlm_struct_mesh_open.glb"
        }
      },
      "reference": {
        "open_glb": "samples/electronics_103878/reference_parts.glb"
      },
      "input": {
        "processed": "samples/electronics_103878/processed.png",
        "mask": "samples/electronics_103878/mask.png"
      }
    },
    {
      "sample": "electronics_104030",
      "dataset_category": "electronics",
      "object_category": "Printer",
      "pm_id": "104030",
      "caption": "the box in the middle of the road",
      "profile": {
        "caption": "the box in the middle of the road",
        "category": "Printer",
        "joint_type": "revolute",
        "structure_mode": "doors",
        "count_bias": 0,
        "caption_useful": false
      },
      "assets": {
        "raw_open": "samples/electronics_104030/raw_open.glb",
        "pact_mesh": "samples/electronics_104030/pact_generated_parts.glb",
        "reference_mesh": "samples/electronics_104030/reference_parts.glb",
        "processed": "samples/electronics_104030/processed.png",
        "mask": "samples/electronics_104030/mask.png"
      },
      "raw": {
        "object_json": "samples/electronics_104030/object_raw.json",
        "open_glb": "samples/electronics_104030/raw_open.glb",
        "scores": {
          "raw": {
            "pred_joint_count": 3,
            "gt_joint_count": 0,
            "joint_count_accuracy": 0.0,
            "joint_count_abs_error": 3,
            "joint_type_accuracy": 0.0,
            "axis_mean_error_deg": 90.0,
            "origin_mean_error": 0.0,
            "axis_finite_rate": 1.0,
            "limit_sanity_rate": 1.0,
            "kinematic_tree_valid": 1.0
          },
          "strict": {
            "strict_pred_joint_count": 3,
            "strict_gt_joint_count": 0,
            "strict_joint_count_abs_error": 3,
            "strict_match_count": 0,
            "strict_joint_precision": 0.0,
            "strict_joint_recall": 0.0,
            "strict_joint_f1": 0.0,
            "strict_type_match_rate": 0.0,
            "strict_axis_mean_error_deg": 90.0,
            "strict_origin_mean_error": 0.0,
            "strict_tree_valid": 1.0,
            "strict_matches": []
          },
          "structure": {
            "root_count": 1,
            "duplicate_ids": 0,
            "dangling_parent_count": 0,
            "self_parent_count": 0,
            "cycle_node_count": 0,
            "child_mismatch_count": 0,
            "tree_valid_proxy": 1,
            "node_count": 5,
            "thin_part_count": 5,
            "invalid_aabb_count": 0,
            "mean_pair_aabb_overlap_ratio": 0.6883118702014872,
            "max_pair_aabb_overlap_ratio": 0.9994434591058216,
            "mean_parent_child_aabb_gap": 0.0,
            "max_parent_child_aabb_gap": 0.0,
            "mean_axis_origin_to_child_aabb_distance": 0.04621297807168546,
            "max_axis_origin_to_child_aabb_distance": 0.13863893421505638
          }
        }
      },
      "pact_mesh": {
        "open_glb": "samples/electronics_104030/pact_generated_parts.glb"
      },
      "variants": {
        "ot_2d": {
          "mode": "ot_2d_mask_transport",
          "actions": [
            {
              "type": "activate_joint",
              "node_id": 1,
              "reason": "mask_transport_count"
            },
            {
              "type": "activate_joint",
              "node_id": 0,
              "reason": "mask_transport_count"
            }
          ],
          "object_json": "samples/electronics_104030/object_ot_2d.json",
          "open_glb": "samples/electronics_104030/ot_2d_mesh_open.glb",
          "scores": {
            "raw": {
              "pred_joint_count": 5,
              "gt_joint_count": 0,
              "joint_count_accuracy": 0.0,
              "joint_count_abs_error": 5,
              "joint_type_accuracy": 0.0,
              "axis_mean_error_deg": 90.0,
              "origin_mean_error": 0.0,
              "axis_finite_rate": 1.0,
              "limit_sanity_rate": 1.0,
              "kinematic_tree_valid": 1.0
            },
            "strict": {
              "strict_pred_joint_count": 5,
              "strict_gt_joint_count": 0,
              "strict_joint_count_abs_error": 5,
              "strict_match_count": 0,
              "strict_joint_precision": 0.0,
              "strict_joint_recall": 0.0,
              "strict_joint_f1": 0.0,
              "strict_type_match_rate": 0.0,
              "strict_axis_mean_error_deg": 90.0,
              "strict_origin_mean_error": 0.0,
              "strict_tree_valid": 1.0,
              "strict_matches": []
            },
            "structure": {
              "root_count": 1,
              "duplicate_ids": 0,
              "dangling_parent_count": 0,
              "self_parent_count": 0,
              "cycle_node_count": 0,
              "child_mismatch_count": 0,
              "tree_valid_proxy": 1,
              "node_count": 5,
              "thin_part_count": 5,
              "invalid_aabb_count": 0,
              "mean_pair_aabb_overlap_ratio": 0.6883118702014872,
              "max_pair_aabb_overlap_ratio": 0.9994434591058216,
              "mean_parent_child_aabb_gap": 0.0,
              "max_parent_child_aabb_gap": 0.0,
              "mean_axis_origin_to_child_aabb_distance": 0.027727786843011276,
              "max_axis_origin_to_child_aabb_distance": 0.13863893421505638
            }
          },
          "meta": {
            "mode": "ot_2d_mask_transport",
            "target_count": 8,
            "template_pm_id": "8867",
            "assignment_confidence": 0.5292880202771026
          },
          "proxy_glb": "samples/electronics_104030/ot_2d_open.glb",
          "mesh_glb": "samples/electronics_104030/ot_2d_mesh_open.glb"
        },
        "ot_proto": {
          "mode": "ot_prototype_bank",
          "actions": [
            {
              "type": "deactivate_joint",
              "node_id": 2,
              "reason": "prototype_count"
            },
            {
              "type": "deactivate_joint",
              "node_id": 3,
              "reason": "prototype_count"
            },
            {
              "type": "prototype_align",
              "node_id": 4,
              "joint_type": "revolute",
              "category": "Printer"
            }
          ],
          "object_json": "samples/electronics_104030/object_ot_proto.json",
          "open_glb": "samples/electronics_104030/ot_proto_mesh_open.glb",
          "scores": {
            "raw": {
              "pred_joint_count": 1,
              "gt_joint_count": 0,
              "joint_count_accuracy": 0.0,
              "joint_count_abs_error": 1,
              "joint_type_accuracy": 0.0,
              "axis_mean_error_deg": 90.0,
              "origin_mean_error": 0.0,
              "axis_finite_rate": 1.0,
              "limit_sanity_rate": 1.0,
              "kinematic_tree_valid": 1.0
            },
            "strict": {
              "strict_pred_joint_count": 1,
              "strict_gt_joint_count": 0,
              "strict_joint_count_abs_error": 1,
              "strict_match_count": 0,
              "strict_joint_precision": 0.0,
              "strict_joint_recall": 0.0,
              "strict_joint_f1": 0.0,
              "strict_type_match_rate": 0.0,
              "strict_axis_mean_error_deg": 90.0,
              "strict_origin_mean_error": 0.0,
              "strict_tree_valid": 1.0,
              "strict_matches": []
            },
            "structure": {
              "root_count": 1,
              "duplicate_ids": 0,
              "dangling_parent_count": 0,
              "self_parent_count": 0,
              "cycle_node_count": 0,
              "child_mismatch_count": 0,
              "tree_valid_proxy": 1,
              "node_count": 5,
              "thin_part_count": 5,
              "invalid_aabb_count": 0,
              "mean_pair_aabb_overlap_ratio": 0.6883118702014872,
              "max_pair_aabb_overlap_ratio": 0.9994434591058216,
              "mean_parent_child_aabb_gap": 0.0,
              "max_parent_child_aabb_gap": 0.0,
              "mean_axis_origin_to_child_aabb_distance": 0.0,
              "max_axis_origin_to_child_aabb_distance": 0.0
            }
          },
          "meta": {
            "mode": "ot_prototype_bank",
            "target_count": 1,
            "category": "Printer"
          },
          "proxy_glb": "samples/electronics_104030/ot_proto_open.glb",
          "mesh_glb": "samples/electronics_104030/ot_proto_mesh_open.glb"
        },
        "nonot_hier": {
          "mode": "nonot_hierarchy_repair",
          "actions": [
            {
              "type": "repair_hierarchy"
            }
          ],
          "object_json": "samples/electronics_104030/object_nonot_hier.json",
          "open_glb": "samples/electronics_104030/nonot_hier_mesh_open.glb",
          "scores": {
            "raw": {
              "pred_joint_count": 4,
              "gt_joint_count": 0,
              "joint_count_accuracy": 0.0,
              "joint_count_abs_error": 4,
              "joint_type_accuracy": 0.0,
              "axis_mean_error_deg": 90.0,
              "origin_mean_error": 0.0,
              "axis_finite_rate": 1.0,
              "limit_sanity_rate": 1.0,
              "kinematic_tree_valid": 1.0
            },
            "strict": {
              "strict_pred_joint_count": 4,
              "strict_gt_joint_count": 0,
              "strict_joint_count_abs_error": 4,
              "strict_match_count": 0,
              "strict_joint_precision": 0.0,
              "strict_joint_recall": 0.0,
              "strict_joint_f1": 0.0,
              "strict_type_match_rate": 0.0,
              "strict_axis_mean_error_deg": 90.0,
              "strict_origin_mean_error": 0.0,
              "strict_tree_valid": 1.0,
              "strict_matches": []
            },
            "structure": {
              "root_count": 1,
              "duplicate_ids": 0,
              "dangling_parent_count": 0,
              "self_parent_count": 0,
              "cycle_node_count": 0,
              "child_mismatch_count": 0,
              "tree_valid_proxy": 1,
              "node_count": 5,
              "thin_part_count": 5,
              "invalid_aabb_count": 0,
              "mean_pair_aabb_overlap_ratio": 0.6883118702014872,
              "max_pair_aabb_overlap_ratio": 0.9994434591058216,
              "mean_parent_child_aabb_gap": 0.0,
              "max_parent_child_aabb_gap": 0.0,
              "mean_axis_origin_to_child_aabb_distance": 0.04979242072363138,
              "max_axis_origin_to_child_aabb_distance": 0.08863164580258948
            }
          },
          "meta": {
            "mode": "nonot_hierarchy_repair"
          },
          "proxy_glb": "samples/electronics_104030/nonot_hier_open.glb",
          "mesh_glb": "samples/electronics_104030/nonot_hier_mesh_open.glb"
        },
        "vlm_seg": {
          "mode": "vlm_segmentation",
          "actions": [
            {
              "type": "activate_joint",
              "node_id": 1,
              "reason": "vlm_segmentation"
            },
            {
              "type": "activate_joint",
              "node_id": 0,
              "reason": "vlm_segmentation"
            }
          ],
          "object_json": "samples/electronics_104030/object_vlm_seg.json",
          "open_glb": "samples/electronics_104030/vlm_seg_mesh_open.glb",
          "scores": {
            "raw": {
              "pred_joint_count": 5,
              "gt_joint_count": 0,
              "joint_count_accuracy": 0.0,
              "joint_count_abs_error": 5,
              "joint_type_accuracy": 0.0,
              "axis_mean_error_deg": 90.0,
              "origin_mean_error": 0.0,
              "axis_finite_rate": 1.0,
              "limit_sanity_rate": 1.0,
              "kinematic_tree_valid": 1.0
            },
            "strict": {
              "strict_pred_joint_count": 5,
              "strict_gt_joint_count": 0,
              "strict_joint_count_abs_error": 5,
              "strict_match_count": 0,
              "strict_joint_precision": 0.0,
              "strict_joint_recall": 0.0,
              "strict_joint_f1": 0.0,
              "strict_type_match_rate": 0.0,
              "strict_axis_mean_error_deg": 90.0,
              "strict_origin_mean_error": 0.0,
              "strict_tree_valid": 1.0,
              "strict_matches": []
            },
            "structure": {
              "root_count": 1,
              "duplicate_ids": 0,
              "dangling_parent_count": 0,
              "self_parent_count": 0,
              "cycle_node_count": 0,
              "child_mismatch_count": 0,
              "tree_valid_proxy": 1,
              "node_count": 5,
              "thin_part_count": 5,
              "invalid_aabb_count": 0,
              "mean_pair_aabb_overlap_ratio": 0.6883118702014872,
              "max_pair_aabb_overlap_ratio": 0.9994434591058216,
              "mean_parent_child_aabb_gap": 0.0,
              "max_parent_child_aabb_gap": 0.0,
              "mean_axis_origin_to_child_aabb_distance": 0.0,
              "max_axis_origin_to_child_aabb_distance": 0.0
            }
          },
          "meta": {
            "mode": "vlm_segmentation",
            "caption_category": "Printer",
            "caption": "the box in the middle of the road"
          },
          "proxy_glb": "samples/electronics_104030/vlm_seg_open.glb",
          "mesh_glb": "samples/electronics_104030/vlm_seg_mesh_open.glb"
        },
        "vlm_joint": {
          "mode": "vlm_joint",
          "actions": [
            {
              "type": "deactivate_joint",
              "node_id": 2,
              "reason": "vlm_joint_count"
            },
            {
              "type": "deactivate_joint",
              "node_id": 3,
              "reason": "vlm_joint_count"
            },
            {
              "type": "vlm_joint_retype",
              "node_id": 4,
              "target_type": "revolute"
            }
          ],
          "object_json": "samples/electronics_104030/object_vlm_joint.json",
          "open_glb": "samples/electronics_104030/vlm_joint_mesh_open.glb",
          "scores": {
            "raw": {
              "pred_joint_count": 1,
              "gt_joint_count": 0,
              "joint_count_accuracy": 0.0,
              "joint_count_abs_error": 1,
              "joint_type_accuracy": 0.0,
              "axis_mean_error_deg": 90.0,
              "origin_mean_error": 0.0,
              "axis_finite_rate": 1.0,
              "limit_sanity_rate": 1.0,
              "kinematic_tree_valid": 1.0
            },
            "strict": {
              "strict_pred_joint_count": 1,
              "strict_gt_joint_count": 0,
              "strict_joint_count_abs_error": 1,
              "strict_match_count": 0,
              "strict_joint_precision": 0.0,
              "strict_joint_recall": 0.0,
              "strict_joint_f1": 0.0,
              "strict_type_match_rate": 0.0,
              "strict_axis_mean_error_deg": 90.0,
              "strict_origin_mean_error": 0.0,
              "strict_tree_valid": 1.0,
              "strict_matches": []
            },
            "structure": {
              "root_count": 1,
              "duplicate_ids": 0,
              "dangling_parent_count": 0,
              "self_parent_count": 0,
              "cycle_node_count": 0,
              "child_mismatch_count": 0,
              "tree_valid_proxy": 1,
              "node_count": 5,
              "thin_part_count": 5,
              "invalid_aabb_count": 0,
              "mean_pair_aabb_overlap_ratio": 0.6883118702014872,
              "max_pair_aabb_overlap_ratio": 0.9994434591058216,
              "mean_parent_child_aabb_gap": 0.0,
              "max_parent_child_aabb_gap": 0.0,
              "mean_axis_origin_to_child_aabb_distance": 0.0,
              "max_axis_origin_to_child_aabb_distance": 0.0
            }
          },
          "meta": {
            "mode": "vlm_joint",
            "caption_category": "Printer",
            "caption": "the box in the middle of the road"
          },
          "proxy_glb": "samples/electronics_104030/vlm_joint_open.glb",
          "mesh_glb": "samples/electronics_104030/vlm_joint_mesh_open.glb"
        },
        "vlm_struct": {
          "mode": "vlm_structure",
          "actions": [
            {
              "type": "repair_hierarchy"
            }
          ],
          "object_json": "samples/electronics_104030/object_vlm_struct.json",
          "open_glb": "samples/electronics_104030/vlm_struct_mesh_open.glb",
          "scores": {
            "raw": {
              "pred_joint_count": 4,
              "gt_joint_count": 0,
              "joint_count_accuracy": 0.0,
              "joint_count_abs_error": 4,
              "joint_type_accuracy": 0.0,
              "axis_mean_error_deg": 90.0,
              "origin_mean_error": 0.0,
              "axis_finite_rate": 1.0,
              "limit_sanity_rate": 1.0,
              "kinematic_tree_valid": 1.0
            },
            "strict": {
              "strict_pred_joint_count": 4,
              "strict_gt_joint_count": 0,
              "strict_joint_count_abs_error": 4,
              "strict_match_count": 0,
              "strict_joint_precision": 0.0,
              "strict_joint_recall": 0.0,
              "strict_joint_f1": 0.0,
              "strict_type_match_rate": 0.0,
              "strict_axis_mean_error_deg": 90.0,
              "strict_origin_mean_error": 0.0,
              "strict_tree_valid": 1.0,
              "strict_matches": []
            },
            "structure": {
              "root_count": 1,
              "duplicate_ids": 0,
              "dangling_parent_count": 0,
              "self_parent_count": 0,
              "cycle_node_count": 0,
              "child_mismatch_count": 0,
              "tree_valid_proxy": 1,
              "node_count": 5,
              "thin_part_count": 5,
              "invalid_aabb_count": 0,
              "mean_pair_aabb_overlap_ratio": 0.6883118702014872,
              "max_pair_aabb_overlap_ratio": 0.9994434591058216,
              "mean_parent_child_aabb_gap": 0.0,
              "max_parent_child_aabb_gap": 0.0,
              "mean_axis_origin_to_child_aabb_distance": 0.04979242072363138,
              "max_axis_origin_to_child_aabb_distance": 0.08863164580258948
            }
          },
          "meta": {
            "mode": "vlm_structure",
            "caption_category": "Printer",
            "caption": "the box in the middle of the road"
          },
          "proxy_glb": "samples/electronics_104030/vlm_struct_open.glb",
          "mesh_glb": "samples/electronics_104030/vlm_struct_mesh_open.glb"
        }
      },
      "reference": {
        "open_glb": "samples/electronics_104030/reference_parts.glb"
      },
      "input": {
        "processed": "samples/electronics_104030/processed.png",
        "mask": "samples/electronics_104030/mask.png"
      }
    },
    {
      "sample": "small_appliances_103016",
      "dataset_category": "small_appliances",
      "object_category": "CoffeeMachine",
      "pm_id": "103016",
      "caption": "3d model of a box",
      "profile": {
        "caption": "3d model of a box",
        "category": "CoffeeMachine",
        "joint_type": "revolute",
        "structure_mode": "doors",
        "count_bias": 0,
        "caption_useful": false
      },
      "assets": {
        "raw_open": "samples/small_appliances_103016/raw_open.glb",
        "pact_mesh": "samples/small_appliances_103016/pact_generated_parts.glb",
        "reference_mesh": "samples/small_appliances_103016/reference_parts.glb",
        "processed": "samples/small_appliances_103016/processed.png",
        "mask": "samples/small_appliances_103016/mask.png"
      },
      "raw": {
        "object_json": "samples/small_appliances_103016/object_raw.json",
        "open_glb": "samples/small_appliances_103016/raw_open.glb",
        "scores": {
          "raw": {
            "pred_joint_count": 4,
            "gt_joint_count": 0,
            "joint_count_accuracy": 0.0,
            "joint_count_abs_error": 4,
            "joint_type_accuracy": 0.0,
            "axis_mean_error_deg": 90.0,
            "origin_mean_error": 0.0,
            "axis_finite_rate": 1.0,
            "limit_sanity_rate": 1.0,
            "kinematic_tree_valid": 1.0
          },
          "strict": {
            "strict_pred_joint_count": 4,
            "strict_gt_joint_count": 0,
            "strict_joint_count_abs_error": 4,
            "strict_match_count": 0,
            "strict_joint_precision": 0.0,
            "strict_joint_recall": 0.0,
            "strict_joint_f1": 0.0,
            "strict_type_match_rate": 0.0,
            "strict_axis_mean_error_deg": 90.0,
            "strict_origin_mean_error": 0.0,
            "strict_tree_valid": 1.0,
            "strict_matches": []
          },
          "structure": {
            "root_count": 1,
            "duplicate_ids": 0,
            "dangling_parent_count": 0,
            "self_parent_count": 0,
            "cycle_node_count": 0,
            "child_mismatch_count": 0,
            "tree_valid_proxy": 1,
            "node_count": 5,
            "thin_part_count": 5,
            "invalid_aabb_count": 0,
            "mean_pair_aabb_overlap_ratio": 0.5335437833391725,
            "max_pair_aabb_overlap_ratio": 1.0,
            "mean_parent_child_aabb_gap": 0.0,
            "max_parent_child_aabb_gap": 0.0,
            "mean_axis_origin_to_child_aabb_distance": 0.0,
            "max_axis_origin_to_child_aabb_distance": 0.0
          }
        }
      },
      "pact_mesh": {
        "open_glb": "samples/small_appliances_103016/pact_generated_parts.glb"
      },
      "variants": {
        "ot_2d": {
          "mode": "ot_2d_mask_transport",
          "actions": [
            {
              "type": "set_parent",
              "node_id": 4,
              "old_parent": 0,
              "new_parent": 3,
              "reason": "contact_ot"
            },
            {
              "type": "activate_joint",
              "node_id": 0,
              "reason": "mask_transport_count"
            },
            {
              "type": "activate_joint",
              "node_id": 3,
              "reason": "mask_transport_count"
            },
            {
              "type": "activate_joint",
              "node_id": 2,
              "reason": "mask_transport_count"
            }
          ],
          "object_json": "samples/small_appliances_103016/object_ot_2d.json",
          "open_glb": "samples/small_appliances_103016/ot_2d_mesh_open.glb",
          "scores": {
            "raw": {
              "pred_joint_count": 5,
              "gt_joint_count": 0,
              "joint_count_accuracy": 0.0,
              "joint_count_abs_error": 5,
              "joint_type_accuracy": 0.0,
              "axis_mean_error_deg": 90.0,
              "origin_mean_error": 0.0,
              "axis_finite_rate": 1.0,
              "limit_sanity_rate": 1.0,
              "kinematic_tree_valid": 1.0
            },
            "strict": {
              "strict_pred_joint_count": 5,
              "strict_gt_joint_count": 0,
              "strict_joint_count_abs_error": 5,
              "strict_match_count": 0,
              "strict_joint_precision": 0.0,
              "strict_joint_recall": 0.0,
              "strict_joint_f1": 0.0,
              "strict_type_match_rate": 0.0,
              "strict_axis_mean_error_deg": 90.0,
              "strict_origin_mean_error": 0.0,
              "strict_tree_valid": 1.0,
              "strict_matches": []
            },
            "structure": {
              "root_count": 1,
              "duplicate_ids": 0,
              "dangling_parent_count": 0,
              "self_parent_count": 0,
              "cycle_node_count": 0,
              "child_mismatch_count": 0,
              "tree_valid_proxy": 1,
              "node_count": 5,
              "thin_part_count": 5,
              "invalid_aabb_count": 0,
              "mean_pair_aabb_overlap_ratio": 0.5335437833391725,
              "max_pair_aabb_overlap_ratio": 1.0,
              "mean_parent_child_aabb_gap": 0.0007594451308250427,
              "max_parent_child_aabb_gap": 0.003037780523300171,
              "mean_axis_origin_to_child_aabb_distance": 0.0,
              "max_axis_origin_to_child_aabb_distance": 0.0
            }
          },
          "meta": {
            "mode": "ot_2d_mask_transport",
            "target_count": 6,
            "template_pm_id": "2994",
            "assignment_confidence": 0.4920009396366238
          },
          "proxy_glb": "samples/small_appliances_103016/ot_2d_open.glb",
          "mesh_glb": "samples/small_appliances_103016/ot_2d_mesh_open.glb"
        },
        "ot_proto": {
          "mode": "ot_prototype_bank",
          "actions": [
            {
              "type": "deactivate_joint",
              "node_id": 1,
              "reason": "prototype_count"
            },
            {
              "type": "prototype_align",
              "node_id": 4,
              "joint_type": "revolute",
              "category": "CoffeeMachine"
            }
          ],
          "object_json": "samples/small_appliances_103016/object_ot_proto.json",
          "open_glb": "samples/small_appliances_103016/ot_proto_mesh_open.glb",
          "scores": {
            "raw": {
              "pred_joint_count": 3,
              "gt_joint_count": 0,
              "joint_count_accuracy": 0.0,
              "joint_count_abs_error": 3,
              "joint_type_accuracy": 0.0,
              "axis_mean_error_deg": 90.0,
              "origin_mean_error": 0.0,
              "axis_finite_rate": 1.0,
              "limit_sanity_rate": 1.0,
              "kinematic_tree_valid": 1.0
            },
            "strict": {
              "strict_pred_joint_count": 3,
              "strict_gt_joint_count": 0,
              "strict_joint_count_abs_error": 3,
              "strict_match_count": 0,
              "strict_joint_precision": 0.0,
              "strict_joint_recall": 0.0,
              "strict_joint_f1": 0.0,
              "strict_type_match_rate": 0.0,
              "strict_axis_mean_error_deg": 90.0,
              "strict_origin_mean_error": 0.0,
              "strict_tree_valid": 1.0,
              "strict_matches": []
            },
            "structure": {
              "root_count": 1,
              "duplicate_ids": 0,
              "dangling_parent_count": 0,
              "self_parent_count": 0,
              "cycle_node_count": 0,
              "child_mismatch_count": 0,
              "tree_valid_proxy": 1,
              "node_count": 5,
              "thin_part_count": 5,
              "invalid_aabb_count": 0,
              "mean_pair_aabb_overlap_ratio": 0.5335437833391725,
              "max_pair_aabb_overlap_ratio": 1.0,
              "mean_parent_child_aabb_gap": 0.0,
              "max_parent_child_aabb_gap": 0.0,
              "mean_axis_origin_to_child_aabb_distance": 0.0,
              "max_axis_origin_to_child_aabb_distance": 0.0
            }
          },
          "meta": {
            "mode": "ot_prototype_bank",
            "target_count": 1,
            "category": "CoffeeMachine"
          },
          "proxy_glb": "samples/small_appliances_103016/ot_proto_open.glb",
          "mesh_glb": "samples/small_appliances_103016/ot_proto_mesh_open.glb"
        },
        "nonot_hier": {
          "mode": "nonot_hierarchy_repair",
          "actions": [
            {
              "type": "repair_hierarchy"
            }
          ],
          "object_json": "samples/small_appliances_103016/object_nonot_hier.json",
          "open_glb": "samples/small_appliances_103016/nonot_hier_mesh_open.glb",
          "scores": {
            "raw": {
              "pred_joint_count": 4,
              "gt_joint_count": 0,
              "joint_count_accuracy": 0.0,
              "joint_count_abs_error": 4,
              "joint_type_accuracy": 0.0,
              "axis_mean_error_deg": 90.0,
              "origin_mean_error": 0.0,
              "axis_finite_rate": 1.0,
              "limit_sanity_rate": 1.0,
              "kinematic_tree_valid": 1.0
            },
            "strict": {
              "strict_pred_joint_count": 4,
              "strict_gt_joint_count": 0,
              "strict_joint_count_abs_error": 4,
              "strict_match_count": 0,
              "strict_joint_precision": 0.0,
              "strict_joint_recall": 0.0,
              "strict_joint_f1": 0.0,
              "strict_type_match_rate": 0.0,
              "strict_axis_mean_error_deg": 90.0,
              "strict_origin_mean_error": 0.0,
              "strict_tree_valid": 1.0,
              "strict_matches": []
            },
            "structure": {
              "root_count": 1,
              "duplicate_ids": 0,
              "dangling_parent_count": 0,
              "self_parent_count": 0,
              "cycle_node_count": 0,
              "child_mismatch_count": 0,
              "tree_valid_proxy": 1,
              "node_count": 5,
              "thin_part_count": 5,
              "invalid_aabb_count": 0,
              "mean_pair_aabb_overlap_ratio": 0.5335437833391725,
              "max_pair_aabb_overlap_ratio": 1.0,
              "mean_parent_child_aabb_gap": 0.0,
              "max_parent_child_aabb_gap": 0.0,
              "mean_axis_origin_to_child_aabb_distance": 0.06510395283629777,
              "max_axis_origin_to_child_aabb_distance": 0.18006609470612261
            }
          },
          "meta": {
            "mode": "nonot_hierarchy_repair"
          },
          "proxy_glb": "samples/small_appliances_103016/nonot_hier_open.glb",
          "mesh_glb": "samples/small_appliances_103016/nonot_hier_mesh_open.glb"
        },
        "vlm_seg": {
          "mode": "vlm_segmentation",
          "actions": [
            {
              "type": "activate_joint",
              "node_id": 0,
              "reason": "vlm_segmentation"
            },
            {
              "type": "activate_joint",
              "node_id": 3,
              "reason": "vlm_segmentation"
            },
            {
              "type": "activate_joint",
              "node_id": 2,
              "reason": "vlm_segmentation"
            }
          ],
          "object_json": "samples/small_appliances_103016/object_vlm_seg.json",
          "open_glb": "samples/small_appliances_103016/vlm_seg_mesh_open.glb",
          "scores": {
            "raw": {
              "pred_joint_count": 5,
              "gt_joint_count": 0,
              "joint_count_accuracy": 0.0,
              "joint_count_abs_error": 5,
              "joint_type_accuracy": 0.0,
              "axis_mean_error_deg": 90.0,
              "origin_mean_error": 0.0,
              "axis_finite_rate": 1.0,
              "limit_sanity_rate": 1.0,
              "kinematic_tree_valid": 1.0
            },
            "strict": {
              "strict_pred_joint_count": 5,
              "strict_gt_joint_count": 0,
              "strict_joint_count_abs_error": 5,
              "strict_match_count": 0,
              "strict_joint_precision": 0.0,
              "strict_joint_recall": 0.0,
              "strict_joint_f1": 0.0,
              "strict_type_match_rate": 0.0,
              "strict_axis_mean_error_deg": 90.0,
              "strict_origin_mean_error": 0.0,
              "strict_tree_valid": 1.0,
              "strict_matches": []
            },
            "structure": {
              "root_count": 1,
              "duplicate_ids": 0,
              "dangling_parent_count": 0,
              "self_parent_count": 0,
              "cycle_node_count": 0,
              "child_mismatch_count": 0,
              "tree_valid_proxy": 1,
              "node_count": 5,
              "thin_part_count": 5,
              "invalid_aabb_count": 0,
              "mean_pair_aabb_overlap_ratio": 0.5335437833391725,
              "max_pair_aabb_overlap_ratio": 1.0,
              "mean_parent_child_aabb_gap": 0.0,
              "max_parent_child_aabb_gap": 0.0,
              "mean_axis_origin_to_child_aabb_distance": 0.0,
              "max_axis_origin_to_child_aabb_distance": 0.0
            }
          },
          "meta": {
            "mode": "vlm_segmentation",
            "caption_category": "CoffeeMachine",
            "caption": "3d model of a box"
          },
          "proxy_glb": "samples/small_appliances_103016/vlm_seg_open.glb",
          "mesh_glb": "samples/small_appliances_103016/vlm_seg_mesh_open.glb"
        },
        "vlm_joint": {
          "mode": "vlm_joint",
          "actions": [
            {
              "type": "deactivate_joint",
              "node_id": 1,
              "reason": "vlm_joint_count"
            },
            {
              "type": "vlm_joint_retype",
              "node_id": 4,
              "target_type": "revolute"
            }
          ],
          "object_json": "samples/small_appliances_103016/object_vlm_joint.json",
          "open_glb": "samples/small_appliances_103016/vlm_joint_mesh_open.glb",
          "scores": {
            "raw": {
              "pred_joint_count": 3,
              "gt_joint_count": 0,
              "joint_count_accuracy": 0.0,
              "joint_count_abs_error": 3,
              "joint_type_accuracy": 0.0,
              "axis_mean_error_deg": 90.0,
              "origin_mean_error": 0.0,
              "axis_finite_rate": 1.0,
              "limit_sanity_rate": 1.0,
              "kinematic_tree_valid": 1.0
            },
            "strict": {
              "strict_pred_joint_count": 3,
              "strict_gt_joint_count": 0,
              "strict_joint_count_abs_error": 3,
              "strict_match_count": 0,
              "strict_joint_precision": 0.0,
              "strict_joint_recall": 0.0,
              "strict_joint_f1": 0.0,
              "strict_type_match_rate": 0.0,
              "strict_axis_mean_error_deg": 90.0,
              "strict_origin_mean_error": 0.0,
              "strict_tree_valid": 1.0,
              "strict_matches": []
            },
            "structure": {
              "root_count": 1,
              "duplicate_ids": 0,
              "dangling_parent_count": 0,
              "self_parent_count": 0,
              "cycle_node_count": 0,
              "child_mismatch_count": 0,
              "tree_valid_proxy": 1,
              "node_count": 5,
              "thin_part_count": 5,
              "invalid_aabb_count": 0,
              "mean_pair_aabb_overlap_ratio": 0.5335437833391725,
              "max_pair_aabb_overlap_ratio": 1.0,
              "mean_parent_child_aabb_gap": 0.0,
              "max_parent_child_aabb_gap": 0.0,
              "mean_axis_origin_to_child_aabb_distance": 0.0,
              "max_axis_origin_to_child_aabb_distance": 0.0
            }
          },
          "meta": {
            "mode": "vlm_joint",
            "caption_category": "CoffeeMachine",
            "caption": "3d model of a box"
          },
          "proxy_glb": "samples/small_appliances_103016/vlm_joint_open.glb",
          "mesh_glb": "samples/small_appliances_103016/vlm_joint_mesh_open.glb"
        },
        "vlm_struct": {
          "mode": "vlm_structure",
          "actions": [
            {
              "type": "repair_hierarchy"
            }
          ],
          "object_json": "samples/small_appliances_103016/object_vlm_struct.json",
          "open_glb": "samples/small_appliances_103016/vlm_struct_mesh_open.glb",
          "scores": {
            "raw": {
              "pred_joint_count": 4,
              "gt_joint_count": 0,
              "joint_count_accuracy": 0.0,
              "joint_count_abs_error": 4,
              "joint_type_accuracy": 0.0,
              "axis_mean_error_deg": 90.0,
              "origin_mean_error": 0.0,
              "axis_finite_rate": 1.0,
              "limit_sanity_rate": 1.0,
              "kinematic_tree_valid": 1.0
            },
            "strict": {
              "strict_pred_joint_count": 4,
              "strict_gt_joint_count": 0,
              "strict_joint_count_abs_error": 4,
              "strict_match_count": 0,
              "strict_joint_precision": 0.0,
              "strict_joint_recall": 0.0,
              "strict_joint_f1": 0.0,
              "strict_type_match_rate": 0.0,
              "strict_axis_mean_error_deg": 90.0,
              "strict_origin_mean_error": 0.0,
              "strict_tree_valid": 1.0,
              "strict_matches": []
            },
            "structure": {
              "root_count": 1,
              "duplicate_ids": 0,
              "dangling_parent_count": 0,
              "self_parent_count": 0,
              "cycle_node_count": 0,
              "child_mismatch_count": 0,
              "tree_valid_proxy": 1,
              "node_count": 5,
              "thin_part_count": 5,
              "invalid_aabb_count": 0,
              "mean_pair_aabb_overlap_ratio": 0.5335437833391725,
              "max_pair_aabb_overlap_ratio": 1.0,
              "mean_parent_child_aabb_gap": 0.0,
              "max_parent_child_aabb_gap": 0.0,
              "mean_axis_origin_to_child_aabb_distance": 0.06510395283629777,
              "max_axis_origin_to_child_aabb_distance": 0.18006609470612261
            }
          },
          "meta": {
            "mode": "vlm_structure",
            "caption_category": "CoffeeMachine",
            "caption": "3d model of a box"
          },
          "proxy_glb": "samples/small_appliances_103016/vlm_struct_open.glb",
          "mesh_glb": "samples/small_appliances_103016/vlm_struct_mesh_open.glb"
        }
      },
      "reference": {
        "open_glb": "samples/small_appliances_103016/reference_parts.glb"
      },
      "input": {
        "processed": "samples/small_appliances_103016/processed.png",
        "mask": "samples/small_appliances_103016/mask.png"
      }
    },
    {
      "sample": "small_appliances_103466",
      "dataset_category": "small_appliances",
      "object_category": "Toaster",
      "pm_id": "103466",
      "caption": "3d model of a box",
      "profile": {
        "caption": "3d model of a box",
        "category": "Toaster",
        "joint_type": "revolute",
        "structure_mode": "doors",
        "count_bias": 0,
        "caption_useful": false
      },
      "assets": {
        "raw_open": "samples/small_appliances_103466/raw_open.glb",
        "pact_mesh": "samples/small_appliances_103466/pact_generated_parts.glb",
        "reference_mesh": "samples/small_appliances_103466/reference_parts.glb",
        "processed": "samples/small_appliances_103466/processed.png",
        "mask": "samples/small_appliances_103466/mask.png"
      },
      "raw": {
        "object_json": "samples/small_appliances_103466/object_raw.json",
        "open_glb": "samples/small_appliances_103466/raw_open.glb",
        "scores": {
          "raw": {
            "pred_joint_count": 3,
            "gt_joint_count": 0,
            "joint_count_accuracy": 0.0,
            "joint_count_abs_error": 3,
            "joint_type_accuracy": 0.0,
            "axis_mean_error_deg": 90.0,
            "origin_mean_error": 0.0,
            "axis_finite_rate": 1.0,
            "limit_sanity_rate": 1.0,
            "kinematic_tree_valid": 1.0
          },
          "strict": {
            "strict_pred_joint_count": 3,
            "strict_gt_joint_count": 0,
            "strict_joint_count_abs_error": 3,
            "strict_match_count": 0,
            "strict_joint_precision": 0.0,
            "strict_joint_recall": 0.0,
            "strict_joint_f1": 0.0,
            "strict_type_match_rate": 0.0,
            "strict_axis_mean_error_deg": 90.0,
            "strict_origin_mean_error": 0.0,
            "strict_tree_valid": 1.0,
            "strict_matches": []
          },
          "structure": {
            "root_count": 1,
            "duplicate_ids": 0,
            "dangling_parent_count": 0,
            "self_parent_count": 0,
            "cycle_node_count": 0,
            "child_mismatch_count": 0,
            "tree_valid_proxy": 1,
            "node_count": 4,
            "thin_part_count": 4,
            "invalid_aabb_count": 0,
            "mean_pair_aabb_overlap_ratio": 0.831318346907338,
            "max_pair_aabb_overlap_ratio": 1.0,
            "mean_parent_child_aabb_gap": 0.0,
            "max_parent_child_aabb_gap": 0.0,
            "mean_axis_origin_to_child_aabb_distance": 0.33980848275198516,
            "max_axis_origin_to_child_aabb_distance": 0.5282615407057267
          }
        }
      },
      "pact_mesh": {
        "open_glb": "samples/small_appliances_103466/pact_generated_parts.glb"
      },
      "variants": {
        "ot_2d": {
          "mode": "ot_2d_mask_transport",
          "actions": [],
          "object_json": "samples/small_appliances_103466/object_ot_2d.json",
          "open_glb": "samples/small_appliances_103466/ot_2d_mesh_open.glb",
          "scores": {
            "raw": {
              "pred_joint_count": 3,
              "gt_joint_count": 0,
              "joint_count_accuracy": 0.0,
              "joint_count_abs_error": 3,
              "joint_type_accuracy": 0.0,
              "axis_mean_error_deg": 90.0,
              "origin_mean_error": 0.0,
              "axis_finite_rate": 1.0,
              "limit_sanity_rate": 1.0,
              "kinematic_tree_valid": 1.0
            },
            "strict": {
              "strict_pred_joint_count": 3,
              "strict_gt_joint_count": 0,
              "strict_joint_count_abs_error": 3,
              "strict_match_count": 0,
              "strict_joint_precision": 0.0,
              "strict_joint_recall": 0.0,
              "strict_joint_f1": 0.0,
              "strict_type_match_rate": 0.0,
              "strict_axis_mean_error_deg": 90.0,
              "strict_origin_mean_error": 0.0,
              "strict_tree_valid": 1.0,
              "strict_matches": []
            },
            "structure": {
              "root_count": 1,
              "duplicate_ids": 0,
              "dangling_parent_count": 0,
              "self_parent_count": 0,
              "cycle_node_count": 0,
              "child_mismatch_count": 0,
              "tree_valid_proxy": 1,
              "node_count": 4,
              "thin_part_count": 4,
              "invalid_aabb_count": 0,
              "mean_pair_aabb_overlap_ratio": 0.831318346907338,
              "max_pair_aabb_overlap_ratio": 1.0,
              "mean_parent_child_aabb_gap": 0.0,
              "max_parent_child_aabb_gap": 0.0,
              "mean_axis_origin_to_child_aabb_distance": 0.33980848275198516,
              "max_axis_origin_to_child_aabb_distance": 0.5282615407057267
            }
          },
          "meta": {
            "mode": "ot_2d_mask_transport",
            "target_count": 3,
            "template_pm_id": "2994",
            "assignment_confidence": 0.3979694002098299
          },
          "proxy_glb": "samples/small_appliances_103466/ot_2d_open.glb",
          "mesh_glb": "samples/small_appliances_103466/ot_2d_mesh_open.glb"
        },
        "ot_proto": {
          "mode": "ot_prototype_bank",
          "actions": [
            {
              "type": "deactivate_joint",
              "node_id": 2,
              "reason": "prototype_count"
            },
            {
              "type": "deactivate_joint",
              "node_id": 3,
              "reason": "prototype_count"
            },
            {
              "type": "prototype_align",
              "node_id": 1,
              "joint_type": "revolute",
              "category": "Toaster"
            }
          ],
          "object_json": "samples/small_appliances_103466/object_ot_proto.json",
          "open_glb": "samples/small_appliances_103466/ot_proto_mesh_open.glb",
          "scores": {
            "raw": {
              "pred_joint_count": 1,
              "gt_joint_count": 0,
              "joint_count_accuracy": 0.0,
              "joint_count_abs_error": 1,
              "joint_type_accuracy": 0.0,
              "axis_mean_error_deg": 90.0,
              "origin_mean_error": 0.0,
              "axis_finite_rate": 1.0,
              "limit_sanity_rate": 1.0,
              "kinematic_tree_valid": 1.0
            },
            "strict": {
              "strict_pred_joint_count": 1,
              "strict_gt_joint_count": 0,
              "strict_joint_count_abs_error": 1,
              "strict_match_count": 0,
              "strict_joint_precision": 0.0,
              "strict_joint_recall": 0.0,
              "strict_joint_f1": 0.0,
              "strict_type_match_rate": 0.0,
              "strict_axis_mean_error_deg": 90.0,
              "strict_origin_mean_error": 0.0,
              "strict_tree_valid": 1.0,
              "strict_matches": []
            },
            "structure": {
              "root_count": 1,
              "duplicate_ids": 0,
              "dangling_parent_count": 0,
              "self_parent_count": 0,
              "cycle_node_count": 0,
              "child_mismatch_count": 0,
              "tree_valid_proxy": 1,
              "node_count": 4,
              "thin_part_count": 4,
              "invalid_aabb_count": 0,
              "mean_pair_aabb_overlap_ratio": 0.831318346907338,
              "max_pair_aabb_overlap_ratio": 1.0,
              "mean_parent_child_aabb_gap": 0.0,
              "max_parent_child_aabb_gap": 0.0,
              "mean_axis_origin_to_child_aabb_distance": 0.0,
              "max_axis_origin_to_child_aabb_distance": 0.0
            }
          },
          "meta": {
            "mode": "ot_prototype_bank",
            "target_count": 1,
            "category": "Toaster"
          },
          "proxy_glb": "samples/small_appliances_103466/ot_proto_open.glb",
          "mesh_glb": "samples/small_appliances_103466/ot_proto_mesh_open.glb"
        },
        "nonot_hier": {
          "mode": "nonot_hierarchy_repair",
          "actions": [
            {
              "type": "repair_hierarchy"
            }
          ],
          "object_json": "samples/small_appliances_103466/object_nonot_hier.json",
          "open_glb": "samples/small_appliances_103466/nonot_hier_mesh_open.glb",
          "scores": {
            "raw": {
              "pred_joint_count": 3,
              "gt_joint_count": 0,
              "joint_count_accuracy": 0.0,
              "joint_count_abs_error": 3,
              "joint_type_accuracy": 0.0,
              "axis_mean_error_deg": 90.0,
              "origin_mean_error": 0.0,
              "axis_finite_rate": 1.0,
              "limit_sanity_rate": 1.0,
              "kinematic_tree_valid": 1.0
            },
            "strict": {
              "strict_pred_joint_count": 3,
              "strict_gt_joint_count": 0,
              "strict_joint_count_abs_error": 3,
              "strict_match_count": 0,
              "strict_joint_precision": 0.0,
              "strict_joint_recall": 0.0,
              "strict_joint_f1": 0.0,
              "strict_type_match_rate": 0.0,
              "strict_axis_mean_error_deg": 90.0,
              "strict_origin_mean_error": 0.0,
              "strict_tree_valid": 1.0,
              "strict_matches": []
            },
            "structure": {
              "root_count": 1,
              "duplicate_ids": 0,
              "dangling_parent_count": 0,
              "self_parent_count": 0,
              "cycle_node_count": 0,
              "child_mismatch_count": 0,
              "tree_valid_proxy": 1,
              "node_count": 4,
              "thin_part_count": 4,
              "invalid_aabb_count": 0,
              "mean_pair_aabb_overlap_ratio": 0.831318346907338,
              "max_pair_aabb_overlap_ratio": 1.0,
              "mean_parent_child_aabb_gap": 0.0,
              "max_parent_child_aabb_gap": 0.0,
              "mean_axis_origin_to_child_aabb_distance": 0.07449492393061519,
              "max_axis_origin_to_child_aabb_distance": 0.17292283475399017
            }
          },
          "meta": {
            "mode": "nonot_hierarchy_repair"
          },
          "proxy_glb": "samples/small_appliances_103466/nonot_hier_open.glb",
          "mesh_glb": "samples/small_appliances_103466/nonot_hier_mesh_open.glb"
        },
        "vlm_seg": {
          "mode": "vlm_segmentation",
          "actions": [
            {
              "type": "activate_joint",
              "node_id": 0,
              "reason": "vlm_segmentation"
            }
          ],
          "object_json": "samples/small_appliances_103466/object_vlm_seg.json",
          "open_glb": "samples/small_appliances_103466/vlm_seg_mesh_open.glb",
          "scores": {
            "raw": {
              "pred_joint_count": 4,
              "gt_joint_count": 0,
              "joint_count_accuracy": 0.0,
              "joint_count_abs_error": 4,
              "joint_type_accuracy": 0.0,
              "axis_mean_error_deg": 90.0,
              "origin_mean_error": 0.0,
              "axis_finite_rate": 1.0,
              "limit_sanity_rate": 1.0,
              "kinematic_tree_valid": 1.0
            },
            "strict": {
              "strict_pred_joint_count": 4,
              "strict_gt_joint_count": 0,
              "strict_joint_count_abs_error": 4,
              "strict_match_count": 0,
              "strict_joint_precision": 0.0,
              "strict_joint_recall": 0.0,
              "strict_joint_f1": 0.0,
              "strict_type_match_rate": 0.0,
              "strict_axis_mean_error_deg": 90.0,
              "strict_origin_mean_error": 0.0,
              "strict_tree_valid": 1.0,
              "strict_matches": []
            },
            "structure": {
              "root_count": 1,
              "duplicate_ids": 0,
              "dangling_parent_count": 0,
              "self_parent_count": 0,
              "cycle_node_count": 0,
              "child_mismatch_count": 0,
              "tree_valid_proxy": 1,
              "node_count": 4,
              "thin_part_count": 4,
              "invalid_aabb_count": 0,
              "mean_pair_aabb_overlap_ratio": 0.831318346907338,
              "max_pair_aabb_overlap_ratio": 1.0,
              "mean_parent_child_aabb_gap": 0.0,
              "max_parent_child_aabb_gap": 0.0,
              "mean_axis_origin_to_child_aabb_distance": 0.0,
              "max_axis_origin_to_child_aabb_distance": 0.0
            }
          },
          "meta": {
            "mode": "vlm_segmentation",
            "caption_category": "Toaster",
            "caption": "3d model of a box"
          },
          "proxy_glb": "samples/small_appliances_103466/vlm_seg_open.glb",
          "mesh_glb": "samples/small_appliances_103466/vlm_seg_mesh_open.glb"
        },
        "vlm_joint": {
          "mode": "vlm_joint",
          "actions": [
            {
              "type": "deactivate_joint",
              "node_id": 2,
              "reason": "vlm_joint_count"
            },
            {
              "type": "deactivate_joint",
              "node_id": 3,
              "reason": "vlm_joint_count"
            },
            {
              "type": "vlm_joint_retype",
              "node_id": 1,
              "target_type": "revolute"
            }
          ],
          "object_json": "samples/small_appliances_103466/object_vlm_joint.json",
          "open_glb": "samples/small_appliances_103466/vlm_joint_mesh_open.glb",
          "scores": {
            "raw": {
              "pred_joint_count": 1,
              "gt_joint_count": 0,
              "joint_count_accuracy": 0.0,
              "joint_count_abs_error": 1,
              "joint_type_accuracy": 0.0,
              "axis_mean_error_deg": 90.0,
              "origin_mean_error": 0.0,
              "axis_finite_rate": 1.0,
              "limit_sanity_rate": 1.0,
              "kinematic_tree_valid": 1.0
            },
            "strict": {
              "strict_pred_joint_count": 1,
              "strict_gt_joint_count": 0,
              "strict_joint_count_abs_error": 1,
              "strict_match_count": 0,
              "strict_joint_precision": 0.0,
              "strict_joint_recall": 0.0,
              "strict_joint_f1": 0.0,
              "strict_type_match_rate": 0.0,
              "strict_axis_mean_error_deg": 90.0,
              "strict_origin_mean_error": 0.0,
              "strict_tree_valid": 1.0,
              "strict_matches": []
            },
            "structure": {
              "root_count": 1,
              "duplicate_ids": 0,
              "dangling_parent_count": 0,
              "self_parent_count": 0,
              "cycle_node_count": 0,
              "child_mismatch_count": 0,
              "tree_valid_proxy": 1,
              "node_count": 4,
              "thin_part_count": 4,
              "invalid_aabb_count": 0,
              "mean_pair_aabb_overlap_ratio": 0.831318346907338,
              "max_pair_aabb_overlap_ratio": 1.0,
              "mean_parent_child_aabb_gap": 0.0,
              "max_parent_child_aabb_gap": 0.0,
              "mean_axis_origin_to_child_aabb_distance": 0.0,
              "max_axis_origin_to_child_aabb_distance": 0.0
            }
          },
          "meta": {
            "mode": "vlm_joint",
            "caption_category": "Toaster",
            "caption": "3d model of a box"
          },
          "proxy_glb": "samples/small_appliances_103466/vlm_joint_open.glb",
          "mesh_glb": "samples/small_appliances_103466/vlm_joint_mesh_open.glb"
        },
        "vlm_struct": {
          "mode": "vlm_structure",
          "actions": [
            {
              "type": "repair_hierarchy"
            }
          ],
          "object_json": "samples/small_appliances_103466/object_vlm_struct.json",
          "open_glb": "samples/small_appliances_103466/vlm_struct_mesh_open.glb",
          "scores": {
            "raw": {
              "pred_joint_count": 3,
              "gt_joint_count": 0,
              "joint_count_accuracy": 0.0,
              "joint_count_abs_error": 3,
              "joint_type_accuracy": 0.0,
              "axis_mean_error_deg": 90.0,
              "origin_mean_error": 0.0,
              "axis_finite_rate": 1.0,
              "limit_sanity_rate": 1.0,
              "kinematic_tree_valid": 1.0
            },
            "strict": {
              "strict_pred_joint_count": 3,
              "strict_gt_joint_count": 0,
              "strict_joint_count_abs_error": 3,
              "strict_match_count": 0,
              "strict_joint_precision": 0.0,
              "strict_joint_recall": 0.0,
              "strict_joint_f1": 0.0,
              "strict_type_match_rate": 0.0,
              "strict_axis_mean_error_deg": 90.0,
              "strict_origin_mean_error": 0.0,
              "strict_tree_valid": 1.0,
              "strict_matches": []
            },
            "structure": {
              "root_count": 1,
              "duplicate_ids": 0,
              "dangling_parent_count": 0,
              "self_parent_count": 0,
              "cycle_node_count": 0,
              "child_mismatch_count": 0,
              "tree_valid_proxy": 1,
              "node_count": 4,
              "thin_part_count": 4,
              "invalid_aabb_count": 0,
              "mean_pair_aabb_overlap_ratio": 0.831318346907338,
              "max_pair_aabb_overlap_ratio": 1.0,
              "mean_parent_child_aabb_gap": 0.0,
              "max_parent_child_aabb_gap": 0.0,
              "mean_axis_origin_to_child_aabb_distance": 0.07449492393061519,
              "max_axis_origin_to_child_aabb_distance": 0.17292283475399017
            }
          },
          "meta": {
            "mode": "vlm_structure",
            "caption_category": "Toaster",
            "caption": "3d model of a box"
          },
          "proxy_glb": "samples/small_appliances_103466/vlm_struct_open.glb",
          "mesh_glb": "samples/small_appliances_103466/vlm_struct_mesh_open.glb"
        }
      },
      "reference": {
        "open_glb": "samples/small_appliances_103466/reference_parts.glb"
      },
      "input": {
        "processed": "samples/small_appliances_103466/processed.png",
        "mask": "samples/small_appliances_103466/mask.png"
      }
    }
  ]
}
