Czy format obrazu (png, jpg, gif) wpływa na to, jak trenowana jest sieć neuronowa rozpoznawania obrazu?

23

Wiem, że wprowadzono wiele postępów w zakresie rozpoznawania obrazów, klasyfikacji obrazów itp. Z głębokimi, splotowymi sieciami neuronowymi.

Ale jeśli trenuję sieć na przykład na obrazach PNG, czy będzie ona działać tylko dla obrazów tak zakodowanych? Jakie inne właściwości obrazu mają na to wpływ? (kanał alfa, przeplot, rozdzielczość itp.)

Felipe Almeida
źródło
2
Nie mam wystarczającego doświadczenia w statystyce obrazów, aby udzielić pewnej odpowiedzi, ale spodziewałbym się, że różne modele używają zupełnie różnych schematów do kodowania obrazów w funkcje, na niektóre z nich będzie miała wpływ kompresja stratna JPEG, kanały alfa itp. ., a niektóre z nich nie, przy czym szczegóły dotyczą konkretnego modelu. Wiem, że istnieją zarówno modele, które traktują każdy piksel jako funkcję, jak i modele, które rzeźbią obrazy w regiony i używają właściwości regionu jako funkcji.
Kodiolog,

Odpowiedzi:

20

Krótka odpowiedź brzmi NIE .

Format, w jakim obraz jest kodowany, ma związek z jego jakością. Sieci neuronowe są zasadniczo modelami matematycznymi, które wykonują wiele operacji (mnożenie macierzy, dodawanie elementów i funkcje mapowania). Sieć neuronowa widzi Tensor jako swoje wejście (tj. Tablicę wielowymiarową). Jego kształt to zwykle 4-D (liczba obrazów na partię, wysokość obrazu, szerokość obrazu, liczba kanałów).

Różne formaty obrazu (szczególnie stratne) mogą wytwarzać różne tablice wejściowe, ale ściśle mówiąc, sieci neuronowe widzą tablice na wejściu, a NIE obrazy.

Djib2011
źródło
4

Chociaż odpowiedź Djib2011 jest prawidłowa, rozumiem twoje pytanie jako bardziej skoncentrowane na tym, jak jakość / właściwości obrazu wpływają ogólnie na uczenie się sieci neuronowej. W tym temacie jest niewiele badań (afaik), ale może być więcej badań w przyszłości. Znalazłem tylko ten artykuł na ten temat. Problem polega na tym, że jest to bardziej problem pojawiający się w praktycznych zastosowaniach, a mniej w dziedzinie badań akademickich. Pamiętam jeden aktualny podcast, w którym badacze zauważyli, że nawet aparat użyty do zrobienia zdjęcia może mieć duży efekt.

Bobipuegi
źródło
Czy możesz wskazać mi podcast?
David Ernst
Jest to jednogodzinny odcinek „gadających maszyn”, w którym rozmawiają z naukowcem praktykującym uczenie maszynowe w Afryce (od połowy do końca). Link do iTunes: itunes.apple.com/de/podcast/talking-machines/…
Bobipuegi
2

To riff na pierwszą odpowiedź z Dżibabu 2011. Krótka odpowiedź musi brzmieć „nie”. Dłuższe - po pierwsze zdjęcia są zawsze kodowane w tensor w następujący sposób. Obraz jest liczbą pikseli. Jeśli uznaje się, że zdjęcie ma m wierszy i n kolumn, każdy piksel jest określony przez położenie wiersza i kolumny, czyli przez parę (m, n). W szczególności istnieją m * n pikseli, które są bardzo duże, nawet dla „małych” zdjęć. Każdy piksel zdjęcia jest kodowany liczbą od zera do jednego (intensywność czerni), jeśli zdjęcie jest czarno-białe. Jest zakodowany za pomocą trzech liczb (intensywności RGB), jeśli zdjęcie jest kolorowe. Tak więc kończy się tensor, który jest albo 1xmxn, albo 3xmxn. Rozpoznawanie obrazu odbywa się za pośrednictwem CNN, które wykorzystując fakt, że zdjęcia nie zmieniają się tak bardzo z jednego piksela do drugiego, kompresujądane za pomocą filtrów i puli. Chodzi o to, że praca CNN polega na kompresji niewiarygodnie dużej liczby punktów danych (lub funkcji) zdjęcia na mniejszą liczbę wartości. Niezależnie od tego, od jakiego formatu zaczniesz, CNN zacznie od dalszej kompresji danych zdjęcia. Stąd per se niezależność od wielkości przedstawienia zdjęcia.
Jednak CNN będzie wymagać, aby wszystkie obrazy, które są przez niego przepuszczane, były tego samego rozmiaru. Istnieje więc zależność, która zmieni się w zależności od sposobu zapisania obrazu. Ponadto, o ile różne formaty plików o tym samym rozmiarze generują różne wartości dla swoich tensorów, nie można używać tego samego modelu CNN do identyfikowania zdjęć przechowywanych różnymi metodami.

meh
źródło