Понедельник, 25 Ноября 2024, 22:48

Приветствую Вас Гость

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 1
  • 1
Распознавание рисунка пользователя
TikkiДата: Воскресенье, 14 Октября 2018, 16:10 | Сообщение # 1
был не раз
Сейчас нет на сайте
Доброго времени суток камрады. Вот такая проблема, проект 2д, На сцене есть холст на котором пользователь рисует. Сначала ему показывается символ, задача юзера повторить символ максимально ближе к оригиналу..Собственно сам вопрос как реализовать сравнение нарисованного юзером с эталонным изображением? У кого есть навыки по этой части, отпишитесь пожалуйста. PS Если есть готовые ассеты посоветуйте какой нибудь

Сообщение отредактировал Tikki - Воскресенье, 14 Октября 2018, 16:42
drcrackДата: Воскресенье, 14 Октября 2018, 16:47 | Сообщение # 2
старожил
Сейчас нет на сайте
наверно есть какие-то алгоритмы, но вообще это идеальная задача для нейронной сети
martukДата: Воскресенье, 14 Октября 2018, 18:24 | Сообщение # 3
заслуженный участник
Сейчас нет на сайте
Tikki, чисто технически я бы сравнивал позиции чекпойнтов у нарисованной линии с оригиналом. Чем больше расхождений - тем больше вероятность что картинка неверна.
Нейронки тут совсем не причем.
drcrackДата: Воскресенье, 14 Октября 2018, 18:52 | Сообщение # 4
старожил
Сейчас нет на сайте
Цитата
чисто технически я бы сравнивал позиции чекпойнтов у нарисованной линии с оригиналом.

а между чекпоинтами можно как угодно кистью возить и это на оценку не повлияет? крутой подход

Цитата
Нейронки тут совсем не причем.

ну да, будущее за алгоритмическим распознаванием изображений

кстати, важный вопрос, юзер рисует растровой кистью или кривыми?


Сообщение отредактировал drcrack - Воскресенье, 14 Октября 2018, 18:54
martukДата: Воскресенье, 14 Октября 2018, 19:38 | Сообщение # 5
заслуженный участник
Сейчас нет на сайте
Цитата drcrack ()
а между чекпоинтами можно как угодно кистью возить и это на оценку не повлияет?

Повлияет. И еще раз:
Цитата martuk ()
я бы сравнивал позиции чекпойнтов у нарисованной линии с оригиналом

Пойнты есть и у оригинала и у нарисованной линии. "Курсору" вовсе не обязательно точь-в-точь проходить через пойнты примера.
Это очень дешевый подход по отношению к процессорному времени. К тому же это просто.

Цитата drcrack ()
кстати, важный вопрос, юзер рисует растровой кистью или кривыми?

+
zitДата: Воскресенье, 14 Октября 2018, 19:38 | Сообщение # 6
был не раз
Сейчас нет на сайте
Я бы сначала попробовал простые методы. Какой результат даст попиксельное сравнение? И отпадает вопрос "насколько похоже" - 90% совпало - на 90% и похоже. Если (по факту) окажется, что попиксельное медленно - можно укрупнить сетку. Т.е. показываем образец 1920*1080, а сравниваем с образцом 192*108 (ну и рисует игрок сразу на двух картинках: визуальной 1920*1080 и фиктивной 192*108).
DivESДата: Воскресенье, 14 Октября 2018, 19:52 | Сообщение # 7
заслуженный участник
Сейчас нет на сайте
Цитата martuk ()
Нейронки тут совсем не причем.

Лишь бы попытаться что-то умное ляпнуть? :)

Это как раз-таки классическая задача, решаемая при помощи нейронных сетей. При помощи того же персептрона Розенблатта, например.
(ТС, можешь загуглить на тему "персептрон Розенблатта распознавание изображений", найдёшь много полезного)
Описывать работу нс достаточно сложно и долго, тем более, когда не работаешь с ними, поэтому оставлю ссылку на Хабр, где есть ответ на твой вопрос!
TikkiДата: Понедельник, 15 Октября 2018, 10:42 | Сообщение # 8
был не раз
Сейчас нет на сайте
martuk, юзер рисует простой кистью, все очень просто в этом плане реализованно, спрайт кисти и SpriteRenderer s = Instantiate (brush) as SpriteRenderer; DivES, Спасибо очень хорошая статья) В идеале конечно реализовать через нейросеть было бы проще...голову уже сломал за эти пару дней %)
  • Страница 1 из 1
  • 1
Поиск:

Все права сохранены. GcUp.ru © 2008-2024 Рейтинг