JSON Extension Package für HALCON


Beschreibung

JSON Extension Package für HALCON

Was?

Das JSON Extension Package für HALCON ist ein Extension Package zum Erstellen, Modifizieren und Parsen von JSON-Strings innerhalb der HDevelop-Skriptsprache.

Warum?

Das JSON Extension Package für HALCON bringt erweiterte Datenstrukturen in die HDevelop-Sprache.
Damit ändern sich z.B. umständliche Prozedursignaturen wie

                        OpenCamera (: : CamName, CamDevice, CamColorspace, CamBrightness, CamSaturation, CamBinning: AcqHandle)
                        ProcessImage (: : FilterMean, ThresholdMin, ThresholdMax, ScoreMin, NumMatches, MaxOverlap, SubPixel, NumLevels, Greediness, MinArea, MaxArea, CameraHandle: Result)
                      
zu prägnanten
                        OpenCamera (: : JsonSettings: AcqHandle)
                        ProcessImage (: : JsonSettings, CameraHandle: Result)
                      

Dieses Extension Package ermöglicht auch die Benutzung von persistenten und menschenlesbaren Konfigurationsdateien die mit modernen Webstandards kompatibel sind (Industrie 4.0).

Details

Das JSON Extension Package für HALCON ist ein Extension Package zum Erstellen, Modifizieren und Parsen von JSON-Strings innerhalb der HDevelop-Skriptsprache.

Das JSON Extension Package enthält zusätzlich Operatoren zum Lesen und Schreiben von JSON-Dateien.

Die JSON-String-Darstellung ist eine mächtige und kompakte Darstellung von strukturierten Daten innerhalb eines Strings. Da der HDevelop-Skriptsprache ansonsten fortgeschrittene strukturierte Datentypen fehlen enthalten HDevelo-Skripte oft viel zu viele Variablen und zu viele einzelne Parameter die bei Prozedur-Aufrufen übergeben werden müssen. Zum Beispiel könnten Einstellungen für ein Skript mit der folgenden JSON-Darstellung gesetzt werden. Das kann entweder mit einer separaten settings.json-Datei geschehen oder direkt innerhalb des HDevelop-Skripts gesetzt werden:

                    {
                        "camera": {
                            "brightness": 2,
                            "colorspace": "rgb",
                            "device": "Camera1",
                            "name": "DirectShow"
                        },
                        "filter": {
                            "mean": 7.5
                        }
                    }
                    

Später kann ein bestimmter Wert z.B. mit einem JSON-Pointer gelesen werden:

                        json_pointer_tuple (JsonSettings, '/camera/name', CameraName)
                    

Somit muss nur noch ein einzelner JSON-String an Prozeduren übergeben werden, statt der einzelnen Parameter CameraBrightness, CameraColorspace, CameraDevice und CameraName.

Bitte schauen Sie sich auch die HDevelop-Beispiele an die diesem Extension Package beiliegen.

Gegenwärtig gibt es dieses Erweiterungspaket für HALCON 11.0, HALCON 12.0 und HALCON 13.0 und nur für das Windows-Betriebssystem.

Bitte kontaktieren Sie json-extpack@heindl-solutions.com um Unterstützung zu erhalten, für Bestellungen oder Bug-Meldungen.

Weitere Informationen über das JSON Extension Package gibt es online unter http://www.heindl-solutions.com/extpack/json.

JSON data structure

Release Notes

JSON Extension Package für HALCON 1.0.0 (veröffentlicht 2018-02-12)

  • initial public release
 
 

Dokumentation

JSON Extension Package für HALCON 1.0.0 Installer

  • Unterstützt HALCON 11, 12 und 13 und wird kommende Versionen der HALCON Steady Edition unterstützen.
  • Läuft unter Windows 7, 8, 8.1 und 10
  • Läuft unter Linux
  • Lokalisiert: Englisch und Deutsch
Download…