Rumah > Java > javaTutorial > teks badan

Dalam Java OpenCV, tukar imej kepada skala kelabu tanpa menggunakan sebarang kaedah

王林
Lepaskan: 2023-08-26 14:53:16
ke hadapan
1043 orang telah melayarinya

Tukar imej berwarna kepada skala kelabu.

  • Dapatkan nilai merah, hijau dan biru ​​​​bagi setiap piksel

  • Dapatkan purata 3 warna ini.

  • Ganti nilai RGB dengan purata.

  • Buat nilai piksel baharu berdasarkan warna yang diubah suai.

  • Tetapkan nilai baharu kepada piksel.

Contoh

import java.io.File;
import java.io.IOException;
import java.awt.Color;
import java.awt.image.BufferedImage;
import javax.imageio.ImageIO;
public class Color2Grey {
   public static void main(String args[])throws IOException {
      //Reading the image
      File file= new File("D:\Images\car.jpg");
      BufferedImage img = ImageIO.read(file);
      for (int y = 0; y < img.getHeight(); y++) {
         for (int x = 0; x < img.getWidth(); x++) {
            //Retrieving the values of a pixel
            int pixel = img.getRGB(x,y);
            //Creating a Color object from pixel value
            Color color = new Color(pixel, true);
            //Retrieving the R G B values
            int red = color.getRed();
            int green = color.getGreen();
            int blue = color.getBlue();
            //Finding the average of the red green blue values
            int average = (red+green+blue)/3;
            //Creating new Color object
            color = new Color(average, average, average);
            //Setting new Color object to the image
            img.setRGB(x, y, color.getRGB());
         }
      }
      //Saving the modified image
      file = new File("D:\Images\grey_image.jpg");
      ImageIO.write(img, "jpg", file);
      System.out.println("Done...");
   }
}
Salin selepas log masuk

Input

在Java OpenCV中,不使用任何方法将图像转换为灰度图

Output

在Java OpenCV中,不使用任何方法将图像转换为灰度图

Atas ialah kandungan terperinci Dalam Java OpenCV, tukar imej kepada skala kelabu tanpa menggunakan sebarang kaedah. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:tutorialspoint.com
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan