코드모음/OpenCV
Opencv - CopyMakeBorder, Rectangle, Circle
John-Co
2023. 8. 7. 11:41
CopyMakeBorder 란?
Image 의 Top, Bottom, Left, Right 부분에 특정 값으로 Pixel 을 덧 붙여주는 함수입니다.
BorderType Option 에 따라 다양하게 Pixel 을 추가할 수 있으며 아래 예제를 통해서 확인해 보도록 하겠습니다.
import cv2 as cv
import numpy as np
img = cv.imread('./images/demo.jpg')
option = 0 # option = 0~4
img2 = cv.copyMakeBorder(test, 50, 50, 50, 50, option)
cv.imshow('test', test)
Option 0 : '255' 값으로 RGB 채널을 이어 붙입니다.
Option 1 : 가장자리에 위치한 RGB 값 그대로를 이어붙입니다.
Option 2 : 가장자리에 위치한 RGB 값을 대칭으로 이어 붙입니다.
Option 3 : 각 가장자리에 위치한 RGB 값을 상/하, 좌/우를 매칭하여 이어 붙입니다.
Option 4 : 각 가장자리에 위치한 RGB 값을 상/하, 좌/우를 매칭하고 대칭으로 이어 붙입니다.
Rectangle
Point 는 좌측 상단, 우측 하단 총 2개를 입력받으며 해당 포인트를 기점으로 사각형을 그려 넣습니다.
import cv2 as cv
img = cv.imread('./images/demo.jpg')
img = cv.rectangle(img, (5,5), (100,100), (0,0,255), 10)
cv.imshow('test', img)
cv.waitKey()
cv.destroyAllWindows()
Circle
중심점 Point 1개와, 반지름 길이를 입력받아 해당 위치에 정원을 그려넣습니다.
import cv2 as cv
img = cv.imread('./images/demo.jpg')
img = cv.circle(img, (200, 200), 50, (0,0,255), 10)
cv.imshow('test', img)
cv.waitKey()
cv.destroyAllWindows()
반응형