Maxima's Lab

[Python, Numpy] np.meshgrid를 활용하여 Image Processing 구현 - 1 (반원 그리기) 본문

Python

[Python, Numpy] np.meshgrid를 활용하여 Image Processing 구현 - 1 (반원 그리기)

Minima 2024. 1. 8. 22:08
728x90
SMALL

안녕하세요, 오늘은 Numpy 패키지 내 np.meshgrid 함수를 활용하여 이미지 Processing 하는 방법들에 대해서 알아보겠습니다.

 

  • 1. Opencv 패키지를 활용하여 Circle을 그리고 위쪽 반원만을 구하는 예시 입니다.

 

import cv2
import numpy as np

circle_image = np.zeros((512, 512, 3), np.uint8)
cv2.circle(circle_image, (256, 256), 100, (0, 255, 0), -1)

x_grid, y_grid = np.meshgrid(np.arange(512), np.arange(512))
mask_image = np.where(y_grid <= 256, 1, 0)
mask_image = np.stack([mask_image, mask_image, mask_image], axis=-1)


semicircle_image = (circle_image * mask_image).astype(np.uint8)

 

위의 코드에서 circle_image는 다음과 같습니다.

 

circle_image

 

또한, mask_image는 다음과 같습니다.

 

mask_image

 

 

 

위의 circle_image와 mask_image를 통해 최종적으로 구한 semicircle_image는 다음과 같습니다.

 

semicircle_image

 

최종적으로 위 반원을 얻은 것을 확인할 수 있습니다.

 

이상으로, Numpy 패키지 내 np.meshgrid 함수를 활용해서 반원을 그리는 방법에 대해서 알아보았습니다.

감사드립니다.

728x90
LIST
Comments