Как обрабатывать обрезанные и искаженные изображения при сравнении с дискретным косинусным преобразованием? - PullRequest
0 голосов
/ 09 апреля 2020

Я использую алгоритм DCT, чтобы помочь в сравнении чрезвычайно большого (300 000 000) наборов изображений для поиска измененных / измененных размеров дубликатов. В настоящее время я обрезаю изображения до ближайшего возможного квадрата, уменьшаю его до градаций серого, затем сжимаю до карты 64x64. Это прекрасно работает для изображений с измененным размером и цветом.

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

Обнаружение этого типа обрезки или искажения пропорций и отклонение добавления изображения в коллекцию (и, таким образом, устранение необходимости сравнения DCT) - вариант, но я пока не нашел никакого решения для этого, которое не требует замысловатая настройка ML.

Один из вариантов, который я исследовал для проблемы обрезки, - это использование средних значений по региону для определения основного объекта изображения и центрирования моего ROI вокруг этого, но большая часть литературы, которую я смог найти, это также сильно перенасыщен «просто используйте CNN», что на самом деле не подходит для моего варианта использования.

Как я могу настроить свой алгоритм так, чтобы он был значительно «вне центра», и есть ли приличный быстрый (<200 мс) способ обнаружить с высокой степенью уверенности, что Соотношение сторон цифрового изображения искажено? </p>

...