DOI: 10.5281/zenodo.4587902
title: Datasets for Evaluation of Multimodal Image Registration

description: <strong>Description</strong> <strong>Aerial data</strong> The Aerial dataset is divided into 3 sub-groups by IDs: {7, 9, 20, 3, 15, 18}, {10, 1, 13, 4, 11, 6, 16}, {14, 8, 17, 5, 19, 12, 2}. Since the images vary in size, each image is subdivided into the maximal number of equal-sized non-overlapping regions such that each region can contain exactly one 300x300 px image patch. Then one 300x300 px image patch is extracted from the centre of each region. The particular 3-folded grouping followed by splitting leads to that each evaluation fold contains 72 test samples. Modality A: Near-Infrared (NIR) Modality B: three colour channels (in B-G-R order) <strong>Cytological data</strong> The Cytological data contains images from 3 different cell lines; all images from one cell line is treated as one fold in 3-folded cross-validation. Each image in the dataset is subdivided from 600x600 px into 2x2 patches of size 300x300 px, so that there are 420 test samples in each evaluation fold. Modality A: Fluorescence Images Modality B: Quantitative Phase Images (QPI) <strong>Histological dataset</strong> For the Histological data, to avoid too easy registration relying on the circular border of the TMA cores, the evaluation images are created by cutting 834x834 px patches from the centres of the original 134 TMA image pairs. Modality A: Second Harmonic Generation (SHG) Modality B: Bright-Field (BF) The evaluation set created from the above three publicly available 2D datasets consists of images undergone 4 levels of (rigid) transformations of increasing size of displacement. The level of transformations is determined by the size of the rotation angle θ and the displacement tx & ty, detailed in this table. Each image sample is transformed exactly once at each transformation level so that all levels have the same number of samples. <strong>Radiological data</strong> The Radiological dataset is divided into 3 sub-groups by patient IDs: {109, 106, 003, 006}, {108, 105, 007, 001}, {107, 102, 005, 009}. Since the Radiological dataset is non-isotropic (and also of varying resolution), it is resampled using B-spline interpolation to 1 mm<sup>3</sup> cubic voxels, taking explicit care to not resample twice; displaced volumes are transformed and resampled in one step. Modality A: T1-weighted MRI Modality B: T2-weighted MRI (Run <code>make_rire_patches.py</code> to generate the sub-volumes.) Reference sub-volumes of size 210x210x70 voxels are cropped directly from centres of the (non-displaced) resampled volumes. Similarly as for the aforementioned 2D datasets, random (uniformly-distributed) transformations are composed of rotations θx, θy ∈ [-4, 4] degrees around the x- and y-axes, rotation θz ∈ [-20, 20] degrees around the z-axis, translations tx, ty ∈ [-19.6, 19.6] voxels in x and y directions and translation tz ∈ [-6.5, 6.5] voxels in z direction. 40 rigid transformations of increasing sizes of displacement are applied to each volume. Transformed sub-volumes, of size 210x210x70 voxels, are cropped from centres of the transformed and resampled volumes. In total, it contains 864 image pairs created from the aerial dataset, 5040 image pairs created from the cytological dataset, 536 image pairs created from the histological dataset, and metadata with scripts to create the 480 volume pairs from the radiological dataset. Each image pair consists of a reference patch \(I^{\text{Ref}}\) and its corresponding initial transformed patch \(I^{\text{Init}}\) in both modalities, along with the ground-truth transformation parameters to recover it. Scripts to calculate the registration performance and to plot the overall results can be found in https://github.com/MIDA-group/MultiRegEval, and instructions to generate more evaluation data with different settings can be found in https://github.com/MIDA-group/MultiRegEval/tree/master/Datasets#instructions-for-customising-evaluation-data. <strong>Metadata</strong> In the <code>*.zip</code> files, each row in <code>{Zurich,Balvan}_patches/fold[1-3]/patch_tlevel[1-4]/info_test.csv</code> or <code>Eliceiri_patches/patch_tlevel[1-4]/info_test.csv</code> provides the information of an image pair as follow: Filename: identifier(ID) of the image pair X1_Ref: x-coordinate of the upper-left corner of reference patch I<sub>Ref</sub> Y1_Ref: y-coordinate of the upper-left corner of reference patch I<sub>Ref</sub> X2_Ref: x-coordinate of the lower-left corner of reference patch I<sub>Ref</sub> Y2_Ref: y-coordinate of the lower-left corner of reference patch I<sub>Ref</sub> X3_Ref: x-coordinate of the lower-right corner of reference patch I<sub>Ref</sub> Y3_Ref: y-coordinate of the lower-right corner of reference patch I<sub>Ref</sub> X4_Ref: x-coordinate of the upper-right corner of reference patch I<sub>Ref</sub> Y4_Ref: y-coordinate of the upper-right corner of reference patch I<sub>Ref</sub> X1_Trans: x-coordinate of the upper-left corner of transformed patch I<sub>Init</sub> Y1_Trans: y-coordinate of the upper-left corner of transformed patch I<sub>Init</sub> X2_Trans: x-coordinate of the lower-left corner of transformed patch I<sub>Init</sub> Y2_Trans: y-coordinate of the lower-left corner of transformed patch I<sub>Init</sub> X3_Trans: x-coordinate of the lower-right corner of transformed patch I<sub>Init</sub> Y3_Trans: y-coordinate of the lower-right corner of transformed patch I<sub>Init</sub> X4_Trans: x-coordinate of the upper-right corner of transformed patch I<sub>Init</sub> Y4_Trans: y-coordinate of the upper-right corner of transformed patch I<sub>Init</sub> Displacement: mean Euclidean distance between reference corner points and transformed corner points RelativeDisplacement: the ratio of displacement to the width/height of image patch Tx: randomly generated translation in the x-direction to synthesise the transformed patch I<sub>Init</sub> Ty: randomly generated translation in the y-direction to synthesise the transformed patch I<sub>Init</sub> AngleDegree: randomly generated rotation in degrees to synthesise the transformed patch I<sub>Init</sub> AngleRad: randomly generated rotation in radian to synthesise the transformed patch I<sub>Init</sub> In addition, each row in <code>RIRE_patches/fold[1-3]/patch_tlevel[1-4]/info_test.csv</code> has following columns: Z1_Ref: z-coordinate of the upper-left corner of reference patch I<sub>Ref</sub> Z2_Ref: z-coordinate of the lower-left corner of reference patch I<sub>Ref</sub> Z3_Ref: z-coordinate of the lower-right corner of reference patch I<sub>Ref</sub> Z4_Ref: z-coordinate of the upper-right corner of reference patch I<sub>Ref</sub> Z1_Trans: z-coordinate of the upper-left corner of transformed patch I<sub>Init</sub> Z2_Trans: z-coordinate of the lower-left corner of transformed patch I<sub>Init</sub> Z3_Trans: z-coordinate of the lower-right corner of transformed patch I<sub>Init</sub> Z4_Trans: z-coordinate of the upper-right corner of transformed patch I<sub>Init</sub> (...and similarly, coordinates of the 5th-8th corners) Tz: randomly generated translation in z-direction to synthesise the transformed patch I<sub>Init</sub> AngleDegreeX: randomly generated rotation around X-axis in degrees to synthesise the transformed patch I<sub>Init</sub> AngleRadX: randomly generated rotation around X-axis in radian to synthesise the transformed patch I<sub>Init</sub> AngleDegreeY: randomly generated rotation around Y-axis in degrees to synthesise the transformed patch I<sub>Init</sub> AngleRadY: randomly generated rotation around Y-axis in radian to synthesise the transformed patch I<sub>Init</sub> AngleDegreeZ: randomly generated rotation around Z-axis in degrees to synthesise the transformed patch I<sub>Init</sub> AngleRadZ: randomly generated rotation around Z-axis in radian to synthesise the transformed patch I<sub>Init</sub> <strong>Naming convention</strong> <strong>Aerial Data</strong> <pre> zh{ID}_{iRow}_{iCol}_{ReferenceOrTransformed}.png</pre> Example: <code>zh5_03_02_R.png</code> indicates the <em>Reference </em>patch of the <em>3rd row</em> and <em>2nd column</em> cut from the image with ID <code>zh5</code>. <strong>Cytological data</strong> <pre> {{cellline}_{treatment}_{fieldofview}_{iFrame}}_{iRow}_{iCol}_{ReferenceOrTransformed}.png</pre> Example: <code>PNT1A_do_1_f15_02_01_T.png</code> indicates the <em>Transformed </em>patch of the <em>2nd row</em> and <em>1st column</em> cut from the image with ID <code>PNT1A_do_1_f15</code>. <strong>Histological data</strong> <pre> {ID}_{ReferenceOrTransformed}.tif</pre> Example: <code>1B_A4_T.tif</code> indicates the <em>Transformed </em>patch cut from the image with ID <code>1B_A4</code>. <strong>Radiological Data</strong> <pre> patient_{ID}_{iTransform}_T.mhd</pre> <pre> patient_{ID}_R.mhd </pre> Example: <code>patient_003_8_T.mhd</code> indicates the sub-volume <em>Transformed </em>with the <em>8th random transformation</em> cut from the volume with patient ID <code>003</code>; <code>patient_003_R.mhd</code> indicates the <em>Reference </em>sub-volume the volume with patient ID <code>003</code>. This dataset was originally produced by the authors of <em>Is Image-to-Image Translation the Panacea for Multimodal Image Registration? A Comparative Study</em>.