Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Сравнение картинок [D6, Win95/98, WinME, NT4, Win2k, WinXP]


Programist21 ©   (2002-12-28 09:59:00) 

Народ, как можно сравнить две картинки? Есть две картинки с одинаковым расширением. Как можно сравнить их, и в случае 50%-ного совпадания скопировать нужную картинку.
Как вообще реализовать сравнение и анализ?


Ник   (2002-12-29 17:43:00) [1]

2Woolen
> Сам ты ничего не напишешь

Вполне можно написать самому, ничего сложного в этом нет.
2Programmist21
Тебе придется серьезно окунуться в мир метов искусственного интеллекта, а надо ли тебе это? Из готовых VCL библиотек нейронных сетей имеется freeware NeuralBase на http://www.basegroup.ru.В ней есть примерчик распознавания букв сетью Хопфилда. Но все равно тебе необходимо будет дорабатывать все это хозяйство.


Woolen   (2002-12-29 12:40:00) [2]

Если хочешь сравнить две картинки одинакового размера, то можешь действительно получить из Bitmap через ScanLine строку с пикселями. Но они могут очень сильно отличаться. Ты сможешь учесть сдвиг? Ну, допустим, камера сменила положение или что там у тебя, и теперь эти элементы немного в другом месте. Передвинулись предметы в кадре и т.д. Если тебе будет достаточно просто сравнить, то можешь сравнивать пиксели (не забудь уменьшить до размера, при котором ты допускаешь погрешность, допущеную при изменении размера). Единственное, я не представляю задачи, в которой может понадобиться такая лажа. А если тебе нужно серьезное решение, обрати внимание на нейронные сети, ничего в этом фантастического нет. Сам ты ничего не напишешь. Над этим коллективы лучших умов мира бьются годами. А библиотека распознавания образов (конечно, она работает на уровне современных технологий и сейчас с распознаванием ситуация - не супер), которая написана, если не ошибаюсь, как раз с использованием программных нейронных сетей есть на сайте Intel. Не знаю, где лежит, но пару лет назад видел появление ее первой версии в пресс-релизах компании. Насколько я помню, Intel предоставила ее тогда для беспрлатного пользования, не смотря на огромный труд в нее вложенный. Поищи, авось пригодиться.


Дмитрий К.К.   (2002-12-29 08:02:00) [3]

Открываем хэлп в топике TBitmap.ScanLine

Provides indexed access to each line of pixels.

property ScanLine[Row: Integer]: Pointer;

Description

ScanLine is used only with DIBs (Device Independent Bitmaps) for image editing tools that do low-level pixel work.


Programist21   (2002-12-29 07:19:00) [4]

to Ник и Jeer Вы так говорите, что мне кажется, что это из области фантастики :) КОДА!!! Дайте КОДА! Иначе вам не верю... :)
Что такое методы искусственных нейронных сетей?
Что такое корреляция?


Jeer   (2002-12-28 17:55:00) [5]

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


Ник   (2002-12-28 16:35:00) [6]

здесь могут помочь только методы распознавания образов, например, методы искусственных нейронных сетей


Programist21   (2002-12-28 16:10:00) [7]

И при совпадении пикселов крутить счётчик, а потом посчитать сколько всего было пиксело - таким образом пересчитать в проценты - так??? А вообще котелось бы хоть немного кода!!!

to Alexander Vasjuk А нафига уменьшать??? Так же точности никакой не будет!!! :(


Alexander Vasjuk   (2002-12-28 12:47:00) [8]

Уменьш их до например 32 * 32 и... попиксельно


Дмитрий К.К.   (2002-12-28 10:08:00) [9]

Попиксельно.


Наверх

Титульная страница Поиск, карта сайта Написать письмо