Open CV คือไลบรารี Python ที่ใช้ในการทำงานกับ Computer Vision และสิ่งประดิษฐ์ประดิษฐ์อื่นๆ Open CV มีฟังก์ชันและวิธีการที่ฝังอยู่ภายในซึ่งให้การเข้าถึงการทำงานกับ Computer Vision ในปัญญาประดิษฐ์และการเรียนรู้ของเครื่อง ตัวอย่างบางส่วนของ Open CV ได้แก่ การตรวจจับใบหน้า การตรวจจับวัตถุ การเอ็กซ์เรย์ และการใช้งานในอุตสาหกรรมอื่นๆ
เมื่อใช้ Tkinter Library เราสามารถสร้างแอปพลิเคชันแบบโต้ตอบที่ใช้ OpenCV เป็นส่วนสำคัญของแอปพลิเคชันได้
ในการสร้างแอปพลิเคชัน คุณจะต้องติดตั้ง OpenCV ในเครื่องของคุณ และตรวจดูให้แน่ใจว่าได้ติดตั้งแพ็คเกจ Python Pillow ไว้ล่วงหน้าแล้ว คุณสามารถติดตั้งแพ็คเกจเหล่านี้ได้โดยพิมพ์คำสั่งต่อไปนี้ในโน้ตบุ๊ก
pip install open-cv pip install Pillow
เมื่อการติดตั้งเสร็จสมบูรณ์ เราสามารถเริ่มสร้างโครงสร้างและ GUI ของแอปพลิเคชันได้ ฟังก์ชันพื้นฐานของแอปพลิเคชันของเราคือเปิดกล้องเว็บ (ถ้าเป็นไปได้) โดยใช้ OpenCV ดังนั้น เพื่อแสดงเฟรมที่จับภาพทุกเฟรม เราสามารถใช้แพ็คเกจ Python Pillow (PIL) ซึ่งแปลงเฟรมเป็นอิมเมจ ตอนนี้รูปภาพสามารถใช้ในวิดเจ็ตป้ายกำกับที่แสดงทุกเฟรมที่จับภาพซ้ำในหน้าต่างได้
ตัวอย่าง
# Import required Libraries
from tkinter import *
from PIL import Image, ImageTk
import cv2
# Create an instance of TKinter Window or frame
win= Tk()
# Set the size of the window
win.geometry("700x350")# Create a Label to capture the Video frames
label =Label(win)
label.grid(row=0, column=0)
cap= cv2.VideoCapture(0)
# Define function to show frame
def show_frames():
# Get the latest frame and convert into Image
cv2image= cv2.cvtColor(cap.read()[1],cv2.COLOR_BGR2RGB)
img = Image.fromarray(cv2image)
# Convert image to PhotoImage
imgtk = ImageTk.PhotoImage(image = img)
label.imgtk = imgtk
label.configure(image=imgtk)
# Repeat after an interval to capture continiously
label.after(20, show_frames)
show_frames()
win.mainloop() ผลลัพธ์
เมื่อเรารันโค้ดข้างต้น จะแสดงหน้าต่างที่เปิดกล้องของผู้ใช้เพื่อจับภาพเฟรม
