![]() |
C# Сравнение двух картинок
Здравствуйте, нужен совет.
Я делаю скриншот получаю картинку, делаю второй скриншот и нужно узнать какая была разница с первым и вторым скриншотом. Решение 1. По пикселям – долгий вариант. 2. По байтам – проблема, поскольку файлы всегда разные по размеру. Возможно решение поставить фиксированный размер на скриншот. :confused: |
Что если поделить картинку на зоны, скажем на 4. Потом сравнивать каждую зону с каждой, если они разные, поделить зону ещё раз и сравнить каждую часть.
|
scrat а как сравнивать? По пиксельно долго ...
|
погугли ещё по запросу «image diff», может найдёшь какую библиотеку.
|
Цитата:
|
scrat, какое это даст приемущество перед проверкой целой картинки? 1 = 4/4
|
Цитата:
Например: Если по пиксельное, то я узнаю какие пиксели разные потом изменяю их в первой картинке и получаю копию второй. |
Цитата:
|
для чего сравнивать надо? просто узнать о наличии различий(тогда можно обходить попиксельно но с изменяемым шагом до первой разницы, например проверяем каждый сотый пиксел, если совпали, то сдвигаем на один пиксель и заново проходим, и так 100 раз для проверки всей картинки. на худой конец никто не отменял многоядерность, плюс на хабре была тема про медленность попиксельной обработки
http://habrahabr.ru/blogs/net/92016/ http://habrahabr.ru/blogs/net/60085/ Если же обработка пикселов с разными значениями чтобы выравнять картинки - только попиксельный проход. |
Цитата:
|
| Время: 02:28 |