이미지 자르기
이미지 자르기에서 적용한 부분을 똑같이 동영상에 적용 가능
- 영역을 잘라서 새로운 윈도우(창)에 표시
1
2
3
4
5
6
7
8
9
10
11
12
13
import cv2
img = cv2.imread('C:/Users/USER/Desktop/ddoddo.jpg')
img.shape # (642, 1080, 3)
# [세로 범위, 가로 범위]
crop = img[100:400, 300:600]
cv2.imshow('ddoddo', img)
cv2.imshow('crop ddoddo', crop)
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/ddoddo.jpg')
# [세로 범위, 가로 범위]
crop = img[100:400, 300:600]
img[100:400, 600:900] = crop
cv2.imshow('ddoddo', img)
cv2.waitKey(0)
cv2.destroyAllWindows()
이미지 대칭
좌우 대칭
cv2.flip
- flip > 0 : 좌우 대칭
1
2
3
4
5
6
7
8
9
import cv2
img = cv2.imread('C:/Users/USER/Desktop/ddoddo.jpg')
flip_horizontal = cv2.flip(img, 1)
cv2.imshow('img', img)
cv2.imshow('horizontal', flip_horizontal)
cv2.waitKey(0)
cv2.destroyAllWindows()
상하 대칭
- flip = 0 : 상하 대칭
1
2
3
4
5
6
7
8
9
import cv2
img = cv2.imread('C:/Users/USER/Desktop/ddoddo.jpg')
flip_vertical = cv2.flip(img, 0)
cv2.imshow('img', img)
cv2.imshow('vertical', flip_vertical)
cv2.waitKey(0)
cv2.destroyAllWindows()
상하 좌우 대칭
- flip < 0 : 상하 좌우 대칭
1
2
3
4
5
6
7
8
9
import cv2
img = cv2.imread('C:/Users/USER/Desktop/ddoddo.jpg')
flip_both = cv2.flip(img, -1)
cv2.imshow('img', img)
cv2.imshow('both', flip_both)
cv2.waitKey(0)
cv2.destroyAllWindows()
이미지 회전
cv2.rotate()
시계 방향 90도 회전
cv2.ROTATE_90_CLOCKWISE
1
2
3
4
5
6
7
8
9
10
11
import cv2
img = cv2.imread('C:/Users/USER/Desktop/ddoddo.jpg')
# 시계 방향으로 90도 회전
rotate_90 = cv2.rotate(img, cv2.ROTATE_90_CLOCKWISE)
cv2.imshow('img', img)
cv2.imshow('rotate_90', rotate_90)
cv2.waitKey(0)
cv2.destroyAllWindows()
180도 회전
cv2.ROTATE_180
1
2
3
4
5
6
7
8
9
10
11
import cv2
img = cv2.imread('C:/Users/USER/Desktop/ddoddo.jpg')
# 180도 회전
rotate_180 = cv2.rotate(img, cv2.ROTATE_180)
cv2.imshow('img', img)
cv2.imshow('rotate_180', rotate_180)
cv2.waitKey(0)
cv2.destroyAllWindows()
시계 반대 방향으로 90도 회전
cv2.ROTATE_90_COUNTERCLOCKWISE
1
2
3
4
5
6
7
8
9
10
11
import cv2
img = cv2.imread('C:/Users/USER/Desktop/ddoddo.jpg')
# 시계 방향으로 90도 회전
rotate_270 = cv2.rotate(img, cv2.ROTATE_90_COUNTERCLOCKWISE)
cv2.imshow('img', img)
cv2.imshow('rotate_270', rotate_270)
cv2.waitKey(0)
cv2.destroyAllWindows()