ImageAdd

ImageAdd[image,x]

adds an amount x to each channel value in image.

ImageAdd[image1,image2]

gives an image in which each pixel is the sum of the corresponding pixels in image1 and image2.

ImageAdd[image,expr1,expr2,]

adds all expri to image, where each expri can be either an image, a number, or a color value.

Details

  • The image returned by ImageAdd[image,] has the same dimensions as image.
  • In ImageAdd[image,x], x can be a number normally in the range 0 to 1, a color, or a list of color channel values.
  • ImageAdd[image,x] typically gives an image with the same underlying data type as image, clipping or truncating values if necessary.
  • If the image dimensions are different, ImageAdd[image1,image2] adds image2 at the center of image1.
  • If image1 or image2 is a single-channel image, its values are added to the values in each channel of the other image in ImageAdd[image1,image2].
  • If image1 and image2 are both multichannel images, the values in each channel are added separately.
  • ImageAdd[image1,image2] gives an image with the largest type of either image1 or image2, clipping or truncating values if necessary.
  • For binary images, ImageAdd effectively finds the logical OR of pixel values.
  • ImageAdd[image,expr1,expr2,] folds ImageAdd on the list of arguments.
  • ImageAdd[{image,expr1,expr2,}] is equivalent to ImageAdd[image,expr1,expr2,].
  • ImageAdd works with Image3D objects.

Examples

open allclose all

Basic Examples  (3)

Brighten a color image by adding a constant amount to all channels:

Add two color images:

Logical OR of two binary images:

Scope  (3)

Mask an image by adding a thresholded version of it:

Add multiple images to each other:

Add a noise image to a 3D image:

Applications  (3)

Uniform additive noise:

Create a sepia image:

Convert a color image to a sepia image:

Multiply by a Gaussian frame to create a vignette effect:

Possible Issues  (3)

Numerical rounding in finite-precision images can be affected by the limited precision of machine arithmetic:

When adding images of different color spaces, channel values are added respectively:

The resulting image will have an Automatic color space:

When adding images of integer types, pixel value clipping is happening:

Adjusting cannot restore the clipped values:

Use a real image type to avoid clipping:

Wolfram Research (2008), ImageAdd, Wolfram Language function, https://reference.wolfram.com/language/ref/ImageAdd.html (updated 2014).

Text

Wolfram Research (2008), ImageAdd, Wolfram Language function, https://reference.wolfram.com/language/ref/ImageAdd.html (updated 2014).

BibTeX

@misc{reference.wolfram_2021_imageadd, author="Wolfram Research", title="{ImageAdd}", year="2014", howpublished="\url{https://reference.wolfram.com/language/ref/ImageAdd.html}", note=[Accessed: 23-September-2021 ]}

BibLaTeX

@online{reference.wolfram_2021_imageadd, organization={Wolfram Research}, title={ImageAdd}, year={2014}, url={https://reference.wolfram.com/language/ref/ImageAdd.html}, note=[Accessed: 23-September-2021 ]}

CMS

Wolfram Language. 2008. "ImageAdd." Wolfram Language & System Documentation Center. Wolfram Research. Last Modified 2014. https://reference.wolfram.com/language/ref/ImageAdd.html.

APA

Wolfram Language. (2008). ImageAdd. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/ImageAdd.html