Технолог розробив шрифт Ghost Font, який бачать люди, але не AI
Американський технолог та підприємець Ерік Лу розробив незвичайний шрифт Ghost Font, який видимий для людей та недоступний для нейромереж.
Ідея проєкту полягає в оптичній ілюзії — шифруванні тексту в анімованому відео з тисячами рухомими елементами. Крапки, з яких складаються літери, рухаються в один бік, а крапки фону — в інший.
Мозок людини здатний осягнути цей рух та скласти його в літери, тож звичайний користувач майже одразу розуміє, що написано на екрані.
Як бачать повідомлення люди
А ось AI зазвичай розбиває відео на кадри та намагається відновити зміст, аналізуючи окремі зображення. Проте, якщо анімацію зупинити, на екрані залишаються лише хаотичні крапки.
Як бачить кадри AI
Тому моделі не можуть прочитати послання, зашифровані таким чином, при цьому для них є можливість додати якийсь невірний фрагмент в якості пастки.
«Це унікальний спосіб поділитися повідомленням з іншими реальними людьми. Гадаю, технічно це не шрифт у традиційному розумінні, скоріше експеримент зі способом графічного письмового спілкування у форматі, який штучний інтелект не може легко зрозуміти»
Автор зазначає, що навіть найпотужніші моделі на кшталт Claude Fable та GPT Sol 5.6 Ultra мали труднощі з декодуванням рухомого повідомлення, доки їм не підказували точний спосіб.
За його словами, Ghost Font можна було б інтегрувати у системи CAPTCHA, наприклад. Втім Ерік Лу визнає, що хоча шрифт важко читати ШІ, його також досить важко читати й людям. Крім того, моделі стають розумнішими, тож можливо, згодом зможуть швидко розшифровувати подібні повідомлення.
До речі, за лінком можна погратися та створити коротеньке відео з власним текстом.
6 коментарів
Додати коментар Підписатись на коментаріВідписатись від коментарівМені здається таке можна вирішити і без ШІ.
Тут просто купа пікселів рухається в протилежних напрямках.
Достатньо проаналізувати декілька кадрів щоб зрозуміти вектори напрямку руху пікселів та межі де вони зникають та зіштовхуються і з цієї інформації побудувати «кордони» літер.
От якби пікселі рухалися в рандомних напрямках то це вже було складніше.
Норм ідея для капчі
Вже зробили таку каптчу. І вже заламали за пару годин
Чатгпт:
import cv2
import numpy as np
video_path = “ghost-message.mp4”
cap = cv2.VideoCapture(video_path)
frames = []
while True:
ok, frame = cap.read()
if not ok:
break
gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)
_, binary = cv2.threshold(gray, 127, 255, cv2.THRESH_BINARY)
frames.append(binary)
cap.release()
# Один вдалий сусідній набір кадрів
frame1 = frames[40]
frame2 = frames[41]
height, width = frame1.shape
# Зсуваємо другий кадр на 4 пікселі вгору
matrix = np.float32([
[1, 0, 0],
[0, 1, −4],
])
aligned = cv2.warpAffine(
frame2,
matrix,
(width, height),
flags=cv2.INTER_NEAREST,
borderValue=0,
)
difference = cv2.absdiff(frame1, aligned)
result = cv2.GaussianBlur(difference, (9, 9), 0)
cv2.imwrite("decoded.png", result)
звичайно що все можна так-чи-інакше вирішити — але то вже інше питання)