เมธอด cvtColor() ของ Imgproc แปลงสีภาพ รับพารามิเตอร์ src, dst, code
หมายเหตุ: โค้ดตัวอย่างในบทความต้นฉบับมีข้อผิดพลาด ใช้ COLOR_RGB2BGR แต่คำอธิบายกล่าวถึง Grayscale โค้ดด้านล่างแก้ไขให้ถูกต้อง
ตัวอย่าง: แปลงเป็น Grayscale (ถูกต้อง)
import org.opencv.core.Core;
import org.opencv.core.Mat;
import org.opencv.imgcodecs.Imgcodecs;
import org.opencv.imgproc.Imgproc;
public class ColorToGrayscale {
public static void main(String args[]) throws Exception {
System.loadLibrary(Core.NATIVE_LIBRARY_NAME);
Mat src = Imgcodecs.imread("spiderman.jpg");
Mat dst = new Mat();
// แปลงเป็น Grayscale ใช้ COLOR_RGB2GRAY
Imgproc.cvtColor(src, dst, Imgproc.COLOR_RGB2GRAY);
Imgcodecs.imwrite("grayscale.jpg", dst);
System.out.println("Image Saved");
}
}
รหัสสีที่น่าสนใจ
COLOR_RGB2GRAY- แปลงเป็นขาวดำCOLOR_RGB2BGR- สลับช่องสี RGB เป็น BGRCOLOR_RGB2HSV,COLOR_RGB2HLS- แปลงเป็น HSV/HLS
ภาพอินพุตและเอาต์พุต
ภาพสีจะถูกแปลงเป็นภาพขาวดำ (Grayscale)