class_docstr: Class encapsulating a batch during the augmentation process.
  
  Data within the batch is already verified and normalized, similar to
  :class:`Batch`. Data within the batch may be changed in-place. No initial
  copy is needed.
  
  Added in 0.4.0.
  
  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.
class_docstr_tok: ["Class","encapsulating","a","batch","during","the","augmentation","process",".","Data","within","the","batch","is","already","verified","and","normalized",",","similar","to",":","class",":","`","Batch","`",".","Data","within","the","batch","may","be","changed","in-place",".","No","initial","copy","is","needed",".","Added","in","0.4.0",".","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","."]
docstr: Reverse the subselection of rows in-place.
  
  This is the inverse of
  :func:`_BatchInAugmentation.subselect_rows_by_indices`.
  
  This method has to be executed on the batch *before* subselection.
  
  Added in 0.4.0.
  
  Parameters
  ----------
  indices : iterable of int
      Row indices that were selected. (This is the input to
  
  batch_subselected : _BatchInAugmentation
      The batch after
      :func:`_BatchInAugmentation.subselect_rows_by_indices` was called.
  
  Returns
  -------
  _BatchInAugmentation
      The updated batch. (Modified in-place.)
  
  Examples
  --------
  >>> import numpy as np
  >>> from imgaug.augmentables.batches import _BatchInAugmentation
  >>> images = np.zeros((2, 10, 20, 3), dtype=np.uint8)
  >>> batch = _BatchInAugmentation(images=images)
  >>> batch_sub = batch.subselect_rows_by_indices([0])
  >>> batch_sub.images += 1
  >>> batch = batch.invert_subselect_rows_by_indices_([0], batch_sub)
docstr_tok: ["Reverse","the","subselection","of","rows","in-place",".","This","is","the","inverse","of",":","func",":","`","_BatchInAugmentation.subselect_rows_by_indices","`",".","This","method","has","to","be","executed","on","the","batch","*","before","*","subselection",".","Added","in","0.4.0",".","Parameters","--","--","--","--","--","indices",":","iterable","of","int","Row","indices","that","were","selected",".","(","This","is","the","input","to","batch_subselected",":","_BatchInAugmentation","The","batch","after",":","func",":","`","_BatchInAugmentation.subselect_rows_by_indices","`","was","called",".","Returns","--","--","--","-","_BatchInAugmentation","The","updated","batch",".","(","Modified","in-place",".",")","Examples","--","--","--","--",">",">",">","import","numpy","as","np",">",">",">","from","imgaug.augmentables.batches","import","_BatchInAugmentation",">",">",">","images","=","np.zeros","(","(","2",",","10",",","20",",","3",")",",","dtype=np.uint8",")",">",">",">","batch","=","_BatchInAugmentation","(","images=images",")",">",">",">","batch_sub","=","batch.subselect_rows_by_indices","(","[","0","]",")",">",">",">","batch_sub.images","+=","1",">",">",">","batch","=","batch.invert_subselect_rows_by_indices_","(","[","0","]",",","batch_sub",")"]
code: def invert_subselect_rows_by_indices_(
      self, indices, batch_subselected
  ):
      """Reverse the subselection of rows in-place.
  
      This is the inverse of
      :func:`_BatchInAugmentation.subselect_rows_by_indices`.
  
      This method has to be executed on the batch *before* subselection.
  
      Added in 0.4.0.
  
      Parameters
      ----------
      indices : iterable of int
          Row indices that were selected. (This is the input to
  
      batch_subselected : _BatchInAugmentation
          The batch after
          :func:`_BatchInAugmentation.subselect_rows_by_indices` was called.
  
      Returns
      -------
      _BatchInAugmentation
          The updated batch. (Modified in-place.)
  
      Examples
      --------
      >>> import numpy as np
      >>> from imgaug.augmentables.batches import _BatchInAugmentation
      >>> images = np.zeros((2, 10, 20, 3), dtype=np.uint8)
      >>> batch = _BatchInAugmentation(images=images)
      >>> batch_sub = batch.subselect_rows_by_indices([0])
      >>> batch_sub.images += 1
      >>> batch = batch.invert_subselect_rows_by_indices_([0], batch_sub)
  
      """
      for augm_name in _AUGMENTABLE_NAMES:
          column = getattr(self, augm_name)
          if column is not None:
              column_sub = getattr(batch_subselected, augm_name)
              if column_sub is None:
                  # list of indices was empty, resulting in the columns
                  # in the subselected batch being empty and replaced
                  # by Nones. We can just re-use the columns before
                  # subselection.
                  pass
              elif augm_name == "images" and ia.is_np_array(column):
                  # An array does not have to stay an array after
                  # augmentation. The shapes and/or dtypes of rows may
                  # change, turning the array into a list.
                  if ia.is_np_array(column_sub):
                      shapes = {column.shape[1:], column_sub.shape[1:]}
                      dtypes = {
                          column.dtype.name,
                          column_sub.dtype.name,
                      }
                  else:
                      shapes = set(
                          [column.shape[1:]]
                          + [image.shape for image in column_sub]
                      )
                      dtypes = set(
                          [column.dtype.name]
                          + [image.dtype.name for image in column_sub]
                      )
  
                  if len(shapes) == 1 and len(dtypes) == 1:
                      column[
                          indices
                      ] = column_sub  # pylint: disable=unsupported-assignment-operation
                  else:
                      self.images = list(column)
                      for ith_index, index in enumerate(indices):
                          self.images[index] = column_sub[ith_index]
              else:
                  for ith_index, index in enumerate(indices):
                      column[index] = column_sub[
                          ith_index
                      ]  # pylint: disable=unsupported-assignment-operation
  
      return self
  
imports: from __future__ import print_function, division, absolute_import
  import collections
  import numpy
  from ..None import imgaug
  from .None import normalization
  from .None import utils
label_desc: Use image node_id 8 for calling the _BatchInAugmentation obj's underlying member method code with example usage: obj.invert_subselect_rows_by_indices_(indices, batch_subselected) and returns: self