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

Вниз

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

 
Programist21   (2002-12-28 09:59) [0]

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


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

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


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

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


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

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

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



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

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


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

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


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

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


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

Открываем хэлп в топике 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.


 
Woolen   (2002-12-29 12:40) [8]

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


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

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

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



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

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

Наверх





Память: 0.46 MB
Время: 0.009 c
4-37455
Maksss
2002-11-18 03:39
2003.01.13
Создание контролов


7-37389
Дмитрий К.К.
2002-10-26 18:03
2003.01.13
Свойства обозревателя


1-37093
Smok_er
2003-01-03 00:23
2003.01.13
DockControl и его реализация


1-37161
BlackTiger
2002-12-28 14:07
2003.01.13
Странно... (создание контролов в run-time)


6-37249
pdv
2002-11-09 11:09
2003.01.13
Как отключить инет на компе (инет подключен по локалке) ?





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский