본문 바로가기

728x90

Resize

(2)
[이미지] Numpy로 이미지 처리 기초 [Python]-cv2 고양이 사진을 여러 구간으로 나누어 224x224 크기로 10개의 이미지를 만드는 과정 $($하나의 함수로 길게 만들었어요$)$ # 마구잡이로 자르면 고양이의 특징이 없는 이미지가 나올 수 있음 # 전체 이미지 비율을 유지하기 위해서 padding을 하고 # 어떻게 자르든 고양이의 특징이 나오도록 전체 이미지를 축소하고 # 랜덤하게 224x224 크기로 10번 crop 진행 from matplotlib import pyplot as plt import numpy as np import random import cv2 def pad_resize_crop(img, size): # 패딩할 상하/좌우 픽셀 # 상하나 좌우 중 한 세트에만 패딩을 할 예정 -> 초기 값: 0 # 상하좌우 모두 패딩을 하고 싶다면 ..
[이미지] Numpy로 이미지 패딩 후 224x224 resize 하기 [Python]-cv2 더보기 패딩 없이 resize만 하면 아래처럼 이미지가 뭉게집니다. import numpy as np import cv2 from matplotlib import pyplot as plt def resize_224x224(img): # 패딩할 상하/좌우 픽셀 # 상하나 좌우 중 한 세트에만 패딩을 할 예정 -> 초기 값: 0 # 상하좌우 모두 패딩을 하고 싶다면 # 0이 아닌 같은 값으로 넣은 후 # 이후 ud, lr 값을 업데이트할 때, # += 로 값을 더해주는 형식으로 하면 됨. ud, lr = (0, 0), (0, 0) # 이미지의 높이, 너비 중의 더 큰 값 M = max(img.shape[:2]) # s = 이미지의 높이와 너비의 차 s = img.shape[0]-img.shape[1] # 높..