TinEye, Google i inne oferują "wyszukiwanie odwróconego obrazu" - możesz przesłać zdjęcie, aw ciągu kilku sekund znajdzie podobne zdjęcia.Algorytm wyszukiwania wizualnie podobnych zdjęć z bazy danych?
Czy istnieje otwarta wersja tych algorytmów?
wiem o „SIFT” i innych algorytmów znajdowania „wizualnie” Zdjęcia podobne, ale działają one tylko do porównywania jedno zdjęcie bezpośrednio do drugiego. tj. znalezienie podobnych zdjęć do danego zdjęcia jest operacją O(n)
, w celu znalezienia wszystkich podobnych wizualnie zdjęć będzie to O(n^2)
- oba z nich są zaporowo powolne.
Potrzebuję deskryptora operacji, który można indeksować za pomocą [relacyjnej] bazy danych, aby zmniejszyć zestaw wyników do czegoś łatwiejszego w zarządzaniu.
"Podobieństwo wizualne" mam na myśli bardzo podobną do. tj. zdjęcie lekko podbarwione/przebarwione w programie Photoshop, lekko przycięte lub przeskalowane, zdjęcia zrobione w krótkich odstępach czasu od tej samej sceny lub obrócone lub obrócone obrazy.
Czy przyjrzałeś się Liniowej Analizie Dyskryminacyjnej (LDA)/Głównej Analizy Składowej (PCA)? Jeśli dobrze pamiętam, byli w pewnym momencie wykorzystywani do przetwarzania obrazu/rozpoznawania twarzy i czegokolwiek.Ich mocna strona polega właśnie na zredukowaniu opisu funkcji do czegoś łatwiejszego w zarządzaniu :) w tym przypadku pixel info –
@Arthur: W tej chwili implementuję "PODPIS NA OBRAZ DLA JAKIEGOKOLWIEK OBRAZU", przyjrzę się temu jeden następny, jeśli ten nie zostanie wyrzucony. Dzięki :-) Rozpoznawanie twarzy nie jest mi potrzebne. – mpen
Zbudowałem mechanizm podobieństwa obrazów kilka lat temu. Z pewnością można przechowywać funkcje w relacyjnych bazach danych, ale moim zaleceniem byłoby rozważenie użycia odwróconego indeksu jako silnika zapytań. Daje to o rząd wielkości większą szybkość i elastyczność, jeśli chodzi o dostarczanie danych. –