How ayazxdev/facetrace works
Drishti’s primary workflow is camera frames → per-camera detection, tracking, face identity and pose/action analysis → annotated live video and structured events, with rule-qualified threats persisted as alerts for review. Administrators also enroll and manage identities and submit recorded video for recognition; the interface exposes live streams, alert reports and administration. A separate frame-processing utility captions stored frames and indexes caption embeddings. Several backend sections are unsampled, so links for those behaviors are limited to documented capabilities and explicit excerpts.
Main entry points: realtime_pipeline.py Camera pipeline · main.py HTTP and WS API · index.js API client · db.py Person records
Components 17
Monitoring interface
- React application
frontend/src/App.jsx - API client
frontend/src/api/index.js - Live pipeline feed
frontend/src/components/RealtimePipelineFeed.jsx - Alerts view
frontend/src/pages/Alerts.jsx
API and administration
- HTTP and WS API
backend/main.py - Admin operations
backend/admin.py - Video processing
backend/main.py
Realtime inference
- Camera pipeline
backend/realtime_pipeline.py - Face detection
backend/face_engine.py - Pose and action rules
backend/utils_pose_rules.py - Weapon action scoring
backend/action_engine.py
Identity and alerts
- Person records
backend/db.py - Alert records
backend/db.py
Frame intelligence
- Frame captioning
amg_chatbot/process_frames.py - Frame settings
amg_chatbot/config.py
Other components
- Operator
- Camera feeds
Connections 18
- Operator → React application: uses
- React application → API client: requests
- API client → HTTP and WS API: calls endpoints
- Live pipeline feed → HTTP and WS API: opens WebSocket
- HTTP and WS API → Camera pipeline: starts and streams
- Camera feeds → Camera pipeline: supplies frames
- Camera pipeline → Face detection: detects and embeds
- Camera pipeline → Pose and action rules: classifies actions
- Camera pipeline → Weapon action scoring: scores weapons
- Camera pipeline → Person records: loads identities
- Camera pipeline → Alert records: writes alerts
- HTTP and WS API → Person records: manages identities
- Video processing → Person records: matches faces
- Live pipeline feed → Alerts view: shows events
- Alerts view → API client: fetches alerts
- API client → HTTP and WS API: requests reports
- HTTP and WS API → Alert records: reads alerts
- Frame captioning → Frame settings: reads settings