이 프로젝트는 **라즈베리파이(Raspberry Pi)**를 활용하여 사용자 얼굴을 인식하고, 실시간으로 개인화된 기상 정보를 제공하는 지능형 기상 정보 알림 시스템입니다. 사용자가 입력하지 않는 유휴 상태를 감지하여 자동으로 초기화 기능을 수행하며, 기상 정보에 따라 필요한 항목(우산, 선크림 등)을 추천합니다.
- 얼굴 인식 통합: 카메라를 통해 사용자를 식별.
- 실시간 기상 정보 제공: API를 통해 최신 기상 데이터를 수집.
- 자동화 기능: 3분 동안 입력이 없으면 얼굴 인식을 재시작.
- 정보 알림 시스템: 기상 정보와 필요한 항목을 사용자에게 시각적으로 제공.
- OpenCV (cv2): 얼굴 인식 및 이미지 처리.
- Requests 및 BeautifulSoup: 네이버 기상 데이터 수집 및 파싱.
- Tkinter: 사용자 인터페이스(UI) 구현.
- RPi.GPIO: 라즈베리파이 하드웨어 제어.
- Threading: 동시 작업 처리.
- Datetime, Time, Sys, OS: Python 기본 유틸리티.
- Raspberry Pi OS (32-bit Legacy): 라즈베리파이 운영체제.
- Raspberry Pi 4: 메인 처리 장치.
- 카메라 모듈: 얼굴 인식 및 사용자 식별.
- 스위치 및 디스플레이 모듈: 사용자와 상호작용 및 정보 출력.
- 얼굴 인식: 카메라를 사용해 사용자를 인식합니다.
- 기상 데이터 수집: API를 통해 실시간 기상 데이터를 가져옵니다. (예: 네이버)
- 필요 항목 추천: 날씨 데이터를 기반으로 사용자가 준비해야 할 항목(우산 등)을 결정합니다.
- 정보 표시: 디스플레이를 통해 사용자에게 정보를 제공합니다.
- 시스템 초기화 후 카메라를 사용하여 사용자 얼굴을 인식합니다.
- 실시간으로 기상 데이터를 수집하고 이를 처리합니다.
- 날씨 정보에 따라 필요한 준비물을 계산합니다.
- 디스플레이 모듈에 기상 정보와 추천 항목을 표시합니다.
- 3분간 입력이 없으면 얼굴 인식 기능을 자동으로 재시작합니다.
- 포팅 문제:
- 라즈베리파이에서 OpenCV 및 Numpy 라이브러리의 호환성 문제를 해결.
- 권한 문제:
- 라즈베리파이 하드웨어 접근 및 시스템 권한 문제를 해결.
- 얼굴 인식과 기상 데이터 수집 기능을 통합하여 완성.
- 사용자 친화적인 인터페이스를 통해 실시간으로 기상 정보를 제공합니다.
- 유휴 상태를 감지해 시스템을 자동 초기화하는 기능을 구현했습니다.