powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Поиск на фотографии изображения картины
47 сообщений из 47, показаны все 2 страниц
Поиск на фотографии изображения картины
    #37140626
Sergio Zhizhenko
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем привет!
Нарисовалась интересная задача, помогите, плиз, советом.
Даны:
1. Изображения/сканы картин хорошего качества (не очень много, скажем порядка 5-10)
2. Дана фотография выставочной стены с картинами под произвольным ракурсом (так, что возможны геометрические искажения, но картина хорошо различима).
Нужно понять какие картины (из имеющихся в БД) изображены на фотографии.
Подскажите в какую сторону копнуть поиском для решения подобной проблемы? Возможно этот тип задач имеет какое-то название?
...
Рейтинг: 0 / 0
Поиск на фотографии изображения картины
    #37140634
__Avenger__
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sergio Zhizhenko,

Нейронные сети?
...
Рейтинг: 0 / 0
Поиск на фотографии изображения картины
    #37140643
Sergio Zhizhenko
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
__Avenger__,

Во-первых нейронные сети требуют обучения, а база картин предполагается постоянно пополняемой/изменяемой, а оператора нужно исключить.
Во-вторых "кормить" нейронным сетям целиком фотку стены с картинами не выглядит эффективным подходом. Они хорошо работают на задачах, где можно четко ограничить критериями кол-во и качество входов и четко понять цели выходов. На этой задаче я почти уверен, что нейронные - плохой пример их использования. 100% есть намного более эффективные способы. Даже перебор (искажаем картинку всевозможными способами, "двигаем" по всей фотке, пытаясь найти наиболее близкое совпадение) будет наверно более приемлем. Только неохота велосипед изобретать, и наверняка есть еще более продуманные и оптимизированные решения.
...
Рейтинг: 0 / 0
Поиск на фотографии изображения картины
    #37140670
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sergio ZhizhenkoДаже перебор (искажаем картинку всевозможными способами, "двигаем" по всей фотке, пытаясь найти наиболее близкое совпадение) будет наверно более приемлем.
В теории - неокогнитрон способен устанавливать идентичность двух картин. С учётом линейных преобразований. Но хватит ли у тебя терпения разробраться в предметной области? Может быть и кодить не надо. Почитать доки по мат-лабу или поискать коммерческие библиотеки где подобное реализовано (частные случаи - распознавание автомобильных номеров и т.п).

Твоя нелепая затея с "двиганием и искажением картинки всевозможными способами" имеет недостатки. Большое число степеней свободы подбора и сложность сравнения (скалярное произведение) убьют напрочь производительность. Можешь сразу заказывать железо стоимостью соизмеримой с годовым бюджетом государства. Увидишь как обрадуется заказчик

Успехов.
...
Рейтинг: 0 / 0
Поиск на фотографии изображения картины
    #37140689
rt123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sergio Zhizhenko,

да не слушай ты никого.
Разбей обе картинки прямоугольной сеткой на штук 50-100 частей.
Для каждой ячейки найди суммарную яркость по всем пикселям.
Получишь два массива чисел, а[50] & b[50] - для обеих картин.
Нормализуй. В Экселе найдешь КОРРеляцию между двумя наборами.
...
Рейтинг: 0 / 0
Поиск на фотографии изображения картины
    #37140829
Sergio Zhizhenko, можешь скинуть архив содержащий несколько штук "изображений/сканов картин хорошего качества" и "фотографий выставочной стены с картинами под произвольным ракурсом"?
...
Рейтинг: 0 / 0
Поиск на фотографии изображения картины
    #37141003
Sergio Zhizhenko
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Поле "автор",

Вот пример оригинальной более качественной фотографии картины: http://lzhizhenko.com/Img/Thumbs/Wildflowers.jpg (там присутствует засвет небольшой, но эта ситуация приближенная к реальности, и раму наверно можно убрать).
Вот эту же картину сфотографировал на стене мобильником: http://lzhizhenko.com/demo/photo.jpg

Другие картины за примеры можно взять тут http://lzhizhenko.com/
...
Рейтинг: 0 / 0
Поиск на фотографии изображения картины
    #37141036
ShSerge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sergio Zhizhenko,

А как насчёт двумерного преобразования фурье? Во-первых, эта штука позволит развернуть картинку нужным образом (для этого крестик максимумов использовать), а дальше поэкспериментировать со сравнением спектров. Ведь картинка с мелкими деталями фонит совершенно по другому, чем с крупными. Короче, поэкспериментировать с этим делом. В интернете дофига прямых и обратных онлайн-преобразователей.
...
Рейтинг: 0 / 0
Поиск на фотографии изображения картины
    #37141504
Фотография Aklin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
задача стандартная - поиск изображений. много на эту тему англоязычных размышлений...
...
Рейтинг: 0 / 0
Поиск на фотографии изображения картины
    #37141516
Фотография Aklin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Aklinзадача стандартная - поиск изображений. много на эту тему англоязычных размышлений...

из простейших:
1) сделать все чб
2) уменьшить разрешение фото и картинки до десятков пикселей
3) сделать вместо картинки "перепад высот" - т.е. вместо цветов делать только границы между однотонками
...
Рейтинг: 0 / 0
Поиск на фотографии изображения картины
    #37141715
Sergio Zhizhenko
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Все, что вы говорите ясно. Но я не понимаю самый важный момент: как проигнорировать перспективные искажения?
Вот перефразирую и обобщу задачу: на фотографии в сложном окружении где-то есть картина, подверженная перспективным искажениям как по горизонтали, так и по вертикали. По образцу картины требуется ответить на вопрос: присутствует ли она на этом фото.
...
Рейтинг: 0 / 0
Поиск на фотографии изображения картины
    #37142094
rt123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Для начала надо определиться с определением "это одна и та же картина".
Картина Шишкина в подлиннике и "она же", намалеванная на конфетной обертке - это "одна и та же картина"?
Не надо ставить телегу впереди лошади и начинать искать непонятно что.

Я выдвинул определение 0-приближения:
есть 2 прямоугольные области;
разбиваем их прямыми по вертикали и по горизонтали на одинаковое число частей и соблюдая пропорцию разбиения;
потом подсчитываем суммарные светимости (или цетовые гаммы и т.д.) по каждой клетке каждой картины;
и т.д.

Если картину повесят на стену вверх ногами, то по моему определению это будут разные картины (если это не квадрат Малевича).
Ну а что тут поделаешь? Вот такое у меня мое определение "одинаковости".
...
Рейтинг: 0 / 0
Поиск на фотографии изображения картины
    #37142105
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sergio ZhizhenkoВот перефразирую и обобщу задачу:
Проблема, собственно, в сложном окружении. Я бы подумал на тему "прежде всего найти углы картины"; надеюсь, в постановке картину можно считать прямоугольной. А если картины в рамах - так это просто здорово, поскольку (с поправкой на освещение) надо искать замкнутый относительно прямоугольный контур относительно известного цвета.
...
Рейтинг: 0 / 0
Поиск на фотографии изображения картины
    #37142116
Sergio Zhizhenko
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
rt123,
Сравнение содержимого картин, когда у нас имеются 2 прямоугольные области, никакой сложности не представляет. Для данной задачи случай "вверх ногами" я не рассматриваю, т.е. повороты картины совсем небольшие конечно могут случаться, но тут я думаю ими можно пренебречь.
Сложность я уже описал в чем: ваш подход не сработает на примерах, которые я выкладывал парой сообщений ранее...
...
Рейтинг: 0 / 0
Поиск на фотографии изображения картины
    #37142125
Sergio Zhizhenko
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
softwarer,

Вот! Искать углы картины на фото это очень здравая мысль, у меня тоже идеи вокруг этого крутятся. Их было бы очень легко найти, избавившись хоть немного от искажений геометрии. Может быть как-то основываясь на контрастных прямых пытаться восстановить перспективу... хотя бы немного "подправить".
Попробую поискать что там нам говорят про распознавание автомобильных номеров или знаков =)
...
Рейтинг: 0 / 0
Поиск на фотографии изображения картины
    #37142185
rt123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sergio Zhizhenko,

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



...
Рейтинг: 0 / 0
Поиск на фотографии изображения картины
    #37142249
ShSerge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я решал задачу насчёт искажений и поворотов, когда мобильником пытался читать штрихкода.
Вот здесь как раз очень хорошо помогает двумерное преобразование Фурье. Получаю параметры искажений (для линейных искажений), а потом стандартным образом трансформирую исходную картинку.
Нелинейные искажения не корректировал.
...
Рейтинг: 0 / 0
Поиск на фотографии изображения картины
    #37142334
Sergio Zhizhenko
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
rt123,
Слушай, ты прикалываешься что-ли?
Я уже 5 раз написал "На фотографии в сложном окружении где-то есть картина, подверженная перспективным искажениям как по горизонтали, так и по вертикали. По образцу картины требуется ответить на вопрос: присутствует ли она на этом фото.".
Где здесь задача вырезать? Нужно просто ответить на вопрос есть картина на фотке или нет! А вырезать - это один из способов решения.
...
Рейтинг: 0 / 0
Поиск на фотографии изображения картины
    #37142383
rt123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sergio Zhizhenko,

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

0, полный.
...
Рейтинг: 0 / 0
Поиск на фотографии изображения картины
    #37142946
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Aklinиз простейших:
1) сделать все чб

Нет. Так нельзя делать. Устранение цветовой информации может быть использовано при
сжатии или упрощённой модуляции (в телевидении). Но для данной постановки
задачи в общем случае - нельзя. Распознавание должно быть цветным.

Но на основе градиента по Value (Brightness) можно выбрать более удобное начальное
приближение. Например - отделить контуры картины от стен. Думаю что для 99.99%
случаев фотоснимков с мобилки можно чётко оконтуривать прямоугольные объекты
под линейным преобразованием. По сути начальное приближение - это поиск
контуров четырёхугольника.
...
Рейтинг: 0 / 0
Поиск на фотографии изображения картины
    #37142956
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sergio Zhizhenko, ты зря сердишся. Парень дело говорит. Вырезание картины - это уже на 50% решённая
твоя задача. Осталось только взять этот четырёхугольник по контурам, трансформировать его в
прямоугольник (это уже решённая задача) и проверить варианты совпадения с оригиналом
для четырёх разворотов на 90 градусов и нескольких зеркальных отражений (если картина была
сфоткана телефоном в зеркале). Близость картин можно оценивать через скалярное произведение
соотв. компонент пикселов.
...
Рейтинг: 0 / 0
Поиск на фотографии изображения картины
    #37143067
Фотография Гордый Корень
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonAklinиз простейших:
1) сделать все чб

Нет. Так нельзя делать. Устранение цветовой информации может быть использовано при
сжатии или упрощённой модуляции (в телевидении). Но для данной постановки
задачи в общем случае - нельзя. Распознавание должно быть цветным.
я не заставляю тебя вообще чб смотреть, я говорю, что на начальном этапе с чб проще отмести ненужное...
...
Рейтинг: 0 / 0
Поиск на фотографии изображения картины
    #37144423
rt123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я вырезал картину со стены и взял оригинал.
Сравнил по своей методе (сделал немного хитрее).
Никаких трансформаций и поправок на искажения перспективы не делал.
Сравнил как они есть.
Каждая картинка описывается 4-мя колонками из 10 чисел, последняя -- это светимость.
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
-----------------------------
  R       G       B       L  
-----------------------------
0.007   0.009   0.009   0.008    №1 - оригинал;
0.030   0.034   0.038   0.033
0.049   0.053   0.055   0.051
0.066   0.070   0.073   0.069
0.089   0.094   0.098   0.092
0.115   0.118   0.125   0.117
0.139   0.132   0.136   0.135
0.169   0.166   0.170   0.167
0.158   0.150   0.132   0.152
0.178   0.176   0.164   0.176
-----------------------------
0.006   0.007   0.006   0.006    №2 - со стены;
0.029   0.033   0.035   0.032
0.044   0.046   0.048   0.046
0.055   0.054   0.054   0.054
0.084   0.082   0.081   0.082
0.113   0.106   0.107   0.108
0.147   0.141   0.141   0.143
0.142   0.135   0.132   0.137
0.137   0.132   0.126   0.133
0.244   0.264   0.271   0.258
-----------------------------

вот не знаю, но глядя на цифры, навскидку можно приписать 90% одинаковости
...
Рейтинг: 0 / 0
Поиск на фотографии изображения картины
    #37144463
rt123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
мдя... что-то не то, кажется. Внизу "Озеро" Левитана, вверху - букет цветов
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
0.007   0.009   0.009   0.008
0.030   0.034   0.038   0.033
0.049   0.053   0.055   0.051
0.066   0.070   0.073   0.069
0.089   0.094   0.098   0.092
0.115   0.118   0.125   0.117
0.139   0.132   0.136   0.135
0.169   0.166   0.170   0.167
0.158   0.150   0.132   0.152
0.178   0.176   0.164   0.176

0.012   0.010   0.008   0.010
0.032   0.030   0.028   0.030
0.054   0.051   0.050   0.052
0.083   0.077   0.069   0.078
0.101   0.097   0.094   0.098
0.122   0.118   0.115   0.119
0.131   0.133   0.137   0.133
0.140   0.145   0.150   0.144
0.153   0.159   0.163   0.158
0.173   0.181   0.187   0.179
...
Рейтинг: 0 / 0
Поиск на фотографии изображения картины
    #37145532
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Это неинтересно. Вот если-бы твой софт проанализировав тысячи картин
установил что Лиза Джоконда является парнем по имени Джан Джакомо
Капротти - тогда я почтительно сниму шляпу. Респектуха и уваж!
...
Рейтинг: 0 / 0
Поиск на фотографии изображения картины
    #37145574
rt123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я придумал сверхоригинальный подход и сейчас у меня вот такие цифры:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
    R        G        B        L
 1629556  1251186   921550  1326740   <- букет-оригинал
 1617031  1238925   912793  1314799
 1630686  1249095   921879  1325888
 1633172  1253575   923413  1329436
 1643962  1257300   925790  1335119
 1626530  1245828   916729  1322140
 1637864  1251510   919197  1329146
 1619670  1241335   917611  1317552
 1612231  1238169   913049  1312949
 1628652  1248160   917876  1324274

 1607292  1380716  1263402  1435088   <- букет на стене
 1603404  1377660  1260936  1431850
 1606433  1381555  1263591  1435345
 1619800  1392317  1274272  1446877
 1632703  1402501  1281711  1457561
 1610772  1386971  1269235  1440465
 1615484  1389153  1271219  1443381
 1603876  1379402  1260796  1432998
 1613289  1390015  1272648  1443394
 1617485  1392113  1272004  1445806

 2025737  2251694  2263046  2185426   <- Озеро Левитана
 2021972  2256204  2278308  2188688
 2027480  2262543  2282110  2194489
 2016937  2254165  2275124  2185623
 2035914  2276642  2301930  2207547
 2024833  2255805  2271340  2188515
 2032582  2271205  2296838  2202778
 2006648  2240544  2263526  2173229
 2013423  2245962  2263955  2178484
 2029259  2261795  2280769  2194429


Сейчас Озеро явно не похоже на первые две фишки;


авторВот если-бы твой софт проанализировав тысячи картин
установил что Лиза Джоконда является парнем по имени Джан Джакомо
Капротти
Это надо обращаться к ДимеО
...
Рейтинг: 0 / 0
Поиск на фотографии изображения картины
    #37145598
Algol36
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Sergio Zhizhenko,

SURF
...
Рейтинг: 0 / 0
Поиск на фотографии изображения картины
    #37145614
rt123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник




Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
     R        G        B        L
------------------------------------
 1679763  1993163  2399007  1945722
 1675308  1997120  2413338  1948347
 1690705  2011605  2432598  1963649
 1691570  2005571  2415153  1958377
 1695215  2017067  2439871  1969032
 1682230  2000561  2411095  1952180
 1693691  2015141  2435404  1966937
 1676791  1989885  2394441  1942389
 1676802  1993550  2407431  1946024
 1696727  2009512  2416239  1962356

 1677493  1988624  2391872  1941566
 1676269  1996314  2412638  1948081
 1694900  2015484  2434909  1967443
 1689592  2002910  2412810  1955956
 1697531  2018483  2440255  1970600
 1684465  2000801  2412344  1953132
 1696161  2016621  2435996  1968612
 1671691  1983906  2388369  1936662
 1670777  1987508  2402060  1940064
 1692810  2004959  2411925  1958020
------------------------------------

Это мои цифры для этих двух пикчеров
...
Рейтинг: 0 / 0
Поиск на фотографии изображения картины
    #37145675
rt123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
С нормализацией по светимостям (опорный - 1й пикчер):

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
    R        G        B   
---------------------------
 1679763  1993163  2399007    <- Небоскребы;
 1675308  1997120  2413338
 1690705  2011605  2432598
 1691570  2005571  2415153
 1695215  2017067  2439871
 1682230  2000561  2411095
 1693691  2015141  2435404
 1676791  1989885  2394441
 1676802  1993550  2407431
 1696727  2009512  2416239

 1681084  1992881  2396992    <- Небоскребы (с рябью от Фотошопа);
 1676497  1996586  2412966
 1691630  2011596  2430212
 1691682  2005388  2415795
 1696180  2016877  2438313
 1683644  1999826  2411168
 1694718  2014905  2433923
 1676634  1989772  2395431
 1675910  1993614  2409439
 1696558  2009398  2417265

 1803547  2004721  2014828    <- "Озеро" Левитана;
 1799937  2008448  2028125
 1814207  2024543  2042052
 1807229  2019792  2038572
 1815943  2030662  2053218
 1806174  2012204  2026061
 1814962  2028037  2050926
 1793502  2002554  2023094
 1798576  2006302  2022375
 1814653  2022597  2039564
---------------------------
...
Рейтинг: 0 / 0
Поиск на фотографии изображения картины
    #37145678
rt123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Отклонения относительно 1-го пикчера:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
    R        G        B   
---------------------------
       0        0        0
       0        0        0
       0        0        0
       0        0        0
       0        0        0
       0        0        0
       0        0        0
       0        0        0
       0        0        0
       0        0        0

    1321     -281    -2014
    1189     -533     -371
     925       -8    -2385
     112     -182      642
     965     -189    -1557
    1414     -734       73
    1027     -235    -1480
    -156     -112      990
    -891       64     2008
    -168     -113     1026

  123784    11558  -384178
  124629    11328  -385212
  123502    12938  -390545
  115659    14221  -376580
  120728    13595  -386652
  123944    11643  -385033
  121271    12896  -384477
  116711    12669  -371346
  121774    12752  -385055
  117926    13085  -376674


Левитан явно "что-то не то"
...
Рейтинг: 0 / 0
Поиск на фотографии изображения картины
    #37146065
Автор:
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
rt123, а если отказаться от RGB в пользу HSV и делать основной упор на сравнении H? Потому что не все каналы одинаково полезны.

PS. Кто-нибудь может вылоижить архив картин/фотографий одним файлом на какой-нибудь mediafire? У меня авторский сайт не грузится.
...
Рейтинг: 0 / 0
Поиск на фотографии изображения картины
    #37147795
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
H (Hue) не очень информативен. Одна и та-же картина при разных репродукциях (на старой плёнке)
в журналах, книгах, при разных освещениях одна и та-же картина даст очень
сильный разброс. Лучше начинать идентификацию по яркости V (value (brightness)).
...
Рейтинг: 0 / 0
Поиск на фотографии изображения картины
    #37147796
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rt123,

сделай фильтр "инверсия" и посмотри что получится из твоего сравнения.

Кст. глазом негатив так-же корректно распознаётся.
...
Рейтинг: 0 / 0
Поиск на фотографии изображения картины
    #37148039
rt123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я уже по-другому сделал (немного по-другому; каркас идеи тот же самый).

Вот у нас в базе есть N штук картин/фоток/неважно. Нам приносят вот такую картину, вырезанную со стены:



Это миниатюра. Весь пикчер тут: http://savepic.net/613083.jpg

Я шуршу по своей базе из 6 пикчеров вот таким питон-скриптом:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
/*
тут функция fe(file_name):
*/

z = fe('11.jpg')                ----- это картина "со стены";
z1 = fe('1.jpg')                -------- а это ее "оригинал";  остальные 5 картинок взяты наобум;
z2 = fe('ozero.jpg')
z3 = fe('ss2.jpg')
z4 = fe('p.jpg')
z5 = fe('ss3.jpg')
z6 = fe('g2.jpg')

a1 =  0 
a2 =  0 
a3 =  0 
a4 =  0 
a5 =  0 
a6 =  0 

for i in range( 10 ):
    for j in range( 4 ):
        a1 += abs(z1[i][j] - z[i][j])
        a2 += abs(z2[i][j] - z[i][j])
        a3 += abs(z3[i][j] - z[i][j])
        a4 += abs(z4[i][j] - z[i][j])
        a5 += abs(z5[i][j] - z[i][j])
        a6 += abs(z6[i][j] - z[i][j])

print a1 *  100 . 0  / ( 300  *  300 )
print a2 *  100 . 0  / ( 300  *  300 )
print a3 *  100 . 0  / ( 300  *  300 )
print a4 *  100 . 0  / ( 300  *  300 )
print a5 *  100 . 0  / ( 300  *  300 )
print a6 *  100 . 0  / ( 300  *  300 )


Печатаю 6 девиаций/отклонений/называйте_это_как_угодно, в условных %% "схожести":

Код: plaintext
1.
2.
3.
4.
5.
6.
 62 . 8844444444 
 197 . 828888889 
 163 . 068888889 
 184 . 56 
 162 . 6 
 140 . 055555556 

Казалось бы: 63% - это многовато для позитивной реакции, но цимус в том, что оригинал очень резко выделится из общей массы .
Сам этот факт существования пика среди чисел решает всё. Или должен насторожить проверяющую систему.
...
Рейтинг: 0 / 0
Поиск на фотографии изображения картины
    #37148044
rt123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PS
Для двух картинок с небоскребами (вверху страницы)
процент их несхожести и по тем же самым "формулам" равен ~2%.
Поэтому для них нечего обсуждать.
...
Рейтинг: 0 / 0
Поиск на фотографии изображения картины
    #37148045
rt123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PPS
авторПечатаю 6 девиаций/отклонений/называйте_это_как_угодно, в условных %% "схожести":
Правильнее " НЕ схожести"
...
Рейтинг: 0 / 0
Поиск на фотографии изображения картины
    #37148067
rt123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
И вот ви знаете...
такое чуйство, что если картинки разные, то их несхожесть всегда (и существенно) больше 100%.
Даже не знаю как вручную подобрать 2 картинки, разных по сути, но с взаимным отклонением < 100%.

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
z = fe('ss2.jpg')         -- небоскребы;
z1 = fe('ss22.jpg')       -- небоскребы с рябью;
z2 = fe('11.jpg')
z3 = fe('ss4.jpg')
z4 = fe('p.jpg')
z5 = fe('ss3.jpg')
z6 = fe('g2.jpg')

 2 . 16666666667      -- а это их несхожесть; как видно очень маленькая;
 163 . 068888889      -- с остальными картинками первый пикчер вообще несхож;
 168 . 904444444      --
 242 . 773333333      --
 183 . 78             --
 241 . 704444444      --
...
Рейтинг: 0 / 0
Поиск на фотографии изображения картины
    #37148125
rt123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В базу для проверки "на наличие" поступили вот такие мишки в сосновом лесу:




В базе есть:





... и еще 5 левых картинок


Результат:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
 66 . 7644444444    -- терпимо; можно насторожиться; "< 100%"
 136 . 717777778    -- оригинал Шишкина и все остальные вылетают;
 135 . 502222222 
 177 . 582222222 
 134 . 277777778 
 177 . 248888889 
 121 . 604444444 

как бы там ни было, все эти мишки зверски не похожи друг на друга -- это копии с копий
...
Рейтинг: 0 / 0
Поиск на фотографии изображения картины
    #37148128
?
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
?
Гость
rt123И вот ви знаете...
такое чуйство, что если картинки разные, то их несхожесть всегда (и существенно) больше 100%.
Даже не знаю как вручную подобрать 2 картинки, разных по сути, но с взаимным отклонением < 100%.
Две фотки ("на документы") разных людей ? ;)
...
Рейтинг: 0 / 0
Поиск на фотографии изображения картины
    #37148136
rt123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Эти фотки не будут разными по сути.
Кстати, не забываем как нам трудно отличать китайца от китайца.
Я имел в виду например: натюрморт И морской пейзаж... и т.д.
...
Рейтинг: 0 / 0
Поиск на фотографии изображения картины
    #37148157
rt123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
http://sourceforge.net/search/?q=image+similarity&q=image+similarity
чёт ничего особо интересного там нет, одна белиберда или сверх-примитивная или не то
или гуёвые экзешники с перделками и с кучей опций и настроек, нах кому нужные
...
Рейтинг: 0 / 0
Поиск на фотографии изображения картины
    #37149861
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rt123,

ты используешь плохой метод. Если в z1 или z2 слегка покрутить яркость или
контраст - то при арифметической разности которую ты используешь
метод даст чудовищный "дефект" суммы. Хотя информационная идентичность
картинок при этом сохраняется. Поэтому перед сравнением я-бы предложил
следующее.

Преобразовать во float все пикселы для удобства защиты от overflow.
И вычислить скалярное произведение z1 и z2 для каждой из компонент.
Или только по Brightness.

Код: plaintext
1.
2.
3.
4.
5.
for i in range( 10 ):
    for j in range( 4 ):
        sum1 += (float)Brightness(z1[j])*(float)Brightness(z[i][j])
        sum2 += (float)Brightness(z2[i][j])*(float)Brightness(z[i][j])
        ....
[i](язык не знаю поэтому пишу псевдокод)

Если Brightness имеет отрицательные значения то надо нормировать
в диапазон от 0 и до чего-нибудь перед тем как умножать.
...
Рейтинг: 0 / 0
Поиск на фотографии изображения картины
    #37149865
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Максимальное значение Sum даст индекс идентичной картинки.
Фактически так как работает нейронная сеть Кохонена.
...
Рейтинг: 0 / 0
Поиск на фотографии изображения картины
    #37149922
rt123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton, вот тебе 4 матрицы:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
    2137     4810     7009     4044
    3350     5042     7031     2577
    3953     4422     6310     3315
    7171     4848     4387     1594
    7099     6398     3491     1012
    4963     6435     5371     1231
    6271     7049     4098      582
    6566     4893     4499     2042
    3006     4096     6205     4693
    2904     3047     8055     3994

    2100     5924     6017     3959
    1648     5345     7320     3687
    2428     7003     5826     2743
    5448     8083     3322     1147
    5884    10644     1442       30
    4264     8419     4434      883
    3581     8657     4727     1035
    2207     7054     4535     4204
    2263     4989     5937     4811
    5193     7880     4294      633

    6495     5746     2871     2888
    9239     5686     2351      724
   10212     4937     2371      480
   12562     3016     1800      622
   13270     4232      468       30
   14161     3356      454       29
   11079     5356     1443      122
    7986     4664     3114     2236
    5700     6263     3994     2043
   12852     3978      856      314

    7727     6791     3246      236
    6506     7647     2518     1329
    9938     3626     2747     1689
    9381     2293     4915     1411
    6007     3426     6635     1932
    6800     5006     4324     1870
    7082     4762     5719      437
    7180     5016     4572     1232
    8740     5661     2672      927
    9757     3338     2774     2131


Первые три -- это мишки в лесу. Четвертая - перекошенный букет в вазе (со стены).
Все числа всегда больше 0, сумма каждого ряда всегда и везде равна 18000.

Можешь показать (с цифрами), что первые три матрицы "ну очень похожи" между собой, а 4-я матрица выбивается из струи?
Только лучше абстрагироваться от понятия картинок. И все числа в матрицах считать черными ящиками с непонятно каким смыслом.
...
Рейтинг: 0 / 0
Поиск на фотографии изображения картины
    #37150092
rt123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Новое поступление: Roses - Abbott Handerson Thayer




В нашей базе есть копия этих роз (автора копии я не знаю):




Проверяем (сравниваем картину [0] с картинами [1 - 7]):
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
z[ 0 ] = fe('roses0.jpg')      -- оригинал;
z[ 1 ] = fe('roses1.jpg')      -- копия;
z[ 2 ] = fe('333m.jpg')
z[ 3 ] = fe('11.jpg')
z[ 4 ] = fe('p.jpg')
z[ 5 ] = fe('ss3.jpg')
z[ 6 ] = fe('333.jpg')
z[ 7 ] = fe('ozero.jpg')


 90 . 7377777778         -- и наименьшее отклонение у "копии" и даже "< 100%";
 215 . 451111111 
 179 . 075555556 
 191 . 562222222 
 144 . 38 
 177 . 751111111 
 120 . 257777778 
...
Рейтинг: 0 / 0
Поиск на фотографии изображения картины
    #37150728
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rt123Можешь показать (с цифрами), что первые три матрицы "ну очень похожи" между собой, а 4-я матрица выбивается из струи?
Только лучше абстрагироваться от понятия картинок. И все числа в матрицах считать черными ящиками с непонятно каким смыслом.
Нет. Не могу. Когда мы используем цифры, то нельзя оперировать такими категориями
как "похожесть". Математика не терпит такого отношения к объекту изучения.
Можно посчитать среднее квадратическое отклонение и прочие
центральные моменты высоких порядков. Можно оценить шумы в децибеллах при разности.
Можно использовать различные расстояния (Декартово, Хэмминга) как в
правилах сравнения векторов. И в результате, сравнивая скалярную величину
сказать что "это больше" а "это меньше".

С картинками - другое дело. Я могу сказать что букет на одной репродукции
похож на другой и даже с почти 100% вероятностью сказать что это одна
картина.
...
Рейтинг: 0 / 0
Поиск на фотографии изображения картины
    #37151654
Фотография AndreTM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rt123И вот ви знаете...
такое чуйство, что если картинки разные, то их несхожесть всегда (и существенно) больше 100%.
Даже не знаю как вручную подобрать 2 картинки, разных по сути, но с взаимным отклонением < 100%. А не пробовал сравнивать:
Картинка 1
Картинка 2
...
Рейтинг: 0 / 0
47 сообщений из 47, показаны все 2 страниц
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Поиск на фотографии изображения картины
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]