본문 바로가기
반응형

전체 글238

[OpenCV] 적응형 임계값 처리하기: cv2.adaptiveThreshold() 사용 및 설명 소개  cv2.adaptiveThreshold는 OpenCV에서 적응형 임계값 처리(adaptive thresholding)를 수행하는 함수입니다. 이 함수는 이미지의 각 부분에 맞게 다른 임계값을 적용하는 방식으로, 조명이 균일하지 않은 이미지에서도 효과적인 이진화를 제공합니다. 문서 스캔, 객체 감지 등에서 밝기가 균일하지 않은 이미지의 이진화를 처리하는 데 매우 유용합니다. 기본 사용법# 기본 사용법import cv2# 그레이스케일 이미지 읽기image = cv2.imread('input_image.jpg', 0)# 적응형 임계값 처리adaptive_thresh_image = cv2.adaptiveThreshold(image, 255, cv2.ADAPTIVE_THRESH_GAUSSIAN_C, .. 2024. 9. 29.
[OpenCV] 이미지 임계값 처리: cv2.threshold() 사용 및 설명 소개  cv2.threshold는 OpenCV에서 이미지의 픽셀 값을 임계값을 기준으로 이진화하는 함수입니다. 이 함수는 그레이스케일 이미지에서 주로 사용되며, 특정 임계값을 기준으로 픽셀 값을 흰색(255) 또는 검은색(0)으로 변환하여 객체 감지, 경계 추출 등의 작업에 사용됩니다. 다양한 임계값 처리 방법을 제공합니다. 기본 사용법import cv2# 그레이스케일 이미지 읽기image = cv2.imread('input_image.jpg', 0)# 임계값 설정ret, thresh_image = cv2.threshold(image, 127, 255, cv2.THRESH_BINARY)# 결과 이미지 창에 표시cv2.imshow('Thresholded Image', thresh_image)cv2.wait.. 2024. 9. 29.
[OpenCV] 이미지의 원근 변환: cv2.warpPerspective() 사용 및 설명 소개  cv2.warpPerspective는 OpenCV에서 이미지를 원근 변환(perspective transformation)하는 함수입니다. 원근 변환은 이미지의 시점을 바꾸거나 이미지를 기하학적으로 왜곡하여 원근 효과를 적용할 때 사용됩니다. 이 함수는 3x3 변환 행렬을 이용하여 이미지를 변환할 수 있으며, 문서 스캔 및 왜곡된 이미지를 보정하는 등의 작업에 유용하게 쓰입니다. 기본 사용법# 기본 사용법import cv2import numpy as np# 이미지 읽기image = cv2.imread('input_image.jpg')# 변환 전의 네 개의 좌표 (예: 문서의 코너)pts1 = np.float32([[100, 100], [400, 100], [100, 400], [400, 400]].. 2024. 9. 29.
[OpenCV] 이미지 기하학적 변환: cv2.warpAffine() 사용 및 설명 소개  cv2.warpAffine는 OpenCV에서 이미지를 선형 변환하는 함수입니다. 이 함수는 이미지 이동, 회전, 크기 변환 등의 기하학적 변환을 수행할 수 있으며, 2x3 크기의 변환 행렬을 이용해 이미지를 변환합니다. 주로 이미지 처리 및 증강에서 필수적으로 사용되는 함수입니다. 기본 사용법# 기본 사용법import cv2import numpy as np# 이미지 읽기image = cv2.imread('input_image.jpg')# 이미지 크기 (높이, 너비) 확인rows, cols = image.shape[:2]# 2x3 변환 행렬 정의 (이미지 이동)M = np.float32([[1, 0, 50], [0, 1, 50]])# 이미지 변환 (이미지 이동)shifted_image = cv2.w.. 2024. 9. 29.
[OpenCV] 이미지 좌우, 상하 반전하기: cv2.flip() 사용 및 설명 소개  cv2.flip는 OpenCV에서 이미지를 좌우 또는 상하로 뒤집는 함수입니다. 이 함수는 이미지의 좌우 또는 상하를 반전할 수 있으며, 컴퓨터 비전 작업에서 이미지 증강을 위한 데이터 전처리나 이미지 변환에 자주 사용됩니다. 좌우 대칭, 상하 반전 같은 간단한 조작이 필요할 때 매우 유용합니다. 기본 사용법# 기본 사용법import cv2# 이미지 읽기image = cv2.imread('input_image.jpg')# 이미지를 좌우로 뒤집기flipped_image = cv2.flip(image, 1)# 결과 이미지 창에 표시cv2.imshow('Flipped Image', flipped_image)cv2.waitKey(0)cv2.destroyAllWindows()상세 설명파라미터 설명image.. 2024. 9. 29.
[OpenCV] 이미지 회전: cv2.rotate() 사용 및 설명 소개  cv2.rotate는 OpenCV에서 이미지를 90도, 180도 등 고정된 각도로 회전시키는 함수입니다. 회전은 이미지 처리에서 데이터 증강, 시각적 분석, 기하학적 변환 등 여러 용도로 사용됩니다. cv2.rotate는 사용하기 쉽고, 빠르게 이미지를 회전시킬 수 있는 함수입니다. 기본 사용법# 기본 사용법import cv2# 이미지 읽기image = cv2.imread('input_image.jpg')# 이미지를 90도 회전 (시계 방향)rotated_image_90 = cv2.rotate(image, cv2.ROTATE_90_CLOCKWISE)# 결과 이미지 창에 표시cv2.imshow('Rotated Image 90 degrees', rotated_image_90)cv2.waitKey(0).. 2024. 9. 28.
[OpenCV] 이미지 크기 조절: cv2.resize() 사용 및 설명 소개  cv2.resize는 OpenCV에서 이미지를 원하는 크기로 조절하는 함수입니다. 이미지 처리에서 크기를 조정하는 것은 객체 감지, 이미지 전처리, 데이터 증강 등의 작업에서 자주 사용됩니다. 이미지의 새로운 크기를 직접 설정하거나 비율을 지정하여 이미지를 축소하거나 확대할 수 있습니다. 기본 사용법# 기본 사용법import cv2# 이미지 읽기image = cv2.imread('input_image.jpg')# 이미지 크기 조정 (300x300으로 리사이즈)resized_image = cv2.resize(image, (300, 300))# 결과 이미지 창에 표시cv2.imshow('Resized Image', resized_image)cv2.waitKey(0)cv2.destroyAllWindow.. 2024. 9. 28.
[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.
반응형