OpenCV 명령어 정리
1. cv2.namedWindow(winname[, flags]) à None
설명: 윈도우 이름을 설정한 후, 해당 이름으로 윈도우 생성
winname(str): 윈도우 이름
flags(int): 윈도우의 크기조정
cv2.WINDOW_NORMAL | 값 0 | 윈도우 크기 재조정 가능
cv2.WINDOW_AUTOSIZE | 값 1 | 표시될 행렬의 크기에 맞춰 자동 조정
2. cv2.imshow(winname, mat) à None
설명: winname 이름의 윈도우에 mat행렬을 영상으로 표시함. 생성된 윈도우가 없으면, winname 이름으로 윈도우를 생성하고 영상을 표시한다.
mat(numpy.ndarray) 윈도우에 표시되는 영상 (행렬이 화소값을 밝기로 표시)
3. cv2.destoryAllWindows() à None
설명: 인수로 지정된 타이틀 윈도우 파괴
4. cv2.moveWindow(winname, x, y) à None
설명: winname 이름의 윈도우를 지정된 위치인 (x, y)로 이동. 이동되는 윈도우의 기준 위치는 좌측 상단임
x, y: 모니터 안에서 이동하려는 위치의 x, y 좌표
5. cv2.resizeWindow(winname, width, height) à None
설명: 윈도우의 크기를 재조정한다.
width, height: 변경 윈도우의 가로, 세로 크기
6. cv2.waitKey([, delay]) à retval
설명: delay(ms) 시간만큼 키 입력을 대기하고, 키 이벤트가 발생하면 해당 키 값 반환
delay: <=0이면 무한대기, >0이면 그 값 동안 입력 대기, 입력이 없으면 -1 반환
7. cv2.waitKeyEx([, delay]) à retval
설명: cv2.waitKey()와 동일하지만, 전체 키 코드(full key code)를 반환한다. 화살표 키 등을 입력받을 때 사용 가능(OpenCV 3.4이상에서만 지원)
8. cv2.EVENT_FLAG_@@
LBUTTON : 1 : 왼쪽 버튼 누르기
RBUTTON : 2 : 오른쪽 버튼 누르기
MBUTTON : 4 : 중간 버튼 누르기
CTRLKEY : 8 : [Ctrl] 키 누르기
SHIFTKEY : 16 : [Shift] 키 누르기
ALTKEY : 32 : [Alt] 키 누르기
9. 마우스 이벤트 종류: cv2.EVENT_@@
MOUSEMOVE : 0 : 마우스 움직임
LBUTTONDOWN : 1 : 왼쪽 버튼 누르기
RBUTTONDOWN : 2 : 오른쪽 버튼 누르기
MBUTTONDOWN : 3 : 중간 버튼 누르기
LBUTTONUP : 4 : 왼쪽 버튼 떼기
RBUTTONUP : 5 : 오른쪽 버튼 떼기
MBUTTONUP : 6 : 중간 버튼 떼기
LBUTTONDBLCLK : 7 : 왼쪽 버튼 더블클릭
RBUTTONDBLCLK : 8 : 오른쪽 버튼 더블클릭
MBUTTONDBLCLK : 9 : 중간 버튼 더블클릭
MOUSEWHEEL : 10 : 마우스 휠
MOUSEHWHEEL : 11 : 마우스 가로 휠
10. cv2.createTrackbar(trackbarname, winname, value, count, onChange) à None
: 트랙바를 생성한 후, 지정한 윈도우에 추가하는 함수
trackbarname: 윈도우에 생성되는 트랙바 이름
winname: 트랙바의 부모 윈도우 이름
value: 트랙바 슬라이더의 위치를 반영하는 값 (정수)
count: 트랙바 슬라이더의 최댓값, 최솟값은 항상 0
onChange: 트랙바 슬라이더의 값이 변경될 때 호출되는 콜백 함수
11. cv2.getTrackbarPos(trackbarname, winname) à retval
지정한 트랙바의 슬라이더 위치를 반환한다.
12. cv2.setTrackbarPos(trackbarname, winname, pos) à None
지정한 트랙바의 슬라이더 위치를 설정한다.
13. cv2.line(img, pt1, pt2, color[, thickness[, lineType[, shift]]]) à img
pt1에서 pt2를 잇는 직선을 그린다.
img: 그릴 대상 행렬(영상)
pt1, pt2 : (시작 좌표, 종료 좌표) 튜플
color: 선의 색상 (정수형 튜플)
thickness : 선의 두께, cv2.FILLED일 경우 지정된 색으로 내부를 채움
lineType : 선의 형태
- cv2.LINE_4: 4-방향 연결선
- cv2.LINE_8: 8-방향 연결선
- cv2.LINE_AA: 계단 현상을 감소시킨 선
shift: 입력 좌표에 대해서 오른쪽으로 비트 시프트 연산한 결과를 좌표로 지정해서 직선을 그림.
14. cv2.putText(img, text, org, fontFace, fontScale, color[, thickness[, lineType[, bottomLeftOrigin]]]) à img
text문자열을 org 좌표에 color색상으로 그림
img: 문자열을 작성할 대상 행렬(영상)
text: 작성할 문자열
org: 문자열의 시작 좌표, 문자열에서 가장 왼쪽 하단을 의미
fontFace: 문자열의 폰트
color: 글자의 색상
thichness: 글자의 굵기
lineType: 글자 선의 형태
bottomLeftOrigin: 영상의 원점 좌표 설정
15. cv2.FONT_HERSHEY_@@ (폰트 지정)
SIMPLEX :0 :중간 크기 산세리프 폰트
PLAIN :1 :작은 크기 산세리프 폰트
DUPLEX :2 :2줄 산세리프 폰트
COMPLEX :3 :중간 크기 세리프 폰트
TRIPLEX :4 :3줄 세리프 폰트
COMPLEX_SMALL:5 :COMPLEX 보다 작은 크기
SCRIPT_SIMPLEX:6 :필기체 스타일 폰트
SCRIPT_COMPLEX:7 :복잡한 필기체 스타일
cv2.FONT_ITALIC:16 :이탤릭체를 위한 플래그
'Development > Python' 카테고리의 다른 글
| openCV-Python 기초 사용법 -2- 영상의 생성, 복사, 부분 영상 추출 (0) | 2023.08.04 |
|---|---|
| openCV-Python 기초 사용법 -1- 영상의 속성과 픽셀 값 참조 (0) | 2023.08.04 |
| [ python ] argparse 사용 방법. 예제. (0) | 2023.07.31 |
| Python - 자주 사용하는 Utils (0) | 2023.07.30 |
| [오류 노트] Could not load library libcudnn_cnn_infer.so.8. Error: libcuda.so: cannot open shared object file: No such file or directory (0) | 2023.07.30 |