myślę zajmie trochę wyjaśniając, więc proszę nosić ze mną ...Jak grupować obrazy według "zdjęć seryjnych?"
I schwytany 2000 + obrazy w sub-sekundowych seriach 4-6 naraz. Wszyscy zostali porzuceni w tym samym miejscu, więc muszę je posortować. Muszę je sortować według serii, ale dane EXIF oferują tylko jednominutową rozdzielczość. Wybuchy powinny być prawie dokładnie tym samym, a różne wybuchy mają być znacząco różne.
Muszę przyjrzeć się każdemu obrazowi, porównać go z następnym i sprawdzić, czy jest podobny. Jeśli jest zbyt różny, musi pochodzić z innej serii, musi przejść do nowego folderu, wraz z dowolnym z poniższych obrazów, które są do niego podobne i tak dalej.
Moja myśl polega na dodaniu bezwzględnej wartości różnicy między każdym pikselem bieżącego obrazu, a następnym. Gdy suma ta osiągnie próg, musi to oznaczać, że pochodzą one z różnych serii (mogę wykonać pewne testy, aby ustalić, jaki jest dobry próg).
Największym problemem jest jak? Czy PIL/Pillow obsługuje coś takiego? Czy istnieje lepszy sposób sprawdzenia, czy jeden obraz jest "w większości" taki sam jak inny?
Jestem bardziej zainteresowany sortowaniem ich szybciej niż za pomocą jakiejś konkretnej techniki, więc inne podejścia są mile widziane.
... a to właściwie musi być Python.
EDIT: Oto parę przykładowych zdjęć, które powinny oboje w tym samym folderze:
Są dwa obrazy z poniższej serii, i powinny iść w innym folderze:
Jaka jest rozdzielczość na znacznikach czasu w danych EXIF? O wiele prostszym sposobem może być identyfikacja zdjęć zrobionych jako seria w oparciu o niewielką różnicę w sygnaturach czasowych. Metoda podobieństwa wizualnego powinna osiągnąć podobny rezultat, nieprawdaż? Rozdzielczość czasu zależy od aparatu. – jozzas
Porównanie datowników to za mało? Najprawdopodobniej najłatwiej byłoby sprawdzić, czy zdjęcia zostały zrobione w niewielkiej odległości od siebie, niż faktycznie porównać same zdjęcia. – erdekhayser
Tak, ten konkretny aparat oferuje jedną rozdzielczość MINUTE :-(Masz rację, to byłaby o wiele lepsza opcja ...gdybym miał dane. – Matt