Wie man aus Essen ein Gesicht macht
Die Megabite- App von Aaron Randall verwendet ein Lebensmittelfoto, analysiert jede einzelne Komponente Ihres Gerichts und tauscht dann alles aus, um ein lustiges Gesicht auf einem Teller zu erhalten. Unter dem Schnitt - Video und Beschreibung des Algorithmus.
Bildvorbereitung
Der Benutzer nimmt mit der Anwendung Lebensmittel auf, die Fotogröße wird auf 1000 x 1000 Pixel geändert und dann entlang der Kontur der Platte zugeschnitten.
Kantenerkennung
Im nächsten Schritt sucht die Anwendung nach einzelnen Objekten und bestimmt deren Konturen. Die Anwendung wendet den Canny-Bildgrenzenerkennungsoperator (2) an und empfängt drei Bilder für nachfolgende Arbeiten (3, 4, 5). Dann wird die OpenCV-Funktion findContours verwendet, um die Konturen jedes Teils zu erkennen. Die Umrisse im Bild unten sind rot markiert. Dann filtert der Algorithmus die "Tochter" -Konturen heraus - zum Beispiel das Eigelb in den Rühreiern.
Konturen aus einem Bild auswählen
Die Anwendung dreht jede resultierende Kontur so, dass sie in den minimalen Begrenzungsrahmen passt - den minimalen Bereich, der das Bild im maximalen Maßstab enthält. Der Vorgang wird im Beispiel für alle sechs Teile wiederholt.

Teile auf einer Vorlage platzieren
Die Anwendung verfügt über Vorlagen, mit denen einzelne Teile angeordnet werden. Nachfolgend finden Sie drei Beispiele mit einer Anzahl von Polygonen von drei bis sechs.
Anschließend wählt die Anwendung die Vorlage entsprechend der Anzahl der Details aus. In diesem Beispiel gibt es sechs Teile, sodass sich die Schnauze mit Ohren und Nase herausstellt. Dann werden die Polygone und Teile des Bildes nach Größe sortiert und paarweise ausgewählt.
In der nächsten Phase werden die Details auf der Vorlage platziert, sodass das Lebensmittel die maximal mögliche Fläche jedes der Polygone einnimmt.
Ergebnis
Ein solches Gesicht kam schließlich aus Spiegeleiern mit Speck und Toast. Der Autor schreibt, dass die Anwendung bisher nur mit ähnlichen Fotos funktioniert und bislang viele Einschränkungen aufweist.
Source: https://habr.com/ru/post/de390075/
All Articles