Python 라이브러리는 독립적이므로 특정 기능을 갖춘 응용 프로그램을 빌드하는 동안 모두 다른 목적으로 사용할 수 있습니다. 이 예제에서는 OpenCV와 Tkinter 라이브러리를 사용하여 애플리케이션을 빌드합니다. OpenCV는 Computer Vision 및 기타 인공 인공물과 함께 작동하는 데 사용되는 Python 라이브러리입니다. OpenCV 모듈을 사용하여 tkinter 창에 웹캠을 표시해야 합니다.
애플리케이션을 만들려면 open-cv를 설치해야 합니다. 로컬 컴퓨터에서 Python Pillow 패키지 사전 설치되어 있습니다. 다음 명령을 입력하여 이러한 패키지를 설치할 수 있습니다.
pip install open-cv pip install Pillow
설치가 완료되면 애플리케이션의 구조와 GUI 생성을 시작할 수 있습니다. 우리 응용 프로그램의 기본 기능은 OpenCV를 사용하여 웹 카메라(가능한 경우)를 여는 것입니다. 따라서 캡처된 모든 프레임을 표시하려면 프레임을 이미지로 변환하는 PIL(Python Pillow) 패키지를 사용할 수 있습니다. 이미지는 이제 창에 캡처된 모든 프레임을 반복적으로 표시하는 레이블 위젯에서 사용할 수 있습니다.
예시
# 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()
출력
위의 코드를 실행할 때마다 웹캠이 켜지고 출력이 tkinter 창에 표시됩니다.