Open CV là một thư viện Python được sử dụng để làm việc với Computer Vision và các tạo tác nhân tạo khác. Open CV có các chức năng và phương pháp có sẵn cung cấp quyền truy cập để làm việc với Thị giác máy tính trong Trí tuệ nhân tạo và Học máy. Một số ví dụ về Open CV là:nhận diện khuôn mặt, phát hiện đối tượng, tia X và các ứng dụng công nghiệp khác.
Sử dụng Thư viện Tkinter, chúng tôi có thể tạo một ứng dụng tương tác sử dụng OpenCV làm phần thiết yếu của ứng dụng.
Để tạo ứng dụng, bạn bắt buộc phải cài đặt OpenCV trong máy cục bộ của mình và đảm bảo rằng gói Python Pillow đã được cài đặt sẵn. Bạn có thể cài đặt các gói này bằng cách nhập các lệnh sau vào sổ tay.
pip install open-cv pip install Pillow
Sau khi cài đặt xong, chúng ta có thể bắt đầu tạo cấu trúc và GUI của ứng dụng. Chức năng cơ bản của ứng dụng của chúng tôi sẽ là mở máy ảnh web (nếu có thể) bằng OpenCV. Vì vậy, để hiển thị từng và mọi khung đã chụp, chúng ta có thể sử dụng gói Python Pillow (PIL) để chuyển khung thành Hình ảnh. Giờ đây, Hình ảnh có thể được sử dụng trong tiện ích Nhãn hiển thị lặp đi lặp lại mọi khung đã chụp trong cửa sổ.
Ví dụ
# 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()
Đầu ra
Khi chúng tôi thực thi đoạn mã trên, nó sẽ hiển thị một cửa sổ mở ra camera người dùng để chụp các khung hình.