def create_settings(self): self.pipeline = None self.ipds = [] self.imported_metadata = [] module_explanation = [ "The %s module optionally allows you to extract information" % self.module_name, "describing your images (i.e, metadata) which will be stored along", "with your measurements. This information can be contained in the", "file name and/or location, or in an external file." ] self.set_notes([" ".join(module_explanation)]) self.wants_metadata = cps.Binary("Extract metadata?", False, doc=""" Do your file or path names or file headers contain information\n (metadata) you would like to extract and store along with your measurements?""") self.extraction_methods = [] self.add_extraction_method(False) self.extraction_method_count = cps.HiddenCount( self.extraction_methods, "Extraction method count") self.add_extraction_method_button = cps.DoSomething( "Add another extraction method", "Add", self.add_extraction_method) self.table = cps.Table("", use_sash=True) self.update_table_button = cps.DoSomething("Update table", "Update", self.update_table)
def create_settings(self): self.pipeline = None self.metadata_keys = {} module_explanation = [ "The %s module optionally allows you to split your list of images into image subsets" % self.module_name, "(groups) which will be processed independently of each other. Examples of", "groupings include screening batches, microtiter plates, time-lapse movies, etc." ] self.set_notes([" ".join(module_explanation)]) self.wants_groups = cps.Binary("Do you want to group your images?", False, doc=""" Select <i>%(YES)s</i> if you need to split your images into image subsets (or <i>groups</i>) such that each group is processed independently of each other. See the main module help for more details.""" % globals()) self.grouping_text = cps.HTMLText("", content=""" Each unique metadata value (or combination of values) will be defined as a group""", size=(30, 2)) self.grouping_metadata = [] self.grouping_metadata_count = cps.HiddenCount( self.grouping_metadata, "grouping metadata count") self.add_grouping_metadata(can_remove=False) self.add_grouping_metadata_button = cps.DoSomething( "", "Add another metadata item", self.add_grouping_metadata) self.grouping_list = cps.Table("Grouping list", min_size=(300, 100), doc=""" This list shows the unique values of the selected metadata under the "Group" column; each of the unique values comprises a group. The "Count" column shows the number of image sets that included in a given group; this is useful as a "sanity check", to make sure that the expected number of images are present. For example, if you are grouping by per-plate metadata from a 384-well assay with 2 sites per well consisting of 3 plates, you would expect to see 3 groups (each from the 3 unique plate IDs), with 384 wells × 2 sites/well = 768 image sets in each.""") self.image_set_list = cps.Table("Image sets", doc=""" This list displays the file name and location of each of the image sets that comprise the group. For example, if you are grouping by per-plate metadata from a 384-well assay with 2 sites per well consisting of 3 plates, you would expect to see a table consisting of 3 plates × 384 wells/plate ×2 sites/well = 2304 rows.""")