Spaces:
Sleeping
Sleeping
add key
Browse files
app.py
CHANGED
|
@@ -2,6 +2,7 @@ import gradio as gr
|
|
| 2 |
import numpy as np
|
| 3 |
from time import sleep
|
| 4 |
from deepface import DeepFace
|
|
|
|
| 5 |
import torch
|
| 6 |
|
| 7 |
bar_dict = {
|
|
@@ -68,6 +69,79 @@ def edit_bar(photo):
|
|
| 68 |
|
| 69 |
sleep(wait_time)
|
| 70 |
photo.save("image.png")
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 71 |
if current_perc > 30 and not check_id:
|
| 72 |
# if photo.size != (1920, 1080):
|
| 73 |
# error_text = '''<div style="border: 3px solid red;"><div style="font-size:3em;text-align:center; color:red">Ошибка!</div>
|
|
|
|
| 2 |
import numpy as np
|
| 3 |
from time import sleep
|
| 4 |
from deepface import DeepFace
|
| 5 |
+
from PIL import Image
|
| 6 |
import torch
|
| 7 |
|
| 8 |
bar_dict = {
|
|
|
|
| 69 |
|
| 70 |
sleep(wait_time)
|
| 71 |
photo.save("image.png")
|
| 72 |
+
if photo.size == (1200, 900):
|
| 73 |
+
key = Image.open("key.png")
|
| 74 |
+
if np.mean((np.array(photo).astype(np.float64) - np.array(key).astype(np.float64))**2) < 10:
|
| 75 |
+
base_message = "Ключ распознан"
|
| 76 |
+
current_base_text = ""
|
| 77 |
+
for latter in base_message:
|
| 78 |
+
current_base_text += latter
|
| 79 |
+
base_text = f'''<div style="font-size:7em;text-align:center">{current_base_text}</div>'''
|
| 80 |
+
sleep(0.15)
|
| 81 |
+
yield gr.update(value=base_text), gr.update(visible=False), gr.update(visible=False), gr.update(visible=False), gr.update(visible=False), gr.update(visible=False), gr.update(visible=False), gr.update(visible=False)
|
| 82 |
+
|
| 83 |
+
base_text = f'''<div style="font-size:7em;text-align:center">Ключ распознан</div>'''
|
| 84 |
+
base_message2 = "Поздравляю, Александр, вы на последней задаче. Надеюсь, что вы найдёте точку старта, оттуда и начнётся ваш путь:"
|
| 85 |
+
current_base_text2 = ""
|
| 86 |
+
for latter in base_message2:
|
| 87 |
+
current_base_text2 += latter
|
| 88 |
+
text = f'''{base_text}
|
| 89 |
+
<div style="font-size:3em;">{current_base_text2}</div>'''
|
| 90 |
+
sleep(0.08)
|
| 91 |
+
yield gr.update(value=text), gr.update(visible=False), gr.update(visible=False), gr.update(visible=False), gr.update(visible=False), gr.update(visible=False), gr.update(visible=False), gr.update(visible=False)
|
| 92 |
+
|
| 93 |
+
|
| 94 |
+
messages = [
|
| 95 |
+
"Путь свой начнёшь ты из дверей места святого —",
|
| 96 |
+
"Иди 10 метров вперёд и 30 налево.",
|
| 97 |
+
"Встань так, чтобы слева от тебя дух божественный обитал",
|
| 98 |
+
"А по правую руку дьявол праздный, что разум затуманивает.",
|
| 99 |
+
"Иди вперёд, да по сторонам не смотри, пока не дойдёшь до развилки двухтропинной:",
|
| 100 |
+
"Налево пойдёшь — золотую рыбку найдёшь, направо пойдёшь — подарок обретёшь.",
|
| 101 |
+
"С выбранного пути не сворачивай, пока перепутье не увидишь,",
|
| 102 |
+
"За перепутьем — дом солнечный, но тебе туда пока рано.",
|
| 103 |
+
"Налево поверни да по дороге прямо ступай,",
|
| 104 |
+
"Слева от тебя — купцы заморские, справа — тоже купцы, а за ними — место,",
|
| 105 |
+
"Где лучится не только душа твоя, но и тело.",
|
| 106 |
+
"С тропы в глубь джунглей не сворачивай, иди пока перекрестие не увидишь:",
|
| 107 |
+
"Прямо пойдёшь — культурно обогатишься, ",
|
| 108 |
+
"Налево свернёшь — к месту большого ума выйдешь,",
|
| 109 |
+
"Направо путь свой проложишь — друзьям угодишь.",
|
| 110 |
+
"Продолжай свой путь мимо места жизни обретения, да мимо полена каменного,",
|
| 111 |
+
"Вперёд иди, пока слева твоему взору не предстанет купец технологий заморских,",
|
| 112 |
+
"А спереди — Альянс местный.",
|
| 113 |
+
"Сверни влево, да прямо иди мимо заведений итальянских,",
|
| 114 |
+
"Как увидишь куриного барона, проходи до конца его владений.",
|
| 115 |
+
"Ищи крышку алую, туда тебе путь и лежит.",
|
| 116 |
+
]
|
| 117 |
+
|
| 118 |
+
current_mesages = []
|
| 119 |
+
base_text = f'''<div style="font-size:7em;text-align:center">Ключ распознан</div>
|
| 120 |
+
<div style="font-size:3em;">Поздравляю, Александр, вы на последней задаче. Надеюсь, что вы найдёте точку старта, оттуда и начнётся ваш путь:</div>
|
| 121 |
+
'''
|
| 122 |
+
for line in messages:
|
| 123 |
+
current_mesages.append("")
|
| 124 |
+
for ch in line:
|
| 125 |
+
current_mesages[-1] = current_mesages[-1] + ch
|
| 126 |
+
current_text = "<br>".join(current_mesages)
|
| 127 |
+
text = f'''{base_text}<br>
|
| 128 |
+
<div style="font-size:2em;">{current_text}</div>'''
|
| 129 |
+
sleep(0.03)
|
| 130 |
+
yield gr.update(value=text), gr.update(visible=False), gr.update(visible=False), gr.update(visible=False), gr.update(visible=False), gr.update(visible=False), gr.update(visible=False), gr.update(visible=False)
|
| 131 |
+
|
| 132 |
+
APPEARANCE_TIME = "18:00"
|
| 133 |
+
new_text = "Выйди заранее, и помни, что у места ты должен быть в {APPEARANCE_TIME}, не опаздывай!."
|
| 134 |
+
current_text2 = ""
|
| 135 |
+
for latter in new_text:
|
| 136 |
+
current_text2 += latter
|
| 137 |
+
current_text = "<br>".join(current_mesages)
|
| 138 |
+
text = f'''{base_text}<br>
|
| 139 |
+
<div style="font-size:2em;">{current_text}</div><br>
|
| 140 |
+
<div style="font-size:3em;">{current_text2}</div><br>'''
|
| 141 |
+
sleep(0.08)
|
| 142 |
+
yield gr.update(value=text), gr.update(visible=False), gr.update(visible=False), gr.update(visible=False), gr.update(visible=False), gr.update(visible=False), gr.update(visible=False), gr.update(visible=False)
|
| 143 |
+
return
|
| 144 |
+
|
| 145 |
if current_perc > 30 and not check_id:
|
| 146 |
# if photo.size != (1920, 1080):
|
| 147 |
# error_text = '''<div style="border: 3px solid red;"><div style="font-size:3em;text-align:center; color:red">Ошибка!</div>
|
key.png
ADDED
|