GotAI.NET

Форум: Проблемы искусственного интеллекта

 

Регистрация | Вход

 Все темы | Новая тема Стр.2 (24)<< < Пред. | След. > >>   Поиск:  
 Автор Тема: На: Конкуренция
Эгг
Сообщений: 8750
На: Конкуренция
Добавлено: 06 авг 09 1:56
что за странная манера стесняться авторства собственных слов...
авторство должно быть у всего... мы - язычники - привыкли жить в гордости за себя, свои дела и свои слова...
[Ответ][Цитата]
Андрей
Сообщений: 3307
На: Конкуренция
Добавлено: 06 авг 09 21:48
Продуктом взаимного непротивления сторон стало следующее техническое задание:

1. Исходное изображение в графическом формате (например, jpeg), которое представляет собой страницу рукописного текста.
2. Язык - строго русский. Запрещено использование любых символов (цифр, например), кроме букв русского алфавита (заглавных и прописных) и основных знаков препинания ( . , : - ! ? )
3. Почерк - условно разборчивый, критерий - свободно читается 5 случайно выбранными людьми.
4. Почерки могут быть разными, нет специального обучения почерку и начертанию букв, но в качестве инициализирующего базового задания задаётся некая конкретная страница рукописного текста обязательная для распознавания.
5. Технические детали:
- Разрешение изображения любое, но символ занимет в высоту не менее 24 пикселов.
- Направление написания/чтения слов и предложений - слева направо, строк - сверху вниз (но само изображение может быть произвольно повёрнуто (или искажено другим образом)).
- Между строками должно быть ненулевое расстояние (строки не должны налезать друг на друга).
- Буквы могут быть как печатными, так и прописными; написанными слитно и/или раздельно.
- Расстояние между цветом букв и цветом фона в пространстве RGB должно составлять не менее 20 единиц.
6. Требования к грамматике - нет, могут быть ошибки.
7. Можно пользоваться любым словарём для исправления любых ошибок.
8. Выход - плэйн текст на русском языке.
9. Скорость, качество, удобность интерфейса и т.п. - критерии при выставлении оценки системе.

По данному ТЗ любому желающему необходимо написать работающую программу и продемонстрировать её работоспособность. Пока кроме меня и Egg'a желания, почему-то, никто не изъявляет... А жаль. Бояться тут нечего, приглашаются все!
Кто программу не напишет - ничего страшного не случится, кроме вечного позора
[Ответ][Цитата]
Что-то разумное, типа чувака
Сообщений: 297
На: Конкуренция
Добавлено: 07 авг 09 1:33
очень хороший внятный список, браво...

Цитата:
По данному ТЗ любому желающему необходимо написать работающую программу и продемонстрировать её работоспособность.


Вы понимаете разницу между профлудить и дать четкие указания?
Видимо, нет.
Вы ставите слишком общую задачу, за которую любой вменяемый программист не возьмется..
Андрей, а почему бы вам не написать программу по вашей схеме? Какие проблемы?, не знаете языков программирования? (есть хорошие книжки по этой теме, проблема решаема), или может аристократическая кровь не позволяет?, тогда упс.... я видно не по теме.
[Ответ][Цитата]
Андрей
Сообщений: 3307
На: Конкуренция
Добавлено: 07 авг 09 1:43
Вы наверное чего-то недопоняли. Я пишу свою программу, Egg - свою. Вы можете писать свою или помогать, например, мне или Egg'у. Общее только ТЗ. Если на Ваш взгляд в ТЗ есть изъяны - прошу ткнуть пальцем.
[Ответ][Цитата]
Эгг
Сообщений: 8750
На: Конкуренция
Добавлено: 07 авг 09 1:51
Буду защищать наше ТЗ...
конечно, это не ТЗ, особенно, если по ГОСТу смотреть...
но бить-то будут не по госту...
описание должно быть достаточным для того, чтобы начать думать
и, возможно, что-то делать...
этого описания достаточно...
если в процессе работы возникнут вопросы, мы всегда можем обсудить их
на этой или другой площадке...
вот у нас с NO есть пара конструктивных идей:
1) считать длину слова и смотреть словарь
2) делать акцент на первой и последней букве...
[Ответ][Цитата]
Admin-Admiral
Сообщений: 80
На: Конкуренция
Добавлено: 07 авг 09 2:06
Андрей, как вписывается в ваше ТЗ специальная засылка Олега (NO) на Мембрану дабы создавать непереносимый флуд, коробящий обоняние Анжелоподобного Славы? А предiдущий проплаченный терроро-флуд его-же (NO) в пользу Айкома ==> занял 2 года - 5-6 дней/неделю 2-3 поста\день... Нет ли тут какой-то грязи и крапленных карт у вашего подзащитного наперстачника (not NO)? Не реализуется ли группой актива нового форума (NO & etc..) с самоговорящим названием - идеология ==> пройти по трупам?
[Ответ][Цитата]
Что-то разумное, типа чувака
Сообщений: 297
На: Конкуренция
Добавлено: 07 авг 09 5:37
Цитата:
Автор: Андрей

Вы наверное чего-то недопоняли. Я пишу свою программу, Egg - свою. Вы можете писать свою или помогать, например, мне или Egg'у. Общее только ТЗ. Если на Ваш взгляд в ТЗ есть изъяны - прошу ткнуть пальцем.


Андрей, извиняюсь, беру свои слова обратно..
Делайте свою программу, удачи! Критики нет, пока нет.
[Ответ][Цитата]
Андрей
Сообщений: 3307
На: Конкуренция
Добавлено: 07 авг 09 10:56
Цитата:
Автор: Egg
пара конструктивных идей:
1) считать длину слова и смотреть словарь
2) делать акцент на первой и последней букве
Это хорошие идеи, но их применение (но не только их), имхо, должно производится в более широком контексте, чем только для распознавания слов. Эти идеи должны восприниматься как идеи распознавания вообще т.е. для всех элементов текста - текста, строк, слов, букв, частей букв. Они должны быть элементами единого рекуррентного алгоритма, который детализирует распознавание от общего (более крупного) к частному (более мелкому):

Данный текст -
Е
Е
Е
рекуррентен
Е
Е
Е
в нем 13 букв Е


И тогда в понятие "словарь" войдёт и алфавит (символы), и даже более частные инварианты (линии, дуги).
[Ответ][Цитата]
Андрей
Сообщений: 3307
На: Конкуренция
Добавлено: 14 авг 09 0:36
Собственно, первый макет. Про распознавание речи пока нет, речь есть о подготовке изображения для построения пространства признаков для дальнейшей удобной кластеризации.

В основу моего подхода и данного макета положена идея движения.
Человеческое зрение не различает статических предметов. Этот факт проще всего проверить лёжа на диване и глядя на полутоновые тени от люстры на потолке. Если уставиться на любую точку потолка и не двигать глазами в течении секунд десяти - все тени (даже очень контрастные) исчезают - остаётся белый однородный потолок. Стоит чуть двинуть глазом как все тени сразу проявляются.

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

Из всего сказанного я предположил, что распознавать динамические буквы, в частности, выделять в них полезные признаки, может быть легче и эффективнее, чем статические. Ведь в конце концов, движущаяся буква должна координировать движения того, кто на неё смотрит.
Как именно мозг в деталях "двигает буквы" я не знаю, поэтому выдвигаю гипотезы и ставлю эксперименты.

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

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

3. Задать для точек разные силы притяжения или отталкивания, чтобы она сама разлеталась без ударов об стену (навеяно книгой Хокинга про чёрные дыры). По полученным более-менее однородным группам выясняем, что это было.

Для проверки третьей гипотезы и был построен данный макет. (Планирую проверять и выкладывать остальные по мере готовности)
Кнопкой "Open picture" вызываем диалог открытия изображения (программа "понимает" форматы BMP и JPEG). В архив положено несколько тестовых букв.
Изображение открывается в "пространстве" окна с отрисованной тенью. Открытое изображение можно перемещать мышкой - интерфейс настраивает пользователя на раздумия о пространстве и движении
Кнопкой "Do it" запускается вычислительный процесс, состоящий из таких шагов:
1. Вычисляется средний цвет изображения.
2. Ищется количество точек, которые расположены "выше" и "ниже" среднего цвета.
3. Те точки, которых больше - полагаем точками фона и окрашиваем их в белый цвет, остальные - в чёрный.
4. Каждая чёрная точка - это элементарная целостная однородность изображения буквы. У каждой точки есть свойство - она притягивается к другим точкам с силой в зависимости от расстояния в Эвклидовом пространстве (принцип как у гравитации, но с другим коэффициентом). От стенок - упругое соударение.

Выводы. В данной модели буквы трансформируются в области повышенной плотности. Например, для буквы А (вне зависимости от ориентации, размера, шумов, написания), замечено формирование (в максимальном "разлёте") трёх областей повышенной плотности. Для букв Б и В - четырёх, которые легко обнаруживаются алгоритмически.

Быстро обрабатывать большие изображения на медленных компьютерах программа пока не может. Избавиться от этого планирую в ближайшее время.

Основной целью макета является иллюстрация возможности применения физических моделей для перевода неудобных признаков букв в более удобные.
Данная модель предназначена для раздумий, коментариев, критики по поводу метода, а не для формирования каких-либо окончательных оценок.
[Ответ][Цитата]
Павел Фоменко
Сообщений: 1077
На: Конкуренция
Добавлено: 14 авг 09 9:13
Подход жутко оригинальный! Даже такого не ожидал, Андрей
То есть, я так понимаю, что силы притяжения/отталкивания между точками целой буквы (не распылённой) вы принимаете уравновешенными? Или просто считаете для каждой точки некое значение силы действующее на неё со стороны других точек? Или считаете вектор этой силы?
Просто судя по п.4. вычислительного процесса - силы притяжения есть между ВСЕМИ точками. Почему тогда наблюдается формирование отдельных областей, а не стягивание всех точек "в кучу"? Или всё таки отталкивание есть?

И самый главный вопрос: зачем вам понадобилось ламать букву на запчасти, чтобы узнать важные соотношения между точками буквы? Нельзя ли эти соотношения посчитать по другому?

Жду ответов!
[Ответ][Цитата]
3d6
Сообщений: 325
На: Конкуренция
Добавлено: 14 авг 09 9:35
Подход к распознаванию категорически правильный. ИМХО, только так и можно получить наилучшие результаты. Правда, я уже давно ломаю голову, как же именно выделять элементы
Препроцессинг - одним им не обойтись, но как одна из составляющих - довольно интересно.
[Ответ][Цитата]
Павел Фоменко
Сообщений: 1077
На: Конкуренция
Добавлено: 14 авг 09 9:46
P.S. Андрей, у меня есть сильное подозрение, что только притяжением и отталкиванием низачто не получить распределения частиц, похожие на символы. Всё таки закон притяжения/отталкивания завязан на 1/R^2, а не на направления...
Требую объяснений!
[Ответ][Цитата]
Павел Фоменко
Сообщений: 1077
На: Конкуренция
Добавлено: 14 авг 09 9:51
Цитата:
Автор: Admin-Admiral

Андрей, как вписывается в ваше ТЗ специальная засылка Олега (NO) на Мембрану...

Вписывается как чья-то паранойя.
[Ответ][Цитата]
Андрей
Сообщений: 3307
На: Конкуренция
Добавлено: 14 авг 09 10:44
Цитата:
Автор: Павел Фоменко
судя по п.4. вычислительного процесса - силы притяжения есть между ВСЕМИ точками
Совершенно верно, похоже на гравитационное взаимодействие.

Цитата:
Автор: Павел Фоменко
Нельзя ли эти соотношения посчитать по другому?
В привычном пространстве признаков "расстояния" между буквами сравнительно маленькие, поэтому при шумах и искажениях их легко спутать. Поэтому я ищу способ, который позволит разнести буквы в пространстве признаков на надёжно различимые расстояния. Если у Вас есть соображения как "считать по другому" - прошу, топик создан для целей обсуждения разных методов.

Цитата:
Автор: Павел Фоменко
у меня есть сильное подозрение, что только притяжением и отталкиванием низачто не получить распределения частиц, похожие на символы
1. Цель не в том, чтобы они стали похожи на что-то привычное, цель в том, чтобы буквы трансформировались в такой алфавит признаков, который позволит очень легко проводить гиперплоскости в таком пространстве и надёжно отличать одни трансформировавшиеся буквы от других.
2. Притяжение даёт более интересные результаты, чем отталкивание. Впрочем, их комбинация может быть интересной.
3. Между точками нет более никакого взаимодействия кроме притяжения, т.е. они проходят свозь друг друга беспрепятственно. Поэтому они и пролетают точку баланса.
4. Гравитацию здесь можно рассматривать только в качестве аналогии. Моей целью не было смоделировать притяжение между точками так, как если бы они были телами с привычной нам массой. Взаимодействия здесь можно задавать самые фантастические т.к. цель - получить удобное пространство признаков.
[Ответ][Цитата]
Slava
Сообщений: 3070
На: Конкуренция
Добавлено: 14 авг 09 18:15
Андрей 14 авг 09 0:36
[...В основу моего подхода и данного макета положена идея движения...]

Скажите, пож, а старые идеи меитода потенциалов и, в частности, распознавания изображений после их расфокусировки имеют ли к этому отношение, или мне это только показалось?
[Ответ][Цитата]
 Стр.2 (24)1  [2]  3  4  5  6  ...  24<< < Пред. | След. > >>