VanNguyen1214 commited on
Commit
c6ab654
·
verified ·
1 Parent(s): 4ed5f6a

Update README.md

Browse files
Files changed (1) hide show
  1. README.md +164 -164
README.md CHANGED
@@ -1,164 +1,164 @@
1
- ---
2
- title: AI Wig Try-On System
3
- emoji: 💇‍♀️
4
- colorFrom: pink
5
- colorTo: blue
6
- sdk: gradio
7
- sdk_version: 5.31.0
8
- app_file: app.py
9
- pinned: false
10
- ---
11
-
12
- # 🎭 AI Wig Try-On System
13
-
14
- Hệ thống thử tóc giả thông minh sử dụng AI - Tự động phân loại khuôn mặt và gợi ý tóc giả phù hợp.
15
-
16
- ## ✨ Tính năng chính
17
-
18
- - 🤖 **Phân loại khuôn mặt tự động**: AI nhận diện 5 dạng mặt (Heart, Oblong, Oval, Round, Square)
19
- - 🎯 **Gợi ý tóc giả thông minh**: Tự động hiển thị tóc phù hợp với khuôn mặt
20
- - 🎨 **Face Swap chất lượng cao**: Sử dụng công nghệ roop để face swapping tự nhiên
21
- - 🖼️ **Giao diện thân thiện**: Web interface đơn giản với Gradio
22
-
23
- ## 🏗️ Kiến trúc hệ thống
24
-
25
- ```
26
- 📁 Project Structure
27
- ├── app.py # Main Gradio interface
28
- ├── detect_face.py # Face shape classification (EfficientNet-B4)
29
- ├── overlay.py # Hair overlay processing
30
- ├── swapface.py # Face swapping using roop
31
- ├── baldhead.py # Hair removal using GAN
32
- ├── segmentation.py # Hair/face segmentation
33
- ├── setup.py # Project setup checker
34
- └── example_wigs/ # Wig samples organized by face shape
35
- ├── Heart/
36
- ├── Oblong/
37
- ├── Oval/
38
- ├── Round/
39
- └── Square/
40
- ```
41
-
42
- ## 🚀 Cài đặt và chạy
43
-
44
- ### 1. Cài đặt dependencies
45
- ```bash
46
- pip install -r requirements.txt
47
- ```
48
-
49
- ### 2. Kiểm tra setup
50
- ```bash
51
- python setup.py
52
- ```
53
-
54
- ### 3. Chạy ứng dụng
55
- ```bash
56
- python app.py
57
- ```
58
-
59
- ## 🎯 Cách sử dụng
60
-
61
- 1. **Upload ảnh khuôn mặt** vào khung "Background"
62
- 2. **Tự động phân loại**: Hệ thống sẽ phân tích khuôn mặt và hiển thị tóc giả gợi ý
63
- 3. **Chọn tóc giả**: Click vào gallery để chọn kiểu tóc mong muốn
64
- 4. **Xử lý**: Nhấn nút "🔄 Run" để thực hiện workflow mới
65
- 5. **Kết quả**: Xem kết quả cuối cùng với tóc giả được ghép tự nhiên
66
-
67
- ## 🔄 Workflow Mới
68
-
69
- 1. **Scale Image Source**: Điều chỉnh kích thước ảnh source sao cho khuôn mặt bằng với khuôn mặt background (sử dụng MediaPipe)
70
- 2. **Bald Head**: Thực hiện baldhead image background
71
- 3. **Face Overlay**: Lấy khuôn mặt từ background(baldhead) có trán và overlay lên khuôn mặt source đã được scale
72
- 4. **Hair Extraction**: Trích xuất tóc + mặt + trán từ kết quả bước 3 và overlay lên background(baldhead) gốc và làm mịn vùng overlay lưu vào variable temp sau đó get_hair từ source overlay lên variable temp với vị trí trùng với vị trí tóc của temp_result
73
- 5. **Face Swapping**: Thực hiện face swap giữa background(baldhead) và kết quả tạm để có kết quả cuối cùng
74
-
75
- ## 🤖 AI Models được sử dụng
76
-
77
- - **Face Classification**: EfficientNet-B4 custom trained
78
- - **Hair Segmentation**: SegFormer from Hugging Face
79
- - **Face Detection**: MediaPipe + RetinaFace
80
- - **Hair Removal**: Custom GAN model
81
- - **Face Swapping**: roop library
82
-
83
- ## 📊 Supported Face Shapes
84
-
85
- | Face Shape | Description | Wig Recommendations |
86
- |------------|-------------|-------------------|
87
- | **Heart** | Trán rộng, cằm nhọn | Tóc bob, lob, layers |
88
- | **Oblong** | Mặt dài, tỷ lệ cao | Tóc có volume, fringe |
89
- | **Oval** | Cân đối, lý tưởng | Phù hợp mọi kiểu tóc |
90
- | **Round** | Mặt tròn, má đầy | Tóc dài, layers |
91
- | **Square** | Góc cạnh, hàm vuông | Tóc xoăn, soft waves |
92
-
93
- ## 🛠️ Technical Requirements
94
-
95
- - Python 3.8+
96
- - CUDA-compatible GPU (recommended)
97
- - RAM: 8GB+
98
- - Storage: 5GB+ for models
99
-
100
- ## 📋 Key Dependencies
101
-
102
- - `gradio` - Web interface
103
- - `torch` + `torchvision` - Deep learning
104
- - `transformers` - Hugging Face models
105
- - `mediapipe` - Face detection
106
- - `opencv-python` - Image processing
107
- - `insightface` - Face analysis
108
- - `tensorflow` - GAN models
109
-
110
- ## 🏃‍♂️ Quick Start
111
-
112
- ```bash
113
- # Clone and setup
114
- git clone <repo-url>
115
- cd be_rejection
116
-
117
- # Install requirements
118
- pip install -r requirements.txt
119
-
120
- # Check setup
121
- python setup.py
122
-
123
- # Run app
124
- python app.py
125
- ```
126
-
127
- ## 🎭 Adding New Wigs
128
-
129
- Để thêm tóc giả mới:
130
- 1. Đặt ảnh tóc giả vào folder tương ứng trong `example_wigs/`
131
- 2. Format: PNG/JPG với background trong suốt (khuyến nghị)
132
- 3. Kích thước: Tối thiểu 512x512px
133
- 4. Chất lượng: Ảnh rõ nét, góc chụp thẳng
134
-
135
- ## 🔧 Troubleshooting
136
-
137
- **Lỗi model không load:**
138
- ```bash
139
- # Kiểm tra kết nối internet và Hugging Face Hub
140
- python -c "from transformers import pipeline; print('HF Hub OK')"
141
- ```
142
-
143
- **Lỗi CUDA:**
144
- ```bash
145
- # Chuyển sang CPU mode
146
- export CUDA_VISIBLE_DEVICES=""
147
- ```
148
-
149
- **Lỗi memory:**
150
- - Giảm batch size
151
- - Sử dụng GPU có RAM lớn hơn
152
- - Giảm kích thước ảnh input
153
-
154
- ## 📝 License
155
-
156
- Dự án này được phát triển cho mục đích giáo dục và nghiên cứu.
157
-
158
- ## 🤝 Contributing
159
-
160
- Contributions are welcome! Please feel free to submit a Pull Request.
161
-
162
- ---
163
-
164
- *Powered by AI • Made with ❤️ in Vietnam*
 
1
+ ---
2
+ title: AI Wig Try-On System
3
+ emoji: 💇‍♀️
4
+ colorFrom: pink
5
+ colorTo: blue
6
+ sdk: gradio
7
+ sdk_version: 5.35.0
8
+ app_file: app.py
9
+ pinned: false
10
+ ---
11
+
12
+ # 🎭 AI Wig Try-On System
13
+
14
+ Hệ thống thử tóc giả thông minh sử dụng AI - Tự động phân loại khuôn mặt và gợi ý tóc giả phù hợp.
15
+
16
+ ## ✨ Tính năng chính
17
+
18
+ - 🤖 **Phân loại khuôn mặt tự động**: AI nhận diện 5 dạng mặt (Heart, Oblong, Oval, Round, Square)
19
+ - 🎯 **Gợi ý tóc giả thông minh**: Tự động hiển thị tóc phù hợp với khuôn mặt
20
+ - 🎨 **Face Swap chất lượng cao**: Sử dụng công nghệ roop để face swapping tự nhiên
21
+ - 🖼️ **Giao diện thân thiện**: Web interface đơn giản với Gradio
22
+
23
+ ## 🏗️ Kiến trúc hệ thống
24
+
25
+ ```
26
+ 📁 Project Structure
27
+ ├── app.py # Main Gradio interface
28
+ ├── detect_face.py # Face shape classification (EfficientNet-B4)
29
+ ├── overlay.py # Hair overlay processing
30
+ ├── swapface.py # Face swapping using roop
31
+ ├── baldhead.py # Hair removal using GAN
32
+ ├── segmentation.py # Hair/face segmentation
33
+ ├── setup.py # Project setup checker
34
+ └── example_wigs/ # Wig samples organized by face shape
35
+ ├── Heart/
36
+ ├── Oblong/
37
+ ├── Oval/
38
+ ├── Round/
39
+ └── Square/
40
+ ```
41
+
42
+ ## 🚀 Cài đặt và chạy
43
+
44
+ ### 1. Cài đặt dependencies
45
+ ```bash
46
+ pip install -r requirements.txt
47
+ ```
48
+
49
+ ### 2. Kiểm tra setup
50
+ ```bash
51
+ python setup.py
52
+ ```
53
+
54
+ ### 3. Chạy ứng dụng
55
+ ```bash
56
+ python app.py
57
+ ```
58
+
59
+ ## 🎯 Cách sử dụng
60
+
61
+ 1. **Upload ảnh khuôn mặt** vào khung "Background"
62
+ 2. **Tự động phân loại**: Hệ thống sẽ phân tích khuôn mặt và hiển thị tóc giả gợi ý
63
+ 3. **Chọn tóc giả**: Click vào gallery để chọn kiểu tóc mong muốn
64
+ 4. **Xử lý**: Nhấn nút "🔄 Run" để thực hiện workflow mới
65
+ 5. **Kết quả**: Xem kết quả cuối cùng với tóc giả được ghép tự nhiên
66
+
67
+ ## 🔄 Workflow Mới
68
+
69
+ 1. **Scale Image Source**: Điều chỉnh kích thước ảnh source sao cho khuôn mặt bằng với khuôn mặt background (sử dụng MediaPipe)
70
+ 2. **Bald Head**: Thực hiện baldhead image background
71
+ 3. **Face Overlay**: Lấy khuôn mặt từ background(baldhead) có trán và overlay lên khuôn mặt source đã được scale
72
+ 4. **Hair Extraction**: Trích xuất tóc + mặt + trán từ kết quả bước 3 và overlay lên background(baldhead) gốc và làm mịn vùng overlay lưu vào variable temp sau đó get_hair từ source overlay lên variable temp với vị trí trùng với vị trí tóc của temp_result
73
+ 5. **Face Swapping**: Thực hiện face swap giữa background(baldhead) và kết quả tạm để có kết quả cuối cùng
74
+
75
+ ## 🤖 AI Models được sử dụng
76
+
77
+ - **Face Classification**: EfficientNet-B4 custom trained
78
+ - **Hair Segmentation**: SegFormer from Hugging Face
79
+ - **Face Detection**: MediaPipe + RetinaFace
80
+ - **Hair Removal**: Custom GAN model
81
+ - **Face Swapping**: roop library
82
+
83
+ ## 📊 Supported Face Shapes
84
+
85
+ | Face Shape | Description | Wig Recommendations |
86
+ |------------|-------------|-------------------|
87
+ | **Heart** | Trán rộng, cằm nhọn | Tóc bob, lob, layers |
88
+ | **Oblong** | Mặt dài, tỷ lệ cao | Tóc có volume, fringe |
89
+ | **Oval** | Cân đối, lý tưởng | Phù hợp mọi kiểu tóc |
90
+ | **Round** | Mặt tròn, má đầy | Tóc dài, layers |
91
+ | **Square** | Góc cạnh, hàm vuông | Tóc xoăn, soft waves |
92
+
93
+ ## 🛠️ Technical Requirements
94
+
95
+ - Python 3.8+
96
+ - CUDA-compatible GPU (recommended)
97
+ - RAM: 8GB+
98
+ - Storage: 5GB+ for models
99
+
100
+ ## 📋 Key Dependencies
101
+
102
+ - `gradio` - Web interface
103
+ - `torch` + `torchvision` - Deep learning
104
+ - `transformers` - Hugging Face models
105
+ - `mediapipe` - Face detection
106
+ - `opencv-python` - Image processing
107
+ - `insightface` - Face analysis
108
+ - `tensorflow` - GAN models
109
+
110
+ ## 🏃‍♂️ Quick Start
111
+
112
+ ```bash
113
+ # Clone and setup
114
+ git clone <repo-url>
115
+ cd be_rejection
116
+
117
+ # Install requirements
118
+ pip install -r requirements.txt
119
+
120
+ # Check setup
121
+ python setup.py
122
+
123
+ # Run app
124
+ python app.py
125
+ ```
126
+
127
+ ## 🎭 Adding New Wigs
128
+
129
+ Để thêm tóc giả mới:
130
+ 1. Đặt ảnh tóc giả vào folder tương ứng trong `example_wigs/`
131
+ 2. Format: PNG/JPG với background trong suốt (khuyến nghị)
132
+ 3. Kích thước: Tối thiểu 512x512px
133
+ 4. Chất lượng: Ảnh rõ nét, góc chụp thẳng
134
+
135
+ ## 🔧 Troubleshooting
136
+
137
+ **Lỗi model không load:**
138
+ ```bash
139
+ # Kiểm tra kết nối internet và Hugging Face Hub
140
+ python -c "from transformers import pipeline; print('HF Hub OK')"
141
+ ```
142
+
143
+ **Lỗi CUDA:**
144
+ ```bash
145
+ # Chuyển sang CPU mode
146
+ export CUDA_VISIBLE_DEVICES=""
147
+ ```
148
+
149
+ **Lỗi memory:**
150
+ - Giảm batch size
151
+ - Sử dụng GPU có RAM lớn hơn
152
+ - Giảm kích thước ảnh input
153
+
154
+ ## 📝 License
155
+
156
+ Dự án này được phát triển cho mục đích giáo dục và nghiên cứu.
157
+
158
+ ## 🤝 Contributing
159
+
160
+ Contributions are welcome! Please feel free to submit a Pull Request.
161
+
162
+ ---
163
+
164
+ *Powered by AI • Made with ❤️ in Vietnam*