ahmedyoussef1 commited on
Commit
221203a
·
verified ·
1 Parent(s): 5294b87

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +15 -14
app.py CHANGED
@@ -171,7 +171,7 @@ def overlay_glasses(face_img, glasses_img, left_eye, right_eye):
171
  GLASSES_CATALOG = {
172
  # النظارة 1
173
  "النظارة المستديرة (1)": {
174
- "path": "assets/507b01553ce6931a5d45b5554893a24a.jpg", # << تم التعديل إلى .jpg
175
  "price": 120.00,
176
  "description": "نظارة مستديرة كلاسيكية، مثالية للوجه البيضاوي.",
177
  "shape_fit": "بيضاوي"
@@ -179,7 +179,7 @@ GLASSES_CATALOG = {
179
 
180
  # النظارة 2
181
  "النظارة الطيار (2)": {
182
- "path": "assets/56a9c0a1d10c21d475159d6890f4cf48.jpg", # << تم التعديل إلى .jpg
183
  "price": 85.00,
184
  "description": "تصميم طياري رقيق، يبرز جمال الوجه.",
185
  "shape_fit": "بيضاوي"
@@ -187,32 +187,33 @@ GLASSES_CATALOG = {
187
 
188
  # النظارة 3
189
  "النظارة المربعة (3)": {
190
- "path": "assets/b1c4d0a357457c77974d5ce4580d0e8e.jpg", # << تم التعديل إلى .jpg
191
  "price": 99.00,
192
  "description": "إطار مربع عصري، مناسب لإضافة تحديد للوجه البيضاوي.",
193
  "shape_fit": "بيضاوي"
194
  }
195
  }
196
- # ...
 
197
 
198
  LOADED_GLASSES = {}
199
 
200
  def load_glasses():
201
- """تحميل صور النظارات عند بدء التشغيل."""
202
  all_loaded = True
203
  for name, data in GLASSES_CATALOG.items():
204
- try:
205
- img = cv2.imread(data['path'], cv2.IMREAD_UNCHANGED)
206
- if img is not None and img.shape[2] >= 4:
207
- LOADED_GLASSES[name] = img
208
- else:
209
- print(f"⚠️ تحذير: فشل تحميل النظارة '{name}' من المسار: {data['path']}. تأكد من أنها PNG شفافة.")
210
- all_loaded = False
211
- except Exception as e:
212
- print(f"❌ خطأ حاد أثناء تحميل '{name}': {e}")
213
  all_loaded = False
214
  return all_loaded
215
 
 
 
216
  GLASSES_LOADED_OK = load_glasses()
217
 
218
 
 
171
  GLASSES_CATALOG = {
172
  # النظارة 1
173
  "النظارة المستديرة (1)": {
174
+ "path": "assets/507b01553ce6931a5d45b5554893a24a.jpg",
175
  "price": 120.00,
176
  "description": "نظارة مستديرة كلاسيكية، مثالية للوجه البيضاوي.",
177
  "shape_fit": "بيضاوي"
 
179
 
180
  # النظارة 2
181
  "النظارة الطيار (2)": {
182
+ "path": "assets/56a9c0a1d10c21d475159d6890f4cf48.jpg",
183
  "price": 85.00,
184
  "description": "تصميم طياري رقيق، يبرز جمال الوجه.",
185
  "shape_fit": "بيضاوي"
 
187
 
188
  # النظارة 3
189
  "النظارة المربعة (3)": {
190
+ "path": "assets/b1c4d0a357457c77974d5ce4580d0e8e.jpg",
191
  "price": 99.00,
192
  "description": "إطار مربع عصري، مناسب لإضافة تحديد للوجه البيضاوي.",
193
  "shape_fit": "بيضاوي"
194
  }
195
  }
196
+
197
+ # (نترك نظارة واحدة دون استخدام لأننا نستخدم أول ثلاث نظارات فقط للعرض)
198
 
199
  LOADED_GLASSES = {}
200
 
201
  def load_glasses():
202
+ """تحميل صور النظارات والبيانات عند بدء التشغيل."""
203
  all_loaded = True
204
  for name, data in GLASSES_CATALOG.items():
205
+ # القراءة باستخدام cv2.IMREAD_UNCHANGED للقراءة كـ JPG عادي مع تجاهل قناة ألفا
206
+ img = cv2.imread(data['path'], cv2.IMREAD_UNCHANGED)
207
+ if img is not None and img.size > 0: # تم تغيير شرط التحقق للتأكد من القراءة الصحيحة لـ JPG
208
+ LOADED_GLASSES[name] = img
209
+ else:
210
+ # رسالة تحذير مخصصة لحالة فشل القراءة
211
+ print(f"⚠️ تحذير: فشل تحميل النظارة '{name}' من المسار: {data['path']}. يرجى التحقق من وجود الملف واسم الامتداد.")
 
 
212
  all_loaded = False
213
  return all_loaded
214
 
215
+ # ...
216
+
217
  GLASSES_LOADED_OK = load_glasses()
218
 
219