Pracuję z Pythonem, scikit-learn i keras. Mam 3000 tysięcy zdjęć zegarków z przednią twarzą, takich jak: Watch_1 , Watch_2 , Watch_3 .
Chcę napisać program, który odbierze jako wejście zdjęcie prawdziwego zegarka, który może być zrobiony w mniej idealnych warunkach niż powyższe zdjęcia (inny kolor tła, ciemniejsze błyskawice itp.) I znajdę najbardziej podobne zegarki spośród 3000. Przez podobieństwo rozumiem, że jeśli podam jako zdjęcie zdjęcie okrągłego, brązowego zegarka z cienką koronką, to spodziewam się jako wyjściowych zegarków o okrągłym kształcie, ciemnego koloru i cienkiej koronki.
Jaki jest najbardziej wydajny algorytm uczenia maszynowego?
Na przykład, klikając ten link, mam na myśli dwa różne rozwiązania:
1) Używając CNN jako ekstraktora funkcji i porównaj odległości między tymi cechami dla każdej pary obrazów w odniesieniu do obrazu wejściowego.
2) Używanie dwóch CNN w syjamskiej sieci neuronowej do porównywania obrazów.
Czy te dwie opcje są najlepsze dla tego zadania, czy może zaproponowałbyś coś innego?
Czy znasz wcześniej przeszkoloną sieć neuronową (z wcześniej ustalonymi hiperparametrami) do tego zadania?
Znalazłem kilka interesujących postów na StackOverflow na ten temat, ale są one dość stare: Post_1 , Post_2 , Post_3 .