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()
ผลลัพธ์
เมื่อเรารันโค้ดข้างต้น จะแสดงหน้าต่างที่เปิดกล้องของผู้ใช้เพื่อจับภาพเฟรม