Как сравнить две картинки?

Есть бумажный документ, который со временем заполняется, его нужно периодически сканировать и отправлять нам.
Необходимо найти предыдущий скан в БД и заменить его на новый.
Формат простой - таблица, первый столбец - ф.и.о. от руки, первая строка - дата и время. все остальное - отметки

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

При гуглинге нашел перцептивный хеш. Однако не уверен что он достаточно хорошо сможет справиться с задачей.
Собственно подскажите в какую сторону копать что бы найти предыдущую версию скана?
м.б. кто сталкивался с похожей задачей?
  • Вопрос задан
  • 1083 просмотра
Пригласить эксперта
Ответы на вопрос 3
ThunderCat
@ThunderCat Куратор тега PHP
{PHP, MySql, HTML, JS, CSS} developer
Это просто волшебно, то есть есть люди, считающие что если они отсканируют 2 раза 1 лист, то получат 2 совпадающих изображения... Хм, интересно...

Изображения будут сильно разными, вы сканируете лист, потом на нем пишут/пляшут/пьют кофе, снова пихают в сканер, но уже под другим углом, сканируют и сравнивают... Да просто отсканил - вытащил - вложил будет серьезно отличаться. Функция которая будет все это РАСПОЗНАВАТЬ и при этом лопатить все картинки котрые там есть - это явно какой-то аццкий ад.

Неужели не проще каждому документу завести в базе/файле запись с id, именем документа, именем файла, датой и комментариями, и нормально все это хранить???
Ответ написан
@vshvydky
глянь https://www.npmjs.com/package/jimp
есть метод diff, можно кропать изображения, а вообще бумажка с галочками от руки, это жесть....
Ответ написан
dom1n1k
@dom1n1k
Перцептивный хэш точно не годится - он больше пригоден для фотографий и т.п., чем для форм, заполненных закорючками.

Но вообще говоря, постановка задачи непонятна. Нужно сравнить просто по принципу равно/не равно? Или понять что именно изменилось? И почему нельзя искать сканы тупо по имени файла и дате (которую тоже можно включить в имя)?
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы