Home [CV] 이미지 변형1
Post
Cancel

[CV] 이미지 변형1

이미지 자르기

이미지 자르기에서 적용한 부분을 똑같이 동영상에 적용 가능

  • 영역을 잘라서 새로운 윈도우(창)에 표시
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()
This post is licensed under CC BY 4.0 by the author.