ตัวอย่างการใช้งานโมดูล Numpy กับ CV2 เรื่องการกำหนดสีหลายภาพ
ตัวอย่างการทำงานเรื่องการกำหนดสีหลายภาพ เริ่มต้นจากติดตั้งโมดูลก่อนจากนั้นให้เราเรียกใช้งานโมดูล numpy กับ cv2 เพื่อคำนวณค่าและการจัดการรูปภาพ ต่อมาเปิดไฟล์ภาพที่จะแสดงโดยเราจะนำภาพที่เราเลือกมาแสดงในลักษณะของสีอื่นๆ โดยตัวอย่างนี้ได้ทำการแปลงภาพเป็น3สีได้แก่ ภาพสีน้ำเงิน เขียวและแดงเป็นต้น ส่วนคำสั่งการทำงานสามารถอ่านรายละเอียดการทำงานของโค้ดตัวอย่างภาษา python ได้ด้านล่างนี้เลยครับ
ติดตั้งโมดูล numpy ด้วยระบบปฏิบัติการ Windows
pip install numpy
ส่วนโมดูล cv2 ใช้คำสั่งตามด้านล่างและตัวโมดูลนี้รองรับการทำงานกับ python3
pip install opencv-python
Input
import cv2
import numpy as np
# เลือกชื่อไฟล์ภาพที่จะทำการเปิดโดยตัวภาพนั้นต้องอยู่ที่เดียวกันกับไฟล์โค้ด
img = cv2.imread('headphones-15600_960_720.jpg')
# สร้างตัวแปรที่แสดงภาพสีน้ำเงิน ,สีเขียว ,สีแดง
# คำสั่ง np.zeros_like(img) เป็นการส่งกลับค่าอาร์เลย์ของตัวแปร img เพื่ออ้างอิงลักษณะหรือรูปลักษณ์ของภาพมาใช้ ส่วนบรรทัดถัดไปเป็นการคัดลอกไฟล์เพื่อที่จะนำมาใส่สี
blue = np.zeros_like(img)
blue[...,0] = img[...,1].copy()
green = np.zeros_like(img)
green[...,1] = img[...,1].copy()
red = np.zeros_like(img)
red[...,2] = img[...,2].copy()
# กำหนดชื่อที่ใช้แสดงหัวเรื่องและดึงค่าจากตัวแปรภาพเพื่อเปิดโชว์ภาพขึ้นมาแสดงรวมไปถึงกำหนดระยะเวลาในการแสดงภาพ
cv2.imshow("Blue",blue)
cv2.imshow("Red",red)
cv2.imshow("Green",green)
# ถ้าเราไม่ได้กำหนดตัวเลขไว้ภายในวงเล็บจะเป็นการแสดงผลลัพธ์ของเวลาเป็นค่า default ที่เป็นค่า 0
cv2.waitKey()
Output
คำสั่งในการทำงานเรื่องการกำหนดสีหลายภาพ เริ่มต้นจากติดตั้งโมดูลก่อนจากนั้นให้เราเรียกใช้งานโมดูล numpy กับ cv2 เพื่อคำนวณค่าและการจัดการรูปภาพ ต่อมาเป็นคำสั่งที่ใช้ในการเปิดไฟล์ตามที่เราเลือกโดยไฟล์ภาพนั้นต้องอยู่ที่เดียวกันกับไฟล์โค้ดและจากนั้นจะเป็นการสร้างไฟล์ภาพ 3 ภาพที่มีสีน้ำเงิน เขียวและแดง โดยทั้ง 3 ภาพนั้นจะใช้คำสั่งในการทำงานเหมือนกันต่างกันที่การกำหนดสีที่จะแสดงและสุดท้ายเปิดไฟล์ที่เราทำการใส่สีไว้ก่อนหน้ามาแสดงผลลัพธ์บนหน้าจอโดยแต่ละภาพนั้นจะแสดงเป็น 3 หน้าจอผลลัพธ์รวมไปถึงการกำหนดระยะเวลาในการแสดงผลลัพธ์ของภาพ
ช่องทางการศึกษาเพิ่มเติมข่าวที่น่าสนใจเกี่ยวกับ : ตัวอย่างการใช้งานโมดูล Numpy กับ CV2 เรื่องการกำหนดสีหลายภาพ