Esempio n. 1
0
    def _add_annotation_constraints(self, job_info):

        constraints_data = self.metadata.get('annotation_constraints')

        if constraints_data is not None:

            for data in constraints_data:

                name = _get_required(data, 'name', 'annotation constraint')

                self._logger.info(
                    'Adding annotation constraint "{}"...'.format(name))

                description = data.get('description', '')
                text = yaml_utils.dump(data)
                creation_time = time_utils.get_utc_now()
                creating_user = None
                creating_job = Job.objects.get(id=job_info.job_id)

                AnnotationConstraint.objects.create(
                    name=name,
                    description=description,
                    text=text,
                    creation_time=creation_time,
                    creating_user=creating_user,
                    creating_job=creating_job)
 def _add_annotation_constraints(self, job_info):
     
     constraints_data = self.archive_data.get('annotation_constraints')
     
     if constraints_data is not None:
         
         for data in constraints_data:
             
             name = _get_required(data, 'name', 'annotation constraint')
             
             self._logger.info(
                 'Adding annotation constraint "{}"...'.format(name))
             
             description = data.get('description', '')
             text = yaml_utils.dump(data)
             creation_time = time_utils.get_utc_now()
             creating_user = None
             creating_job = Job.objects.get(id=job_info.job_id)
             
             AnnotationConstraint.objects.create(
                 name=name,
                 description=description,
                 text=text,
                 creation_time=creation_time,
                 creating_user=creating_user,
                 creating_job=creating_job)
Esempio n. 3
0
def save_classifier(model, settings, stats):
    
    clip_type = settings.clip_type
    
    path = classifier_utils.get_model_file_path(clip_type)
    path.parent.mkdir(exist_ok=True)
    model.save(str(path))
    
    settings = create_classifier_settings(settings, stats)
    text = yaml_utils.dump(settings, default_flow_style=False)
    path = classifier_utils.get_settings_file_path(clip_type)
    path.write_text(text)
Esempio n. 4
0
def save_classifier(model, settings, stats):

    clip_type = settings.clip_type

    path = classifier_utils.get_model_file_path(clip_type)
    path.parent.mkdir(exist_ok=True)
    model.save(str(path))

    settings = create_classifier_settings(settings, stats)
    text = yaml_utils.dump(settings, default_flow_style=False)
    path = classifier_utils.get_settings_file_path(clip_type)
    path.write_text(text)
Esempio n. 5
0
    def _save_settings(self, dir_path):

        # Find classification threshold and add it to settings.
        self.settings.classification_threshold = find_classification_threshold(
            self.val_stats, self.settings.min_classifier_recall)

        # Add TensorFlow model input name to settings.
        self.settings.model_input_name = self.model_input_name

        # Save settings.
        settings = self.settings.__dict__
        text = yaml_utils.dump(settings, default_flow_style=False)
        file_path = dir_path / classifier_utils.SETTINGS_FILE_NAME
        file_path.write_text(text)
Esempio n. 6
0
def save_training_settings(settings, training_name):
    file_path = annotator_utils.get_training_settings_file_path(training_name)
    text = yaml_utils.dump(settings.__dict__, default_flow_style=False)
    file_path.write_text(text)
Esempio n. 7
0
 def test_dump_and_load(self):
     x = {'x': 1, 'y': [1, 2, 3], 'z': {'one': 1}}
     s = yaml_utils.dump(x)
     y = yaml_utils.load(s)
     self.assertEqual(x, y)
Esempio n. 8
0
 def test_dump_and_load_with_non_default_flow_style(self):
     x = {'x': 1, 'y': [1, 2, 3], 'z': {'one': 1}}
     s = yaml_utils.dump(x, default_flow_style=False)
     y = yaml_utils.load(s)
     self.assertEqual(x, y)
Esempio n. 9
0
 def test_dump_and_load(self):
     x = {'x': 1, 'y': [1, 2, 3], 'z': {'one': 1}}
     s = yaml_utils.dump(x)
     y = yaml_utils.load(s)
     self.assertEqual(x, y)
Esempio n. 10
0
 def test_dump_and_load_with_non_default_flow_style(self):
     x = {'x': 1, 'y': [1, 2, 3], 'z': {'one': 1}}
     s = yaml_utils.dump(x, default_flow_style=False)
     y = yaml_utils.load(s)
     self.assertEqual(x, y)