Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Потрепаться";
Текущий архив: 2003.05.26;
Скачать: [xml.tar.bz2];

Вниз

Нейроные сети   Найти похожие ветки 

 
Andrew K   (2003-05-05 18:12) [0]

Здравствуйте!
Люди может кто-то работал в этом направлении.
Подскажите какие компоненты использовать, для построения сети для распознование фотографии с тем учетом что она черно-белая и размер ее не превышает 200*200 пикселей.


 
PVOzerski   (2003-05-05 18:22) [1]

Поищи сайт BaseGroup. Там было немало free компонентов для Delphi.


 
Mystic   (2003-05-05 19:44) [2]

Имхо, при помощи нейронной сети распознать фотографию размером 200x200 нереально. Во всяком случае за разумное время.


 
Andrew K   (2003-05-06 11:40) [3]

А почему не реально? Сеть многослойная будет, да и машинка не слабая для этого дела выделена.


 
han_malign   (2003-05-06 11:54) [4]

> Сеть многослойная буде
- сам не ковырялся, но раз на IXbt от знающих людей: наилучшая сходимость у 3-х слойных сетей, изредка сходятся 4-х слойные, высшие порядки не сходятся, из-за погрешностей вычисления...


 
Mystic   (2003-05-06 12:26) [5]

Кстати, что значит располнять фотографию.

попробуем решить задачу в "лоб"

Но даже если оценивать ее "схожесть" с оригиналом, мы получаем нейронную сеть, у которой на входе 200x200 = 40 000 сигналов. Если существует только один промежуточный слой, который содержит допустим 10 000 сигналов, и один выходной сигнал, то получаем 40 000 х 10 000 + 10 000 ~= 400 000 000 коэффициентов (x8 ~= 3 Гб памяти). Далее, сети, в которых количество нейронов в скрытом слое достигало порядка двадцати, у меня хорошо обучались примерно за 100 -:- 1 000 интераций для каждого образца. Мне кажеться, что зависимость от числа нейронов нелинейная. Плюс объем вычислений одной итерации обучения...

Кроме того, существенной особенностью неронных сетей является то обтоятельство, что они неплохо себя ведут только вблизи предоставленных им образцов. Попробуй обучить нейронную сеть для решения такой задачи, как решение системы линейных уравнений (скажем 3x3). Если входной вектор будет сильно отличаться, от тех, которые использовались в процессе обучения нейронной сети, то результат будет, "мягко скажем", от фонаря. Теперь подумай сколько образцов надо будет предоставить для обучений нейросети, чтобы более-менее покрыть задачу распознани образов для картинки 200х200?

Если ты научишь свою нейросеть отличать, скажем, белый мяч от остальных предметов, то черный мяч будет абсолютно другим объектом...

Пока видится больше препятвий (причем принципиальных), чем положительных моментов.


 
Andrew K   (2003-05-06 13:07) [6]

2 Mystic: Задача такова: Есть база снимков лиц в фас. На входе тебя фотографируют. НС должна проверить на соответствие снимок из базы со снимком с фотокамеры (Причем все фотки делают только в фас).

Но ведь не обьязательно нам нужно два снимка сравнивать по пиксельно. Можно разбить фотографию на некоторые равные части.
И уже их сравнивать с такими же частями снимков в базе, вероятность того что части будут разными заметно меньше, чем если сравнивать пиксели, да конечно я согласен что обучение будет долгим и кропотливым.

Может давай пообщаемся в привате? Тем более, что если ты уже занимался проблемой построения НС.



 
Mystic   (2003-05-06 13:24) [7]

В твоем случае:

1. Неплохо бы картинку предварительно преобразовать. (Отсечь ненужные детали, подвигать изображение влево-вправо, вверх-вниз, так как нейронная сеть это сделать не в состоянии. Т. е. получить из картинки нечто нормализированное, которое предьявить на вход нейросети.

2. Возможно обратиться в область нечеткого вывода (FIS).

3. И наверное обратиться к методам обработки изображения. (изменение гаммы, и другие эффекты могут существеноо упростить обучение).

Я бы рекомендовал вначале поставить MATLAB и посмотреть, что они там наворотили в Fuzzy Logic Toolbox, Image Processing Toolbox, Neural Network Toolbox. во всяком случае, начинать лучше не с чистого листа, а с какой-то базы, посмотрев на то, что люди в этой области уже достигли.

> Может давай пообщаемся в привате?
Мое ICQ открыто для общения...


 
vopros   (2003-05-06 13:33) [8]

Видел сайт Донецкого института какого то по ИИ, не могу найти может кто подскажет?


 
vopros   (2003-05-06 15:32) [9]

Вот решение задачи похожей:

http://www.iai.donetsk.ua/general/frameset.php3?l=r&p=r&f=/general/index.php3?d=2*l=r


 
Soft   (2003-05-06 15:46) [10]

>>40 000 х 10 000 + 10 000 ~= 400 000 000
Какой маньяк будет использовать 10000 нейронов в скрытом слое. Максимум 1000 или даже 100. При большом количестве нейронов она у вас сойдется непонятно во что.

Иногда удобно использовать не цвет а отличие(аномальность) одной зоны от остального фона. Убирается эффект черного-белого шара.


 
Mystic   (2003-05-06 16:05) [11]

> Soft © (06.05.03 15:46)

Я про то и говорил, что в общем случае натаскивать нейросеть на распознание картинки 200х200 безумие. Надо что-то с картинкой делать...


 
Kryukov Andrew   (2003-05-06 16:38) [12]

2 Mystic,Soft:
Ну хорошо давайте тогда выходить из проблемы, если уменьшить размер фотографии к 80*80. И будем считать что полученая черно-белая фотография с фотоаппарата "идеальна". Остановимся на том, что сеть не будет превышать 2-3 слоя. Тогда какие варианты будут?


 
Soft   (2003-05-06 17:31) [13]

>>Kryukov Andrew © (06.05.03 16:38)

1. Советую зайти на мой сайт и почитать книги, там даже есть мой диплом... нерабочий:)

2. Сеть 80х80 разделить на 100 сегметов это и будут нейроны скрытого слоя. Проподить к каждому сегменту связи только от близких нейронов входного слоя(посмотри мой диплом, поймешь). Тоесть от каждого нейрона скрытого слоя будет проводится не более 160 связей. каждый сниапс нейрона пусть будет не более float(single). И обучение механизмом BackPropagation.

3. Почитай про сети Кохонена, для распознавания двухмерных изображений они наиболее предназанчены.

4. Проводи с изображением W-преобразование, а потом работать уже с W-свертками.

5. Проводить двухмерную фильтрацию Фурье.

6. Создавать "скелет" лица и по кусочно-линейным отклонения(как рукописный текст) разпознавать. Метод довольно точный.

ЗЫ
Сие не намного проще создания ядерного оружия на кухне:)


 
Ru   (2003-05-06 17:57) [14]

I алгоритм распознавания изображения:
1. получить образец
2. вычислить набор признаков
3. сравнить вычисленные признаки с признаками эталона
4. вынести решение.

II получение признаков эталона:
1. получить образец признанный за эталон
2. вычислить набор признаков
3. занести в хранилище.

важным является I.3 - только в этом месте применима нейросеть и то не всегда имеет смысл.

пункт 2 - если его не осуществить грамотно, то любая другая работа напрасная трата времени.
включает в себя куча разной ХР, имеет смысл детального описания исплючительно в предустановленных условиях. Зависит:
1. местоположение
2. от другой ХР.

1. местоположение

если съемка производится на улице, то необходимо учитывать:
1. перемещения самого объекта
2. перемещение окружающих лиц
3. перемещение транспорта
4. возможны другие элементы, которые внесут нестационарность в изображение (первомай - висят флаги)
5. погодные условия

если съемка в помещении, то убираются пункты 3 и 5 (если рядом нет окон).

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

методы вычисления набора признаков

зависит от степени вашего маразма.

процедура сравнения

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

PS есть наука: "Распознавание образов"

"Щоб бути розумним не треба багато знати. Достатньо лише користуватися своїм розумом."


 
Kryukov Andrew   (2003-05-06 18:05) [15]


> Soft © (06.05.03 17:31)

Спасибо, книги почитать не помешает, тем более что куча вопросов
появилось.
Особенно касательно пунтов 4-6.
Может конкретно кним посоветуешь, литературу?

> Сие не намного проще создания ядерного оружия на кухне:)

Угу, но кто ж знал... :)



Страницы: 1 вся ветка

Форум: "Потрепаться";
Текущий архив: 2003.05.26;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.5 MB
Время: 0.007 c
3-83358
proc
2003-04-30 19:29
2003.05.26
RecNo i Filter


14-83753
Бобик
2003-05-05 21:07
2003.05.26
Полный путь и имя файла из TOpenDialog в переменную типа стринг?


1-83506
Валерий
2003-05-15 14:01
2003.05.26
Регистрация своего TAction


3-83372
Raduga
2003-05-06 10:43
2003.05.26
Недостаток физической памяти


4-83787
Jack666
2003-03-25 17:53
2003.05.26
Как определить и установить последовательность запуска сервисов?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский