1. math 라이브러리
파이썬의 math 라이브러리는 수학적인 연산을 수행하는 함수와 상수들을 제공하는 표준 라이브러리 모듈 중 하나
이 라이브러리를 사용하면 다양한 수학적인 작업을 수행할 수 있다.
가. 수학적 연산 : math 라이브러리는 다양한 수학적 연산을 수행할 수 있도록 다양한 함수를 제공
예를 들어, 삼각함수 (sin, cos, tan), 제곱근 (sqrt), 로그 (log), 지수 (exp), 올림 (ceil), 내림 (floor),
절댓값 (fabs) 등을 계산할 수 있다.
나. 상수 : math 라이브러리는 몇 가지 유용한 수학적 상수도 제공한다.
예를 들어, 파이 (π) 값을 가져오려면 math.pi를 사용할 수 있다.
2. 두점 사이의 거리 or 피타고라스 활용
가. 두점사이의 거리
- 수직선에서 A, B 두점사이의 거리
- 좌표평면에서 A, B 두점사이의 거리
나. 피타고라스 정리
파이썬의 math 라이브러리는 수학적인 연산을 수행하는 함수와 상수들을 제공하는 표준 라이브러리 모듈 중 하나
이 라이브러리를 사용하면 다양한 수학적인 작업을 수행할 수 있다.
3. 파이썬 코드
가. import math : 수학 라이브러리 호출
나. dist = int(math.sqrt((x1좌표 - x2좌표)**2 + (y1좌표 - y2좌표)**2))
이 코드는 두 점 (x좌표, y좌표)와 (x2좌표,y2좌표) 사이의 유클리드 거리를 계산하는 코드입니다.
math.sqrt 함수를 사용하여 거리를 계산하고, 계산된 거리를 정수로 변환하여 dist 변수에 저장합니다.
다. 손가락 거리를 백분위로 계산하여 출력하기 위한 변수를 선언
f1_x = int(hand_landmarks.landmark[4].x * 100 )
f1_y = int(hand_landmarks.landmark[4].y * 100 )
f2_x = int(hand_landmarks.landmark[8].x * 100 )
f2_y = int(hand_landmarks.landmark[8].y * 100 )
※ dist = int(math.sqrt((x1좌표 - x2좌표)**2 + (y1좌표 - y2좌표)**2))
거리를 계산하여 출력해보자.
라. puttext() 함수 활용하기.
https://swmakerjun.tistory.com/48
컴퓨터 비전 cv2.putText 활용 하여 label과 score 글씨 출력하기.
1. cv2.putText() 함수 cv2.putText() 함수는 OpenCV 라이브러리에서 제공하는 이미지에 텍스트를 추가하는 함수입니다. 이미지 및 웹캠에서 불러온 창에 원하는 텍스트를 삽입하여 시각적인 표시나 설명
swmakerjun.tistory.com
마. 손가락 랜드마크 정점 위치
line1_x = int(hand_landmarks.landmark[4].x * frame.shape[1])
line1_y = int(hand_landmarks.landmark[4].y * frame.shape[0])
line2_x = int(hand_landmarks.landmark[8].x * frame.shape[1])
line2_y = int(hand_landmarks.landmark[8].y * frame.shape[0])
바. line() 함수 활용하여 선 만들기.
https://swmakerjun.tistory.com/56
cv2.line() 함수로 선 만들기
1. cv2.line( ) 함수 활용하기. cv2.line(선을 그릴 이미지, 선의 시작 좌표, 선의 끝 좌표, 선의 색상 (b,g,r) , 선굵기 ) # 이미지의 중간에 세로로 흰색 줄을 그립니다. height, width, _ = frame.shape middle_x = widt
swmakerjun.tistory.com
'인공지능 기초' 카테고리의 다른 글
Miniconda 로 가상환경 만들기. #2 [가상환경 생성과 라이브러리 설치] (1) | 2024.08.24 |
---|---|
Miniconda 로 가상환경 만들기. #1 [Miniconda 설치와 실행] (0) | 2024.08.23 |
mediapipe hands 활용 (1) | 2023.11.22 |
cv2.line() 함수로 선 만들기 (1) | 2023.11.14 |
미디어 파이프 핸즈 (0) | 2023.11.03 |