Algorithmus für eine Zeichnung und Lackierroboter -Ein Algorithmus für einen Zeichnungs- und Lackierroboter - irgendwelche Tipps?
Hallo
ich ein Stück Software schreiben will, die ein Bild analysiert und erzeugt dann ein Bild, das ein menschliches Auge wahrnimmt, in dem Originalbild erfaßt, was unter Verwendung von ein Minimum an Bezierpfad-Objekten mit variierender Farbe und Opazität.
Im Gegensatz zu dem bisherigen twitter Superkompressions Wettbewerb (see: stackoverflow.com/questions/891643/twitter-image-encoding-challenge), ist mein Ziel, ein Replikat zu erstellen, die das Bild treu ist, sondern die menschliche Erfahrung des Blicks auf dem Bild zu replizieren.
Als Beispiel, wenn das Originalbild einen roten Ballon in der oberen linken Ecke zeigt, und die Reproduktion etwas wie einen roten Ballon in der oberen linken Ecke hat, dann habe ich mein Ziel erreicht, auch wenn der Ballon in der Reproduktion ist nicht ganz in der gleichen Position und nicht ganz die gleiche Größe oder Farbe.
Wenn ich sage "wie von einem Menschen wahrgenommen", meine ich das in einem sehr begrenzten Sinne. Ich versuche nicht, die Bedeutung eines Bildes zu analysieren, ich muss nicht wissen, was ein Bild ist, ich interessiere mich nur für die wichtigsten visuellen Merkmale, die ein menschliches Auge bemerken würde, in dem Maße, wie dies durch ein Algorithmus, der keine Kapazität hat, zu konzeptualisieren, was er tatsächlich beobachtet.
Warum dieses ungewöhnliche Kriterium der menschlichen Wahrnehmung über fotografische Genauigkeit?
Diese Software würde verwendet, um einen Zeichnungs- und Lackierroboter zu fahren, der mit einem menschlichen Künstler zusammenarbeiten wird (see: video.google.com/videosearch?q=mr%20squiggle).
Anstatt die vom Menschen gemachten Markierungen, die nicht fotografisch perfekt sind, als Fehler zu behandeln, sollte der Algorithmus versuchen, das bereits auf der Leinwand vorhandene in das endgültige Bild einzubeziehen.
So sind relative Helligkeit, Farbton, Sättigung, Größe und Position viel wichtiger als fotografisch identisch mit dem Original. Die Aufrechterhaltung der Topologie der Features, Farbblock, Gradienten, konvexe und konkave Kurve wird wichtiger sein, die genaue Größe Form und Farbe dieser Funktionen
Immer noch mit mir?
Mein Problem ist, dass ich ein wenig an dem "wenn du einen Hammer hast, sieht alles wie ein Nagel" -Syndrom aus. Ich scheint es, die Art und Weise, dies zu tun ist, einen genetischen Algorithmus mit so etwas wie der Vergleich der Wavelet mit transformiert (siehe: grail.cs.washington.edu/projects/query/) verwendet von retrievr (siehe: labs.systemone.at/retrievr/) zu passgenaue Lösungen zu wählen.
Aber der Hauptgrund, warum ich dies als die Antwort sehe, ist, dass dies die Techniken sind, die ich kenne, es gibt wahrscheinlich viel elegantere Lösungen mit Techniken, über die ich jetzt nichts weiß.
Es wäre besonders interessant zu berücksichtigen, auf welche Weise das menschliche Sehsystem ein Bild analysiert, so dass besondere Aufmerksamkeit auf gerade Linien und Winkel, kontrastreiche Ränder und große Blöcke ähnlicher Farben gelegt werden muss.
Haben Sie Vorschläge für Dinge, die ich über Vision, Bildalgorithmen, genetische Algorithmen oder ähnliche Projekte lesen sollte?
Danke
Mat
PS. Einige der obigen Schreibweisen können für Sie und Ihre Rechtschreibprüfung falsch erscheinen. Es sind nur Variationen der internationalen Schreibweise, die sich von dem Standard in Ihrem Land unterscheiden können: z. Australischer Standard: Farbe gegen amerikanischen Standard: Farbe
Zum Vorteil der neuen Benutzer möchte ich darauf hinweisen, dass diese Frage nicht existieren würde, wenn sie heute gepostet wird. Es ist sehr weit gefasst, verlangt allgemeine Empfehlungen und hat keine eindeutige Antwort. Es existiert wahrscheinlich immer noch für historische Zwecke, also verwenden Sie dies nicht als Vorlage für eine gute Frage –