{"id":28762211,"url":"https://github.com/nafisatibrahim/facial-landmarks-detection","last_synced_at":"2026-04-24T22:35:59.596Z","repository":{"id":298218604,"uuid":"999235597","full_name":"Nafisatibrahim/facial-landmarks-detection","owner":"Nafisatibrahim","description":"Facial landmark detection is widely used in computer vision for tasks like face alignment, expression tracking, AR filters, and emotion analysis. This project showcases how it can be applied efficiently using MediaPipe and Streamlit.","archived":false,"fork":false,"pushed_at":"2025-06-10T02:23:10.000Z","size":12704,"stargazers_count":1,"open_issues_count":1,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-06-17T08:07:28.638Z","etag":null,"topics":["animation","augmentation-reality","computer-vision","human-computer-interaction","landmark-detection","mediapipe"],"latest_commit_sha":null,"homepage":"https://facial-landmarks-detection.streamlit.app/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Nafisatibrahim.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-06-10T00:30:26.000Z","updated_at":"2025-06-10T02:27:16.000Z","dependencies_parsed_at":"2025-06-10T02:37:30.572Z","dependency_job_id":null,"html_url":"https://github.com/Nafisatibrahim/facial-landmarks-detection","commit_stats":null,"previous_names":["nafisatibrahim/facial-landmarks-detection"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Nafisatibrahim/facial-landmarks-detection","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Nafisatibrahim%2Ffacial-landmarks-detection","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Nafisatibrahim%2Ffacial-landmarks-detection/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Nafisatibrahim%2Ffacial-landmarks-detection/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Nafisatibrahim%2Ffacial-landmarks-detection/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Nafisatibrahim","download_url":"https://codeload.github.com/Nafisatibrahim/facial-landmarks-detection/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Nafisatibrahim%2Ffacial-landmarks-detection/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":260318706,"owners_count":22991120,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["animation","augmentation-reality","computer-vision","human-computer-interaction","landmark-detection","mediapipe"],"created_at":"2025-06-17T08:07:28.612Z","updated_at":"2026-04-24T22:35:59.560Z","avatar_url":"https://github.com/Nafisatibrahim.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# 🧠 Facial Landmark Detection Using MediaPipe  \nA Simple Computer Vision Web App for Visualizing Facial Mesh\n\n---\n\n## 🧭 Overview  \nThis project implements real-time facial landmark detection using **MediaPipe Face Mesh** and displays facial mesh lines on portrait images via a **Streamlit web app**. Rather than predicting expressions or performing face recognition, the focus is on understanding facial structure through mesh overlay.\n\n## 🖼️ Sample Output  \nHere’s an example of the facial mesh overlay:\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"./facial_landmarks.jpg\" alt=\"Facial Mesh Output\" width=\"600\"/\u003e\n\u003c/p\u003e\n\n\n## 🚀 Live Demo  \n🔗 [Web App hosted on Streamlit Cloud](https://facial-landmarks-detection.streamlit.app/)\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"./facial_landmarks_detection_demo.gif\" alt=\"Facial Landmark Detection Demo\" width=\"600\"/\u003e\n\u003c/p\u003e\n\nKey steps included:\n\n- Image upload and preprocessing using Pillow and NumPy\n- Facial landmark detection using MediaPipe's pre-trained FaceMesh model\n- Visualization of facial mesh (lines only, no dots) using OpenCV\n- Web app creation and deployment using Streamlit\n- Optional enhancements: region highlighting (eyes, lips, etc.) and real-time webcam extension\n\n---\n\n## 📦 Input\n- **Image input**: User-uploaded `.jpg`, `.jpeg`, or `.png` portrait image\n- **Face detection model**: MediaPipe's built-in face mesh estimator\n- **Output**: Original image with facial mesh lines drawn\n\n---\n\n## 🔍 Highlights\n- Detects **468 facial landmarks** per face\n- Supports **1 face per image** (can be extended)\n- Draws only **mesh lines** (tesselation), without cluttering with dots\n- Works well on **clear, front-facing images**\n- Fully deployable as a **Streamlit web app**\n\n---\n\n## 🤖 How It Works\n1. User uploads an image\n2. Image is converted to RGB and passed to MediaPipe FaceMesh\n3. If a face is detected:\n   - Facial landmarks are returned\n   - Connections (lines) are drawn using OpenCV\n4. Final image is displayed using Streamlit\n\n---\n\n## 💡 Key Takeaways\n- Facial mesh detection is possible without training any model\n- MediaPipe is efficient and accurate for landmark extraction\n- Streamlit is a powerful tool for quick deployment of ML/vision prototypes\n- OpenCV and PIL can be used together for both preprocessing and overlaying\n\n---\n\n## 📊 Tools Used\n- Python (NumPy, OpenCV, Pillow)\n- MediaPipe\n- Streamlit\n- Git \u0026 GitHub\n\n---\n\n## 🚀 Live Demo  \n🔗 [Web App hosted on Streamlit Cloud](https://facial-landmarks-detection.streamlit.app/)\n\n\n---\n\n## 👤 Author  \n**Nafisat Ibrahim**\n\n---\n\n## 📥 Resources \u0026 Downloads\n- 📄 [View Source Code (`app.py`)](./app.py)\n- 📦 [View Requirements (`requirements.txt`)](./requirements.txt)\n- 🛠️ [System Dependencies (`packages.txt`)](./packages.txt)\n\n---\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnafisatibrahim%2Ffacial-landmarks-detection","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnafisatibrahim%2Ffacial-landmarks-detection","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnafisatibrahim%2Ffacial-landmarks-detection/lists"}