[Радио 410] [ii.booru-Архив РПГ] [acomics-cf-ost] [𝕏]

[Назад]
Ответ
Leave these fields empty (spam trap):
Имя
Тема
Сообщение
Файл
Подтверждение
Перейти к [
Пароль (для удаления файлов и сообщений)
 
ЗАПРЕЩЕНО:
  • детская эротика/порнография
  • троллинг
 
  • Поддерживаются файлы типов GIF, JPG, MP4, OGV, PNG, WEBM, WEBP размером до 4096 кБ.
  • Максимальное количество бампов треда: 500.
  • Всем посетителям рекомендуется ознакомиться с FAQ.

изображение.png - (379 KB, 1315x845)  
379 KB №218038   #1

Привет, Чии. Как решаешь проблему поиска среди сохраненных картинок? У меня сложился определенный пайплайн - я сохраняю закладки в Твиттере, и раз в некоторое время синхронизирую их с помощью wfdownloader. Сейчас у меня около 17к картинок, сгруппированных по имени аккаунта автора в папки (это делает сам wfdownloader) Затем я с помощью Stable Diffusion WebUI и модели wd-swinv2-tagger-v3 создаю json-файл с тегами. На i3-1115g4 это занимает около 4 с на картинку и 12 часов на всю папку, json на выходе более 100 МБ. Deepseek написал html страницу для поиска по тегам, на которой можно сортировать картинки по вероятности тегов из поиска. Сейчас я думаю, как реализовать отсутствие повторов (одна и та же картинка может быть в других источниках - pinterest, борды). Для всех 17к картинок я создал еще один json с их перцептивными хэшами phash которые не изменяются при малых изменениях изображения. Теперь надо сделать веб-приложение, с такими функциями: сначала загружаем этот json с хэшами, затем фоткаем телефоном картинку с монитора, и с помощью нейронки выполняем ее обнаружение среди белого фона, коррекцию перспективы, и вычисляем её phash. Если такой хэш уже есть в базе, пишем об этом. (т.е. Google Lens на минималках). Проблема пока в том, что моделей конкретно для распознавания изображения с экрана я не нашел.

>> №218039   #2

>>218038

>Если такой хэш уже есть в базе, пишем об этом.

Тут есть один очень важный нюанс. Если изображения даже минимально отличаются, то и PHASH у них будет отличаться, то есть простое сравнение коэффициентов пропустит большинство похожих картинок.

На самом деле PHASH ещё лучше, чем кажется на первый взгляд. С его помощью можно сравнивать степень сходства картинок и представлять то, насколько они отличаются, в виде одного числа, где большее число означает большее отличие!

Дабы не лишать тебя радости самостоятельного открытия скину только ссылку на научную статью на эту тему: https://www.naturalspublishing.com/files/published/54515x71g3omq1.pdf

Там уже есть готовый рецепт: его надо только найти и реализовать в нужном тебе языке.

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

>> №218040   #3
изображение.png - (139 KB, 1100x905)  
139 KB

>>218039
то что phash не будет идеально совпадать у меня учтено. сравнение происходит по расстоянию Хэмминга.На пикрил, скрин с экрана с UI пинтереста не мешает распознаванию.

>> №218041   #4

>>218040
Понятно. Тобой какой-то другой перцептивный хэш используется - в вышеуказанной статье предлагается хэш, генерирующий 7 чисел на канал; в варианте ImageMagick, который я использовал при решении своей задачи, он считает их в двух цветовых моделях (по умолчанию, во всяком случае) и даёт 42 числа с плавающей запятой для трёхканального (RGB) изображения. Для сравнения в статье предлагается использовать Евклидово расстояние. Не могу сказать, насколько эти хэши сопоставимы в плане эффективности отсева, но чисто интуитивно (по аналогии с криптографическими хэшами или хэш-функциями, используемыми при реализации хэш-таблиц) вероятность нахождения ложного сходства у хэша с большей длиной должна быть ниже. Одновременно, конечно, важно ещё и как долго эти хэши считаются.

>На пикрил, скрин с экрана с UI пинтереста не мешает распознаванию.

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



Удалить сообщение []
Пароль
[d | b / bro / cu / dev / hr / l / m / mu / o / s / tran / tu / tv / vg / x | a / aa / c / fi / jp / rm / tan / to / ts / vn]
- [Радио 410] [ii.booru-Архив РПГ] [acomics-cf-ost] [𝕏] - [Архив - Каталог] [Главная]