Spaces:
Sleeping
Sleeping
Update app.py
Browse files
app.py
CHANGED
@@ -1,10 +1,11 @@
|
|
1 |
-
from flask import Flask, render_template, request, Response, jsonify
|
2 |
import cv2
|
3 |
import os
|
4 |
import numpy as np
|
5 |
import pickle
|
6 |
from datetime import datetime
|
7 |
|
|
|
8 |
app = Flask(__name__)
|
9 |
|
10 |
FACE_DATA_DIR = 'face_data'
|
@@ -18,7 +19,7 @@ face_cascade = cv2.CascadeClassifier(FACE_CASCADE_PATH)
|
|
18 |
camera = None
|
19 |
face_recognizer = cv2.face.LBPHFaceRecognizer_create()
|
20 |
is_trained = False
|
21 |
-
has_webcam = os.path.exists("/dev/video0") # deteksi webcam
|
22 |
|
23 |
def load_face_data():
|
24 |
global is_trained
|
@@ -142,7 +143,6 @@ def capture_face():
|
|
142 |
|
143 |
@app.route('/upload_face', methods=['POST'])
|
144 |
def upload_face():
|
145 |
-
"""Upload foto untuk registrasi (tanpa webcam)"""
|
146 |
name = request.form.get('name', '').strip()
|
147 |
file = request.files.get('file')
|
148 |
|
@@ -190,5 +190,13 @@ def save_face(name, frame):
|
|
190 |
load_face_data()
|
191 |
return jsonify({'success': f'Wajah {name} berhasil didaftarkan'})
|
192 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
193 |
if __name__ == '__main__':
|
194 |
-
|
|
|
1 |
+
from flask import Flask, render_template, request, Response, jsonify
|
2 |
import cv2
|
3 |
import os
|
4 |
import numpy as np
|
5 |
import pickle
|
6 |
from datetime import datetime
|
7 |
|
8 |
+
# --- Flask App ---
|
9 |
app = Flask(__name__)
|
10 |
|
11 |
FACE_DATA_DIR = 'face_data'
|
|
|
19 |
camera = None
|
20 |
face_recognizer = cv2.face.LBPHFaceRecognizer_create()
|
21 |
is_trained = False
|
22 |
+
has_webcam = os.path.exists("/dev/video0") # deteksi webcam di server
|
23 |
|
24 |
def load_face_data():
|
25 |
global is_trained
|
|
|
143 |
|
144 |
@app.route('/upload_face', methods=['POST'])
|
145 |
def upload_face():
|
|
|
146 |
name = request.form.get('name', '').strip()
|
147 |
file = request.files.get('file')
|
148 |
|
|
|
190 |
load_face_data()
|
191 |
return jsonify({'success': f'Wajah {name} berhasil didaftarkan'})
|
192 |
|
193 |
+
# --- Wrapper untuk Hugging Face ---
|
194 |
+
from fastapi import FastAPI
|
195 |
+
from starlette.middleware.wsgi import WSGIMiddleware
|
196 |
+
|
197 |
+
flask_app = app
|
198 |
+
asgi_app = FastAPI()
|
199 |
+
asgi_app.mount("/", WSGIMiddleware(flask_app))
|
200 |
+
|
201 |
if __name__ == '__main__':
|
202 |
+
flask_app.run(debug=True, host='0.0.0.0', port=5000)
|