How iciamyplant/amyplant-security works
amyplant-security is a collection of face-analysis experiments and webcam applications. Its clearest user-facing workflow serves a live camera stream through Flask, detects faces, estimates age and gender, annotates frames, and streams them to a browser. A separate recognition app matches detected faces against known-face images; another Flask app streams recognized faces. The README also describes a from-scratch detection-data and model-training workflow, while UDP camera-frame transport is an independent deployment experiment. Some capabilities are documented or evident from the tree but their implementation was not sampled, so uncertain internal links are omitted.
Main entry points: app_vdef.py Flask video app · app.py Recognition stream app · simplefacerec.py Face matching engine · First_model_VGG16 Detection data/model workflow
Components 19
Age-gender streaming
- Flask video app
App/app_vdef.py - Face localization
App/app_vdef.py - Age/gender models
App/app_vdef.py - Stream page
App/Templates/index.html - Age/gender webcam app
Age_gender/Final_age_gender/main.py - Face/gender model assets
Age_gender/Final_age_gender
Face recognition
- Recognition webcam app
Face_recognition/Opencv_firstproject/main.py - Recognition stream app
Face_recognition/Opencv_firstproject/camera_stream/app.py - Face matching engine
Face_recognition/Opencv_firstproject/simplefacerec.py - Known-face images
Face_recognition/Opencv_firstproject/Known_Faces - Recognition page
Face_recognition/Opencv_firstproject/camera_stream/templates/index.html
Detection development
- Annotated face dataset
Face_detection/First_model_VGG16/face_images.csv - Detection data/model workflow
Face_detection/First_model_VGG16 - Saved VGG16 model
Face_detection/First_model_VGG16/saved_model/my_model
Camera transport
- UDP frame sender
Deployment/sockets_for_camerastream/OpenCVClient.py - UDP frame receiver
Deployment/sockets_for_camerastream/OpenCVServer.py
Other components
- Browser viewer
- Local webcam
- UDP network
Connections 21
- Browser viewer → Flask video app: requests page/stream
- Flask video app → Stream page: renders page
- Flask video app → Local webcam: captures frames
- Flask video app → Face localization: localizes faces
- Flask video app → Age/gender models: infers attributes
- Flask video app → Browser viewer: streams annotated frames
- Local webcam → Recognition webcam app: provides frames
- Recognition webcam app → Face matching engine: detects and matches
- Face matching engine → Known-face images: loads image encodings
- Local webcam → Recognition stream app: provides frames
- Recognition stream app → Face matching engine: detects and matches
- Recognition stream app → Recognition page: renders page
- Browser viewer → Recognition stream app: requests stream
- Recognition stream app → Browser viewer: streams recognized frames
- Detection data/model workflow → Annotated face dataset: uses annotated data
- Detection data/model workflow → Saved VGG16 model: trains model
- Local webcam → Age/gender webcam app: provides frames
- Age/gender webcam app → Face/gender model assets: loads and runs models
- Local webcam → UDP frame sender: captures frames
- UDP frame sender → UDP network: sends frames
- UDP network → UDP frame receiver: delivers frames