공부를 함시다 34

[Python] HandDetector를 이용한 소리 크기 조절

- 본 내용은 python 3.10 버전을 이용하여 진행하였습니다. - 시작 전 설정 필수  detector.findDistance 함수를 우클릭하여 정의로 이동을 눌러준 뒤  각 행에 z1, z2 값을 추가시켜 줍니다. 다시 코드를 작성해봅시다. 먼저 손 랜드마크 감지를 위하여 cvzone의 HandDetector 라이브러리 가져옵니다. import cv2from cvzone.HandTrackingModule import HandDetector 이후 스피커 음량을 조절하기 위하여 오디오 관련 라이브러리를 불러와 해당 정보를 포인터에 대입시킵니다. from ctypes import cast,POINTERfrom comtypes import CLSCTX_ALLfrom pycaw.pycaw import Au..

[Python] PoseDetector을 이용한 운동 횟수 세기

- 본 내용은 python 3.10 버전을 이용하여 진행하였습니다. - 시작 전 설정 필수 detector.findAngle 을 입력한 후 우클릭하여 정의로 이동해준 뒤 z1, z2, z3를 각 열에 추가시켜 줍니다. 다시 코드를 작성해봅시다. 몸의 각 관절의 위치를 파악하기 위해 PoseDetector 라이브러리를 불러옵니다.import cv2from cvzone.PoseModule import PoseDetector as pd 웹캠 기본 기능 및  PoseDector 객체를 가져옵니다.cap = cv2.VideoCapture(0)detector = pd() # 포즈 디텍터 객체 생성flag = 0 # 팔 움직임을 확인하는 값count = 0 영상 처리를 위해 이미지를 반전시킨 후, 오른팔, 왼팔의 랜..

[Python] 얼굴 인식 후 배경 흐리게 처리하기

- 본 내용은 python 3.10 버전을 이용하여 진행하였습니다. 이미지 검색과 블러 처리를 위해 먼저 두 라이브러리를 import 해줍니다.import cv2# 세그멘테이션 모듈 불러오기 (블러 처리용)from cvzone.SelfiSegmentationModule import SelfiSegmentation as ssm 배경과 사람을 분리할 떄 필요한 새그맨테이션 객체와 얼굴을 감지할 기본적인 Haar Cascade 데이터를 로드해줍니다.# 세그멘테이션 모듈 객체 생성segmentor = ssm()# 사전 훈련된 Haar Cascade 분류기 파일 로드face_cascade = cv2.CascadeClassifier(cv2.data.haarcascades + 'haarcascade_frontalfa..

[Python] 웹캠 출력하기

- 본 내용은 teachable machine과 python 3.10 버전을 이용하여 진행하였습니다. 가장 먼저 웹캠으로 얼굴을 출력하기 위해 cvzone 라이브러리를 사용할 예정입니다.pip install opencv-python 명령어를 통해 opencv를 설치해주도록 합시다. 다음은 웹캠 출력 코드입니다.import cv2# 웹캠 캡처 객체 생성cap = cv2.VideoCapture(0) cv2 라이브러리를 추가한 뒤, 웹캠으로 받아온 객체값을 가진 변수를 하나 만듭니다.# 웹캠이 열려있을 경우while cap.isOpened : # 웹캠에서 프레임 읽기 ret, img = cap.read() # 결과 이미지 출력 cv2.imshow('Result', img) cap ..

[Python] 사진 학습을 통해 데이터 파일로 만들기

본 내용은 teachable machine과 python 3.10 버전을 이용하여 진행하였습니다.  먼저 모델 학습을 위하여 https://teachablemachine.withgoogle.com/ 사이트에 접속합니다. Teachable MachineTrain a computer to recognize your own images, sounds, & poses. A fast, easy way to create machine learning models for your sites, apps, and more – no expertise or coding required.teachablemachine.withgoogle.com   시작하기를 눌러 이미지 프로젝트를 선택해줍니다.  새 이미지 프로젝트에서 표준 ..

[Python] 파이썬 코드를 exe로 만들기(pyinstaller)

pyinstaller이라는 라이브러리를 사용할 것입니다. 먼저 pyinstaller를 설치해줍시다. pip install pyinstaller 설치가 완료되었으면 원하는 파일을 exe화 시켜봅시다. pyinstaller [파이썬 파일 이름].py 위와 같이 뜨면 exe 파일이 성공적으로 생성된 것입니다. 이후 파이썬 파일이 있던 위치에 위와 같은 3개의 파일이 생기는데, spec은 pyinstaller 가 실행파일을 만드는데 필요한 설정이 저장된 파일이며, build는 스크립트를 분석하고 실행 파일을 만드는 과정에서 생성되는 임시 파일들이 저장되는 곳, dist는 최종적으로 실행할 파일이 저장되는 곳입니다. 만약 콘솔창 없이, 실행 파일 하나만 생성하고 싶다면 해당 명령어를 추가시켜 주면 됩니다. -w ..

[Python] 파일을 찾을 수 없다는 오류

가끔씩 No such file or directory 오류가 뜨는 경우가 있습니다. 이때, 파이썬 파일이 있는 위치에 불러오려는 파일이 있어도 이러한 오류가 뜨는데 이는 보통 작업 디렉토리를 경로를 절대 경로로 설정해주지 않아 생기는 오류입니다. 이를 해결하기 위해선 getcwd와 chdir를 사용해주면 됩니다. getcwd는 현재 작업 디렉토리를 확인하는 함수이고, chdir 현재 작업 디렉토리를 변경하는 함수입니다. import os print(os.getcwd()) os.chdir('./가상화') print(os.getcwd()) getcwd 함수로 현재 작업 디렉토리를 출력하고, chdir로 디렉토리 경로를 변경한 것을 확인하실 수 있습니다.

[Python] 셀레니움 네이버 로그인

셀레니움을 이용하여 아이디창에 바로 입력해도 되지만, 네이버에서는 비정상적인 로그인 활동으로 감지하여 매크로 확인과 함께 다시 로그인 시키기 때문에, 로그인을 위해서는 직접 입력이 아닌 아이디와 비밀번호를 복사해서 붙여주는 형식으로 로그인이 가능합니다. #네이버 로그인 방법 from selenium import webdriver # 셀레니움 사용 from selenium.webdriver.common.by import By # By.XPATH 사용 from selenium.webdriver.common.keys import Keys # enter 등 커멘드 창 사용 from selenium.webdriver.chrome.options import Options # option 사용 from seleniu..

[Python] 컴퓨터 화면 보호기 상태 확인

컴퓨터가 화면 보호기인 상태를 체크하도록 만드는 함수는 이렇습니다. pip install pywin32 해당 라이브러리를 설치하시고 from win32gui import GetWindowText, GetForegroundWindow # 화면 잠금 상태 확인 import time while(True) : time.sleep(5) print(GetWindowText(GetForegroundWindow())) 아래의 코드를 실행하시면 5초마다 현재 포커스가 되어있는 창의 제목을 출력합니다. 이 경우, 화면보호기인 상태도 "Windows 기본 잠금 화면" 으로 체크가 가능합니다. 그래서 이를 응용하면, from win32gui import GetWindowText, GetForegroundWindow impor..