Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Сравнение картинок 
:(
    Опции темы
ksnk
Дата 31.5.2010, 20:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прохожий
****


Профиль
Группа: Комодератор
Сообщений: 6855
Регистрация: 13.4.2007
Где: СПб

Репутация: 7
Всего: 386



Брать среднее значение яркости - плохая идея, так как любое преобразование форматов может увеличить или уменьшить яркость на небольшую величину. что обязательно скажется и на среднем значении. Выбирать CRC32 еще более страшная идея, которая даст нам возможность обнаружить только абсолютно одинаковые картинки, а нам нужны и небольшие модификации.
Если нет желания почитать в гугле насчет умных и работоспособных алгоритмов сравнения картинок. можно фантазировать дальше  smile 

К примеру, преобразовать картинку к черно-белому изображению(или работать с RGB картинками как с 3-мя разными изображениями). посчитать распределение яркости, нормировать яркость, сделав самый яркий цвет - белым, самый темный - черным.  все значения яркости округлить в соответствии с сеткой (8, 16, 32 и т.д оттенка серого, по возможностям) И заменить соответствующие точки на изображении новым значением яркости. Затем "оконтурить рамкой" получившеся изображение, так чтобы "за рамкой" остался ровный фон и работать уже с вырезкой. Нормировать ее до небольшого размера. получится эталонный слепок. - это и будем называть "кэш'ем изображения". Есть мнение, что одно и то-же изображение даже после не очень сложного редактирования будет иметь одинаковый кеш.

Вот примерный комплект идей, которыми, вероятно, пользуются многоие алгоритмы сравнения.


--------------------
Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! user posted image
PM MAIL WWW Skype   Вверх
esperanto
Дата 31.5.2010, 20:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 194
Регистрация: 31.5.2003

Репутация: 2
Всего: 4



Цитата(ksnk @ 31.5.2010,  20:17)
Брать среднее значение яркости - плохая идея, так как любое преобразование форматов может увеличить или уменьшить яркость на небольшую величину.  

Во-первых,

Если проэцировать пространство в пространство размерности один, то среднее это лучшая оценка.

Во-вторых, кто сказал что для среднего надо брать точно равенства, а не отклонение на эпсилон.

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

в 4х, среднее имеет свойство линейности.

есть и другие плюсы.
--------------------
B.Sc ->M.Sc.->Microsoft SDE-> (Ph.D. student + Intel SDE + psyсhology B.A) - > Skype SDET
PM MAIL   Вверх
Antimol
  Дата 2.6.2010, 14:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 118
Регистрация: 28.7.2007
Где: Украина, Киев

Репутация: нет
Всего: 4



Есть системы для идентификации личности по сетчатке глаза, так там берется не все изображение сетчатки, а только некую часть. И вероятность ошибки практически нулевая. Можно "покопать" в эту сторону 
--------------------
Лучшее спасибо это "+" к репутации.   Мой блог: ИНФОРМАТИЗАЦИЯ, и mirsovetov.net. Написание программ, исправление ошибок, статьи....
PM MAIL WWW ICQ   Вверх
ZakharAV
Дата 10.6.2010, 14:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 39
Регистрация: 4.10.2009

Репутация: нет
Всего: нет



Вся задачка четко ложится в проблему различения образов (вариант задачи - обнаружение и различение сигналов). Методов несколько. Необходимо еще определить, с какой надежностью надо различать один объект от другого.  Количество критериев различения, соответственно, пропорционально, методам обработки.  Рискну посоветовать  из самых "прозрачных" по своей сути - на основе вычисления собственных векторов (и собственных чисел) корреляционной матрицы изображения или SVD-сжатия.  Подробнее - Д.Канахер, К.Моулер, С.Нэш - Численные методы и программное обеспечение. М, "Мир", 1988. 
И SVD - разложение, и вычисление собственных векторов/чисел и корреляционных матриц  есть в Matlab, можно взять оттуда.

PM MAIL   Вверх
dereyly
Дата 10.6.2010, 14:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 217
Регистрация: 16.6.2006

Репутация: 1
Всего: 4



По моему тут уже предлагали считать не один элемент, а набор признаков (элементов). 
Вот предлагаю список подходов:
1. Геометрические моменты (~7 эл)
2. Псевдо моменты Цернике (12-30 эл)
3. Считать энергию* после свертки с окном собеля (т.е дифференциальное представление) (1 эл)
4. Энергия фильтров габора (или произвольного базиса фильтров) (~40 эл)
*Под словом энергия подразумевается просто сумма нормализованная на максимальное значение среди всех изображений для данного класса.

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

Это сообщение отредактировал(а) dereyly - 10.6.2010, 14:36
PM MAIL   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Алгоритмы"

maxim1000

Форум "Алгоритмы" предназначен для обсуждения вопросов, связанных только с алгоритмами и структурами данных, без привязки к конкретному языку программирования и/или программному продукту.


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, maxim1000.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Алгоритмы | Следующая тема »


 




[ Время генерации скрипта: 0.0850 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.