Rozpoznawanie filmu po klatce obrazu

0

Cześć, czy ktoś ma pomysł jak rozpoznać jakiś popularny film po klatce obrazu. Na przykład mam plik z jakimś filmem co jest ogólnie dostępny a nie prywatny - ale plik powiedzmy XLDJSLDFLK - czyli bez tytułu. Czy jest jakiś sposób na to, aby znaleźć jego tytuł po obrazie?

W danych pliku nie ma informacji żadnych co do tytułu ani twórcy.

Może ma ktoś pomysł na to jak próbować znaleźć tytułu.

Przykład: macie jakiś urywek filmowy z Terminatora i pliku z nienanizaną nazwą. I teraz właśnie szukanie po tym urywku co jest w filmie jego nazwy - ktoś ma na to pomysł?

1

A chcesz szukać jednorazowo czy zbudować jakiś rozwiązanie masowe? Jednorazowo -> wrzucasz na FB do grupy tematycznej ("filmy lata 80-te.../ 90-te...") i jest szansa, że ktoś rozpozna.

0

Samemu nie mam Facebooka. Myślałem też o takim rozwiązaniu, aby zrobić zrzut ekranu z filmu i szukać w sieci przez Bing do rozpoznawania podobnych obrazów. Jeszcze nie próbowałem - ale wiem że te narzędzia działają słabo i skojarzają podobne a często zupełnie inne.

Takiego sposobu pewnie bym wykorzystywał raz co jakiś czas - pewnie z 2 razy na miesiąc. Czasami ktoś s firmie używa do prezentacji i innych elementów już gotowych przez kogoś scen. Wolę to sprawdzić czy nie narusza to czyiś praw i ktoś nie zarżnął czegoś gotowego od kogoś innego dostępnego w sieci.

0

Poszukaj artykułów naukowych o fingerprintingu obrazów i filmów. To są te same algosy których np. FB używa żeby wykrywać ucinanie głow przez terrorystów czy inne zoofilie.
Powinny być dostępne za darmo.

Jedyne co będzie trzeba zrobić to wygnerować sobie bazę fingerprintów dla zadanej klasy filmów np. klasyków PRLu - to będzie bardzo trudne choćby z racji tego że trzeba pobrać i przetworzyć >10k filmów, największy fanatyk filmowy tyle nie ma - ale może są dostępne jakieś darmowe DB.

Inna opcja: szukał bym usługi chmurowej która już to robi. Są usługi co rozpoznają piosenki, wystarczy zanucić lub zagwizdać.
https://movies.meta.stackexchange.com/questions/4129/how-can-i-find-the-title-of-a-movie-from-just-a-description-or-image
https://tineye.com/

Można się też bawić w sieci neuronowe, ale to będzie dużo więcej kosztować niż fingerprinting - który jedank bardzo kompresuje (film | na-czarno-biały | tylko-krawędzie | transformata-matematyczna-na-krzywe | licz-hash).

0

Hmm, właśnie widzę w wyobraźni te rozwiązanie, ale nikt jeszcze tego nie zrobił jest to 1 mln warty projekt.
Dla dźwięków wyliczasz fingerprint muzyki czasem z kilku fingerprintów się składają i wyszukujesz je potem w bazie danych, a bazę danych się robi wszystkie dla wszystkich tych dźwięków wyliczając fingerprint.

Obraz będzie ciężej, dla dźwięków jest ciężko, da się każdy zakodować w wielowymiarowym vektorze embedded i później znaleźć najbliższy vektor używając np. nearest negihtboor algorytmu.
Ale też by było trzeba przetworzyć wszystkie obrazy jakie istnieją w internecie, każdy film itp.
To nie jest proste i chyba nikt tego nigdy nie zrobił.
Sam facebook banuje za próby scrapowania danych.

W dźwiękach masz window, a w obrazach masz klatkę.
Przy sygnałach masz też szerokość pasma, co na polski czasem jest tłumaczone jako przepustowość, ale znaczy w przetwarzaniu sygnałów zupełnie coś innego.

0

Ja się na tym nie znam. Ale jak robi to opensubtitle - on nie ma nazwy pliku ale ma jakieś dane pliku i powiązuje napisy nawet jak nazwy plików się nie zgadzają po porównuje coś w danym pliu różne rzeczy.

Dla mnie na mój poziom wiedzy niski w takich tematach - to wszystko jest zbyt komplikowane. Chyba spróbuje tym pomysłem ze klatką ale to też nie da pewnie rezultatu - bo ta klatka jest inna niż już ta za 10 sek.

To do muzyki i jej rozpoznawania jest już od chyba 10 lat znane. Lub jeszcze dalej. Ale co do filmów faktycznie nie ma takiego narzędzia, pewnie kto je zrobi może zgarnie fortunę.

0

Inna opcja: szukał bym usługi chmurowej która już to robi. Są usługi co rozpoznają piosenki, wystarczy zanucić lub zagwizdać.
https://movies.meta.stackexchange.com/questions/4129/how-can-i-find-the-title-of-a-movie-from-just-a-description-or-image
https://tineye.com/

To i tak już "wyższa szkoła jazdy" i bardziej złożony problem.

Bardziej znane aplikacje rozpoznające muzykę, czyli Shazam i SoundHound nie wiem, jak działają, ale wymiękają nawet na koncercie, bootlegu, czy mało znanym remiksie, więc gwizdania, śpiewania tym bardziej nie rozpoznają.

Nie wiem, jakie mają algorytmy, ale często zdarza się, że Shazam podaje zupełnie inny utwór niż ten, które go faktycznie słyszy. Ale z drugiej strony, programista "zapomniał" o jednej bardzo istotnej sprawie: Aplikacja rejestruje dźwięk, a potem dopasowuje do nagrań z bazy, na pewno można wyrazić liczbowo stopień podobieństwa nagrania do danego utworu. Nie rozumiem, co to za problem podać np. trzy najbardziej pasujące utwory do danego "shazamowania" (taką nazwą autorzy Shazam określają czynność polegającą na nasłuchiwaniu nagrania w celu ustalenia, jakie to nagranie) wraz z podanym stopniem dopasowania. Mając stopień dopasowania, można też stwierdzić, czy aplikacja prawdopodobnie dobrze rozpoznała, czy dała jakiś przypadkowy utwór, który jest tylko trochę podobny do rozpoznanego dźwięku.

Z powyższego "zapominalstwa" programisty, ja dla pewności shazamuje to samo nagranie co najmniej dwa razy, oczekując, że apka poda dwa razy to samo. Nie shazamuję rozbiegówki, która w wielu nagraniach może brzmieć podobnie.

1

Jednorazowo to wrzuć w Gugiel cały obraz -> znajdź podobne. Względnie jak jest tam coś charakterystycznego np. aktor na tle auta wytnij ten charakterystyczny kawałek i powtórz proces.

1

To jeszcze taki luźny pomysł... Zakładając, że jest to jakiś film, który ma tytuł na filmwebie /imdb/innej bazie filmowej.
a) w filmie wyszukujemy część klatek "napisy końcowe/początkowe" -> ocr z obrazków -> mamy ileś tam tekstów (Starring, music, może nawet tytuł ...)
b) robimy lookup w bazie aktorów po znalezionych tekstach -> lista aktorów
c) robimy lookup w bazie filmów po aktorze -> aktor + film
d) robimy lookup w bazie filmów po tytule
e) robimy część wspólną po (aktor,film) -> lista filmów
f) robimy przecięcie po tytule + lista filmów

Problemy do rozwiązania są troszkę inne (nie znaczy że dużo łatwiejsze) niż te dotyczące scrapowania wszystkich filmów z internetu.

edycja:
Ta część dotyczy Na przykład mam plik z jakimś filmem co jest ogólnie dostępny z inicjalnego posta.

0

Dzięki koledzy, wiele ciekawych pomysłów, może faktycznie coś z tego zadziała. Spróbuję w każdym razie. Jeszcze raz dziękuję Wam za pomoc.

0

Wrzuć na wykop, albo reddit to zaraz Ci znajdą

1 użytkowników online, w tym zalogowanych: 0, gości: 1