1. image crop

from PIL import Image

area = (가로시작점, 세로시작점, 가로범위, 세로범위)

crop_image = img.crop(area)

im.save # 저장하기

 

2. opveCV 활용

import cv2

src=cv2.imread("Image/pawns.jpg", cv2.IMREAD_COLOR)

dst=src.copy()

dst=src[100:600, 200:700] %높이, 너비

 

3. trim 활용

import cv2 #cv2 임포트

def im_trim (img): #함수로 만든다

x = 845;

y = 325; #자르고 싶은 지점의 x좌표와 y좌표 지정

w = 180; h = 235; #x로부터 width, y로부터 height를 지정

img_trim = img[y:y+h, x:x+w] #trim한 결과를 img_trim에 담는다

cv2.imwrite('org_trim.jpg',img_trim) #org_trim.jpg 라는 이름으로 저장

return img_trim #필요에 따라 결과물을 리턴

org_image = cv2.imread('test.jpg') #test.jpg 라는 파일을 읽어온다

trim_image = im_trim(org_image) #trim_image 변수에 결과물을 넣는다

출처: https://pikabu.tistory.com/42 [피카부]

 

4. numpy 슬라이싱

import cv2 img = cv2.imread("lenna.png")

crop_img = img[200:400, 100:300] # Crop from x, y, w, h -> 100, 200, 300, 400

# NOTE: its img[y: y + h, x: x + w] and *not* img[x: x + w, y: y + h]

cv2.imshow("cropped", crop_img)

cv2.waitKey(0)

+ Recent posts