imgaug.augmentables.batches¶
-
class
imgaug.augmentables.batches.Batch(images=None, heatmaps=None, segmentation_maps=None, keypoints=None, bounding_boxes=None, polygons=None, line_strings=None, data=None)[source]¶ Bases:
objectClass encapsulating a batch before and after augmentation.
Parameters: - images (None or (N,H,W,C) ndarray or list of (H,W,C) ndarray) – The images to augment.
- heatmaps (None or list of imgaug.augmentables.heatmaps.HeatmapsOnImage) – The heatmaps to augment.
- segmentation_maps (None or list of imgaug.augmentables.segmaps.SegmentationMapsOnImage) – The segmentation maps to augment.
- keypoints (None or list of imgaug.augmentables.kps.KeypointOnImage) – The keypoints to augment.
- bounding_boxes (None or list of imgaug.augmentables.bbs.BoundingBoxesOnImage) – The bounding boxes to augment.
- polygons (None or list of imgaug.augmentables.polys.PolygonsOnImage) – The polygons to augment.
- line_strings (None or list of imgaug.augmentables.lines.LineStringsOnImage) – The line strings to augment.
- data – Additional data that is saved in the batch and may be read out after augmentation. This could e.g. contain filepaths to each image in images. As this object is usually used for background augmentation with multiple processes, the augmented Batch objects might not be returned in the original order, making this information useful.
Attributes: bounding_boxesDeprecated. Use
Batch.bounding_boxes_unauginstead.heatmapsDeprecated. Use
Batch.heatmaps_unauginstead.imagesDeprecated. Use
Batch.images_unauginstead.keypointsDeprecated. Use
Batch.keypoints_unauginstead.segmentation_mapsDeprecated. Use
Batch.segmentation_maps_unauginstead.
Methods
deepcopy -
bounding_boxes¶ Deprecated. Use
Batch.bounding_boxes_unauginstead.
-
deepcopy(self, images_unaug='DEFAULT', images_aug='DEFAULT', heatmaps_unaug='DEFAULT', heatmaps_aug='DEFAULT', segmentation_maps_unaug='DEFAULT', segmentation_maps_aug='DEFAULT', keypoints_unaug='DEFAULT', keypoints_aug='DEFAULT', bounding_boxes_unaug='DEFAULT', bounding_boxes_aug='DEFAULT', polygons_unaug='DEFAULT', polygons_aug='DEFAULT', line_strings_unaug='DEFAULT', line_strings_aug='DEFAULT')[source]¶
-
heatmaps¶ Deprecated. Use
Batch.heatmaps_unauginstead.
-
images¶ Deprecated. Use
Batch.images_unauginstead.
-
keypoints¶ Deprecated. Use
Batch.keypoints_unauginstead.
-
segmentation_maps¶ Deprecated. Use
Batch.segmentation_maps_unauginstead.
-
class
imgaug.augmentables.batches.UnnormalizedBatch(images=None, heatmaps=None, segmentation_maps=None, keypoints=None, bounding_boxes=None, polygons=None, line_strings=None, data=None)[source]¶ Bases:
objectClass for batches of unnormalized data before and after augmentation.
Parameters: images (None or (N,H,W,C) ndarray or (N,H,W) ndarray or iterable of (H,W,C) ndarray or iterable of (H,W) ndarray) – The images to augment.
heatmaps (None or (N,H,W,C) ndarray or imgaug.augmentables.heatmaps.HeatmapsOnImage or iterable of (H,W,C) ndarray or iterable of imgaug.augmentables.heatmaps.HeatmapsOnImage) – The heatmaps to augment. If anything else than
HeatmapsOnImage, then the number of heatmaps must match the number of images provided via parameter images. The number is contained either inNor the first iterable’s size.segmentation_maps (None or (N,H,W) ndarray or imgaug.augmentables.segmaps.SegmentationMapsOnImage or iterable of (H,W) ndarray or iterable of imgaug.augmentables.segmaps.SegmentationMapsOnImage) – The segmentation maps to augment. If anything else than
SegmentationMapsOnImage, then the number of segmaps must match the number of images provided via parameter images. The number is contained either inNor the first iterable’s size.keypoints (None or list of (N,K,2) ndarray or tuple of number or imgaug.augmentables.kps.Keypoint or iterable of (K,2) ndarray or iterable of tuple of number or iterable of imgaug.augmentables.kps.Keypoint or iterable of imgaug.augmentables.kps.KeypointOnImage or iterable of iterable of tuple of number or iterable of iterable of imgaug.augmentables.kps.Keypoint) – The keypoints to augment. If a tuple (or iterable(s) of tuple), then iterpreted as (x,y) coordinates and must hence contain two numbers. A single tuple represents a single coordinate on one image, an iterable of tuples the coordinates on one image and an iterable of iterable of tuples the coordinates on several images. Analogous if
Keypointobjects are used instead of tuples. If an ndarray, thenNdenotes the number of images andKthe number of keypoints on each image. If anything else thanKeypointsOnImageis provided, then the number of keypoint groups must match the number of images provided via parameter images. The number is contained e.g. inNor in case of “iterable of iterable of tuples” in the first iterable’s size.bounding_boxes (None or (N,B,4) ndarray or tuple of number or imgaug.augmentables.bbs.BoundingBox or imgaug.augmentables.bbs.BoundingBoxesOnImage or iterable of (B,4) ndarray or iterable of tuple of number or iterable of imgaug.augmentables.bbs.BoundingBox or iterable of imgaug.augmentables.bbs.BoundingBoxesOnImage or iterable of iterable of tuple of number or iterable of iterable imgaug.augmentables.bbs.BoundingBox) – The bounding boxes to augment. This is analogous to the keypoints parameter. However, each tuple – and also the last index in case of arrays – has size 4, denoting the bounding box coordinates
x1,y1,x2andy2.polygons (None or (N,#polys,#points,2) ndarray or imgaug.augmentables.polys.Polygon or imgaug.augmentables.polys.PolygonsOnImage or iterable of (#polys,#points,2) ndarray or iterable of tuple of number or iterable of imgaug.augmentables.kps.Keypoint or iterable of imgaug.augmentables.polys.Polygon or iterable of imgaug.augmentables.polys.PolygonsOnImage or iterable of iterable of (#points,2) ndarray or iterable of iterable of tuple of number or iterable of iterable of imgaug.augmentables.kps.Keypoint or iterable of iterable of imgaug.augmentables.polys.Polygon or iterable of iterable of iterable of tuple of number or iterable of iterable of iterable of tuple of imgaug.augmentables.kps.Keypoint) – The polygons to augment. This is similar to the keypoints parameter. However, each polygon may be made up of several
(x,y)coordinates (three or more are required for valid polygons). The following datatypes will be interpreted as a single polygon on a single image:imgaug.augmentables.polys.Polygoniterable of tuple of numberiterable of imgaug.augmentables.kps.Keypoint
The following datatypes will be interpreted as multiple polygons on a single image:
imgaug.augmentables.polys.PolygonsOnImageiterable of imgaug.augmentables.polys.Polygoniterable of iterable of tuple of numberiterable of iterable of imgaug.augmentables.kps.Keypointiterable of iterable of imgaug.augmentables.polys.Polygon
The following datatypes will be interpreted as multiple polygons on multiple images:
(N,#polys,#points,2) ndarrayiterable of (#polys,#points,2) ndarrayiterable of iterable of (#points,2) ndarrayiterable of iterable of iterable of tuple of numberiterable of iterable of iterable of tuple of imgaug.augmentables.kps.Keypoint
line_strings (None or (N,#lines,#points,2) ndarray or imgaug.augmentables.lines.LineString or imgaug.augmentables.lines.LineStringOnImage or iterable of (#lines,#points,2) ndarray or iterable of tuple of number or iterable of imgaug.augmentables.kps.Keypoint or iterable of imgaug.augmentables.lines.LineString or iterable of imgaug.augmentables.lines.LineStringOnImage or iterable of iterable of (#points,2) ndarray or iterable of iterable of tuple of number or iterable of iterable of imgaug.augmentables.kps.Keypoint or iterable of iterable of imgaug.augmentables.polys.LineString or iterable of iterable of iterable of tuple of number or iterable of iterable of iterable of tuple of imgaug.augmentables.kps.Keypoint) – The line strings to augment. See polygons for more details as polygons follow a similar structure to line strings.
data – Additional data that is saved in the batch and may be read out after augmentation. This could e.g. contain filepaths to each image in images. As this object is usually used for background augmentation with multiple processes, the augmented Batch objects might not be returned in the original order, making this information useful.
Methods
fill_from_augmented_normalized_batch(self, …)Fill this batch with (normalized) augmentation results. to_normalized_batch(self)Convert this unnormalized batch to an instance of Batch. -
fill_from_augmented_normalized_batch(self, batch_aug_norm)[source]¶ Fill this batch with (normalized) augmentation results.
This method receives a (normalized) Batch instance, takes all
*_augattributes out if it and assigns them to this batch in unnormalized form. Hence, the datatypes of all*_augattributes will match the datatypes of the*_unaugattributes.Parameters: batch_aug_norm (imgaug.augmentables.batches.Batch) – Batch after normalization and augmentation. Returns: New UnnormalizedBatch instance. All *_unaugattributes are taken from the old UnnormalizedBatch (without deepcopying them) and all*_augattributes are taken from batch_normalized converted to unnormalized form.Return type: imgaug.augmentables.batches.UnnormalizedBatch
-
to_normalized_batch(self)[source]¶ Convert this unnormalized batch to an instance of Batch.
As this method is intended to be called before augmentation, it assumes that none of the
*_augattributes is yet set. It will produce an AssertionError otherwise.The newly created Batch’s
*_unaugattributes will match the ones in this batch, just in normalized form.Returns: The batch, with *_unaugattributes being normalized.Return type: imgaug.augmentables.batches.Batch