> 1 <
Автор | Сообщение |
vedaviz
1 сообщений |
#6375 2012-07-29 17:28 GMT+3 часа(ов) |
Здравствуйте, вот такая есть проблема или задача.
Хочу сделать программу которая разбирает текст (аналогично переводчикам ПРОМТ) - по словам, частям речи, анализирует связи между ними (словосочетания, грамматику и т д), - и преобразует его в анимацию или графику. Я уже разместил на http://sourceforge.net/projects/vedaviz/ пробную версию - но она написана на Вижуал Бейсик, и имеет некоторые ограничения. Ведь по сути такая программа требует языка для искуственного интеллекта вроде ЛИСПа. Я нашел язык программирования newLISP с поддержкой OpenGL для Windows и MacOS - соответственно с полноценной поддеркой анимации графики (как я понимаю даже трехмерной). Что нужно сделать? Я хочу эту программу перенести с Visual Basic на newLISP или другоя ящыка программирования ИИ (думаю Пролог здесь не очень подойдет хотя я не знаю точно) в Вижуал Бейсик схема выглядит просто. 1 открываю файл в формате RichText (rtf). Для этого создаю окно открытия файла (OpenFile Dialog) 2 Файл открываю в окне для текста - в RichTextBox 3 потом самое сложное для текста. Слова и текст нужно разбирать аналогично ПРОМТ или подобным переводчикам текстов для этого нужен словарь - пусть английский русский и хавтит. Можно небольшой для начала. там нужно просто указывать части речи и виды связей между словами согласно числу времени роду и прочим граматическим категориям. думаю что подобные программы даже бесплатные есть на ЛИСПе - они мне были бы полезны для моей более интересной программы. 4 далее, программа каждому слову должны сопоставить картинку. Например так как это делается в программе widgit http://drupal.widgit-online.com/node/add/pagesymbolbody идея проста - найти картинки в том же интернет и добавить их в "базу картинок" - ImageList. Потом эти картинки загружаются в ListView, а подписаны они по "тегам" (это может быть имя файла даже без расширения, если нет спец знаков в слове). Алгоритм простой - нужно поочередно программно считывать слово за словом, и проверять, нет ли такого слова в базе картинок-тегов. Если слово найдено в базе картинок и одновременно оно есть в считываемом тексте в rtf-файле (в элементе управления RichTextBox) - слову сопоставляется картинка. Это также можно сделать по разному в разных тезнологиях графики. простейший вариант - это список картинок вроде ListView (картинки открываются с ImageList по тэегам или по индексам-номерам картинок). 5 далее, программа считывает слово за словом, и находит словосочетания, связи между ними. Есть программа - называется spinnaker story machine - она имеет очень маленькую базу слов и картинок + анимаций этих картинок и возможность перемещения картинок (картинки то есть предметы или существа - люди животны и т д - ходят, прыгают, бегают и т д) в соответствии с правилами английского языка. Однако такая программа несколько ограниченна - только простые конструкции предложений. Но тем не менее если сравнить ее с комп играми нашего времени то можно сделать подобное - но в современной графике - в том же опенДжЛ или в лругих технологиях движках графики. вобщем можно еще долго об этом писать... кто что подскажет и поможет перенести программу на ЛИСП? я остановился сейчас на лиспе - ведь он по идее может все, даже то что не умеют другие языки программирования. |
|
> 1 <