Prerequisite: RGB image representation
MATLAB stores most images as two-dimensional matrices, in which each element of the matrix corresponds to a single discrete pixel in the displayed image. Some images, such as truecolor images, represent images using a three-dimensional array. In truecolor images, the first plane in the third dimension represents the red pixel intensities, the second plane represents the green pixel intensities, and the third plane represents the blue pixel intensities.
In the complement of a binary image, zeros become ones and ones become zeros. Black and white are reversed.
In the complement of a grayscale or color image, each pixel value is subtracted from the maximum pixel value supported by the class (or 1.0 for double-precision images). The difference is used as the pixel value in the output image. In the output image, dark areas become lighter and light areas become darker. For color images, reds become cyan, greens become magenta, blues become yellow, and vice versa.
- Read the image using imread fuction.
- Complement the image using imcomplement function.
- Display the image using imshow.
Below is the implementation:
Complement of Binary Image:
Here in binary image 0 becomes 1, black and white are reversed.
Complement of colored Image:
Each color channel of the resulting image is the complement of the corresponding color channel in the original image. Regions that were dark, become light. In the original image, the leaves appear green, and petals appear red. In the complement image, the leaves appear magenta. The flower petals appear cyan.
- MATLAB | Complement colors in RGB Image
- MATLAB | Complement colors in a Grayscale Image
- MATLAB | Complement colors in a Binary image
- MATLAB | Converting a Grayscale Image to Binary Image using Thresholding
- MATLAB | RGB image to grayscale image conversion
- Matlab | Erosion of an Image
- MATLAB | RGB image representation
- Image Resizing in Matlab
- Matlab | Dilation of an Image
- LSB based Image steganography using MATLAB
- Extract bit planes from an Image in Matlab
- Flip image across Secondary Diagonal in MATLAB
- MATLAB | Display histogram of a grayscale Image
- Image Processing in MATLAB | Fundamental Operations
- Matlab | Edge Detection of an image without using in-built function
If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to firstname.lastname@example.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.
Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.