1) We curate a collection of DICOM files that will contribute to a dataset.
2) Each DICOM file is assigned to a dataset class - currently there are two
3) Each DICOM file is given a 64 character hexadecimal code, e.g. 4d44413619e0161c5ab795bc1b899f7fb4bd0b2f5ab2efc881ecfc663d3bfb66
4) Each image within a DICOM (typically an individual frame for echo) gets given a number padded to 4 digits, starting from 0000 and going to 9999.
5) These images are extracted from the DICOM file, burnt-in meta-data masked, and saved as a png with their code as a filename - e.g. 01-4d44413619e0161c5ab795bc1b899f7fb4bd0b2f5ab2efc881ecfc663d3bfb66-0000.png
6) The individual images that make up a dataset for a paper are saved in a folder called png-cache, with sub directories for the dataset class (e.g. /01) and then the first two pairs of hexadecimal digits (e.g. /4d/44), i.e. /png-cache/01/4d/44/4d44413619e0161c5ab795bc1b899f7fb4bd0b2f5ab2efc881ecfc663d3bfb66-0000.png
7) This folder is then compressed to form png-cache.zip
Not all files may have an associated label - e.g. all the frames of a video may be included, but only a few of them have expert labels
These are stored as JSON files. The development dataset (provided as labels-all.json) is divided up into:
For each image file (which acts as the key), there is a dictionary for every possible label. Each label for an image may have a type of:
For convenience each of the .json files have an equivalent .txt file with a list of the contained images.
Any questions Dr. Matthew Shun-Shin