![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Форумчанин
Регистрация: 10.02.2021
Сообщений: 685
|
![]()
Какой самый оптимальный метод сравнения изображений?
Задача такая: Есть два изображения. При этом низ одного дублирует верх другого. То есть, если небольшой "перехлест". И вот нужно найти количество строк этого перехлеста |
![]() |
![]() |
![]() |
#2 |
Высокая репутация
СуперМодератор
Регистрация: 27.07.2008
Сообщений: 15,849
|
![]()
Покажите на примере, что надо сделать.
E-Mail: arigato.freelance@gmail.com
|
![]() |
![]() |
![]() |
#3 |
Форумчанин
Регистрация: 10.02.2021
Сообщений: 685
|
![]()
Пример... Ну допустим такой: вы сделали скриншот переписки в телеграме. Потом пролистали переписку вниз и сделали еще один скриншот. Так что получился небольшой перехлест
И теперь надо склеить эти 2 скриншота в один |
![]() |
![]() |
![]() |
#4 |
Лис
Старожил
Регистрация: 18.09.2015
Сообщений: 2,409
|
![]()
Сжимаем изображение в 32 раза. *) Заменяем цвета из 24 бит в 8 бит.
Затем применяем быстрый алгоритм поиска длины наибольшей подпоследовательности. См линк: http://algolist.ru/search/lcs/simple_lcs.php И из этой матрицы отбираем наибольшую длину с края. Если не нашли подрезаем наше изображение на 4 линий и повторяем. И так 32/4=8 раз. *) Для учета вращения после сжатия надо сделать перебор с небольшими отклонениями. Далее вырезаем перекрывающиеся участки. выделяем углы и ищим матрицу перехода. Путем метода наименьших квадратов. Либо по тому туторилу что я довел в соседней теме. https://disk.yandex.ru/i/Xir2HjHwJAds9A Либо как приведено в статье. https://disk.yandex.ru/i/4G0JJRAFeiNnVQ Но это так с ходу придумал. А вообще советую поискать алгоритм склеивания изображения и создания панорамных снимков.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
У дзен программиста программа делает то что он хотел, а не то что он написал . |
![]() |
![]() |
![]() |
#5 |
Лис
Старожил
Регистрация: 18.09.2015
Сообщений: 2,409
|
![]()
Для скриншотов алгоритм можно упростить.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
У дзен программиста программа делает то что он хотел, а не то что он написал . |
![]() |
![]() |
![]() |
#6 |
Лис
Старожил
Регистрация: 18.09.2015
Сообщений: 2,409
|
![]()
Для скриншотов просто цикл по строчка и по столбцам из второго цикла break при первом различие. Будет почти линейный алгоритм.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
У дзен программиста программа делает то что он хотел, а не то что он написал . |
![]() |
![]() |
![]() |
#7 | |
Высокая репутация
СуперМодератор
Регистрация: 27.07.2008
Сообщений: 15,849
|
![]() Цитата:
Код:
E-Mail: arigato.freelance@gmail.com
|
|
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Сравнение изображений. | stlcrash | Общие вопросы Delphi | 66 | 02.06.2016 13:37 |
Сравнение изображений. C# | Serg94 | Помощь студентам | 1 | 27.11.2012 19:43 |
Сравнение 2 изображений | wlords | Помощь студентам | 0 | 23.11.2010 20:47 |
Сравнение изображений | AmbaQ | Общие вопросы Delphi | 1 | 07.08.2010 19:20 |
Сравнение изображений | DeDoK | Общие вопросы Delphi | 1 | 11.10.2008 21:16 |