Exemple #1
0
 def make_workspace(self, object_dict={}, image_dict={}):
     '''Make a workspace for testing MeasureImageIntensity'''
     module = M.MeasureImageIntensity()
     pipeline = cpp.Pipeline()
     object_set = cpo.ObjectSet()
     image_set_list = cpi.ImageSetList()
     image_set = image_set_list.get_image_set(0)
     workspace = cpw.Workspace(pipeline, module, image_set, object_set,
                               cpmeas.Measurements(), image_set_list)
     for key in image_dict.keys():
         image_set.add(key, cpi.Image(image_dict[key]))
     for key in object_dict.keys():
         o = cpo.Objects()
         o.segmented = object_dict[key]
         object_set.add_objects(o, key)
     return workspace, module
Exemple #2
0
 def test_03_01_get_measurement_columns(self):
     module = M.MeasureImageIntensity()
     image_names = ['image%d' % i for i in range(3)]
     object_names = ['object%d' % i for i in range(3)]
     first = True
     expected_suffixes = []
     for image_name in image_names:
         if first:
             first = False
         else:
             module.add_image_measurement()
         im = module.images[-1]
         im.image_name.value = image_name
         im.wants_objects.value = False
         expected_suffixes.append(image_name)
         for object_name in object_names:
             module.add_image_measurement()
             im = module.images[-1]
             im.image_name.value = image_name
             im.wants_objects.value = True
             im.object_name.value = object_name
             expected_suffixes.append("%s_%s" % (image_name, object_name))
     columns = module.get_measurement_columns(None)
     self.assertTrue(all([column[0] == cpmeas.IMAGE for column in columns]))
     for expected_suffix in expected_suffixes:
         for feature, coltype in ((M.F_TOTAL_INTENSITY,
                                   cpmeas.COLTYPE_FLOAT),
                                  (M.F_MEAN_INTENSITY,
                                   cpmeas.COLTYPE_FLOAT),
                                  (M.F_MIN_INTENSITY, cpmeas.COLTYPE_FLOAT),
                                  (M.F_MAX_INTENSITY, cpmeas.COLTYPE_FLOAT),
                                  (M.F_TOTAL_AREA, cpmeas.COLTYPE_INTEGER),
                                  (M.F_PERCENT_MAXIMAL,
                                   cpmeas.COLTYPE_FLOAT),
                                  (M.F_MAD_INTENSITY, cpmeas.COLTYPE_FLOAT),
                                  (M.F_LOWER_QUARTILE,
                                   cpmeas.COLTYPE_FLOAT),
                                  (M.F_UPPER_QUARTILE,
                                   cpmeas.COLTYPE_FLOAT)):
             # feature names are now formatting strings
             feature_name = feature % expected_suffix
             self.assertTrue(
                 any([(column[1] == feature_name and column[2] == coltype)
                      for column in columns]))