www.mikrocontroller.net

Forum: FPGA, VHDL & Co. akzeptable Bilderkennung


Autor: Stefan Helmert (Firma: dm2sh) (stefan_helmert)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich habe diesen etwas älteren Artikel gefunden:
http://www.zeit.de/online/2007/16/bilderkennung
Es wäre doch einmal interessant so etwas selbst auszuprobieren, in einem 
FPGA z. B. Es wäre halt gut wenn man da eine möglichst detaillierte Doku 
dazu finden würde. Dieses Verfahren, das dort verwendet wurde scheint ja 
richtig gut zu sein. Wie umfangreich wird denn diese Sache eigentlich? 
Ist das noch im Hobbybereich handlebar? Wie hoch werden die 
Hardwareanforderungen sein (Stratix 4)? Hat das schon mal jemand 
versucht selbst zu realisieren? Gibt es dazu ausführliche Informationen 
frei verfügbar? - Oder kann ich das Vorhaben ganz schnell wieder 
vergessen?

Autor: Bernhard R. (barnyhh)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Der Artikel klingt nach Neuronalen Netzen. Der Lösungsansatz sähe 
folgendermaßen aus:

1. Implementierung der Algorithmen auf einem PC
2. Wenn das Ganze zu langsam ist: auslagern auf Graphik-Karte
3. Wenn es dann immer noch zu langsam ist: bessere (einfachere und/oder 
schnellere) Algorithmen suchen.

Erfahrungsgemäß fallen in einem derartigen Projekt einige Studien- und 
Diplomarbeiten an und vielfach nicht nur eine Dissertation.

Ohne die entsprechenden Voraussetzungen (z.B. aktuelles Studium) spielt 
sich da kaum etwas ab.

Grüße
Bernhard

Autor: Kest (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Es gibt sehr viele Bücher darüber. Such nach Stichworten wie: image 
registration, segmentation, fft, hugh room/space, edge detection, 
feature extraction und so weiter...

Im Endeffekt wirst Du feststellen, dass das FPGA nur bedingt dazu 
geeignet ist. Am besten man fängt "klein" an: mit Matlab, ImageJ, 
OpenCV. Wenn dann alles läuft, dann kann man alles in ein FPGA gießen.

Dan muss man sich entscheiden, ob man alles in Echtzeit haben möchte 
oder nicht. Wenn man genügend Zeit hat, dann kann man auch alles mit 
einem PIC erledigen ;-)) Wenn man aber so ein 1024x768 oder gar HD-Bild 
hat mit 60 fps, dann haleluja!

Ich selber mache nur pre/post processing im FPGA, höchstens 
Motion-detection oder irgendwelche Skalierungen/Rotationen/Wrapping. Das 
geht ganz gut, wenn man viel und schnellen Speicher hat.

Vergessen darfst Du aber dein Vorhaben aber keinem Fall -- wo kommt man 
so denn hin? :-)

Grüße,
Kest

Autor: Marc (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi Kest,
darf man mal fragen was die DSP Softcore Geschichte macht ?
Gruss, Marc

Autor: Kest (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
DSP Softcore ist etwas eingeschlafen, nach dem ich quasi low-Level 
Funktion (MAC) implementiert habe. Bis jetzt habe ich frei 
konfigurierbare Cores, die aber nur eine Sache erledigen können :-( Und 
zwar FIR-Filter. Man kann mit GENERICs die Bitbreiten so einstellen, 
dass die Memory-Blöcke optimal ausgenutzt werden. Alles ist absolut frei 
konfigurierbar:

- ein FIR Filter -- mehrere Kanäle
- ein FIR Filter -- ein Kanal
- mehrere FIR Filter -- ein Kanal
- mehrere FIR Filter -- mehrere Kanäle
- Bitbreiten der Daten und Koeff.

Dazu kommt auch noch die Anzahl der Taps, die man beliebig einstellen 
kann, um wirklich Optimum rauszuholen. Als Feature ist auch die Wahl 
zwischen der parallelen und/oder sequentiellen Verarbeitung gegeben. 
Wenn man z.B. 4096 Takte pro Sample zur Verfügung hat, kann man z.B. 
enweder seriell FIR mit 4096 Taps erstellen oder seriell/parallel mit 2 
MACs und 8192 Taps, oder eben 2 Kanäle mit 2048 Taps.

Jetzt muss nur noch alles schön "verpackt" werden, damit man im Toplevel 
alle FIR-Charakteristika einstellen kann und daraus wird dann 
entsprechend alles generiert (mit Filter-Koeffizienten und so weiter, 
damit man auch ohne Matlab und Co auskommt). Bin also mit 
Signalverarbeitung-Theorie gut beschäftigt :-)

So richtig Release-reif ist die ganze Sache jedoch noch nicht.

Grüße,
Kest

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [vhdl]VHDL-Code[/vhdl]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.