Mir ist bewusst, dass es viele Fortschritte in Bezug auf Bilderkennung, Bildklassifizierung usw. bei tiefen, faltungsbedingten neuronalen Netzen gegeben hat.
Aber wenn ich ein Netz beispielsweise mit PNG-Bildern trainiere, funktioniert dies nur für Bilder, die so codiert sind? Welche anderen Bildeigenschaften beeinflussen dies? (Alphakanal, Interlacing, Auflösung usw.?)
neural-networks
deep-learning
image-processing
Felipe Almeida
quelle
quelle
Antworten:
Die kurze Antwort lautet NEIN .
Das Format, in dem das Bild codiert wird, hat mit seiner Qualität zu tun. Neuronale Netze sind im Wesentlichen mathematische Modelle, die eine Vielzahl von Operationen ausführen (Matrixmultiplikationen, elementweise Additionen und Abbildungsfunktionen). Ein neuronales Netzwerk sieht einen Tensor als seine Eingabe (dh ein mehrdimensionales Array). Die Form ist normalerweise 4-D (Anzahl der Bilder pro Stapel, Bildhöhe, Bildbreite, Anzahl der Kanäle).
Unterschiedliche Bildformate (insbesondere verlustbehaftete) können unterschiedliche Eingabearrays erzeugen, aber streng genommen sehen neuronale Netze Arrays in ihrer Eingabe und NICHT Bilder.
quelle
Die Antwort von Djib2011 ist zwar richtig, ich verstehe Ihre Frage jedoch als stärker auf die Auswirkungen der Bildqualität / -eigenschaften auf das Erlernen neuronaler Netze im Allgemeinen fokussiert. Es gibt nur wenig Forschung zu diesem Thema (afaik), aber möglicherweise wird es in Zukunft mehr Forschung dazu geben. Ich habe nur diesen Artikel darauf gefunden. Das Problem im Moment ist, dass dies mehr ein Problem ist, das in praktischen Anwendungen auftritt, als in einem akademischen Forschungsbereich. Ich erinnere mich an einen aktuellen Podcast, in dem Forscher beobachteten, dass selbst die Kamera, mit der ein Bild aufgenommen wurde, eine große Wirkung haben kann.
quelle
Dies ist ein Riff bei der ersten Antwort von Djib2011. Die kurze Antwort muss nein sein. Länger - Erstens werden Fotos immer wie folgt als Tensor codiert. Ein Bild ist eine Anzahl von Pixeln. Wenn für das Foto m Zeilen und n Spalten angenommen werden, wird jedes Pixel durch seine Zeilen- und Spaltenposition angegeben, dh durch das Paar (m, n). Insbesondere gibt es m * n Pixel, was selbst für "kleine" Fotos sehr groß ist. Jedes Pixel des Fotos wird durch eine Zahl zwischen null und eins (Schwärzungsintensität) codiert, wenn das Foto schwarzweiß ist. Wenn das Foto farbig ist, wird es durch drei Zahlen (RGB-Intensitäten) codiert. Man endet also mit einem Tensor, der entweder 1xmxn oder 3xmxn ist. Die Bilderkennung erfolgt über CNNs, die unter Ausnutzung der Tatsache, dass sich Fotos nicht so stark von Pixel zu Pixel ändern, komprimierendie Daten über Filter und Pooling. Der Punkt ist also, dass CNNs Arbeit darin besteht, die unglaublich große Anzahl von Datenpunkten (oder Merkmalen) eines Fotos in eine kleinere Anzahl von Werten zu komprimieren. Egal mit welchem Format Sie beginnen, CNN beginnt mit einer weiteren Komprimierung der Daten des Fotos. Daher die per se Unabhängigkeit von der Größe der Darstellung des Fotos.
Eine CNN verlangt jedoch, dass alle Bilder, die sie durchlaufen, dieselbe Größe haben. Es gibt also diese Abhängigkeit, die sich abhängig davon ändert, wie das Bild gespeichert wird. In dem Maße, in dem unterschiedliche Dateiformate derselben Größe unterschiedliche Werte für ihre Tensoren liefern, kann man nicht dasselbe CNN-Modell verwenden, um Fotos zu identifizieren, die mit unterschiedlichen Methoden gespeichert wurden.
quelle