Lesson 2 : Convert ColorPhoto To GrayPhoto
พอดีว่าว่าง ๆ นิดนึงก็เลยเขียนบทความ Image Processing ว่าด้วยเรื่องของการแปลงไฟล์ภาพสีเป็นภาพขาวดำด้วย EmguCV ซึ่งในการที่จะทำความเข้าใจในเรื่องของการแปลงไฟล์ภาพสีเป็นขาวดำด้วยไลบรารี่ EmguCV นี้ จำเป็นจะต้องเข้าใจว่าค่าพารามิเตอร์พื้นฐานของคลาส Image ที่ว่าด้วยเรื่องการใช้สี ในไลบรารี่ของ EmguCV เป็นอย่างไร นำมาใช้งานอย่างไร ซึ่งสามารถเข้าไปอ่านได้ที่ Working with Images ซึ่งผมจะขออธิบายคร่าว ๆ ดังนี้นะครับ
การสร้างภาพ (create image) รูปแบบของคำสั่งคือ
การสร้างภาพ (create image) รูปแบบของคำสั่งคือ
Image<TColor, TDepth>
โดยที่ TColor คือชนิดของรูปแบบสี
มีอยู่ด้วยกันดังนี้ (EmguCV 1.4.0.0)
- Gray
- Bgr (Blue Green Red)
- Bgra (Blue Green Red Alpha)
- Hsv (Hue Saturation Value)
- Hls (Hue Lightness Saturation)
- Lab (CIE L*a*b*)
- Luv (CIE L*u*v*)
- Xyz (CIE XYZ.Rec 709 with D65 white point)
- Ycc (YCrCb JPEG)
TDepth คือค่าความลึกระดับพิเซลของภาพ
มีอยู่ด้วยกันดังนี้
- Byte
- SByte
- Single (float)
- Double
- UInt16
- Int16
- Int32 (int)
ตัวอย่าง
Image<Bgr, Byte> myImg = new Image<Bgr, Byte>(600, 400);
จากตัวอย่างเป็นการสร้างตัวแปรชื่อ myImg เป็นชนิดรูปภาพสี มีขนาด 600x400 พิคเซล
เอาล่ะ! มาว่ากันถึงโปรเจคใน Lesson 2 กันเลยดีกว่า จั่วหัวด้วย "Convert ColorPhoto To GrayPhoto" นั่นก็หมายถึงการใช้ไลบรารี่ของ EmguCV ร่วมกับ Visual C# ในการแปลงสีของรูปจากสีปกติ RGB(Bgr) เป็นลักษณะของสีขาวดำ(Gray)
Image<Bgr, Byte> myImg = new Image<Bgr, Byte>(600, 400);
จากตัวอย่างเป็นการสร้างตัวแปรชื่อ myImg เป็นชนิดรูปภาพสี มีขนาด 600x400 พิคเซล
เอาล่ะ! มาว่ากันถึงโปรเจคใน Lesson 2 กันเลยดีกว่า จั่วหัวด้วย "Convert ColorPhoto To GrayPhoto" นั่นก็หมายถึงการใช้ไลบรารี่ของ EmguCV ร่วมกับ Visual C# ในการแปลงสีของรูปจากสีปกติ RGB(Bgr) เป็นลักษณะของสีขาวดำ(Gray)
- เริ่มด้วยการเปิด Microsoft Visual Studio ขึ้นมาเลยครับ ทำการเพิ่มไลบรารี่ของ EmguCV ให้เรียบร้อย แล้วสร้างฟอร์มและองค์ประกอบต่าง ๆ ดังรูป
- ทำการเพิ่ม Dialogs จาก ToolsBox ที่ชื่อ OpenFileDialog เข้ามายังฟอร์ม เครื่องมือตัวนี้เป็นคอมโพเน้นท์เพื่อใช้สำหรับในการเลือกเปิดไฟล์รูปภาพ
- สร้างตัวแปรรูปภาพสีแบบ RGB ในรูปแบบของไลบรารี่ EmguCV ในที่นี้ให้ชื่อว่า photo เพื่อมาเป็นตัวรับค่าของรูปภาพที่ได้เลือกในการทำการแปลงสีให้เป็นขาวดำ รวมถึงการแสดงผล
- ดับเบิ้ลคลิกที่ปุ่ม btnLoadImg แล้วเพิ่มคำสั่งต่อไปนี้
- ดับเบิ้ลคลิกที่ปุ่ม btnConV แล้วเพิ่มคำสั่งต่อไปนี้
- ผลการทำงานของโปรเจคนี้
ความคิดเห็น
แสดงความคิดเห็น