Bilderkennung in Pfad umwandeln

Hallo Zusammen,

ich bin neu hier, ich kenne mich leider nicht mit Foren aus und den Gepflogenheiten, ich bin eigentlich einer der "stillen Beobachter" :).

Ich versuche es jetzt aber doch einmal weil ich einfach nichts zu dem Thema finde (evtl. Suche ich auch falsch).

Ich stelle mich kurz vor: Ich heiße Maze bin 28 Jahre komme aus Süddeutschland und bin Projektleiter in einer Großbäckerei.

Ich bastle zur Zeit an einer Art 3D Drucker, der Brezelhälften mit aufgeschlagener Butter "bedrucken" soll. Meine Frage ist nun: Gibt es eine Lösung um in Echtzeit sozusagen ein Foto in einen Pfad umzuwandeln?!

Ich wäre euch wirklich sehr dankbar und entschuldige mich vorab falls ich evtl. Regeln etc. verletzt habe.

Viele Grüße Maze

hi,

keine regeln verletzt. und herzlich willkommen.

es gibt das programm corel trace, das ist beim corel draw paket dabei (oder wars zumindest mal). ist aber eine herumspielerei und bedarf vieler nacharbeit.

gruß stefan

Vielleicht möchtest Du den Schreibfehler in der Titelzeile korrigieren? (Quick Edit)

Eine einfachere Konstruktion könnte Sensoren am Druckkopf benutzen, die "Brezel" vom Hintergrund unterscheiden können. Dann läßt man den Druckkopf losfahren bis er die Brezel erkennt, und ihn dann der Kontur der Brezel folgen lassen. Ob sich dafür "line follower" Module einsetzen lassen, wäre auszuprobieren.

Egal wie, die Brezel darf sich beim Bestreichen nicht verschieben, zumindest nicht am Druckkopf kleben bleiben.

hi,

ups, da hab' ich was falsch verstanden. ich hab's nur schnell überlesen und dachte, Du willst bilder auf die brezn drucken.

aber in Deinem fall: die brezn sieht doch "prinzipiell von der grundform her" immer gleich aus. ich würde also davon ausgehen, die form nur anpassen zu müssen. zumindest wenn nur ein streifen butter aufgebracht werden soll und nicht alles in der jeweiligen breite bestrichen werden soll.

gruß stefan

Hallo Maze,

Herzlich willkommen, im Forum.

ich habe das so verstanden das ein Bild vorhanden ist (das in einen Pfad) gewandelt werden muss, doch das Bild nun an die genaue Kontur der Brezel angepasst werden muss, die Betel ist ja mal etwas Dicker, Breiter Höher etc.

Wenn das wirklich so ist, würde mich der Aufbau sehr interessieren, was ist denn schon vorhanden? oder ist das auch noch in der Vorbereitung und Planung?

Wenn die Brezel auf einen Band daher kommt und stehen Bleibt so das ein 3D Drucker (mit Pinsel)
(Bild) von oben dann an die Brezel heran fährt muss ja erst ein mal erkannt werden so die Brezel genau ist, wo Oben und unten ist (Dünnerteil / Dickerteil) damit der 3D Drucker arm wies wo er hin muss.
Dann muss die Höher erkannt werden das wie @DrDiettrich schon sagt nichts am Druckkopf hängen bleibt.

Wenn das alles erkannt wird, dann muss man das Bild auf die Konturen der Brezel anpassen, denn die Brezel ist ja auch gewölbt und nicht Flach wie ein Blattpapier.

ich würde das über 2 Kameras wahrscheinlich machen, und dann ein Streifen musstet wie mit einem Beamer auf die Fläche strahlen, so könnte man die Konturen erkennen und die Koordinaten der Brezel heraus finden.
was dann jedoch sehr viel rechen Leistung beansprucht. Da würde ich dann auf Matlab zurück greifen.
oder Denke ich viel zu komplex?

Gruß Mücke

Zum automatischen Umwandeln von Bilddaten in Pfade verwende ich
potrace
das funktioniert (zumindest bei mir und meiner Anwendung) ausgezeichnet.

Ich habe das bei einer Art Fotoautomat im Einsatz: Die Leute machen mit (übergroßen) Requisiten ein Ganzkörperbild vor einem speziellen (sehr hellen) Hintergrund. Es entsteht ein ziemlich kontrastreiches Foto. Mit Potrace wird der Umriss des Körpers (+Requisite) in einen Pfad umgewandelt. Dieser Pfad wird mit einem Schneidplotter aus Klebefolie ausgeschnitten. Es entsteht also ein "Sticker" der Person (+ Requisite).
So sind schon mehrere tausend Sticker gemacht worden, es funktioniert also (mittlerweile) recht zuverlässig.

Hallo, auch von mir.

Muecke:
oder Denke ich viel zu komplex?

Naja, zumindest denkst du teuer. :slight_smile:

Matlab haben meist nur Studenten billig zuhause. Muss man auch mit umgehen können. Da gibt es sicher Alternativen.

Im Prinzip könnte man auch mit einem Abstandssensor am 3D-Drucker die Brezel "scannen". Ich habe mal ein Bild angehängt, das mit einem Laserabstandssensor mit 0-10 V Analogausgang erzeugt wurde. Ein Roboterarm hat mit dem Sensor jeden einzelnen Bildpunkt angefahren und ein C# Programm hat mit dem Spannungswert die Pixelfarbe berechnet. Die "Bildaufnahme" dauert allerdings ein paar Minuten.

Auf so einem 3D-Raster, es kann ja etwas gröber sein, könnte man dann den Weg berechnen.

Rolle.jpg

Und wenn man einfacher denkt?
Egal welche Form die Brezeln haben: Alles was höher ist als das Bodenblech, wird gebuttert?
Der 3D-Butterdrucker fährt dann zwar ziemlich unintelligent hin und her, braucht aber nur einen Abstandssensor, um zu erkennen, wo Brezel ist.

michael_x:
Und wenn man einfacher denkt?

Ja, das könnte man mit meinem Vorschlag kombinieren.

Man könnte ein sehr grobes Raster scannen, z.B. 32x32 oder 64x64 und zwar mit nur einem Bit pro Pixel, also als Schwarzweißbild. Z.B. man setzt jedes Pixel wo die gemessene Höhe größer der halben typischen Bretzelhöhe ist.

Das Schwarzweißbild könnte man nachbearbeiten, so das nur größere zusammenhängende Pixelgruppen übrigbleiben. Den passenden Algorithmus findet man in diversen Einführungen zur Bildverarbeitung.

Nur diese "hochgelegenen Inseln" werden gebuttert.

Viel interessanter erscheint mir, wer die Brezeln aufschneidet. Oder sollen die etwa nur außen gebuttert werden?

ArduFE:
Naja, zumindest denkst du teuer. :slight_smile:

ich gehe mal davon aus das wenn es sich um Brezel handelt das es was ist womit später Geld verdient wird und nicht nur Spielereien sind. Nagut, es ist schon etwas Teuer das ganze ich gebe es zu.

Das ist richtig es gibt zahlreiche Matlab Ableger die man verwenden kann, zu teil sogar Kostenlos.
leider kann ich mit Matlab auch nicht umgehen :frowning:

Den Ansatz mit dem Leser finde eich nicht schlecht, was würde gegen ein Lichtschnittsensor sprechen?
Diesen könnte man auch auf den 3D Drucker Arm anbringen, und zuerst ein mal die gesamte Fläche ablaufen, dann hätte man alle Höhen und Breiten. Daraus könnte man dann alles weitere machen.

ArduFE:
.. Ich habe mal ein Bild angehängt, ...

Magst du das Bild im Forum sichtbar machen für uns alle? dann muss es nicht jeder herunter laden :wink:

Rechtsklick auf den Bildnamen und "Link Adresse Kopien" wählen, danach den Beitrag bearbeiten und einen Bild Tag einfügen als Link für das Bild dann den vorher kopierten Link eintragen. dann sehen alle in deinem Beitrag das Bild ;-).

Gruß Mücke

Muecke:
Magst du das Bild im Forum sichtbar machen für uns alle?

Ah, so geht das. Danke, ich lade hier nicht oft Bilder hoch.

dd3fa4c770854008fa03cbcda5652c8d59d25242.jpg

Wie man unschwer erkennt, ist es keine Bretzel sondern ein Klebebandabroller. Das ganze war nur eine Spielerei, ich wollte mal wissen was da raus kommt.