[Python] opencv - 크기조정

개발log·2024년 3월 5일
0

Python

목록 보기
11/17
post-thumbnail

크기 조정

  • cv2.resize(img, (400,500)): 고정 크기 변경
  • cv2.resize(img, None, fx=0.5, fy=0.5): 비율 축소 변경

이미지

고정 크기로 설정

import cv2
img = cv2.imread('../OpenCV/dog.jpg')
# 사이즈를 바꾼다.
dst = cv2.resize(img, (400,500)) #width, height 고정 크기
cv2.imshow('img', img) # 원래 이미지
cv2.imshow('resize', dst) # 사이즈 변경
cv2.waitKey(0)
cv2.destroyAllWindows()

비율로 설정

import cv2
img = cv2.imread('../OpenCV/dog.jpg')
# 사이즈를 바꾼다.
dst = cv2.resize(img, None, fx=0.5, fy=0.5) # x,y비율 정의(0.5배로 축소)
cv2.imshow('img', img) # 원래 이미지
cv2.imshow('resize', dst) # 사이즈 변경
cv2.waitKey(0)
cv2.destroyAllWindows()

보간법

  • cv2.INTER_AREA: 크기를 줄일 때
  • cv2.INTER_CUBIC: 크기를 늘릴 때(속도느림, 퀄리티 좋음)
  • cv2.INTER_LINEAR(크기 늘릴 때, 기본값)

축소

import cv2
img = cv2.imread('../OpenCV/dog.jpg')
dst = cv2.resize(img, None, fx=0.5, fy=0.5, interpolation=cv2.INTER_AREA)
cv2.imshow('img', img) # 원래 이미지
cv2.imshow('resize', dst) # 사이즈 변경
cv2.waitKey(0)
cv2.destroyAllWindows()

확대

import cv2
img = cv2.imread('../OpenCV/dog.jpg')
dst = cv2.resize(img, None, fx=1.5, fy=1.5, interpolation=cv2.INTER_CUBIC)
cv2.imshow('img', img) # 원래 이미지
cv2.imshow('resize', dst) # 사이즈 변경
cv2.waitKey(0)
cv2.destroyAllWindows()

동영상

고정 크기로 설정

import cv2
cap = cv2.VideoCapture('../OpenCV/viedo.mp4')

while cap.isOpened():
    ret, frame = cap.read()
    if not ret:
        break

    frame_resized = cv2.resize(frame, (400,d500))
    cv2.imshow('video', frame_resized)
    if cv2.waitKey(1)==ord('q'):
        break
cap.release()
cv2.destroyAllWindows()

비율로 설정

import cv2
cap = cv2.VideoCapture('../OpenCV/viedo.mp4')

while cap.isOpened():
    ret, frame = cap.read()
    if not ret:
        break

    frame_resized = cv2.resize(frame, None, fx=0.5, fy=0.5, interpolation=cv2.INTER_CUBIC)
    cv2.imshow('video', frame_resized)
    if cv2.waitKey(1)==ord('q'):
        break
cap.release()
cv2.destroyAllWindows()
profile
나의 개발 저장소

0개의 댓글