fidopt Interactive view

OpenKBP

Head and neck radiotherapy planning CTs of two patients, downsampled to 128 x 128 x 128 voxels by the OpenKBP challenge, with the organs at risk the clinics contoured on both, paired by us.

43 test pairshead and neckinter-patientfixed CT, moving CTaligned once by the benchmarkresearch only
Read before comparing (11)
  • Truth. The contours each of twelve institutions drew in the clinic between 1999 and 2014, renamed by the organisers and never reviewed against one atlas. Where the cord, oesophagus and larynx stop follows each clinic's practice, which bounds their overlap between two patients whatever the registration.
  • Missing organs. An organ the clinic did not contour is absent: of the 86 test patients 78 have a brainstem, 74 a cord, 86 and 85 the parotids, 40 an oesophagus, 46 a larynx and 65 a mandible. A pair is scored on the organs both patients hold.
  • Wrong masks. The cords of pt_283 and pt_260 fan out from the cord to the back of the neck on most slices, 1,359 and 422 mL where the other cords measure 9 to 65: prepare.py leaves them out, as if not contoured.
  • Grid. Up to 128 x 128 x 128 voxels about the targets' dose-weighted centre, each four of the original pixels across (2.0 to 5.4 mm, mostly 3.9 or 4.7) and one original slice deep (1.5 to 3.3 mm); the provider downsampled the masks too, so a parotid is a few hundred voxels and its edge a voxel wide.
  • Images. The files store CT plus 1024, clipped by us to 0 to 4095 as the provider advises, and keep no position: each image is written in Hounsfield units, head up, the provider's grid centred at the origin. The axes were read from the parotids, the cord and the aortic arch.
  • Slices. Above and below the head and neck the provider's CT is often blank but for a few voxels about the contoured cord or brainstem, which would draw the truth's outline: on 35 of the 86 test patients an organ had a quarter or more of its voxels on such slices. prepare.py keeps, in the image and its labels alike, the slices from the lowest to the highest whose body, the CT above -500 HU, covers a tenth of the patient's largest body slice: 33 to 128 a patient, 110 at the median. Where the provider kept the CT on one side of the neck only, the cord or the brainstem stood apart as a blob shaped like its contour, on 19 patients: on each kept slice a piece of body under 100 voxels apart from the slice's largest is set to air, the labels untouched; it also takes specks, couch remnants and, inside the body, small islands in lung or sinus air (22,035 voxels over 93 patients, 4 of them on a label). No slice left holds CT only about the organs, and no piece of CT hugs one; pt_5's larynx, all on blank slices, is gone.
  • Alignment. The moving image's and labels' headers carry one translation from elastix on the intensities, no contour used; from the grids' centres alone elastix did worse (Dice 0.31).
  • Held out. Two test pairs that cannot be scored: pt_284_pt_329 holds no organ in common (pt_329 only a cord), and pt_318's CT holds only the region about its targets (1,200 mL of body against a median of 6,300), so the translation put pt_296's parotids, pt_318's only organs, 204 mm off and outside the image.
  • Baseline. With no registration the 43 test pairs start at a Dice of 0.33 (0.02 to 0.59), against 0.16 with the grids' centres together, and an HD95 of 24 mm (9 to 64). The translation does worse than the centres on 8 of them, by up to 0.08.
  • Unused. The dose distributions, computed from synthetic plans, the PTV masks and the possible-dose masks are not used.
  • Overlap. One source collection, Head-Neck Cetuximab, is PDDCA's, and OpenKBP renames its patients pt_1 to pt_340. Its in-plane voxel is about four original pixels and its slice the original one, so the patients whose voxel matches one of PDDCA's 32 corpus scans are left out: 10 test and 24 training patients, 15 of them PDDCA scans by the 3D check below. That rule missed one, as OpenKBP's voxel sizes are not exact (it stores one CT at 3.906 and 3.92 mm): correlating the CTs in 3D, which scores known duplicates 0.77 to 0.84, matches the training patient pt_36 to 0522c0248 (0.81), a PDDCA test patient whose CT OpenKBP also stores as pt_293; pt_36 is left out with its pair. Every patient of the cases scores 0.56 or less against PDDCA, and none matches another (pt_36 and pt_293: 1.00; next 0.62).

No method has a result on every pair of this dataset yet.

Pair by pair

Click a score to look at that result: the fixed image, and over it the moving image after registration, with the annotations. Underlined scores have their image; for the others you see the pair without the result. A green cell gained against no registration on that pair, a red one lost.

About the data

Test pairs
The provider's test patients stay test, paired two by two in the order of sha256("2026:OpenKBP:<patient>"): 43 pairs, once the 10 patients that could be PDDCA's and two pairs that cannot be scored are out. 10 development pairs are drawn with seed 2026 among the 87 pairs its training patients make, 24 left out likewise and pt_36, PDDCA's 0522c0248, with its pair; the 40 validation patients are not used.
Truth
contours by experts the organs at risk as the treating clinic contoured them for planning, relabelled and downsampled by the OpenKBP organisers: 1 brainstem, 2 spinal cord, 3 right and 4 left parotid, 5 oesophagus, 6 larynx, 7 mandible
Licence
MIT (the repository's LICENSE); the CTs and contours come from four TCIA collections, CC BY 3.0, that TCIA now keeps under NIH controlled access
10 pairs for tuning, never tested

pt_39_pt_1, pt_84_pt_37, pt_98_pt_172, pt_5_pt_175, pt_136_pt_19, pt_65_pt_133, pt_83_pt_99, pt_47_pt_197, pt_15_pt_51, pt_3_pt_62