def update_image(self, original_image: np.ndarray, params: AdversarialObject) -> np.ndarray:
        """
        Update original image used for prediction by adding image of the adversarial object to it,
        in order to create adversarial example.

        :param original_image: Image to attack.
        :param params: Adversarial object.
        :returns: Original image with the adversarial object on it.
        """
        image_shape = original_image.shape
        if len(original_image.shape) == 4:
            image_shape = image_shape[1:]

        adv_object_image = self.generate_image(params, image_shape)
        if len(original_image.shape) == 4:
            adv_object_image = np.expand_dims(adv_object_image, 0)
        return self.add_images(original_image, adv_object_image)

        Update original image used for prediction by adding image of the adversarial object to it,
        in order to create adversarial example.

        :param original_image: Image to attack.
        :param params: Adversarial object.
        :returns: Original image with the adversarial object on it.
        
art/attacks/evasion/laser_attack/utils.py