  
  import logging
  
  from random import shuffle, choice
  
  import numpy as np
  import cv2
  from scipy.interpolate import griddata
  
 
</s> remove         logger.debug(retval)
 </s> add         if self._model.config["eye_multiplier"] > 1:
            retval["masks_eye"] = alignments.masks_eye

        if self._model.config["mouth_multiplier"] > 1:
            retval["masks_mouth"] = alignments.masks_mouth

        logger.debug({key: {k: len(v) for k, v in val.items()} for key, val in retval.items()}) </s> remove         The target masks are returned as its own item and is the 4th channel of the final target
        output.
 </s> add         Returns
        -------
        dict:
            The targets and the masks separated into their own items. The targets are a list of
            3 channel, 4 dimensional :class:`numpy.ndarray` objects sized for each output from the
            model. The masks are a :class:`numpy.ndarray` of the final output size. Any additional
            masks(e.g. eye and mouth masks) will be collated together into a :class:`numpy.ndarray`
            of the final output size. The number of channels will be the number of additional
            masks available </s> remove         selected_loss = self._loss_dict[self._config["loss_function"]]
 </s> add         mask_channels = self._get_mask_channels()
        face_loss = self._loss_dict[self._config["loss_function"]]
 </s> remove class TrainingDataGenerator():
 </s> add class TrainingDataGenerator():  # pylint:disable=too-few-public-methods
from zlib import decompress
  
  import logging
  
  from random import shuffle, choice
from zlib import decompress
  
  import numpy as np
  import cv2
  from scipy.interpolate import griddata
  
keep keep keep add keep keep keep keep keep
 Add Mouth and Eye Priority to Loss options (#1054)

* Priority Training for Mouth and Eyes - Tensorflow

* Use chosen loss function for area multipliers

* loss multipliers for AMD

* Fix mask multipliers for plaid and roll PenalizedMaskLoss into LossWrapper

* losses_tf: roll PenalizedMaskLoss into LossWrapper 
lib/training_data.py