スマート顔認識勤怠管理システム
概要
本リポジトリは、PythonとFlaskをベースにしたリアルタイム顔認識勤怠システムです。カメラからの映像を入力として、画面内の顔を検出・認識し、各人の出勤・退勤時間を自動で記録して滞在時間を算出します。顔データの登録・管理機能も備え、ユーザーは新たな人物の顔を登録したり情報を更新・削除できます。さらに、勤怠状況はWeb画面で直感的に確認可能で、出勤回数や総滞在時間などの統計も提供。JSON形式によるデータエクスポート機能もあり、バックアップや他システム連携に対応しています。OpenCVやface_recognition、mediapipeなどの最新技術を活用し、オフィスや教室、会議室など幅広いシーンでの自動勤怠管理に最適化されています。
リポジトリの統計情報
- スター数: 10
- フォーク数: 0
- ウォッチャー数: 10
- コミット数: 4
- ファイル数: 7
- メインの言語: Python
主な特徴
- リアルタイムでの顔検出・認識による自動勤怠記録
- ユーザー登録・管理機能で顔データの追加・編集・削除が可能
- 出勤・退勤時刻の記録および滞在時間の自動計算
- Webブラウザ上での勤怠状況の可視化および統計表示
技術的なポイント
本システムは、Python 3.11以上を対象に開発されており、Flaskを用いた軽量なWebサーバーとして構築されています。顔認識には「face_recognition」ライブラリとGoogleが提供する「mediapipe」を組み合わせ、精度と処理速度のバランスを追求しています。mediapipeは顔検出の高速化に寄与し、face_recognitionは顔の特徴抽出および個人識別に用いられています。映像入力はOpenCVを介してカメラ映像をリアルタイムで取得し、PILを活用して画像処理を行っています。
システムのデータ管理はSQLiteを採用し、軽量ながら確実な顔情報および勤怠記録の保存を実現。登録ユーザーの顔画像とメタ情報をデータベースに格納し、来訪時には顔認証を行い自動的に出勤・退勤を判定します。滞在時間は出勤時刻と退勤時刻の差分から計算され、複数回の出入りもトラッキング可能です。
フロントエンドはHTML5、JavaScript、CSS3によるシンプルかつ直感的なUIを備え、リアルタイムの認識結果や統計データをブラウザで閲覧できます。Flask-CORSを利用し柔軟なAPI設計を行うことで、クロスオリジン通信や将来的な拡張にも対応できる構造となっています。
また、勤怠データはJSON形式でのエクスポート機能を備え、他システムへの連携やバックアップ用途にも活用可能です。Dockerfileが用意されているため、環境構築やデプロイも容易で、オンプレミスからクラウド環境まで幅広く導入できます。
以上の技術的要素により、単なる勤怠管理ツールに留まらず、AI技術を活用した高度な自動化と運用の利便性を両立したシステムとなっています。
プロジェクトの構成
主要なファイルとディレクトリ:
- Dockerfile: アプリケーションのコンテナ化設定ファイル
- LICENSE: ライセンス情報
- README.md: プロジェクト概要や使用方法の説明
- app.py: Flaskを用いたバックエンドサーバーのメイン実装
- deployment.yaml: Kubernetes等へのデプロイ用設定ファイル
- requirements.txt: Pythonの依存パッケージ一覧
- static/: CSSやJavaScriptなどのフロントエンド静的ファイル
- templates/: HTMLテンプレートファイル
まとめ
顔認識技術を活用した高精度・高機能な勤怠管理システム。
リポジトリ情報:
- 名前: -
- 説明: 人脸识别/打卡器(スマート顔認識勤怠管理システム)
- スター数: 10
- 言語: Python
- URL: https://github.com/zhengxuanjiang/-
- オーナー: zhengxuanjiang
- アバター: https://avatars.githubusercontent.com/u/191915933?v=4