如何使用 Java 将图像转换为灰度图像

问题描述

如何使用 Java 将图像转换为灰度图像。

解决方案

以下是使用 Java 将图像转换为灰度图像的程序。

import org.opencv.core.Core;
import org.opencv.core.Mat;

import org.opencv.imgcodecs.Imgcodecs;
import org.opencv.imgproc.Imgproc;

public class ConvertingImageToGrayScale {
   public static void main(String args[]) throws Exception {
      
    //加载 OpenCV 核心库
    System.loadLibrary(Core.NATIVE_LIBRARY_NAME );
    String input = "C:/opencv/sample.jpg";
    
    //读取图像
    Mat src = Imgcodecs.imread(input);
    
    //创建空目标矩阵
    Mat dst = new Mat();
    
    //将图像转换为灰度并将其保存在 dst 矩阵中
    Imgproc.cvtColor(src, dst, Imgproc.COLOR_RGB2GRAY);
    
    //写入图像
    Imgcodecs.imwrite("C:/opencv/imageToGrayScale.jpg", dst);
    System.out.println("Converted to Grayscale");
   }
}

输入

转换图像

输出

灰度图像
java_opencv.html