Skip to content

Commit a63ff14

Browse files
review_changes
1 parent 20d217c commit a63ff14

File tree

9 files changed

+142
-141
lines changed

9 files changed

+142
-141
lines changed

README.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -46,9 +46,9 @@ pip3 install -r requirements.txt
4646
Quick intro to Image Annotation Conversion feature
4747

4848
```python
49-
from clarifai_utils import Image_Annotations
49+
from clarifai_utils import ImageAnnotations
5050

51-
annotated_dataset = Image_Annotations.import_from(path= 'folder_path', format= 'annotation_format')
51+
annotated_dataset = ImageAnnotations.import_from(path= 'folder_path', format= 'annotation_format')
5252
```
5353

5454
## Features
@@ -63,12 +63,12 @@ annotated_dataset = Image_Annotations.import_from(path= 'folder_path', format= '
6363
## Usage
6464
### Image Annotation conversion
6565
```python
66-
from clarifai_utils import Image_Annotations
66+
from clarifai_utils import ImageAnnotations
6767
#import from folder
68-
coco_dataset = Image_Annotations.import_from(path='folder_path',format= 'coco_detection')
68+
coco_dataset = ImageAnnotations.import_from(path='folder_path',format= 'coco_detection')
6969

7070
#clarifai dataset loader object
71-
coco_dataset.clarifai_loader()
71+
coco_dataset.dataloader
7272

7373

7474
#info about loaded dataset

clarifai_utils/__init__.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
1-
from clarifai_utils.image.annotation_conversion.annotations import Image_Annotations
1+
from clarifai_utils.image.annotation_conversion.annotations import ImageAnnotations
22

3-
__all__ = ['Image_Annotations']
3+
__all__ = ['ImageAnnotations']

clarifai_utils/image/annotation_conversion/README.md

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -7,12 +7,12 @@ A framework to load, export and analyze different annotated datasets.
77

88
### Features
99
```python
10-
from clarifai_utils import Image_Annotations
10+
from clarifai_utils import ImageAnnotations
1111
#import from folder
12-
coco_dataset = Image_Annotations.import_from(path='folder_path',format= 'coco_detection')
12+
coco_dataset = ImageAnnotations.import_from(path='folder_path',format= 'coco_detection')
1313

1414
#clarifai dataset loader object
15-
coco_dataset.clarifai_loader()
15+
coco_dataset.dataloader
1616

1717

1818
#info about loaded dataset
@@ -26,14 +26,14 @@ coco_dataset.export_to('voc_detection')
2626

2727
### With Clarifai Python SDK
2828
```python
29-
from clarifai_utils import Image_Annotations
30-
coco_dataset = Image_Annotations.import_from(path='folder_path',format= 'coco_detection')
29+
from clarifai_utils import ImageAnnotations
30+
coco_dataset = ImageAnnotations.import_from(path='folder_path',format= 'coco_detection')
3131

3232
#clarifai SDK
3333
#export CLARIFAI_PAT={your personal access token} # set PAT as env variable
3434
from clarifai.client.dataset import Dataset
3535
dataset = Dataset(user_id="user_id", app_id="app_id", dataset_id="dataset_id")
36-
dataset.upload_dataset(dataloader=coco_dataset.clarifai_loader())
36+
dataset.upload_dataset(dataloader=coco_dataset.dataloader)
3737

3838
```
3939

clarifai_utils/image/annotation_conversion/annotations.py

Lines changed: 18 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -9,12 +9,12 @@
99
IMAGE_FORMAT_MAP)
1010
from clarifai_utils.errors import AnnotationsDatasetError, AnnotationsFormatError
1111
from clarifai_utils.image.annotation_conversion.base import ClarifaiDataLoader
12-
from clarifai_utils.image.annotation_conversion.clarifai_loaders import (ClassificationDataLoader,
13-
DetectionDataLoader,
14-
SegmentationDataLoader)
12+
from clarifai_utils.image.annotation_conversion.loaders import (ClassificationDataLoader,
13+
DetectionDataLoader,
14+
SegmentationDataLoader)
1515

1616

17-
class Image_Annotations():
17+
class ImageAnnotations():
1818
"""Annotaions is a class that provides image annotation utilities."""
1919

2020
def __init__(
@@ -47,8 +47,8 @@ def import_from(cls, path: str, format: str) -> Dataset:
4747
A dataset object.
4848
4949
Example:
50-
>>> from clarifai_utils import Image_Annotations
51-
>>> format = Image_Annotations.import_from(path=folder_path, format = 'coco_detection')
50+
>>> from clarifai_utils import ImageAnnotations
51+
>>> format = ImageAnnotations.import_from(path=folder_path, format = 'coco_detection')
5252
"""
5353
if format not in IMAGE_ANNOTATION_FORMATS:
5454
raise AnnotationsFormatError(
@@ -62,7 +62,7 @@ def import_from(cls, path: str, format: str) -> Dataset:
6262
except (DatasetError, DatasetImportError, DatasetNotFoundError) as ex:
6363
raise AnnotationsDatasetError(ex)
6464

65-
return Image_Annotations(dataset, format, task)
65+
return ImageAnnotations(dataset, format, task)
6666

6767
def get_info(self,) -> Dict[str, Any]:
6868
"""Gets information about a dataset.
@@ -71,8 +71,8 @@ def get_info(self,) -> Dict[str, Any]:
7171
A dictionary containing the information about the dataset.
7272
7373
Example:
74-
>>> from clarifai_utils import Image_Annotations
75-
>>> format = Image_Annotations.import_from(path=folder_path, format = 'coco_detection')
74+
>>> from clarifai_utils import ImageAnnotations
75+
>>> format = ImageAnnotations.import_from(path=folder_path, format = 'coco_detection')
7676
>>> info = format.get_info()
7777
"""
7878
return {
@@ -92,8 +92,8 @@ def export_to(self, path: str, format: str) -> None:
9292
format (str): The format of the dataset.
9393
9494
Example:
95-
>>> from clarifai_utils import Image_Annotations
96-
>>> format = Image_Annotations.import_from(path=folder_path, format = 'coco_detection')
95+
>>> from clarifai_utils import ImageAnnotations
96+
>>> format = ImageAnnotations.import_from(path=folder_path, format = 'coco_detection')
9797
>>> format.export_to(path=output_folder_path, format = 'voc_detection')
9898
"""
9999
if format not in IMAGE_ANNOTATION_FORMATS:
@@ -116,8 +116,8 @@ def detect_format(path: str) -> str:
116116
The format of the dataset.
117117
118118
Example:
119-
>>> from clarifai_utils import Image_Annotations
120-
>>> format = Image_Annotations.detect_format(path=folder_path)
119+
>>> from clarifai_utils import ImageAnnotations
120+
>>> format = ImageAnnotations.detect_format(path=folder_path)
121121
"""
122122
try:
123123
dataset_format = Dataset.detect(path)
@@ -130,16 +130,17 @@ def detect_format(path: str) -> str:
130130
raise AnnotationsFormatError('Given folder does not contain a supported dataset format')
131131
return dataset_format
132132

133-
def clarifai_loader(self,) -> ClarifaiDataLoader:
133+
@property
134+
def dataloader(self) -> ClarifaiDataLoader:
134135
"""Returns a Clarifai Dataloader Object to pass to SDK Dataset Upload Functionality.
135136
136137
Returns:
137138
A ClarifaiDataloader object.
138139
139140
Example:
140-
>>> from clarifai_utils import Image_Annotations
141-
>>> format = Image_Annotations.import_from(path=folder_path, format = 'coco_detection')
142-
>>> clarifai_dataset_loader = format.clarifai_loader()
141+
>>> from clarifai_utils import ImageAnnotations
142+
>>> format = ImageAnnotations.import_from(path=folder_path, format = 'coco_detection')
143+
>>> clarifai_dataset_loader = format.dataloader
143144
"""
144145
if self.task == 'visual_classification':
145146
return ClassificationDataLoader(self._dataset)

clarifai_utils/image/annotation_conversion/base.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
from typing import TypeVar, Union
22

3-
from .clarifai_features import (VisualClassificationFeatures, VisualDetectionFeatures,
4-
VisualSegmentationFeatures)
3+
from .features import (VisualClassificationFeatures, VisualDetectionFeatures,
4+
VisualSegmentationFeatures)
55

66
DATASET_UPLOAD_TASKS = ["visual_classification", "visual_detection", "visual_segmentation"]
77

clarifai_utils/image/annotation_conversion/clarifai_loaders.py renamed to clarifai_utils/image/annotation_conversion/loaders.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,8 @@
77
from datumaro.components.media import ImageFromNumpy
88

99
from .base import ClarifaiDataLoader
10-
from .clarifai_features import (VisualClassificationFeatures, VisualDetectionFeatures,
11-
VisualSegmentationFeatures)
10+
from .features import (VisualClassificationFeatures, VisualDetectionFeatures,
11+
VisualSegmentationFeatures)
1212

1313
delimiters = [",", "|", ";", "/", "\\", ":", " "]
1414

Lines changed: 89 additions & 89 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
from clarifai_utils import Image_Annotations
1+
from clarifai_utils import ImageAnnotations
22
from tests.utils.annotations import get_asset_path
33

44
IMAGENET_PATH = get_asset_path('imagenet_dataset')
@@ -25,121 +25,121 @@ class Testclarifailoader:
2525
"""
2626

2727
def test_imagenet_loader(self,):
28-
annotation_object = Image_Annotations.import_from(path=IMAGENET_PATH, format='imagenet')
29-
clarifai_loader = annotation_object.clarifai_loader()
30-
assert len(clarifai_loader) == 3
31-
assert clarifai_loader.task == 'visual_classification'
32-
assert clarifai_loader[0].labels[0] in ['label_0', 'label_1']
33-
assert clarifai_loader[0].id == '1'
28+
annotation_object = ImageAnnotations.import_from(path=IMAGENET_PATH, format='imagenet')
29+
dataloader = annotation_object.dataloader
30+
assert len(dataloader) == 3
31+
assert dataloader.task == 'visual_classification'
32+
assert dataloader[0].labels[0] in ['label_0', 'label_1']
33+
assert dataloader[0].id == '1'
3434

3535
def test_cifar_loader(self,):
36-
annotation_object = Image_Annotations.import_from(path=CIFAR_PATH, format='cifar')
37-
clarifai_loader = annotation_object.clarifai_loader()
38-
assert clarifai_loader.task == 'visual_classification'
39-
assert len(clarifai_loader) == 5
40-
assert clarifai_loader[0].labels[0] in ['airplane', 'automobile']
36+
annotation_object = ImageAnnotations.import_from(path=CIFAR_PATH, format='cifar')
37+
dataloader = annotation_object.dataloader
38+
assert dataloader.task == 'visual_classification'
39+
assert len(dataloader) == 5
40+
assert dataloader[0].labels[0] in ['airplane', 'automobile']
4141

4242
def test_mnist_loader(self,):
43-
annotation_object = Image_Annotations.import_from(path=MNIST_PATH, format='mnist')
44-
clarifai_loader = annotation_object.clarifai_loader()
45-
assert clarifai_loader.task == 'visual_classification'
46-
assert len(clarifai_loader) == 5
43+
annotation_object = ImageAnnotations.import_from(path=MNIST_PATH, format='mnist')
44+
dataloader = annotation_object.dataloader
45+
assert dataloader.task == 'visual_classification'
46+
assert len(dataloader) == 5
4747

4848
def test_vgg_face2_loader(self,):
49-
annotation_object = Image_Annotations.import_from(path=VGG_PATH, format='vgg_face2')
50-
clarifai_loader = annotation_object.clarifai_loader()
51-
assert clarifai_loader.task == 'visual_classification'
52-
assert len(clarifai_loader) == 4
49+
annotation_object = ImageAnnotations.import_from(path=VGG_PATH, format='vgg_face2')
50+
dataloader = annotation_object.dataloader
51+
assert dataloader.task == 'visual_classification'
52+
assert len(dataloader) == 4
5353

5454
def test_lfw_loader(self,):
55-
annotation_object = Image_Annotations.import_from(path=LFW_PATH, format='lfw')
56-
clarifai_loader = annotation_object.clarifai_loader()
57-
assert clarifai_loader.task == 'visual_classification'
58-
assert len(clarifai_loader) == 3
59-
assert clarifai_loader[0].labels == ['name1']
60-
assert clarifai_loader[0].id == '0001'
55+
annotation_object = ImageAnnotations.import_from(path=LFW_PATH, format='lfw')
56+
dataloader = annotation_object.dataloader
57+
assert dataloader.task == 'visual_classification'
58+
assert len(dataloader) == 3
59+
assert dataloader[0].labels == ['name1']
60+
assert dataloader[0].id == '0001'
6161

6262
def test_voc_detection_loader(self,):
63-
annotation_object = Image_Annotations.import_from(path=VOC_PATH, format='voc_detection')
64-
clarifai_loader = annotation_object.clarifai_loader()
65-
assert clarifai_loader.task == 'visual_detection'
66-
assert len(clarifai_loader) == 1
67-
assert clarifai_loader[0].labels == ['cat']
68-
assert clarifai_loader[0].id == '000001'
69-
assert isinstance(clarifai_loader[0].image_bytes, bytes)
63+
annotation_object = ImageAnnotations.import_from(path=VOC_PATH, format='voc_detection')
64+
dataloader = annotation_object.dataloader
65+
assert dataloader.task == 'visual_detection'
66+
assert len(dataloader) == 1
67+
assert dataloader[0].labels == ['cat']
68+
assert dataloader[0].id == '000001'
69+
assert isinstance(dataloader[0].image_bytes, bytes)
7070

7171
def test_yolo_loader(self,):
72-
annotation_object = Image_Annotations.import_from(path=YOLO_PATH, format='yolo')
73-
clarifai_loader = annotation_object.clarifai_loader()
74-
assert clarifai_loader.task == 'visual_detection'
75-
assert len(clarifai_loader) == 1
76-
assert clarifai_loader[0].labels == ['label_2', 'label_4']
77-
assert clarifai_loader[0].id == '1'
78-
assert isinstance(clarifai_loader[0].image_bytes, bytes)
72+
annotation_object = ImageAnnotations.import_from(path=YOLO_PATH, format='yolo')
73+
dataloader = annotation_object.dataloader
74+
assert dataloader.task == 'visual_detection'
75+
assert len(dataloader) == 1
76+
assert dataloader[0].labels == ['label_2', 'label_4']
77+
assert dataloader[0].id == '1'
78+
assert isinstance(dataloader[0].image_bytes, bytes)
7979

8080
def test_coco_detection_loader(self,):
81-
annotation_object = Image_Annotations.import_from(
81+
annotation_object = ImageAnnotations.import_from(
8282
path=COCO_DETECTION_PATH, format='coco_detection')
83-
clarifai_loader = annotation_object.clarifai_loader()
84-
assert clarifai_loader.task == 'visual_detection'
85-
assert len(clarifai_loader) == 2
86-
assert clarifai_loader[0].labels == ['b']
87-
assert clarifai_loader[0].id == 'a'
88-
assert isinstance(clarifai_loader[0].image_bytes, bytes)
83+
dataloader = annotation_object.dataloader
84+
assert dataloader.task == 'visual_detection'
85+
assert len(dataloader) == 2
86+
assert dataloader[0].labels == ['b']
87+
assert dataloader[0].id == 'a'
88+
assert isinstance(dataloader[0].image_bytes, bytes)
8989

9090
def test_cvat_loader(self,):
91-
annotation_object = Image_Annotations.import_from(path=CVAT_PATH, format='cvat')
92-
clarifai_loader = annotation_object.clarifai_loader()
93-
assert clarifai_loader.task == 'visual_detection'
94-
assert len(clarifai_loader) == 8
95-
assert clarifai_loader[0].labels == ['label1']
96-
assert isinstance(clarifai_loader[0].image_bytes, bytes)
91+
annotation_object = ImageAnnotations.import_from(path=CVAT_PATH, format='cvat')
92+
dataloader = annotation_object.dataloader
93+
assert dataloader.task == 'visual_detection'
94+
assert len(dataloader) == 8
95+
assert dataloader[0].labels == ['label1']
96+
assert isinstance(dataloader[0].image_bytes, bytes)
9797

9898
def test_kitti_loader(self,):
99-
annotation_object = Image_Annotations.import_from(path=KITTI_PATH, format='kitti')
100-
clarifai_loader = annotation_object.clarifai_loader()
101-
assert clarifai_loader.task == 'visual_detection'
102-
assert len(clarifai_loader) == 2
103-
assert clarifai_loader[0].labels == ['truck', 'van']
104-
assert clarifai_loader[0].id == '10'
105-
assert isinstance(clarifai_loader[0].image_bytes, bytes)
99+
annotation_object = ImageAnnotations.import_from(path=KITTI_PATH, format='kitti')
100+
dataloader = annotation_object.dataloader
101+
assert dataloader.task == 'visual_detection'
102+
assert len(dataloader) == 2
103+
assert dataloader[0].labels == ['truck', 'van']
104+
assert dataloader[0].id == '10'
105+
assert isinstance(dataloader[0].image_bytes, bytes)
106106

107107
def test_label_me_loader(self,):
108-
annotation_object = Image_Annotations.import_from(path=LABEL_ME_PATH, format='label_me')
109-
clarifai_loader = annotation_object.clarifai_loader()
110-
assert clarifai_loader.task == 'visual_detection'
111-
assert len(clarifai_loader) == 1
112-
assert clarifai_loader[0].labels == ['b1']
113-
assert clarifai_loader[0].id == 'img1'
114-
assert isinstance(clarifai_loader[0].image_bytes, bytes)
108+
annotation_object = ImageAnnotations.import_from(path=LABEL_ME_PATH, format='label_me')
109+
dataloader = annotation_object.dataloader
110+
assert dataloader.task == 'visual_detection'
111+
assert len(dataloader) == 1
112+
assert dataloader[0].labels == ['b1']
113+
assert dataloader[0].id == 'img1'
114+
assert isinstance(dataloader[0].image_bytes, bytes)
115115

116116
def test_open_images_loader(self,):
117-
annotation_object = Image_Annotations.import_from(path=OPEN_IMAGES_PATH, format='open_images')
118-
clarifai_loader = annotation_object.clarifai_loader()
119-
assert clarifai_loader.task == 'visual_detection'
120-
assert len(clarifai_loader) == 2
121-
assert clarifai_loader[1].id == 'aa'
122-
assert isinstance(clarifai_loader[0].image_bytes, bytes)
117+
annotation_object = ImageAnnotations.import_from(path=OPEN_IMAGES_PATH, format='open_images')
118+
dataloader = annotation_object.dataloader
119+
assert dataloader.task == 'visual_detection'
120+
assert len(dataloader) == 2
121+
assert dataloader[1].id == 'aa'
122+
assert isinstance(dataloader[0].image_bytes, bytes)
123123

124124
def test_coco_segmentation_loader(self,):
125-
annotation_object = Image_Annotations.import_from(
125+
annotation_object = ImageAnnotations.import_from(
126126
path=COCO_SEGMENTATION_PATH, format='coco_segmentation')
127-
clarifai_loader = annotation_object.clarifai_loader()
128-
assert clarifai_loader.task == 'visual_segmentation'
129-
assert len(clarifai_loader) == 2
130-
assert isinstance(clarifai_loader[0].image_bytes, bytes)
127+
dataloader = annotation_object.dataloader
128+
assert dataloader.task == 'visual_segmentation'
129+
assert len(dataloader) == 2
130+
assert isinstance(dataloader[0].image_bytes, bytes)
131131

132132
def test_cityscapes_loader(self,):
133-
annotation_object = Image_Annotations.import_from(path=CITYSCAPES_PATH, format='cityscapes')
134-
clarifai_loader = annotation_object.clarifai_loader()
135-
assert clarifai_loader.task == 'visual_segmentation'
136-
assert len(clarifai_loader) == 4
137-
assert isinstance(clarifai_loader[0].image_bytes, bytes)
133+
annotation_object = ImageAnnotations.import_from(path=CITYSCAPES_PATH, format='cityscapes')
134+
dataloader = annotation_object.dataloader
135+
assert dataloader.task == 'visual_segmentation'
136+
assert len(dataloader) == 4
137+
assert isinstance(dataloader[0].image_bytes, bytes)
138138

139139
def test_ade20k2017_loader(self,):
140-
annotation_object = Image_Annotations.import_from(path=ADE_PATH, format='ade20k2017')
141-
clarifai_loader = annotation_object.clarifai_loader()
142-
assert clarifai_loader.task == 'visual_segmentation'
143-
assert len(clarifai_loader) == 2
144-
assert clarifai_loader[0].id == '1'
145-
assert isinstance(clarifai_loader[0].image_bytes, bytes)
140+
annotation_object = ImageAnnotations.import_from(path=ADE_PATH, format='ade20k2017')
141+
dataloader = annotation_object.dataloader
142+
assert dataloader.task == 'visual_segmentation'
143+
assert len(dataloader) == 2
144+
assert dataloader[0].id == '1'
145+
assert isinstance(dataloader[0].image_bytes, bytes)

0 commit comments

Comments
 (0)