VisionKit

VisionKit Kamera-Framework

Unser ‚VisionKit‘ ist ein weitgehend modularer Baukasten aus Hardware und Software, basierend auf einem hochperformanten Bilderfassungssystem. Die Referenzdesigns:

  • embedded Linux-basierende Netzwerk-Kameras mit Auswertung auf der Kamera
  • FPGA SoC Streaming-Kameras
  • Fernsteuerung per netpp (optional GenIcam)

Module

  • ppivideo: BufferQueue-basierender v4l2-Kerneltreiber für Blackfin/uClinux, ‚zero-copy‘ & verlustfrei (optimiert für Zeilenscan-Anwendungen)
  • videoserver: Portable User-Space-Library mit Bildverarbeitungspipeline/FIFO, simultane Bilderfassung und Verarbeitung wie auch Bildübertragung.
  • display: Remote-Display-Server für rohe Videoformate (Bildübertragung per netpp)
  • FPGA-IP (dombert streaming SoC)
  • Cottonpicken IP: DSP Baukasten für Bildverarbeitungs-Elemente (Pipelining, Debayer, Matrix-Kernel, JPEG DCT und Wavelet-Algorithmen)
  • Camasutra: User interface (Windows/Linux) für Fernsteuerung aller Arten von Kamera/netpp-Geräten. Nicht mehr unterstützt.

Die Ansteuerung der Sensoren erfolgt aus dem User Space. Für verschiedene Sensoren (s.u.) existieren Bibliotheken zur Registerkonfiguration via netpp-Properties.

In Zusammenarbeit mit Kunden und Partnerfirmen wurden FPGA-basierte Evaluationsplattformen (icarus, gözcü) entwickelt um Bildverarbeitungsalgorithmen sowohl auf einem FPGA wie auch DSPs zu evaluieren.

Referenzanwendungen

  • MJPEG streaming via http oder gstreamer (RFC2435 Echtzeit-Standard, niedrige Latenz)
  • 2D Barcode-Leser, 3-5 frames per second
  • Line-Scan-Anwendungen
  • Tracking, Blob-Detection
On-Camera processing demo via remote control tool

Industrielle Kundenprojekte (Referenzen auf Anfrage)

  • Mesa Imaging SR3k/SR4k Linux-Kamera
  • Medizinische Diagnostik
  • Navigationstechnik, optische Vermessung

Plattformen

  • FPGAs (‚bare metal‘ I/O und Vorverarbeitung)
  • IMX6-Prozessorreihe von NXP
  • Blackfin BF53x, BF561 (keine aktive Weiterentwicklung, Legacy!)

Sensor-Support

Für folgende Sensoren existiert „Legacy“-Support per netpp-Registerbeschreibung. Alle auf dem Sensor verfügbaren Parameter können aus dem VisionKit heraus konfiguriert werden. Für alle neueren OnSemi-Sensoren mit *.xsdat-Registerdatei (Devkit Software) werden automatisch entsprechende netpp-Gerätedateien erzeugt.

Vendor Product ID
ON Semi(Aptina) MT9V024(034)
ON Semi(Aptina) MT9V032
ON Semi(Aptina) MT9D131 (JPEG)
ON Semi(Aptina) MT9D111(JPEG)
ON Semi(Aptina) MT9P031, MT9P001
ON Semi(Aptina) MT9T111 (JPEG)
Omnivision OV9620
Omnivision OV9655
Omnivision OV7725
Omnivision OV5670