Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > Алгоритмы > Создание рукописного текста |
Автор: THandle 1.6.2011, 16:38 |
Всем привет! Имеется такая задача. Есть пользователь программы. Он предоставляет ей сканы/фото/рисунки своего почерка - всех строчных и заглавных букв алфавита. Есть какой-то текст(просто текст, в который входят буквы и какие то символы, которые скорее всего для всех общие). Нужно этот печатный текст перевести в рукописный по заданному почерку, то есть фактически программно написать что-то вручную. Нужно добиться хотя бы более менее человеческого результата(идеальность не требуется пока, в принципе). Я никак не могу сообразить, как можно рассчитать связки между буквами. То есть как буквы будут соединяться друг с другом. По идее в языке есть правила правописания таких соединений, но как программно это реализовать наилучшим и оптимальным образом я что-то пока не придумал. Я так понимаю, нужны все возможные связки каждой буквы с каждой. Но заставлять пользователя предоставлять их нереально, так как их количество весьма велико(для каждой буквы, грубо говоря, 32 связи с буквами такого же регистра, и 33 с другими). Вот, собственно вопрос в том, никто не может дать совет как это осуществить наименее затратным и адекватным способом? Спасибо. |
Автор: DarkProg 1.6.2011, 19:46 |
В принципе существует такая вещь как статистика, по ней можно определить какие связки букв встречаются наиболее часто их и попросить у пользователя, остальные просто подставлять как есть... Как известно люди по природе не могут сильно ровно писать, потому я бы взял сгенерировал бы некоторую кривую относительно которой буквы будут плясать и их бы лепил в соответствии с текстом, ещё кстати нужна примерная длина пробелов... Ну вот что-то такое пришло на ум... |
Автор: Sartorius 1.6.2011, 20:05 |
Пользователь может отмечать точку начала написания буквы и конечную точку. (Если писать на тачскрине, это можно автоматом сделать) Их можно сплайном каким-нибудь соединять, что б пореалистичней было |
Автор: Earnest 3.6.2011, 07:01 |
Вообще-то типов связок ограниченное число: вспомни первый класс, а лучше найди прописи да посмотри. Насколько помню, тип связки определяется первой буквой (т.е. ее хвостом). Так что "каноническую" рукопись наверняка построить не так сложно. Идея Sartoriusа представляется правильной: нужно хранить с какого штриха буква начинается и каким заканчивается, и связывать их. Другое дело насчет связи с реальностью: мало кто так пишет, особенно сейчас, когда воообще писать разучились... |