NifTK / NiftyNet

[unmaintained] An open-source convolutional neural networks platform for research in medical image analysis and image-guided therapy
http://niftynet.io
Apache License 2.0
1.36k stars 404 forks source link

Sections containing `csv_data_file` are not loaded #478

Open javierbg opened 4 years ago

javierbg commented 4 years ago

In commit 25e6204d97ee2157360ee93a1a65d07523326b82, the way that CSV data files were handled was last modified. Specifically, in niftynet.io.image_sets_partitioner.ImageSetsPartitioner, method load_data_sections_by_subject:

        for section_name in self.data_param:

            if isinstance(self.data_param[section_name], dict):
                mod_spec = self.data_param[section_name]
            else:
                mod_spec = vars(self.data_param[section_name])
            if mod_spec.get('csv_data_file', None):  # has csv_data_file
                # skip file search
                continue

This skips all sections where a 'csv_data_file' has been specified. I can't find the part of the code where these sections are supposed to be loaded, and can't find a reference documenting this.

I was looking into this because currently I have to perform a "hack" in order to input the class label as conditioning data in GANApplication, where I need to pass the label as a 1x1x1 image for each subject. Also, for ClassificationApplication, how would the class label be specified? Is this a bug? I am willing to submit a pull request fixing this, but I wanted to make sure that I understand the reason behind this fully.