ein Projekt von Tobias Kiertscher
›› Startseite ›› Aktuelles

28.01.2010 | Mathematik

Endlich wurde die Lücke im Bereich der grundlegenden Mathematik gefüllt.

Die folgenden Operationen und Konstanten sind als Knoten verfügbar:

PI, e, +, -, *, /, x^y, e^x, lg, ln, max, min, Rest, Betrag, Aufrunden, Abrunden, Runden, Wurzel
sin, cos, tan, arcsin, arccos, arctan, arctan2
AND, OR, XOR, NOT (logisch und binär)


20.01.2010 | Cockpit

DynamicNodes bekommt ein Cockpit für den Schnellzugriff wichtiger Parameter.

Die folgenden Cockpitsteuerelemente sind als Knoten verfügbar:

  • Taste
  • Checkbox
  • Textfeld
  • Zahlenfeld/Schieberegler
  • Dateiauswahl
  • Ordnerauswahl


01.10.2009 | C#-Knoten

Mit einem C#-Knoten kann ein Quelltextschnipsel zur Laufzeit kompiliert und als Knoten verwendet werden.

01.09.2009 | CLR-Wrapper

Es ist in Zukunft möglich .NET-Assemblies direkt mit Hilfe von wenigen generischen Knoten zu benutzen.

01.07.2009 | PowerShell

DynamicNodes bekommt die Microsoft PowerShell als Script-Sprache.

19.12.2008 | Video-Tutorials

Es gibt jetzt eine Seite mit Video-Tutorials zu verschiedenen Szenarien.

06.10.2008 | Forum für DynamicNodes

Unter http://dynamicnodes.mastersign.de/forum/ ist in Zukunft ein Forum für Benutzer und Entwickler verfügbar.


25.09.2008 | Weitere OpenCV-Knoten

Die folgenden Knoten sind hinzugekommen:

  • AddS
  • SubS
  • SubRS
  • AndS
  • OrS
  • XorS
  • Threshold
  • InRangeS
  • Flip
  • Resize
  • ColorBgr
  • ColorBgra
  • ColorGray


05.09.2008 | OpenCV-Knotenbibliothek

Ich habe begonnen die wichtigsten Funktionen von OpenCV als Knotenbibliothek in DynamicNodes zur Verfügung zu stellen. Als Wrapper für die .NET-Welt habe ich EmguCV gewählt. Ich habe mit den primitiven Operationen begonnen und arbeite mich langsam nach oben vor.

Zur Zeit implementiert:

  • MaxS
  • Max
  • MinS
  • Min
  • CmpS
  • Cmp
  • Add
  • Sub
  • AbsDiff
  • Mul
  • Div
  • Exp
  • Log
  • Pow
  • And
  • Or
  • Xor
  • Not
  • ConvertScale
  • PyrUp
  • PyrDown
  • Erode
  • Dilate
  • Laplace
  • Sobel
  • Smooth
  • MatchTemplate
  • DFT (u. IDFT)
  • DCT (u. IDCT)


18.08.2008 | Generische Anschlüsse

Für eine Vielzahl von Knoten werden Anschlüsse benötigt, welche alle Arten von Datentypen aktzeptiert. Allerdings entstehen bei solchen "generischen" Anschlüssen eine Reihe von Problemen die nun gelöst sind. Damit können nun allgemein verwendbare Knoten z.B. für die Flusssteuerung implementiert werden.

Beispiele dafür sind die neuen Knoten "Auswahl", "Schalter" und "Serialisierer".

Neue generische Knoten
Neue generische Knoten


14.08.2008 | Streaming-Unterstützung

Eine erste Version von integrierter Streaming-Unterstützung ist zum Systemkern hinzugekommen. Die Datenstruktur der Marken hat dazu ein Referenzfeld für ein optinales Stream-Objekt und eine Sequenz-Nummer (Index) erhalten. Auf der Grundlage der neuen Basisklasse StreamNode ist es nun für Knotenentwickler ein Kinderspiel Streaming-Unterstützung für einen neuen Knoten zu aktivieren.

Am Beispiel einer WebCam-Verarbeitung können nun die Farbkanäle Rot, Grün und Blau in unabhängigen Filterketten verarbeitet werden. Sobald im RGB-Mixer der Synchronisationsmodus IndexGroup aktiviert ist werden automatisch die RGB-Frames aus den richtigen Marken zusammengesetzt werden.

Eine WebCam-Verarbeitung, bei der der Blau-Kanal künstlich verlangsamt wird:

Demonstrations-Graph
Demonstrations-Graph

Ohne aktivierte Synchronisation im RGB-Mixer werden die Ergebnis-Frames falsch zusammengesetzt:

Streaming ohne Synchronisation
Streaming ohne Synchronisation

Mit aktivierter Synchronisation im RGB-Mixer werden die Ergebnis-Frames korrekt zusammengesetzt:

Streaming mit Synchronisation
Streaming mit Synchronisation


25.07.2008 | Diplomarbeit als Buch erschienen

Ich habe meine Diplomarbeit beim VDM-Verlag veröffentlicht. Es ist unter anderem in Amazon gelistet und besitzt die ISBN 3-659-03362-0.

Deckel der Erstauflage der Diplomarbeit
Deckel der Erstauflage meiner Diplomarbeit


25.07.2008 | Etappenziel erreicht

Die Überarbeitung der Basisdatentypen ist abgeschlossen und ein Knoten zur Abfrage von Video-Eingängen ist vorläufig fertiggestellt:

Videoverarbeitung in DynamicNodes
Videoverarbeitung in DynamicNodes

Nach den ersten Tests sind auf einem halbwegs aktuellen Rechner Bildraten von 30fps bei 640x480Pixel kein Problem. (Kommt natürlich auf die Filterkette an)


04.07.2008 | Aktuelles Entwicklungsziel: Video-Stream-Processing

Zur Zeit überarbeite ich die Basisdatentypen für die Bildverarbeitung. Nach einigen Überlegungen optimiere ich nun in erster Linie nicht mehr auf minimalen Arbeitsspeicherplatz sondern auf maximale Performance.

Mein aktuelles Ziel ist es auf meinem langsamsten Rechner (Athlon XP 2000+, 1GB RAM) einen RGB-640x480px Webcam-Stream mit zwei bis drei lineare Filterstufen flüssig verarbeiten zu können. Da der komfortable Zugriff auf die Pixel mittels virtuellen IMDO-Methoden extrem langsam ist, arbeite ich nun mit C#-Arrays. Nach einem ausgiebigen Benchmark mit verschieden Datenstrukturen für 2D-Pixel-Daten haben sich einfach verschachtelte C#-Arrays als am besten geeignet erwiesen.


06.06.2008 | DynamicNodes-Workshop zum Tag der offenen Tür an der FHB

Am Tag der offenen Tür gab es zweimal einen kurzen Workshop mit dem Titel "Einstieg in die digitale Bildverarbeitung – Fließende Daten mit DynamicNodes". Um 9:30 Uhr und um 13:20 Uhr gab es jeweils eine kurze Einführung in digitale Bilddaten. Anschließend haben die Workshop-Teilnehmer Flussgraphen für die Kanaltrennung und die Helligkeits-/Kontrastmanipulation erstellt.

Ich bedanke mich herzlich für das Interesse.


30.05.2008 | Neues Anwendungsszenario I02

Weiter...

Nach oben

Datum und Uhrzeit
Einen Moment...