![]() |
|
![]() ![]() ![]() |
|
THandle |
|
|||
![]() Хранитель Клуба ![]() Награды: 1 Профиль Группа: Админ Сообщений: 3639 Регистрация: 31.7.2007 Где: Moscow, Dubai Репутация: нет Всего: 372 |
Всем привет!
Имеется такая задача. Есть пользователь программы. Он предоставляет ей сканы/фото/рисунки своего почерка - всех строчных и заглавных букв алфавита. Есть какой-то текст(просто текст, в который входят буквы и какие то символы, которые скорее всего для всех общие). Нужно этот печатный текст перевести в рукописный по заданному почерку, то есть фактически программно написать что-то вручную. Нужно добиться хотя бы более менее человеческого результата(идеальность не требуется пока, в принципе). Я никак не могу сообразить, как можно рассчитать связки между буквами. То есть как буквы будут соединяться друг с другом. По идее в языке есть правила правописания таких соединений, но как программно это реализовать наилучшим и оптимальным образом я что-то пока не придумал. Я так понимаю, нужны все возможные связки каждой буквы с каждой. Но заставлять пользователя предоставлять их нереально, так как их количество весьма велико(для каждой буквы, грубо говоря, 32 связи с буквами такого же регистра, и 33 с другими). Вот, собственно вопрос в том, никто не может дать совет как это осуществить наименее затратным и адекватным способом? Спасибо. |
|||
|
||||
DarkProg |
|
|||
![]() Законченный романтик ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1784 Регистрация: 11.3.2009 Где: Земля Репутация: нет Всего: 19 |
В принципе существует такая вещь как статистика, по ней можно определить какие связки букв встречаются наиболее часто их и попросить у пользователя, остальные просто подставлять как есть...
Как известно люди по природе не могут сильно ровно писать, потому я бы взял сгенерировал бы некоторую кривую относительно которой буквы будут плясать и их бы лепил в соответствии с текстом, ещё кстати нужна примерная длина пробелов... Ну вот что-то такое пришло на ум... -------------------- "И твоя голова всегда в ответе за то куда сядет твой зад..." "Я студент - скажите с какого я ВУЗа..." ![]() ![]() ![]() |
|||
|
||||
Sartorius |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1568 Регистрация: 18.7.2006 Где: Ivory tower Репутация: 1 Всего: 37 |
Пользователь может отмечать точку начала написания буквы и конечную точку. (Если писать на тачскрине, это можно автоматом сделать) Их можно сплайном каким-нибудь соединять, что б пореалистичней было
|
|||
|
||||
Earnest |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5962 Регистрация: 17.6.2005 Где: Рязань Репутация: 7 Всего: 183 |
Вообще-то типов связок ограниченное число: вспомни первый класс, а лучше найди прописи да посмотри. Насколько помню, тип связки определяется первой буквой (т.е. ее хвостом). Так что "каноническую" рукопись наверняка построить не так сложно. Идея Sartoriusа представляется правильной: нужно хранить с какого штриха буква начинается и каким заканчивается, и связывать их.
Другое дело насчет связи с реальностью: мало кто так пишет, особенно сейчас, когда воообще писать разучились... -------------------- ... |
|||
|
||||
THandle |
|
|||
![]() Хранитель Клуба ![]() Награды: 1 Профиль Группа: Админ Сообщений: 3639 Регистрация: 31.7.2007 Где: Moscow, Dubai Репутация: нет Всего: 372 |
Пытаюсь сейчас сделать этот вариант. Получается кривовато пока, но уже хоть что то) Спасибо за идею! |
|||
|
||||
![]() ![]() ![]() |
Правила форума "Алгоритмы" | |
|
Форум "Алгоритмы" предназначен для обсуждения вопросов, связанных только с алгоритмами и структурами данных, без привязки к конкретному языку программирования и/или программному продукту.
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, maxim1000. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Алгоритмы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |