def analyze(self): image_set = ImageSet(self.in_path) image_set.sort() report_gen = CSVReportGenerator(os.path.join(self.report_path, 'noise_analysis.csv')) counter = 1 print 'Extracting using %s' % self.method_name for image in sorted(image_set, key=lambda img: img.filename): filename = os.path.splitext(os.path.basename(image.filename))[0] noise = self.analyze_single(image) #print 'Analyzing %d/%d: %s' % (counter, len(image_set.filelist), filename) print '%.2f' % noise counter += 1 report_gen.generate()
def extract(self): image_set = ImageSet(self.data_path) image_set.sort() output_path = os.path.join(self.result_path, self.__experiment.name + '.csv') report_gen = CSVReportGenerator(output_path, params=self.params) counter = 1 print 'Extracting using %s' % self.method_name for image in sorted(image_set, key=lambda img: img.filename): filename = os.path.splitext(os.path.basename(image.filename))[0] instance = session.query(Analysis).filter_by( filename=image.filename, experiment_name=self.__experiment.name, experiment_params=self.__experiment.params).first() if instance: analysis = instance else: try: analysis = self.analyze_mono_bead(image) analysis.experiment = self.__experiment session.add(analysis) print 'Analyzing %d/%d: %s' % ( counter, len(image_set.filelist), filename) except NoBeadException: print 'No Bead Exception: %s' % filename # Sholl Analysis Plots #self.plot_sholl_analysis(analysis, filename) # Add to overall report report_gen.add_analysis(filename, analysis) counter += 1 session.commit() report_gen.generate()