Тест-режим: показывать метрики кадра из /check/ (какой кадр измерил сайт)
This commit is contained in:
+17
-3
@@ -301,7 +301,7 @@ def _photo_test_receiving(emojis: dict) -> str:
|
||||
|
||||
def _photo_test_result(verdict: str, reason: str, cv_approved=None, cv_reason: str = '',
|
||||
forced=None, timings: dict = None, ai_metrics: dict = None,
|
||||
emojis: dict = None) -> str:
|
||||
frame: dict = None, emojis: dict = None) -> str:
|
||||
emojis = emojis or {}
|
||||
icons = {"Прошел": "✅", "Не прошел": "❌", "На модерацию": "⏳"}
|
||||
icon = icons.get(verdict, "ℹ️")
|
||||
@@ -326,6 +326,19 @@ def _photo_test_result(verdict: str, reason: str, cv_approved=None, cv_reason: s
|
||||
else:
|
||||
parts.append("🎯 <b>CV-проверка:</b> —\n")
|
||||
|
||||
# Метрики кадра, которые реально измерил сайт (виден именно проверенный кадр)
|
||||
if frame:
|
||||
bb = frame.get('face_bbox_px') or {}
|
||||
try:
|
||||
box = f"[{bb.get('x1')}..{bb.get('x2')}]×[{bb.get('y1')}..{bb.get('y2')}]"
|
||||
parts.append(
|
||||
f"📐 <b>Кадр (измерено сайтом):</b> {frame.get('img_w')}×{frame.get('img_h')} px, "
|
||||
f"бокс лица {box}, голова <b>{frame.get('head_pct')}%</b> "
|
||||
f"(норма ≥ {int(frame.get('min_head_percent', 30))}%)\n"
|
||||
)
|
||||
except Exception:
|
||||
pass
|
||||
|
||||
if forced:
|
||||
parts.append("ℹ️ <i>На сайте включён режим принудительной модерации: в реальном режиме фото ушло бы модератору, а не было опубликовано сразу.</i>\n")
|
||||
|
||||
@@ -475,9 +488,10 @@ PHOTO_TEST_AI_CHECKING_TEXT = _photo_test_ai_checking(EMOJI_DIGITS)
|
||||
PHOTO_TEST_RECEIVING_TEXT = _photo_test_receiving(EMOJI_DIGITS)
|
||||
|
||||
def photo_test_result(verdict: str, ai_reason: str = '', cv_approved=None, cv_reason: str = '',
|
||||
forced=None, timings: dict = None, ai_metrics: dict = None) -> str:
|
||||
forced=None, timings: dict = None, ai_metrics: dict = None,
|
||||
frame: dict = None) -> str:
|
||||
return _photo_test_result(verdict, ai_reason, cv_approved, cv_reason,
|
||||
forced, timings, ai_metrics, EMOJI_DIGITS)
|
||||
forced, timings, ai_metrics, frame, EMOJI_DIGITS)
|
||||
|
||||
def photo_test_ai_error(error: str = '') -> str:
|
||||
return _photo_test_ai_error(EMOJI_DIGITS, error)
|
||||
|
||||
Reference in New Issue
Block a user