Home  >  Article  >  Java  >  How to change the brightness of an image using Java OpenCV library?

How to change the brightness of an image using Java OpenCV library?

WBOY
WBOYforward
2023-09-10 23:45:02965browse

The

convertTo() method of class org.opencv.core.Mat performs the required calculations on the given matrix to change the contrast and brightness of the image. This method accepts 4 parameters -

  • mat - an empty matrix to hold the result of the same size and type as the source matrix.

  • #rtype - An integer value specifying the type of the output matrix. If the value is negative, the type will be the same as the source.

  • alpha - Gain value, must be greater than 0 (default 1).

  • #beta - Bias value (default 0).

Change the brightness of the image using the OpenCV Java library

As mentioned above, the beta value passed to this method will change the brightness of the image Image, if the value chosen for this parameter is negative (0 to -255), the image will be less bright. Likewise, if it is greater than 0 (0 to 255), the brightness of the image increases.

To change the contrast of an image, call the convertTo() method by passing the empty matrix, -1 (to get the same type), 1 as the alpha value, and the beta value to increase or decrease the brightness .

Example

import org.opencv.core.Core;
import org.opencv.core.Mat;
import org.opencv.imgcodecs.Imgcodecs;
public class AlteringBrightness {
   public static void main (String[] args) {
      //Loading the OpenCV core library
      System.loadLibrary( Core.NATIVE_LIBRARY_NAME );
      //Reading the Image from the file
      String file ="D:\Images\tiger.jpg";
      Mat src = Imgcodecs.imread(file, Imgcodecs.IMREAD_COLOR);
      //Creating an empty matrix
      Mat dest = new Mat(src.rows(), src.cols(), src.type());
      //Increasing the brightness of an image
      src.convertTo(dest, -1, 1, 100);
      // Writing the image
      Imgcodecs.imwrite("D:\Images\altering_brightness_100.jpg", dest);
   }
}

Input picture

如何使用Java OpenCV库来改变图像的亮度?

Below are various output images for different alpha values ​​-

α value: -100

α value: -50

如何使用Java OpenCV库来改变图像的亮度?

α value: 50

如何使用Java OpenCV库来改变图像的亮度?

α Value: 100

如何使用Java OpenCV库来改变图像的亮度?

The above is the detailed content of How to change the brightness of an image using Java OpenCV library?. For more information, please follow other related articles on the PHP Chinese website!

Statement:
This article is reproduced at:tutorialspoint.com. If there is any infringement, please contact admin@php.cn delete