Python을 사용하여 이미지의 모양을 표시하는 방법

WBOY
풀어 주다: 2023-08-25 14:53:21
원래의
1163명이 탐색했습니다.

Python을 사용하여 이미지의 모양을 표시하는 방법

Python을 사용하여 모양으로 이미지에 레이블을 지정하는 방법

소개:

이미지 처리 및 컴퓨터 비전 분야에서 이미지의 개체에 레이블을 지정하고 식별하는 것은 중요한 작업입니다. 표시된 물체의 모양은 물체 감지, 모서리 감지, 윤곽 추출 등의 응용 분야에 사용될 수 있습니다. 이 기사에서는 Python과 OpenCV 라이브러리를 사용하여 이미지에 모양 레이블을 지정하는 방법을 소개합니다.

1단계: 필수 라이브러리 설치

시작하기 전에 Python 및 OpenCV 라이브러리를 설치해야 합니다. OpenCV 라이브러리는 pip 명령을 통해 설치할 수 있습니다. 구체적인 명령은 다음과 같습니다.

pip install opencv-python
로그인 후 복사

2단계: 필요한 라이브러리 가져오기

코드에서 OpenCV 라이브러리와 기타 보조 라이브러리를 가져와야 합니다. 구체적인 코드는 다음과 같습니다.

import cv2 import numpy as np
로그인 후 복사

3단계: 이미지 파일 읽기

OpenCV 라이브러리의imread()함수를 사용하여 이미지 파일을 읽습니다. 구체적인 코드는 다음과 같습니다.imread()函数可以读取图像文件。具体代码如下:

img = cv2.imread('image.jpg')
로그인 후 복사

步骤四:将图像转换为灰度图像

在进行形状标记之前,我们需要将图像转换为灰度图像。使用OpenCV库的cvtColor()函数可以实现。具体代码如下:

gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
로그인 후 복사

步骤五:进行阈值分割

将灰度图像进行阈值分割可以得到二值图像,方便后续形状标记的操作。使用OpenCV库的threshold()函数可以实现。具体代码如下:

_, thresh = cv2.threshold(gray, 127, 255, cv2.THRESH_BINARY)
로그인 후 복사

步骤六:查找轮廓

使用OpenCV库的findContours()函数可以查找图像中的轮廓。具体代码如下:

contours, _ = cv2.findContours(thresh, cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_SIMPLE)
로그인 후 복사

步骤七:绘制轮廓

使用OpenCV库的drawContours()函数可以将轮廓绘制在图像上。具体代码如下:

cv2.drawContours(img, contours, -1, (0, 255, 0), 3)
로그인 후 복사

步骤八:显示结果

使用OpenCV库的imshow()

cv2.imshow('Contours', img) cv2.waitKey(0) cv2.destroyAllWindows()
로그인 후 복사

4단계: 이미지를 회색조 이미지로 변환

모양 라벨링을 수행하기 전에 이미지를 회색조 이미지로 변환해야 합니다. 이는 OpenCV 라이브러리의 cvtColor()함수를 사용하여 달성할 수 있습니다. 구체적인 코드는 다음과 같습니다.

import cv2 import numpy as np # 读取图像文件 img = cv2.imread('image.jpg') # 将图像转换为灰度图像 gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY) # 进行阈值分割 _, thresh = cv2.threshold(gray, 127, 255, cv2.THRESH_BINARY) # 查找轮廓 contours, _ = cv2.findContours(thresh, cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_SIMPLE) # 绘制轮廓 cv2.drawContours(img, contours, -1, (0, 255, 0), 3) # 显示结果 cv2.imshow('Contours', img) cv2.waitKey(0) cv2.destroyAllWindows()
로그인 후 복사
5단계: 임계값 분할 수행

회색조 이미지의 임계값 분할은 이진 이미지를 얻을 수 있어 후속 모양 라벨링 작업을 용이하게 합니다. 이는 OpenCV 라이브러리의 threshold()함수를 사용하여 달성할 수 있습니다. 구체적인 코드는 다음과 같습니다. rrreee6단계: 윤곽선 찾기OpenCV 라이브러리의 findContours()함수를 사용하여 이미지에서 윤곽선을 찾습니다. 구체적인 코드는 다음과 같습니다. rrreee7단계: 윤곽선 그리기OpenCV 라이브러리의 drawContours()함수를 사용하여 이미지에 윤곽선을 그립니다. 구체적인 코드는 다음과 같습니다. rrreee8단계: 결과 표시OpenCV 라이브러리의 imshow()함수를 사용하여 처리된 이미지를 표시합니다. 구체적인 코드는 다음과 같습니다. rrreee전체 코드 예시: rrreee결론: 이 글에서는 Python과 OpenCV 라이브러리를 사용하여 이미지에 모양 라벨링을 수행하는 방법을 소개합니다. 코드 예제를 구현하면 이미지에 있는 객체의 윤곽을 추출하고 표시하여 후속 이미지 처리 및 컴퓨터 비전 애플리케이션을 용이하게 할 수 있습니다. 독자는 자신의 필요와 실제 조건에 따라 해당 조정과 확장을 할 수 있습니다. 이 글이 독자들에게 도움이 되기를 바랍니다!

위 내용은 Python을 사용하여 이미지의 모양을 표시하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!