Home [CV] 이미지 및 동영상 크기 조절
Post
Cancel

[CV] 이미지 및 동영상 크기 조절

크기 조정

이미지

  • 고정 크기로 설정
1
2
3
4
5
6
7
8
9
10
11
import cv2

img = cv2.imread('C:/Users/USER/Desktop/img.jpg')

# 이미지 크기 변경(width, height)
dst = cv2.resize(img, (400, 500))

cv2.imshow('img', img) # 원본 이미지
cv2.imshow('resize', dst) # 크기 변경한 이미지
cv2.waitKey(0)
cv2.destroyAllWindows()
  • 비율로 설정
1
2
3
4
5
6
7
8
9
10
11
import cv2

img = cv2.imread('C:/Users/USER/Desktop/img.jpg')

# 이미지 크기 변경 (0.5배) -> x, y 비율 정의
dst = cv2.resize(img, None, fx=0.5, fy=0.5)

cv2.imshow('img', img) # 원본 이미지
cv2.imshow('resize', dst) # 크기 변경한 이미지
cv2.waitKey(0)
cv2.destroyAllWindows()

보간법

  • cv2.INTER_AREA : 크기 줄일 때 사용
  • cv2.INTER_CUBIC : 크기 늘릴 때 사용 (속도 느림, 퀄리티 좋음)
  • cv2.INTER_LINEAR : 크기 늘리 때 사용 (기본값)
1
2
3
4
5
6
7
8
9
10
11
import cv2

img = cv2.imread('C:/Users/USER/Desktop/img.jpg')

# 이미지 크기 변경 (0.5배) -> x, y 비율 정의
dst = cv2.resize(img, None, fx=2, fy=2, interpolation=cv2.INTER_CUBIC)

cv2.imshow('img', img) # 원본 이미지
cv2.imshow('resize', dst) # 크기 변경한 이미지
cv2.waitKey(0)
cv2.destroyAllWindows()

동영상

  • 고정 크기로 설정
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
import cv2

cap = cv2.VideoCapture('C:/Users/USER/Desktop/video.mp4')

while cap.isOpened():
    ret, frame = cap.read()
    if not ret:
        break
    
    # 동영상 frame 크기 변경
    frame_resized = cv2.resize(frame, (400, 500))
    cv2.imshow('video', frame_resized)
    if cv2.waitKey(1) == ord('q'):
        break
    
cap.release()
cv2.destroyAllWindows()
  • 비율로 설정
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
import cv2

cap = cv2.VideoCapture('C:/Users/USER/Desktop/video.mp4')

while cap.isOpened():
    ret, frame = cap.read()
    if not ret:
        break
    
    # 동영상 frame 크기 변경
    frame_resized = dst = cv2.resize(frame, None, fx=1.5, fy=1.5, interpolation=cv2.INTER_CUBIC)
    cv2.imshow('video', frame_resized)
    if cv2.waitKey(1) == ord('q'):
        break
    
cap.release()
cv2.destroyAllWindows()
This post is licensed under CC BY 4.0 by the author.