회원 로그인
|
OpenCV 3. 도형 그리기
https://blog.naver.com/samsjang OpenCV의 강좌를 공부 차원에서 재정리한 것입니다. |
: 도형 그리기
- numpy.zeros() : numpy 배열 만들고 모든 값을 0으로
- numpy.uint8 : 정수 데이터 타입
- cv2.line() : 라인을 그림
- cv2.cirvle() : 원을 그림
- cv2.ellipse() : 타원형을 그림
- cv2.FONT_HERSHEY_SIMPLEX.putText() : 텍스트 표시
# -*- coding: utf-8 -*- # opencv_006.py # https://blog.naver.com/samsjang/220501624273 # https://docs.opencv.org/2.4/modules/core/doc/drawing_functions.html import numpy as np import cv2 def drawing(): """ 도형을 그리기 위한 캔버스(공간) 확보 np.zeros() numpy 배열을 만들고 모든 값을 0로 채우는 함수 512x512인 배열을 만들고, 각 멤버가 (0,0,0)인 배열, 채우는 데이터 타입은 unit8 , 512x512 크기에 검정색(BGR 0,0,0) 이미지를 생성한 것과 같다. """ img = np.zeros((512, 512, 3), np.uint8) # 라인 그리기 cv2.line(이미지객체, (시작점), (끝점), (BGR색상), 선굵기) # 시작점(좌측 상단) (0,0)에서 끝점(우측 하단) (511,511)까지 파란색(BGR 255,0,0), 선굵기 5인 직선을 그린다. 즉, 대각선을 그리게 된다. cv2.line(img, (0,0), (511,511), (255,0,0), 5) # 사각형 그리기, 인자는 라인 그리기와 같음 cv2.rectangle(img, (384,0), (510,128), (0,255,0), 3) # 원 그리기 cv2.cirvle(이미지객체, (원의 중심), 원의 반지름, (BGR색상), 선굵기) # 주어진 색상으로 도형을 채움 : 두께에 -1 cv2.circle(img, (447,63), 63, (0,0,255), -1) # 타원 그리기 cv2.ellipse(이미지객체, (타원의 중심), (장축x과 단축y 길이의 1/2), 기울기, 시작 각도, 끝 각도, (BGR색상), 두께) cv2.ellipse(img, (256,256), (100,100), 0, 0, 180, (255,0,0), -1) """ https://copycoding.tistory.com/151 fontFace(폰트 종류) FONT_HERSHEY_SIMPLEX : 0, 보통 크기 sans-serif 글꼴 FONT_HERSHEY_PLAIN : 1, 소형 산 세리프체 FONT_HERSHEY_DUPLEX : 2, 일반 크기 sans-serif 글꼴 (보다 복잡함 CV_FONT_HERSHEY_SIMPLEX) FONT_HERSHEY_COMPLEX : 3, 보통 크기 serif 글꼴 FONT_HERSHEY_TRIPLEX : 4, 일반 크기 serif 글꼴 (보다 복잡함 CV_FONT_HERSHEY_COMPLEX) FONT_HERSHEY_COMPLEX_SMALL : 5, 작은 버전 CV_FONT_HERSHEY_COMPLEX FONT_HERSHEY_SCRIPT_SIMPLEX : 6, 필기 스타일 글꼴 FONT_HERSHEY_SCRIPT_COMPLEX : 7, 더 복잡한 변형 CV_FONT_HERSHEY_SCRIPT_SIMPLEX FONT_HERSHEY_ITALIC : 16, 이텔릭체 """ font = cv2.FONT_HERSHEY_SIMPLEX # 글자 표시 cv2.putText(이미지객체, 텍스트, (위치), 폰트, 크기, (BGR색상), 선굵기, 선 종류) # 선 종류 : 인자에 넣지 않을 경우 기본은 cv2.LINE_8 cv2.putText(img, 'OpenCV', (10,500), font, 4, (255,255,255), 2) cv2.imshow('Drawing', img) cv2.waitKey(0) cv2.destroyAllWindows() drawing()
결과
댓글 0개
| 엮인글 0개
285개(1/15페이지)
번호 | 제목 | 글쓴이 | 조회 | 날짜 |
---|---|---|---|---|
285 | [Python] 동적 import - 모듈을 변수로 받아오기 | 푸딩뱃살 | 412 | 2022.10.27 10:45 |
284 | [Python] 파이썬 3.7.7과 3.9.7의 os.path.expanduser() 차이 | 푸딩뱃살 | 455 | 2022.08.18 12:22 |
283 | [Python] error: Microsoft Visual C++ 9.0 is required. | 푸딩뱃살 | 684 | 2022.08.03 13:35 |
282 | [Python] pyscript | 푸딩뱃살 | 452 | 2022.06.09 11:21 |
281 | [Python] float is / float not is | 푸딩뱃살 | 593 | 2022.03.02 15:03 |
280 | [Python] 이터널 문자열 f | 푸딩뱃살 | 833 | 2022.01.27 16:35 |
279 | [Python] is와 ==의 차이 | 푸딩뱃살 | 485 | 2021.11.25 15:54 |
278 |
[Python] Error: ImportError: file |
푸딩뱃살 | 916 | 2021.11.16 11:24 |
277 | [Python] 파이썬 디컴파일 - uncompyle6 | 푸딩뱃살 | 774 | 2021.11.10 14:46 |
276 | [Python] 파이썬 확장자 설명 | 푸딩뱃살 | 550 | 2021.11.03 14:38 |
275 | [참고] 웹 fbx 뷰어 | 푸딩뱃살 | 470 | 2021.10.19 15:46 |
274 | [Python] enumerate() | 푸딩뱃살 | 500 | 2021.10.13 14:44 |
273 | [Python] 아나콘다에서 가상 환경 | 푸딩뱃살 | 719 | 2020.11.21 00:26 |
272 | [Python] pip로 설치 때 퍼미션 에러 | 푸딩뱃살 | 1265 | 2020.06.06 17:13 |
271 | [Python] OpenCV 10-3. 이미지 Thresholding - Otsu's Binarizatio | 푸딩뱃살 | 673 | 2020.06.05 14:01 |
270 | [Python] OpenCV 10-2. 이미지 Thresholding - Adaptive Threshold | 푸딩뱃살 | 694 | 2020.06.05 13:58 |
269 | [Python] OpenCV 10-1. 이미지 Thresholding | 푸딩뱃살 | 578 | 2020.06.05 13:56 |
268 | [Python] OpenCV 9-2. 색 추적 | 푸딩뱃살 | 772 | 2020.06.02 23:29 |
267 | [Python] OpenCV 9-1. 색공간 바꾸기 | 푸딩뱃살 | 639 | 2020.06.02 23:27 |
266 | [Python] OpenCV 8-3. 이미지 비트 연산 | 푸딩뱃살 | 528 | 2020.06.02 23:21 |