- Leave a reply
การสร้างตัวแปรชนิดรูปภาพ
ในการเขียนโปรแกรมโดยใช้ไลบราลี่ของ
emgu
cv สิ่งพื้นฐานที่สุดที่จำเป็นจะต้องรู้
คือการสร้างตัวแปรชนิดรูปภาพ
โดยสามารถเรียกใช้ฟังชั่นของ emgu cv ได้เลย ดังนี้
Image<Bgr, Byte> img1 = new Image<Bgr, Byte>(480, 320);
Bgr คือ
ประเภทสีของรูปภาพ โดย emgu cv เวอร์ชั่น 1.3.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)
Byte คือความลึกของ pixel เช่น Byte ในแต่ละ pixel จะสามารถมีค่าได้ตั้งแต่
0-255
- Byte : แต่ละ pixel สามารถมีค่าได้ตั้งแต่ 0 to 255
- Sbyte (Signed Byte) : แต่ละ pixel สามารถมีค่าได้ตั้งแต่ -128 to 127
- Single (float) : แต่ละ
pixel สามารถมีค่าได้ตั้งแต่ ±1.5 × 10−45 to ±3.4 × 1038
- Double : แต่ละ pixel
สามารถมีค่าได้ตั้งแต่ ±5.0 × 10−324 to ±1.7 × 10308
- UInt16 : แต่ละ pixel
สามารถมีค่าได้ตั้งแต่ 0 to 65,535
- Int16 : แต่ละ pixel
สามารถมีค่าได้ตั้งแต่ -32768 to
+32787
- Int32 (int) : แต่ละ pixel
สามารถมีค่าได้ตั้งแต่ -2,147,483684 to +2,147,483683
*** โดยปกติแล้วเราจะใช้ ชนิด Byte กัน เพราะใช้ memory
ในการเก็บข้อมูลน้อย และสามารถประมวลผลได้รวดเร็ว
แต่ในกรณีที่ต้องการคำนวณแบบหนักๆ เราจะหันมาใช้ชนิด float หรือ
double เพื่อช่วยเพิ่มความแม่นยำมากยิ่งขึ้น ***
Img1 คือ
ชื่อตัวแปร
480 และ 320
คือ ความกว้าง และความสูงตามลำดับ
1. เราสามารถกำหนดค่าสีของแต่ละ pixel
ในการสร้างภาพได้เลย เช่น
Image<Bgr, Byte> img1 = new Image<Bgr, Byte>(480, 320, new Bgr(255, 0, 0));
Image<Gray, Byte> img2 = new Image< Gray, Byte>(480, 320, new Gray(127));
2. เราสามารถอ่านไฟล์รูปจาก memory มาเก็บไว้ในตัวแปรได้ดังนี้
Image<Bgr, Byte> img3 = new Image<Bgr, Byte>(“Myfile.jpg” );
Post a Comment