Skip to content

Commit fa0331a

Browse files
committed
removing the Status Enums
1 parent b77e74d commit fa0331a

File tree

3 files changed

+22
-8
lines changed

3 files changed

+22
-8
lines changed

superannotate/common.py

Lines changed: 13 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -33,13 +33,21 @@
3333
"FailedAfterEvaluationWithSavedModel": 6
3434
}
3535

36+
_PREDICTION_SEGMENTATION_STATUSES = {
37+
"NotStarted": 1,
38+
"InProgress": 2,
39+
"Completed": 3,
40+
"Failed": 4
41+
}
3642

37-
class PredictionSegmentationStatuses(IntEnum):
38-
NotStarted = 1
39-
InProgress = 2
40-
Completed = 3
41-
Failed = 4
43+
def prediction_segmentation_status_from_str_to_int(status):
44+
return _PREDICTION_SEGMENTATION_STATUSES[status]
4245

46+
def prediction_segmentation_status_from_int_to_str(status):
47+
for idx, item in _PREDICTION_SEGMENTATION_STATUSES.items():
48+
if item == status:
49+
return idx
50+
raise RuntimeError("NA segmentation/prediction status")
4351

4452
def model_training_status_int_to_str(project_status):
4553
for item in _MODEL_TRAINING_STATUSES:

superannotate/db/images.py

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -160,6 +160,11 @@ def get_image_metadata(project, image_names):
160160
)
161161

162162
metadata = response.json()
163+
for item in metadata:
164+
item['annotation_status'] = common.annotation_status_int_to_str(item['annotation_status'])
165+
item['prediction_status'] = common.prediction_segmentation_status_from_int_to_str(item['prediction_status'])
166+
item['segmentation_status'] = common.prediction_segmentation_status_from_int_to_str(item['segmentation_status'])
167+
163168
if len(metadata) == 1:
164169
return metadata[0]
165170
return metadata

superannotate/ml/utils.py

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
from ..db.images import get_image_metadata
2-
from ..common import PredictionSegmentationStatuses
2+
from ..common import _PREDICTION_SEGMENTATION_STATUSES
33
from .defaults import PLOTTABLE_METRICS
44
from ast import literal_eval
55
import pandas as pd
@@ -60,13 +60,14 @@ def get_images_prediction_segmentation_status(project, image_names, task):
6060
metadata = get_image_metadata(project, image_names)
6161
if isinstance(metadata, dict):
6262
metadata = [metadata]
63+
6364
success_names = [
6465
x['name']
65-
for x in metadata if x[task] == PredictionSegmentationStatuses.Completed
66+
for x in metadata if x[task] == 'Completed'
6667
]
6768
failure_names = [
6869
x['name']
69-
for x in metadata if x[task] == PredictionSegmentationStatuses.Failed
70+
for x in metadata if x[task] == 'Failed'
7071
]
7172
return success_names, failure_names
7273

0 commit comments

Comments
 (0)