1. 사진 불러오기
- 이미지를 불러와서 창으로 출력
- q키를 누르면 창이 꺼지게 만들기
import cv2
image_path = 'data/Dog.jpg'
img = cv2.imread(image_path)
if img is not None:
cv2.imshow('Img', img)
while True:
key = cv2.waitKey(1) & 0xFF
if key == ord('q'):
break
cv2.destroyAllWindows()
else:
print('이미지를 불러올 수 없습니다.')
2. 동영상 불러오기
- 동영상을 불러와서 창으로 출력
- q키를 누르면 창이 꺼지게 만들기
import cv2
video_path = '동영상_파일_경로.mp4'
cap = cv2.VideoCapture(video_path)
if not cap.isOpened():
print('동영상을 열 수 없습니다.')
else:
while True:
ret, frame = cap.read()
if ret:
cv2.imshow('Video', frame)
else:
cap.set(cv2.CAP_PROP_POS_FRAMES, 0)
if cv2.waitKey(25) & 0xFF == ord('q'):
break
cap.release()
cv2.destroyAllWindows()
3. 웹캠 불러오기
- 웹캠을 불러와서 창으로 출력
- 창의 크기를 가로 640, 세로 480으로 설정
- q키를 누르면 창이 꺼지게 만들기
import cv2
cap = cv2.VideoCapture(0)
cap.set(cv2.CAP_PROP_FRAME_WIDTH, 640)
cap.set(cv2.CAP_PROP_FRAME_HEIGHT, 480)
while True:
ret, frame = cap.read()
if ret:
cv2.imshow('Webcam', frame)
else:
print('웹캠에서 프레임을 읽을 수 없습니다.')
if cv2.waitKey(1) & 0xFF == ord('q'):
break
cap.release()
cv2.destroyAllWindows()
4.그레이 스케일 출력
- 웹캠을 불러오고 그레이스케일로 웹캠을 창으로 출력
- q키를 누르면 창이 꺼지게 만들기
import cv2
cap = cv2.VideoCapture(0)
while True:
ret, frame = cap.read()
if ret:
gray_frame = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)
cv2.imshow('Grace Webcam', gray_frame)
else:
print('웹캠에서 프레임을 읽을 수 없습니다.')
if cv2.waitKey(1) & 0xFF == ord('q'):
break
cap.release()
cv2.destroyAllWindows()
5. 텍스트와 도형 출력
import cv2
import numpy as np
width, height = 640, 480
image = np.zeros((height, width, 3), dtype=np.uint8)
cv2.line(image, (100, 100), (300, 300), (255, 0, 0), 2)
cv2.rectangle(image, (200, 200), (400, 400), (0, 255, 0), 2)
cv2.circle(image, (300, 300), 100, (0, 0, 255), 2)
cv2.putText(image, "OpenCV Drawing", (100, 50), cv2.FONT_HERSHEY_SIMPLEX, 1, (255, 255, 255), 2)
cv2.imshow('OpenCV Drawing', image)
cv2.waitKey(0)
cv2.destroyAllWindows()