[OpenCV] 이미지 팽창하기: cv2.dilate() 사용 및 설명
소개 cv2.dilate는 OpenCV에서 이미지 팽창(dilation) 처리를 수행하는 함수입니다. 이 함수는 이미지 내의 객체 크기를 확장하고, 작은 구멍이나 결함을 제거하는 데 유용합니다. 주로 이진 이미지에서 사용되며, 침식과 반대되는 효과를 냅니다. 팽창 처리는 객체의 밝은 영역(흰색)을 확장하고, 어두운 영역(검은색)을 축소하는 방식으로 작동합니다. 기본 사용법# 기본 사용법import cv2import numpy as np# 이진 이미지 생성 (검은 배경에 흰색 사각형)image = np.zeros((500, 500), dtype=np.uint8)cv2.rectangle(image, (150, 150), (350, 350), 255, -1)# 5x5 커널 생성kernel = np.ones(..
2024. 9. 28.
[OpenCV] 이미지 침식하기: cv2.erode() 사용 및 설명
소개 cv2.erode는 OpenCV에서 이미지 침식(erosion) 처리를 수행하는 함수입니다. 이 함수는 주로 이진 이미지에서 사용되며, 이미지 내의 객체 크기를 줄이거나 작은 노이즈를 제거하는 데 유용합니다. 커널(kernel)을 이용하여 이미지의 밝은 영역(흰색)을 줄이고, 배경(검은색)을 확장하는 방식으로 동작합니다. 기본 사용법# 기본 사용법import cv2import numpy as np# 이진 이미지 생성 (검은 배경에 흰색 사각형)image = np.zeros((500, 500), dtype=np.uint8)cv2.rectangle(image, (100, 100), (400, 400), 255, -1)# 5x5 커널 생성kernel = np.ones((5, 5), np.uint8)# ..
2024. 9. 28.
[OpenCV] 이미지 간 더하기: cv2.add() 사용 및 설명
소개 cv2.add는 OpenCV에서 두 이미지를 픽셀 단위로 더하는 함수입니다. 이 함수는 두 이미지의 각 픽셀 값을 더하여 새로운 이미지를 생성하며, 이미지 합성이나 다양한 필터 효과를 적용할 때 사용됩니다. 픽셀 값의 합이 255를 초과하는 경우에는 자동으로 255로 제한합니다. 기본 사용법# 기본 사용법import cv2import numpy as np# 두 개의 동일한 크기를 가진 이미지 생성image1 = np.full((500, 500, 3), 100, dtype=np.uint8) # 밝은 회색 이미지image2 = np.full((500, 500, 3), 150, dtype=np.uint8) # 더 밝은 회색 이미지# 두 이미지 더하기result = cv2.add(image1, ima..
2024. 9. 28.
[OpenCV] 이미지에 다각형 그리기: cv2.polylines() 사용 및 설명
소개 cv2.polylines는 OpenCV에서 이미지 위에 다각형(여러 선)을 그리는 함수입니다. 여러 점을 지정하여 점들을 선으로 연결하고, 이 선들을 통해 다각형을 그릴 수 있습니다. 이 함수는 다각형뿐만 아니라, 다양한 형태의 선을 연결할 때도 유용합니다. 그릴 다각형의 색상, 두께, 폐쇄 여부 등을 조정할 수 있습니다. 기본 사용법# 기본 사용법import cv2import numpy as np# 빈 이미지 생성 (검은색 배경)image = np.zeros((500, 500, 3), dtype=np.uint8)# 다각형의 꼭짓점 좌표 정의points = np.array([[100, 100], [200, 200], [300, 100], [400, 200]], np.int32)points = po..
2024. 9. 28.