DE102009009533B4 - Bildverarbeitender Sensor - Google Patents

Bildverarbeitender Sensor Download PDF

Info

Publication number
DE102009009533B4
DE102009009533B4 DE102009009533.0A DE102009009533A DE102009009533B4 DE 102009009533 B4 DE102009009533 B4 DE 102009009533B4 DE 102009009533 A DE102009009533 A DE 102009009533A DE 102009009533 B4 DE102009009533 B4 DE 102009009533B4
Authority
DE
Germany
Prior art keywords
computer unit
image
hardware computer
hardware
software
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
DE102009009533.0A
Other languages
English (en)
Other versions
DE102009009533A1 (de
Inventor
Jörg Wörner
Richard Geisler
Will Shaffer
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Leuze Electronic GmbH and Co KG
Original Assignee
Leuze Electronic GmbH and Co KG
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Leuze Electronic GmbH and Co KG filed Critical Leuze Electronic GmbH and Co KG
Priority to DE102009009533.0A priority Critical patent/DE102009009533B4/de
Publication of DE102009009533A1 publication Critical patent/DE102009009533A1/de
Application granted granted Critical
Publication of DE102009009533B4 publication Critical patent/DE102009009533B4/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/0002Inspection of images, e.g. flaw detection
    • G06T7/0004Industrial image inspection
    • G06T7/001Industrial image inspection using an image reference approach
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/94Hardware or software architectures specially adapted for image or video understanding
    • G06V10/955Hardware or software architectures specially adapted for image or video understanding using specific electronic processors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2200/00Indexing scheme for image data processing or generation, in general
    • G06T2200/28Indexing scheme for image data processing or generation, in general involving image processing hardware
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30108Industrial image inspection
    • G06T2207/30164Workpiece; Machine component

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Quality & Reliability (AREA)
  • Software Systems (AREA)
  • Multimedia (AREA)
  • Image Processing (AREA)

Abstract

Bildverarbeitender Sensor mit einem Bilddaten generierenden Bildaufnehmer (2) und mit einer Hardware-Rechnereinheit (3) und einer Software-Rechnereinheit (4) zur Auswertung der Bilddaten, wobei die Hardware-Rechnereinheit (3) zwischen Bildaufnehmer (2) und Software-Rechnereinheit (4) angeordnet ist, so dass Bilddaten vom Bildaufnehmer (2) in die Hardware-Rechnereinheit (3) und von der Hardware-Rechnereinheit (3) in die Software-Rechnereinheit (4) übertragbar sind, wobei der Hardware-Rechnereinheit (3) ein lokaler Bildspeicher (9) dadurch zugeordnet ist, dass er über eine bidirektionale, breitbandige Datenverbindung (10) an die Hardware-Rechnereinheit (3) angekoppelt ist, und in welchem vom Bildaufnehmer (2) in die Hardware-Rechnereinheit (3) eingelesene Bilddaten zwischengespeichert werden, dadurch gekennzeichnet, dass der lokale Bildspeicher (9) durch eine bidirektionale breitbandige Schnittstelle (14) über die Hardware-Rechnereinheit (3) an die Software-Rechnereinheit (4) angekoppelt ist, und dass der Bildaufnehmer (2) und die Hardware-Rechnereinheit (3) von der Software-Rechnereinheit (4) gesteuert werden, und dass während einer Konfiguration des bildverarbeitenden Sensors innerhalb eines mit dem Bildaufnehmer (2) generierten Bildes die Position und Orientierung eines Objekts ermittelt und als Referenzposition und Referenzorientierung in der Hardware-Rechnereinheit (3) gespeichert werden, dass während der Konfiguration eine ROI(region of interest)-Maske eingestellt wird und diese ROI-Maske sowie deren Relativposition zum Objekt in der Hardware-Rechnereinheit (3) gespeichert werden, und dass in einem auf die Konfiguration folgenden Prozessbetrieb in der Hardware-Rechnereinheit (3) die aktuelle Position und Orientierung des Objekts ermittelt werden, und darauf die ROI-Maske als dynamische ROI-Maske derart nachpositioniert wird, dass deren Relativposition entsprechend der Änderung der aktuellen Position und Orientierung bezüglich der Referenzposition und Referenzorientierung geändert wird.

Description

  • Die Erfindung betrifft einen bildverarbeitenden Sensor.
  • Derartige bildverarbeitende Sensoren, das heißt sogenannte Vision-Sensoren, werden insbesondere im Bereich der Qualitätskontrolle in Fertigungsprozessen und dergleichen eingesetzt. Generell ist dabei die Arbeitsweise eines Vision-Sensors derart, dass mit diesem von einem zu prüfenden Teil ein Bild aufgenommen wird und dieses Bild durch Vergleich mit einem Referenzbild dahingehend beurteilt wird, ob bestimmte Qualitätsanforderungen oder generell Eigenschaften des Teiles erfüllt sind.
  • Vision-Sensoren der in Rede stehenden Art weisen als wesentliche Komponente eine Einheit zur Bildverarbeitung auf. Im Gegensatz zu Smart-Kameras basieren Vision-Sensoren nicht auf PC-Architekturen, sondern auf proprietären, das heißt nicht standardisierten Architekturen.
  • Dabei existieren für die Bildverarbeitung bei Vision-Systemen generell die Optionen, die durchzuführenden rechnergesteuerten Arbeitsschritte, wie die der Bildvorverarbeitung, der Durchführung von Bildverarbeitungsalgorithmen und dergleichen, in Hardware oder Software durchzuführen.
  • Bei der ersten Alternative sind auf leistungsfähigen Hardware-Rechnereinheiten wie ASIC (application specific integrated circuit), CLPD (complex programmable logic device) oder FPGA (field programmable gate array) durchzuführende Rechenoperationen oder allgemein Bearbeitungsschritte bei der Bildverarbeitung in Hardware implementiert. Dies hat den Vorteil, dass die Bearbeitungsvorgänge schnell, mit niedrigem Leistungsverbrauch und mit geringen Produktionskosten durchgeführt werden können. Da jedoch die Bearbeitungsvorgänge in Hardware implementiert sind, können diese nicht oder nur in geringem Umfang geändert werden, wodurch derartige Hardware-Rechnereinheiten unflexibel sind, das heißt nicht an spezifische Prozesse angepasst werden können. Daher werden im Allgemeinen in derartigen Hardware-Rechnereinheiten einfache Rechenoperationen wie eine Bildvorverarbeitung oder eine Filterung von mit dem Bildaufnehmer generierten Bilddaten durchgeführt.
  • Bei der zweiten Alternative sind die Rechenoperationen beziehungsweise Bearbeitungsvorgänge in Software realisiert, wobei diese Software auf geeigneten Software-Rechnereinheiten implementiert ist. Derartige Software-Rechnereinheiten können von Microcontrollern oder von DSP (Digitalen Signal Prozessoren) gebildet sein. Derartige Software-Rechnereinheiten weisen zwar den Nachteil relativ langsamer Bearbeitungsgeschwindigkeiten sowie hohem Leistungsverbrauch und hohen Produktionskosten auf. Vorteilhaft ist jedoch, dass durch die Implementierung der Bearbeitungsschritte in Software eine hohe Flexibilität und ein hoher Funktionsumfang bei einfacher Bedienung und niedrigen Entwicklungskosten ermöglicht werden.
  • In der Praxis werden bevorzugt Hybrid-Architekturen, das heißt Vision-Sensoren, die mit Software-Rechnereinheiten und Hardware-Rechnereinheiten arbeiten, eingesetzt.
  • Ein erstes Beispiel hierfür ist eine Flow-through-Architektur, bei welcher eine Hardware-Rechnereinheit in Form eines CPLD oder FPGA zwischen dem Bildaufnehmer und einer Software-Rechnereinheit in Form eines Microcontrollers oder DSP angeordnet ist. Die Arbeitsweise eines so aufgebauten Vision-Sensors ist derart, dass mit der Hardware-Rechnereinheit der Bildeinzug, das heißt das Einlesen von Bilddaten aus dem Bildaufnehmer, erfolgt. Zusätzlich erfolgt in der Hardware-Rechnereinheit eine Bildvorverarbeitung, wie zum Beispiel eine Filterung der Bilddaten. In der Software-Rechnereinheit werden dann die weiteren Bidlverarbeitungsschritte durchgeführt. Nachteilig bei dieser Flow-through-Architektur ist, dass die leistungsfähige Verarbeitung der Bilddaten in der Hardware-Rechnereinheit nur einmal während des Bildeinzuges genutzt werden kann.
  • Eine alternative Hybrid-Architektur für Vision-Sensoren ist die sogenannte Co-Prozessor-Architektur. Bei dieser Architektur ist eine Software-Rechnereinheit dem Bildaufnehmer nachgeordnet und eine Hardware-Rechnereinheit wird als Co-Prozessor genutzt. In diesem Fall übernimmt die Software-Rechnereinheit den Bildeinzug der Bilddaten aus dem Bildaufnehmer. Damit entfällt der Vorteil der Flow-through-Architektur, bei welcher in der Hardware-Rechnereinheit mit dem Bildeinzug eine erste Bildvorverarbeitung durchgeführt wird. Vorteilhaft bei der Co-Prozessor-Struktur ist jedoch, dass die Hardware-Rechnereinheit mehrfach für die Durchführung unterschiedlicher Bildverarbeitungsschritte genutzt werden kann. Hierzu ist jedoch eine hohe Datentransferrate zwischen der Software-Rechnereinheit und der Hardware-Rechnereinheit notwendig, was den konstruktiven Aufwand für diese Architektur erhöht.
  • In MUSTAFAH, Y. M. et al:: An Automated Face Recognition System for Intelligence Surveillance: Smart Camera Recognizing Faces in the Crowd. First ACM/IEEE International Conference on Distributed Smart Cameras, ICDSC'07, 25–28 Sept. 2007. Conference Proceedings, ISBN 978-1-4244-1354-6, pp. 147–152 ist eine Smart Kamera beschrieben, die einen Bildsensor mit einem daran angeschlossenen Prozessor aufweist, welchem ein Speicher zugeordnet ist. Über eine Schnittstelle erfolgt eine Ankopplung an eine Bildverarbeitungs-Software, die auf einem PC installiert ist. In dem vorzugsweise als FPGA ausgebildeten Prozessor erfolgt eine Bildvorverarbeitung und eine einmalige Definition eines ROI (region of interest). Die gesamte weitere Bildauswertung erfolgt im PC.
  • Die US 5,341,143 A betrifft ein Zielverfolgungssystem mit einem Bildsensor. Die Bildverarbeitungssoftware umfasst einen ersten Tracker zur Analyse einer Szene und zur Extraktion eines ersten Zielpunkts aus der Szene. Mittels eines zweiten Trackers wird ein zweiter Zielpunkt ermittelt. Durch Bildverarbeitungsalgorithmen werden die Verlässlichkeiten der Zielpunkte berechnet.
  • In GRAEFE, Volker; FLEDER, Karlheinz:
  • A Powerful and Flexible-Co-Processor for Feature Extraction in a Robot Vision System. 1991 International Conference on Industrial Electronics, control and Instrumentation, IECON '91, Kobe, Japan, 28 Oct-1 Nov 1991. Conference Proceedings, ISBN 0-87942-688-8, Vol. 3, pp. 2019–2024 ist eine Mehrprozessorstruktur beschrieben, mittels derer in Bildern eines Bildsensors bestimmte Bildmerkmale extrahiert werden, so dass eine schnelle Bildverarbeitung gewährleistet ist.
  • In GRAEFE, Volker:
  • The BVV-Family of Robot Vision Systems. IEE International Workshop on Intelligent Motion Control, Istanbul, 20–22 August 1990. Conference Proceedings, Vol. 1, pp. IP-55–65 ist ein Multiprozessorsystem beschrieben, bestehend aus einer Anordnung von Mikrocomputern, die über zwei Bussysteme verbunden sind. Für eine Verfolgung von Objekten werden in mit einem Bildsensor aufgenommenen Bildern Teilbereich ausgewählt.
  • In GRAEFE, Volker:
  • Echtzeit-Bildverarbeitung für ein Fahrer-Unterstützungssystem zum Einsatz auf Autobahnen. it + ti – Informationstechnik und Technische Informatik 36 (1994) 1, Heft 1/94, Sonderheft Robotik, R. Oldenbourg Verlag, S. 16–64 ist ein Bildverarbeitungssystem beschreiben, bei welchem zur Objektverfolgung Suchbereiche innerhalb von aufgenommenen Bildern definiert werden.
  • In BROERS, Harry et al.:
  • Architecture Study for Smart Cameras. EOS (European Optical Society) Conference on Industrial Imaging and Machine Vision, Munich, Germany, June 13–15, 2005. Conference Proceedings, pp. 39–49 ist eine Smart-Kamera für eine Echtzeit-Bildverarbeitung beschrieben.
  • In TREIN, J. et al.:
  • Development of a FPGA Based Real-Time Blob Analysis Circiut. Irish Systems and Signals Conference, ISSC 2007, Derry, North Ireland, Sept. 13–14, 2007. Conference Proceedings, pp. 121–126 ist eine Echtzeitbildauswertung im Rahmen einer FPGA-basierten BLOB-Analyse beschrieben.
  • In FATEMI, Hamed:
  • Processor Architecture Design for Smart Cameras. Dissertation, TU Eindhoven. ISBN 978-90-386-1983-5. Eindhoven: Technische Universiteit Eindhoven, 2007 sind unterschiedliche Prozessorarchitekturen für Smart-Kameras beschrieben.
  • In SCHMID, Reiner:
  • Industrielle Bildverarbeitung. Vom visuellen Empfinden zur Problemlösung. ISBN 978-3-528-04945-4, Braunschweig; Wiesbaden: Friedr. Vieweg & Sohn, 1995. S. I–VII, 1–5, 26–31, 146, 150, 187–196, 225–233 sind bildverarbeitende Systeme mit anwendungsspezifische Hardware beschrieben. Mit diesem System kann eine Bewegungsdetektion dadurch durchgeführt werden, dass innerhalb von aufgenommenen Bildern areas of interest oder regions of interest gebildet werden.
  • In CHALIMBAUD, P.; BERRY, F.; MARTINET, P.:
  • The Task ”Template Tracking” in a Sensor Dedicated to Active Vision. 2003 IEEE International Workshop on Computer Architectures for Machine Perception, CAMP'03, New Orleans, 12–16 May 2003. Proceedings, ISBN 0-7803-7970-5, pp. 307–313 ist ein bildverarbeitendes System mit einem FPGA beschrieben, bei welchem eine Nachführung eines window of interest erfolgt.
  • IN ANDRAKA, Ray:
  • Dynamic hardware video processing platform. Proc. SPIE 2914, High-Speed Computing, Digital Signal Processing, and Filtering Using Reconfigurable Logic, 90 (October 21, 1996) ist ein Videoprozessorsystem mit einer dynamisch rekonfigurierbaren Hardware zur Verarbeitung von Bildfolgen beschrieben.
  • In ARTH, Clemens:
  • Visual Surveillance on DSP-Based Embedded Platforms. Dissertation, Graz University of Technology, Institute for Computer Graphics and Vision, März 2008. Graz: TU, 2008 sind Smart Kameras beschrieben, bei welchen zur Objektverfolgung regions of interest innerhalb von aufgenommenen Bildern definiert werden.
  • In DIETRICH, Dietmar; GARN, Heinrich; KEBSCHULL, Udo et al. [Hrsg.]:
  • Embedded Vision System. EURASIP Journal on Embedded Systems, Special Issue, Volume 2007. Hindawi Publishing Corporation, 2007 sind FPGA-basierte Bilderverarbeitungssysteme beschrieben.
  • In HAMBLEN, James O.: HALL, Tyson S.:
  • Using System-on-a Programmable-Chip Technology to Design Embedded Systems. International of Computer Applications IJCA, Vol. 13, No. 3, Sept, 2006, pp. 1–11 sind programmbasierte Bildverarbeitungssysteme beschrieben, welche als Hardware-Komponenten FPGA aufweisen können.
  • In HODSON, Mike:
  • Prototyping Image Processing Applications. Firmenschrift, Xilinx. Xcell Journal, Fourth Quarter 2007, pp. 31–33.
  • In KNAPP, Steven K.:
  • Using Programmable Logic to Accelerate DSP Functions. Firmenschrift, Xilinx, Inc. and The ASM Group. San Jose: Xilinx, 1995 ist ein für die Bildverarbeitung nutzbares System mit programmierbaren Logikbausteinen zur Beschleunigung von DSP-Funktionen beschrieben.
  • In MICRON:
  • MT43C8128A/9A 128K x 8 Triple-Port DRAM. Data Sheet, MT43C8128A/9A Rev. 6/94. S. 4-47–4-92. MICRON Semiconductor, Inc., 1994 ist Speicherbaustein in Form eines Triple-Port DRAM beschrieben, der in Videosignalschaltungen eingesetzt werden kann.
  • Die US 5 914 711 A betrifft einen Video-Speicher in einem Graphik-Controller, der als Triple-Port-VRAM ausgebildet sein kann.
  • In MOON, Hosun; MOON, Sunghwan; SEO, Youngbin; KIM, Yongdeak:
  • A Hardware/Software Codesign for Image Processing in a Processor Based Embedded System for Vehicle Detection. International Journal of Information Processing Systems, ISSN 1738-8899, Vol. 1, No. 1, 2005, pp. 27–31 betrifft ein bildverarbeitendes System mit einer Kamera, einem FPGA und einer CPU: Im FPGA werden Bilddaten gespeichert, mit Hintergrunddaten verknüpft und dann in die CPU ausgelesen, wo eine Bildverarbeitung durchgeführt wird.
  • In SCHLESSMAN, Jason; CHEN, Cheng-Yao; OZER, Burak et al.:
  • Hardware/Software Co-Design of an FPGA-based Embedded Tracking System. 2006 Conference on Computer Vision and Pattern Recognition Workshop, DVPRW'06, 17–22 June 2006. Conference Proceedings, ISBN 0-7695-2646-2, Article 123 ist ein Hardware/Software Design eines FPGA-basierten Trackingsystems beschrieben.
  • In SEDCOLE, Nicholas Peter:
  • Reconfigurable Platform-Bases Design in FPGAs for Video Image Processing. PhD Thesis, Department of Electrical and Electronic Engineering, Imperial College of Science, Technology and Medicine, University of London, January 2006. London: Imperial College, 2006 ist ein Entwurf für ein FPGA-basiertes Bildverarbeitungssystem beschrieben.
  • In SCHREY, O.; HUPPERTZ, J.: FILMONOVIC, G.: BUSSMANN, A.; BROCKHERDE, W.; HOSTICKA, B. J.:
  • A 1Kx1K High Dynamic Rage CMOS Image Sensor with On-Chip Programmable Region of Interest Readout. Proceedings of the 27th European Solid-State Cicuits Conference, 2001. ESSCIRC 2001, pp. 97–100 ist ein Bildsensor mit einer On-Chip Struktur beschrieben, wobei mit dieser Struktur unterschiedliche regions of interest in aufgenommenen Bildern für eine Objektverfolgung erzeugt werden.
  • In TESSAROLO, Alex:
  • Using VRAMs and DSPs for System Performance. TMS320 DSP Designer's Notebook. Firmenschrift, Texas Instruments, Application Brief: SPRA224. Texas Instruments Incorporated, March 1993, Copyright 1997 sind unterschiedliche Systeme in Form von VRAM- und DSP-Komponenten zur Steigerung der Leistungsfähigkeit von bildverarbeitenden Systemen beschrieben.
  • In TEICH, Jürgen:
  • Digitale Hardware/Software-Systeme. ISBN 978-3-540-62433-2. Berlin; Heidelberg; Springer, 1997. Kapitel 1: Einleitung, 2. 1–30. Kapitel 7: Softwaresynthese, Abschnitt 7.1, S. 270–274, und Abschnitt 7.13, S. 359–366 sind Entwürfe unterschiedlicher digitaler Hardware- und Softwaresysteme beschrieben.
  • Die DE 10 2005 009 626 A1 betrifft eine Kamera zum Verfolgen von Objekten mit einer Bildsensoreinheit zum Erzeugen von Bilddaten und einer Verarbeitungseinheit zum Verarbeiten der von der Bildsensoreinheit an die Verarbeitungseinheit übergebenen Bilddaten. Die Verarbeitungseinheit weist eine ROI-Auswahleinheit zum Auswählen von für die Objektverfolgung interessanten Bildbereichen und eine Tracking-Einheit auf, um Trackingdaten von zu verfolgenden Objekten anhand der Bilddaten zur ermitteln.
  • In Ana TOLEDO, Christina VICENTE [et. al.]: ”Xilinx System Generator Based HW Components for Rapid Prototyping of Computer Vision SW/HW Systems”, 2005, In: J. S. Marques et. al (Eds.), IbPRIA 2005, LNCS 3522, 667–674, DOI: 10.1007/11492429_80, ist eine Simulations-Plattform für das Design von Vision-Systemen beschrieben.
  • In Kesheng WU; Ekow OTOO, Arie SHOSHANI: „Optimizing Connected Component Labeling Algorithms”, 2005, SPIE Vol 5747, S 1965, DOI: 10.1117/12.596105, sind unterschiedliche Algorithmen beschrieben, die eine schnelle Verarbeitung von zweidimensionalen Bildern ermöglichen.
  • In Nazim MIR-NASIRI, Haitham AL-OBAIDY [et. al.]: An Effective Vision Technique for Microchip Lead Inspection, 2003, Industrial Technology, ISBN: 0-7803-7852-0, 135–139, DOI: 10.1109/ICIT.2003.1290256, ist ein Vision-System beschrieben bei welchem mit einer ROI-Maske Bilddaten eines Grauwertbilds reduziert werden.
  • In RINNER, Bernhard; WOLFL, Wayne:
  • An Introduction to Distributed Smart Cameras. Proceedings of the IEEE, Vol. 96, No. 10, Octrober 2008, pp. 1565–1575 sind bildverarbeitende Systeme mit mehreren Smart-Kameras beschrieben.
  • In WOLF, Wayne, OZER, Burak; LV, Tiehan:
  • Smart Cameras as Embedded Systems. IEEE Computer, Vol. 35, No. 9, September 2002, pp. 48–53 sind Smart-Karmas beschrieben, mit welcher eine Echtzeit-Videoanalyse durchgeführt werden kann.
  • Der Erfindung liegt die Aufgabe zugrunde, einen Vision-Sensor bereitzustellen, der bei geringen Produktkosten eine hohe Verarbeitungsleistung mit einer flexiblen Programmierbarkeit kombiniert.
  • Zur Lösung dieser Aufgabe sind die Merkmale des Anspruchs 1 vorgesehen. Vorteilhafte Ausführungsformen und zweckmäßige Weiterbildungen der Erfindung sind in den Unteransprüchen beschrieben.
  • Der erfindungsgemäße bildverarbeitende Sensor umfasst einen Bilddaten generierenden Bildaufnehmer sowie eine Hardware-Rechnereinheit und eine Software-Rechnereinheit zur Auswertung der Bilddaten. Die Hardware-Rechnereinheit ist zwischen Bildaufnehmer und Software-Rechnereinheit angeordnet, so dass Bilddaten vom Bildaufnehmer in die Hardware-Rechnereinheit und von der Hardware-Rechnereinheit in die Software-Rechnereinheit übertragbar sind, wobei der Hardware-Rechnereinheit ein lokaler Bildspeicher dadurch zugeordnet ist, dass er über eine bidirektionale, breitbandige Datenverbindung an die Hardware-Rechnereinheit angekoppelt ist, und in welchem vom Bildaufnehmer in die Hardware-Rechnereinheit eingelesene Bilddaten zwischengespeichert werden. Der lokale Bildspeicher ist durch eine bidirektionale breitbandige Schnittstelle über die Hardware-Rechnereinheit an die Software-Rechnereinheit angekoppelt. Der Bildaufnehmer und die Hardware-Rechnereinheit werden von der Software-Rechnereinheit gesteuert. Während einer Konfiguration des bildverarbeitenden Sensors werden innerhalb eines mit dem Bildaufnehmer generierten Bildes die Position und Orientierung eines Objekts ermittelt und als Referenzposition und Referenzorientierung in der Hardware-Rechnereinheit gespeichert. Während der Konfiguration werden eine ROI(region of interest)-Maske eingestellt und diese ROI-Maske sowie deren Relativposition zum Objekt in der Hardware-Rechnereinheit gespeichert. In einem auf die Konfiguration folgenden Prozessbetrieb werden in der Hardware-Rechnereinheit die aktuelle Position und Orientierung des Objekts ermittelt. Die ROI-Maske wird als dynamische ROI-Maske derart nachpositioniert, dass deren Relativposition entsprechend der Änderung der aktuellen Position und Orientierung bezüglich der Referenzposition und Referenzorientierung geändert wird.
  • Die Leistungsfähigkeit des erfindungsgemäßen Vision-Sensors ist bei geringem konstruktivem Aufwand erhöht, in dem die Vorteile einer Flow-through-Architektur und einer Co-Prozessor-Architektur in der erfindungsgemäßen Hybrid-Architektur vereint sind.
  • Da bei dem erfindungsgemäßen Vision-Sensor die Hardware-Rechnereinheit zwischen dem Bildaufnehmer und der Software-Rechnereinheit angeordnet ist, kann die Hardware-Rechnereinheit zur Bildaufnahme, das heißt zum Einlesen der Bilddaten aus dem Bildaufnehmer genutzt werden, wobei hierbei vorteilhaft ist, dass mit der Bildaufnahme in der Hardware-Rechnereinheit eine Bildvorverarbeitung, insbesondere eine Filterung der Bilddaten, durchgeführt werden kann.
  • Ein weiterer wesentlicher Aspekt der Erfindung besteht darin, dass die mit der Hardware-Rechnereinheit vom Bildaufnehmer eingelesenen Bilddaten nicht nur vorverarbeitet und dann an die Software-Rechnereinheit weiter geliefert werden, sondern parallel hierzu in dem lokalen Bildspeicher zwischengespeichert werden, wodurch die Häufigkeit von Bildtransportoperationen und Kopieroperationen minimiert werden kann. Zudem ist der lokale Bildspeicher, vorzugsweise breitbandig, an die Software-Rechnereinheit angekoppelt.
  • Durch diese Architektur können bei Bedarf die Bilddaten aus dem lokalen Bildspeicher ausgelesen werden und dann entsprechend einer Flow-through-Architektur zuerst in der Hardware-Rechnereinheit und dann in der Software-Rechnereinheit bearbeitet werden. Dies bedeutet, dass die Hardware-Rechnereinheit als Co-Prozessor verwendbar ist, wobei die Bilddaten mehrfach auf verschiedene Weise in der Hardware-Rechnereinheit bearbeitet werden können. Durch diese Mehrfachnutzung der Hardware-Rechnereinheit kann einerseits die Bearbeitungsgeschwindigkeit bei der Bildverarbeitung gesteigert werden.
  • Erfindungsgemäß werden während einer Konfiguration des bildverarbeitenden Sensors innerhalb eines mit dem Bildaufnehmer generierten Bildes die Position und Orientierung eines Objekts ermittelt und als Referenzposition und Referenzorientierung in der Hardware-Rechnereinheit gespeichert. Während der Konfiguration wird eine ROI(region of interest)-Maske eingestellt. Diese ROI-Maske sowie deren Relativposition zum Objekt werden dann in der Hardware-Rechnereinheit gespeichert.
  • In einem auf die Konfiguration folgenden Prozessbetrieb werden in der Hardware-Rechnereinheit die aktuelle Position und Orientierung des Objekts ermittelt. Darauf wird die ROI-Maske als dynamische ROI-Maske derart nachpositioniert, dass deren Relativposition entsprechend der Änderung der aktuellen Position und Orientierung bezüglich der Referenzposition und Referenzorientierung geändert wird.
  • Mit der ROI-Maske kann ein dem Objekt fest zugeordneter Bereich zur Objekterfassung selektiv ausgewählt werden. Ein wesentlicher Vorteil hierbei besteht darin, dass mit der ROI-Maske außerhalb der ROI-Maske liegende Bildbereiche gelöscht werden und im Datentransfer zwischen Hardware-Rechnereinheit und Software-Rechnereinheit bei den durchzuführenden Bildverarbeitungsschritten nicht mehr mitgeführt werden müssen.
  • Die Vorgabe der ROI-Maske erfolgt in der Hardware-Rechnereinheit, wobei die ROI-Maske bevorzugt als pixelbezogene Maske ausgeführt ist, die für ein in der Hardware-Rechnereinheit generiertes Binärbild vorgegeben werden kann.
  • Ein wesentlicher Vorteil der Erfindung besteht darin, dass die ROI-Maske als dynamische Maske während des Arbeitsbereichs nachpositioniert werden kann. Damit kann die Position der ROI-Maske während des Prozessbetriebs des bildverarbeitenden Sensors an sich verändernde Positionen und Lagen des Objekts angepasst werden. Hierbei wird der Umstand ausgenutzt, dass sich während des Prozessbetriebs die Positionierung und Orientierung des Objekts zwar ändern können, nicht jedoch die Relativlage einer zu detektierenden Objektstruktur relativ zum Objekt und damit auch nicht die Relativposition der die Objektstruktur erfassenden ROI-Maske zu dem Objekt. Damit kann durch Erfassung einer Änderung der aktuellen Position und Orientierung des Objekts gegenüber der bei der Konfiguration ermittelten Referenzposition und Referenzorientierung die Position der ROI-Maske entsprechend geändert werden, wodurch gewährleistet ist, dass auch bei Lageänderungen des Objekts die ROI-Maske korrekt auf die zu detektierenden Objektstruktur ausgerichtet bleibt.
  • Die Nachpositionierung der dynamischen ROI-Maske erfolgt damit durch eine bloße Koordinatentransformation.
  • Hierzu kann gemäß einer ersten Alternative zur Nachpositionierung der dynamischen ROI-Maske eine pixelbasierte Transformation durchführbar sein.
  • Gemäß einer zweiten Alternative ist die Nachpositionierung der dynamischen ROI-Maske durch eine Transformation der äußeren Konturpunkte der ROI-Maske und ein nachträgliches Auffüllen der inneren Pixel der ROI-Maske durchführbar.
  • Wesentlich hierbei ist, dass die dynamische ROI-Maske stets in der Hardware-Rechnereinheit gehalten wird und auch die Nachpositionierung in der Hardware-Rechnereinheit erfolgt. Dies bedeutet, dass in der Software-Rechnereinheit keine aufwändigen Berechnungen zur Definition der ROI-Maske durchgeführt werden müssen und insbesondere ein Nachladen der ROI-Maske von der Software-Rechnereinheit in die Hardware-Rechnereinheit vermieden werden kann.
  • Damit werden für den erfindungsgemäßen bildverarbeitenden Sensor sehr kurze Zykluszeiten erreicht. Dies wiederum führt zu hohen Taktraten des bildverarbeitenden Sensors, das heißt eine hohe Anzahl von pro Sekunde erfassbaren Teilen. Eine hohe Taktrate ist insbesondere im Bereich der Qualitätskontrolle in Produktionsprozessen ein wesentliches Kriterium.
  • Die Erfindung wird im Folgenden anhand der Zeichnungen erläutert. Es zeigen:
  • 1: Schematische Darstellung eines Ausführungsbeispiels des erfindungsgemäßen Vision-Sensors.
  • 2: Darstellung von mit dem Vision-Sensor gemäß 1 zu detektierenden Werkstücken.
  • 3: Erfassung eines Werkstücks mit dem Vision-Sensor gemäß 1 während der Konfiguration.
  • 4: Darstellung der Referenzposition und Referenzorientierung des Werkstücks gemäß 3 sowie einer ROI-Maske in vorgegebener Relativposition zum Werkstück.
  • 5: Erfassung eines Werkstücks mit dem Vision-Sensor gemäß 1 während der Prozessbetriebs.
  • 6: Darstellung des Werkstücks gemäß 6 mit nachpositionierter ROI-Maske.
  • 1 zeigt ein Ausführungsbeispiel eines bildverarbeitenden Sensors in Form eines Vision-Sensors 1. Der Vision-Sensor 1 weist einen Bildaufnehmer 2 auf der aus einer Kamera in Form eines CMOS-Sensors oder dergleichen sowie einer vorgeordneten Optik besteht. Diesem Bildaufnehmer 2 ist eine nicht dargestellte Beleuchtung zugeordnet, mit der ein Raumbereich, in welchem die Bildaufnahme erfolgen soll, beleuchtet wird.
  • In dem Bildaufnehmer 2 generierte Bilddaten werden in einer Hybrid-Rechnerarchitektur verarbeitet, die eine Hardware-Rechnereinheit 3 und eine Software-Rechnereinheit 4 umfasst. Die Hardware-Rechnereinheit 3 ist im vorliegenden Fall von einem FPGA gebildet. Alternativ kann die Hardware-Rechnereinheit 3 von einem CPLD oder ASIC gebildet sein. Die Software-Rechnereinheit 4 ist im vorliegenden Fall von einem DSP gebildet. Alternativ kann die Software-Rechnereinheit 4 von einem Microcontroller gebildet sein.
  • Als Beispiele werden der Texas Instruments DSP TMS 320 DM 642 mit 4800 MMACS (Million Multiply Accumulate Cycles per Second) bei 600 MHz Taktfrequenz und einem 64 bit, 133 MHz Speicherinterface sowie das XILINX FPGA XC3S1600E mit einer Komplexität von 1,6 Mio Systemgates und 36 integrierten Multiplizierwerken genannt.
  • Der Bildaufnehmer 2 und die Hardware-Rechnereinheit 3 werden über eine Steuerverbindung 5 von der Software-Rechnereinheit 4 gesteuert, die von einem Prozessor oder dergleichen gebildet ist.
  • Wie aus 1 ersichtlich, ist die Hardware-Rechnereinheit 3 zwischen dem Bildaufnehmer 2 und der Software-Rechnereinheit 4 angeordnet. Dadurch wird mit der Hardware-Rechnereinheit 3 der Bildeinzug durchgeführt, das heißt das Einlesen der Bilddaten aus dem Bildaufnehmer 2. Hierzu ist eine Datenverbindung 6 zwischen Bildaufnehmer 2 und Hardware-Rechnereinheit 3 vorgesehen. In der Hardware-Rechnereinheit 3 wird eine Bildvorverarbeitung durchgeführt. Die so vorverarbeiteten Bilddaten werden über eine weitere Datenverbindung 7 der Software-Rechnereinheit 4 zugeführt, wo eine weitere Bildverarbeitung erfolgt.
  • In der Software-Rechnereinheit 4 wird dabei eine Ausgabegröße generiert, die über einen Kommunikations-Controller 8 als Schnittstellenelement ausgebbar ist. Über den Kommunikation-Controller 8 ist zudem eine Konfigurierung des Vision-Sensors 1 möglich.
  • Wie aus 1 weiter ersichtlich, ist der Hardware-Rechnereinheit 3 ein lokaler Bildspeicher 9 zugeordnet. Der lokale Bildspeicher 9 ist im vorliegenden Fall von einem SD-RAM 4 gebildet. Hierzu ist der lokale Bildspeicher 9 an die Hardware-Rechnereinheit 3 über eine bidirektionale breitbandige (typischerweise 64 bit, 133 MHz) Datenverbindung 10 angekoppelt. Bei dem Bildeinzug erfolgt in der Hardware-Rechnereinheit 3 nicht nur eine Bildvorverarbeitung der Bilddaten. Vielmehr werden die Bilddaten parallel in den lokalen Bildspeicher 9 zwischengespeichert.
  • Auch der Software-Rechnereinheit 4 ist ein lokaler Bildspeicher 11 in Form eines SD-RAM zugeordnet, wobei auch dieser lokale Bildspeicher 11 über eine bidirektionale, breitbandige Datenverbindung 12 an die Software-Rechnereinheit 4 angekoppelt ist. Dabei weist der die Software-Rechnereinheit 4 bildende DSP einen EMIF 13 (external memory interface) als Schnittstelle für diese Ankopplung auf.
  • Von der bidirektionalen Datenverbindung 12 zwischen der Software-Rechnereinheit 4 und dem lokalen Bildspeicher 11 zweigt eine weitere bidirektionale, breitbandige Datenverbindung 14 zu dem die Hardware-Rechnereinheit 3 bildenden FPGA ab. Durch diese Datenverbindung 14 wird eine Ankopplung zwischen der Software-Rechnereinheit 4 und dem lokalen Bildspeicher 9 der Hardware-Rechnereinheit 3 realisiert, wobei diese Ankopplung über die Hardware-Rechnereinheit 3 erfolgt.
  • Aus dem der Hardware-Rechnereinheit 3 zugeordneten lokalen Bildspeicher 9 können, insbesondere durch die Software-Rechnereinheit 4, die Bilddaten mehrfach ausgelesen und in verschiedener Weise bearbeitet werden. Dabei kann die Flow-through-Struktur der Architektur gemäß 1 derart genutzt werden, dass die aus dem lokalen Bildspeicher 9 ausgelesenen Daten zunächst in der Hardware-Rechnereinheit 3 und dann in der Software-Rechnereinheit 4 bearbeitet werden. Damit kann bei dieser Architektur ohne aufwendige Bildtransportprozesse die Hardware-Rechnereinheit 3 mehrfach genutzt und damit als Co-Prozessor verwendet werden.
  • In 2 ist eine typische Applikation für den Vision-Sensor 1 gemäß 1 dargestellt. 2 zeigt auf einer Fördereinrichtung 15 in einer Förderrichtung F mit einer Geschwindigkeit v geförderte Werkstücke 16. Die Werkstücke 16 weisen jeweils eine identische Form auf. Mit dem von oben auf die Fördereinrichtung 15 gerichteten Vision-Sensor 1 soll erfasst werden, ob die Werkstücke 16 im Bereich der Spitze eine Bohrung 17 aufweisen. Nur dann ist das Werkstück 16 in Ordnung. Fehlt die Bohrung 17, wie bei dem rechten Werkstück 16 in 2, so liegt ein defektes Werkstück 16 vor.
  • Eine Schwierigkeit besteht, wie in 2 dargestellt, darin, dass die Werkstücke 16 in unterschiedlichen Richtungen orientiert auf der Fördereinrichtung 15 angeordnet sein können.
  • Um die Werkstücke 16 als Objekte und die Bohrungen 17 als relevante Objektstrukturen zu erfassen, wird, wie in 3 dargestellt, während der Konfiguration des Vision-Sensors 1 bei stehender Fördereinrichtung 15 ein Werkstück 16 erfasst, dessen Längsachse in Längsrichtung der Fördereinrichtung 15 ausgerichtet ist. Die Erfassung erfolgt innerhalb des Bildbereichs 18 des Bildaufnehmers 2. Dieser Bildbereich 18 kann als eine erste statische pixelbezogene ROI(region of interest)-Maske definiert werden, die alle Pixel des Bildaufnehmers 2 umfasst.
  • In einem ersten Schritt werden die Position und Orientierung des Werkstücks 16 ermittelt. Hierzu wird eine sogenannten BLOB-(Binarized large object)-Analyse eingesetzt, die beispielsweise in dem Artikel „Development of FPGA-based real-time BLOB-analysis circuit”, J. Trein, A. Schwarzbacher, B. Hoppe, K.-H. Noffz, T. Trenschel in ISSC 2007 beschrieben ist. Bei dieser BLOB-Analyse die in einem BLOB-tool, das heißt Softwaremodul in der Hardware-Rechnereinheit 3 durchgeführt wird, erfolgt eine Bildverarbeitung derart, dass Objekte oder Objektmerkmale von einem Hintergrund oder anderen Objekten separiert werden. Ein BLOB oder ein Objekt ist dabei durch einen Satz von Pixeln des Bildes definiert, die untereinander zusammenhängen und sich von einem Hintergrund unterscheiden. Dabei wird ein binarisiertes Bild verwendet, so dass beispielsweise ein BLOB von einem zusammenhängenden Raster dunkler Pixel gebildet ist, die sich von einem von hellen Pixeln gebildeten Hintergrund oder anderen Objekten separiert werden. Dabei wird ein binarisiertes Bild verwendet, so dass beispielsweise ein BLOB von einem zusammenhängenden Raster dunkler Pixel gebildet ist, die sich von einem von hellen Pixeln gebildeten Hintergrund abheben. Durch geeignete Bildverarbeitungsalogrythmen wird dann für das Werkstück 16, gebildet von einem derartigen BLOB, die Position und Orientierung bestimmt.
  • Dies ist in 3 dargestellt. Dort sind die Image-Koordinaten, das heißt die auf die Achsen des Bildbereichs 18 bezogenen Koordinaten mit x, y bezeichnet. Mit xREF, yREF sind die Koordinaten eines charakteristischen Punkts des Werkstücks 16, beispielsweise des Schwerpunkts, gekennzeichnet. Der Winkel αREF schließlich definiert die Orientierung der Längsachse des Werkstücks 16. Der Winkel αREF ist bezüglich der x-Achse definiert, das heißt im vorliegenden Fall ist αREF = 0. Die Koordinaten xREF, yREF werden in der Hardware-Rechnereinheit 3 als Referenzposition und der Winkel αREF als Referenzorientierung in der Hardware-Rechnereinheit 3 abgespeichert.
  • In einem zweiten Schritt wird in der Hardware-Rechnereinheit 3 eine pixelbezogene dynamische ROI-Maske 19 definiert, die, wie aus 4 ersichtlich, eine rechteckige Kontur aufweist, so dass deren Position und Orientierung relativ zur Referenzposition durch die Koordinaten P1, P2, P3, P4 der Ecken der ROI-Maske eindeutig bestimmt ist.
  • Bei Objekten, die nicht durch Eckpunkte definiert werden können, können deren Konturen durch geometrische Formbeschreibungen vorgegeben werden. Diese können beispielsweise bei elliptischen ROI-Masken von den Hauptachsen der Ellipse gebildet sein.
  • Durch entsprechende Eingabebefehle gibt ein Benutzer Größe, Form und Lage der dynamischen ROI-Maske so vor, dass die Bohrung 17 als zu detektierende Objektstruktur innerhalb der dynamischen ROI-Maske liegt. Die Koordinaten P1 bis P4 der so eingestellten dynamischen ROI-Maske und damit deren Relativposition zum Werkstück werden ebenfalls in der Hardware-Rechnereinheit 3 gespeichert, wodurch die Konfiguration abgeschlossen ist.
  • In dem auf die Konfiguration folgenden Prozessbetrieb werden Werkstücke 16 in beliebiger Orientierung auf der mit der Geschwindigkeit v bewegten Fördereinrichtung 15 bewegt. Während der Bewegung der Werkstücke 16 wird mit dem Vision-Sensor 1 erkannt, ob diese eine Bohrung 17 aufweisen oder nicht.
  • 4 zeigt die Erfassung eines während des Prozessbetriebs auf der Fördereinrichtung 15 bewegten Werkstücks 16, das in dem Bildbereich des Vision-Sensors 1 erfasst wird.
  • Mittels des bereits während der Konfiguration eingesetzten BLOB-tools in der Hardware-Rechnereinheit 3 werden, wie in 6 veranschaulicht, die aktuelle Position und Orientierung des Werkstücks 16 bestimmt. Wie aus den 6, 7 ersichtlich, sind die Position und Orientierung des Werkstücks 16 innerhalb des Bildbereichs, gekennzeichnet durch die Koordinaten xP, yP und den Winkel αP gegenüber der Referenzposition und Referenzorientierung, das heißt den Koordinaten xREF, yREF und dem Winkel αREF, die in 6 zusätzlich dargstellt sind, verändert.
  • In der Hardware-Rechnereinheit 3 wird entsprechend der Änderung der aktuellen Position und Orientierung gegenüber der Referenzposition und Referenzorientierung die ROI-Maske 19 nachpositioniert, so dass diese wieder denselben Bereich des Werkstücks 16, wo die Bohrung 17 erwartet wird, erfasst.
  • Dies ist in 6 dargestellt. Die dynamische ROI-Maske 19 ist derart gegenüber der Ausgangslage bei der Konfiguration (3) geändert, dass die Ecken der ROI-Maske nun die Koordinaten P1', P2', P3', P4' aufweisen. Diese Koordinaten gehen durch eine Transformation aus den ursprünglichen Koordinaten P1, P2, P3, P4 hervor, wobei sich diese Transformation aus der Änderung der aktuellen Position und Orientierung gegenüber der Referenzposition und Referenzorientierung des Werkstücks 16 errechnet.
  • Diese Transformation zur Nachpositionierung der dynamischen ROI-Maske kann einerseits auf jedes Pixel der ROI-Maske angewendet werden.
  • Eine schnellere Methode der Transformation besteht darin, dass nur die Eckpunkte der ROI-Maske von den ursprünglichen Werten P1 bis P4 in die aktuellen Werte umgerechnet werden. Dann stehen die Eckpunkte der geänderten ROI-Maske fest, so dass in einem zweiten Schritt die Pixel zwischen den aktuellen Eckpunkten aufgerollt werden, um damit die komplette ROI-Maske zu erhalten.
  • Die kompletten Berechnungsvorgänge zur Nachpositionierung erfolgen in der Hardware-Rechnereinheit 3. Dies bedeutet, dass in der Software-Rechnereinheit 4 keine Bearbeitung der ROI-Maske erfolgt, so dass auch kein Nachladen der ROI-Maske von der Software-Rechnereinheit 4 in die Hardware-Rechnereinheit 3 notwendig ist, wodurch sehr kurze Zykluszeiten bei der Objekterfassung erhalten werden.
  • Anhand der nachpositionierten ROI-Maske wird dann mittels einer weiteren BLOB-Analyse in einem zweiten BLOB-tool geprüft, ob innerhalb der ROI-Maske die erwartete Bohrung 17 vorliegt. Ist dies der Fall, wird in dem Vision-Sensor 1 eine Meldung generiert, dass ein fehlerfreies Werkstück 16 vorliegt. Ist dies nicht der Fall, wird ein fehlerhaftes Werkstück 16 gemeldet.
  • Bezugszeichenliste
  • 1
    Vision-Sensor
    2
    Bildaufnehmer
    3
    Hardware-Rechnereinheit
    4
    Software-Rechnereinheit
    5
    Steuerverbindung
    6
    Datenverbindung
    7
    Datenverbindung
    8
    Kommunikations-Controller
    9
    lokaler Bildspeicher
    10
    Datenverbindung
    11
    lokaler Bildspeicher
    12
    Datenverbindung
    13
    EMIF
    14
    Datenverbindung
    15
    Fördereinrichtung
    16
    Werkstück
    17
    Bohrung
    18
    Bildbereich
    19
    ROI-Maske

Claims (14)

  1. Bildverarbeitender Sensor mit einem Bilddaten generierenden Bildaufnehmer (2) und mit einer Hardware-Rechnereinheit (3) und einer Software-Rechnereinheit (4) zur Auswertung der Bilddaten, wobei die Hardware-Rechnereinheit (3) zwischen Bildaufnehmer (2) und Software-Rechnereinheit (4) angeordnet ist, so dass Bilddaten vom Bildaufnehmer (2) in die Hardware-Rechnereinheit (3) und von der Hardware-Rechnereinheit (3) in die Software-Rechnereinheit (4) übertragbar sind, wobei der Hardware-Rechnereinheit (3) ein lokaler Bildspeicher (9) dadurch zugeordnet ist, dass er über eine bidirektionale, breitbandige Datenverbindung (10) an die Hardware-Rechnereinheit (3) angekoppelt ist, und in welchem vom Bildaufnehmer (2) in die Hardware-Rechnereinheit (3) eingelesene Bilddaten zwischengespeichert werden, dadurch gekennzeichnet, dass der lokale Bildspeicher (9) durch eine bidirektionale breitbandige Schnittstelle (14) über die Hardware-Rechnereinheit (3) an die Software-Rechnereinheit (4) angekoppelt ist, und dass der Bildaufnehmer (2) und die Hardware-Rechnereinheit (3) von der Software-Rechnereinheit (4) gesteuert werden, und dass während einer Konfiguration des bildverarbeitenden Sensors innerhalb eines mit dem Bildaufnehmer (2) generierten Bildes die Position und Orientierung eines Objekts ermittelt und als Referenzposition und Referenzorientierung in der Hardware-Rechnereinheit (3) gespeichert werden, dass während der Konfiguration eine ROI(region of interest)-Maske eingestellt wird und diese ROI-Maske sowie deren Relativposition zum Objekt in der Hardware-Rechnereinheit (3) gespeichert werden, und dass in einem auf die Konfiguration folgenden Prozessbetrieb in der Hardware-Rechnereinheit (3) die aktuelle Position und Orientierung des Objekts ermittelt werden, und darauf die ROI-Maske als dynamische ROI-Maske derart nachpositioniert wird, dass deren Relativposition entsprechend der Änderung der aktuellen Position und Orientierung bezüglich der Referenzposition und Referenzorientierung geändert wird.
  2. Sensor nach Anspruch 1, dadurch gekennzeichnet, dass die dynamische ROI-Maske einen Teil des Objekts umfasst.
  3. Sensor nach Anspruch 2, dadurch gekennzeichnet, dass innerhalb der dynamischen ROI-Maske eine zu detektierende Objektstruktur des Objekts liegt.
  4. Sensor nach einem der Ansprüche 1 bis 3, dadurch gekennzeichnet, dass während der Konfiguration das Objekt innerhalb einer statischen ROI-Maske erfassbar ist.
  5. Sensor nach Anspruch 4, dadurch gekennzeichnet, dass die statische ROI-Maske vom gesamten mit dem Bildaufnehmer (2) erfassten Bildbereich gebildet ist.
  6. Sensor nach einem der Ansprüche 1 bis 5, dadurch gekennzeichnet, dass zur Nachpositionierung der dynamischen ROI-Maske eine pixelbasierte Transformation durchführbar ist.
  7. Sensor nach einem der Ansprüche 1 bis 5, dadurch gekennzeichnet, dass zur Nachpositionierung der dynamischen ROI-Maske geometrische Formbeschreibungen der ROI-Maske verwendet werden.
  8. Sensor nach einem der Ansprüche 1 bis 7, dadurch gekennzeichnet, dass die Objekterfassung mittels einer BLOB(Binarized large object)-Analyse erfolgt.
  9. Sensor nach einem der Ansprüche 1 bis 8, dadurch gekennzeichnet, dass in dem Bildaufnehmer (2) generierte Bilddaten zunächst in der Hardware-Rechnereinheit (3) und dann in der Software-Rechnereinheit (4) bearbeitet werden, und dass parallel hierzu die Bilddaten im lokalen Bildspeicher (9) zwischengespeichert werden.
  10. Sensor nach einem der Ansprüche 1 bis 9, dadurch gekennzeichnet, dass die Bilddaten aus dem lokalen Bildspeicher (9) auslesbar sind und dann zunächst in der Hardware-Rechnereinheit (3) und anschließend in der Software-Rechnereinheit (4) bearbeitet werden.
  11. Sensor nach einem der Ansprüche 1 bis 10, dadurch gekennzeichnet, dass der Software-Rechnereinheit (4) ein weiterer lokaler Bildspeicher (11) zugeordnet ist.
  12. Sensor nach einem der Ansprüche 1 bis 11, dadurch gekennzeichnet, dass der Software-Rechnereinheit (4) ein Kommunikations-Controller (8) zugeordnet ist.
  13. Sensor nach einem der Ansprüche 1 bis 12, dadurch gekennzeichnet, dass die Hardware-Rechnereinheit (3) von einem FPGA (field programmable gate array), von einem ASIC oder von einem CPLD (complex programmable logic device) gebildet ist.
  14. Sensor nach einem der Ansprüche 1 bis 13, dadurch gekennzeichnet, dass die Software-Rechnereinheit (4) von einem DSP (Digitaler Signalprozessor) oder von einem Microcontroller gebildet ist.
DE102009009533.0A 2009-02-18 2009-02-18 Bildverarbeitender Sensor Active DE102009009533B4 (de)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE102009009533.0A DE102009009533B4 (de) 2009-02-18 2009-02-18 Bildverarbeitender Sensor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102009009533.0A DE102009009533B4 (de) 2009-02-18 2009-02-18 Bildverarbeitender Sensor

Publications (2)

Publication Number Publication Date
DE102009009533A1 DE102009009533A1 (de) 2010-08-26
DE102009009533B4 true DE102009009533B4 (de) 2016-09-15

Family

ID=42356601

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102009009533.0A Active DE102009009533B4 (de) 2009-02-18 2009-02-18 Bildverarbeitender Sensor

Country Status (1)

Country Link
DE (1) DE102009009533B4 (de)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3537707A1 (de) 2018-03-06 2019-09-11 B&R Industrial Automation GmbH Kamerakern einer smart kamera für die industrielle bildverarbeitung und verfahren zur industriellen bildverarbeitung
DE102019135211A1 (de) * 2019-12-19 2021-06-24 Sensific GmbH Verfahren und Vorrichtung zur Nachverfolgung von Objekten

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102019200800A1 (de) * 2019-01-23 2020-07-23 Robert Bosch Gmbh Gestreamte Wiedergabe monochrom aufgenommener Bilder in Farbe

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5341143A (en) * 1987-07-24 1994-08-23 Northrop Grumman Corporation Hierarchical tracker and method
US5914711A (en) * 1996-04-29 1999-06-22 Gateway 2000, Inc. Method and apparatus for buffering full-motion video for display on a video monitor
DE102005009626A1 (de) * 2005-02-24 2006-08-31 Universität Tübingen Kamera zum Verfolgen von Objekten

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5341143A (en) * 1987-07-24 1994-08-23 Northrop Grumman Corporation Hierarchical tracker and method
US5914711A (en) * 1996-04-29 1999-06-22 Gateway 2000, Inc. Method and apparatus for buffering full-motion video for display on a video monitor
DE102005009626A1 (de) * 2005-02-24 2006-08-31 Universität Tübingen Kamera zum Verfolgen von Objekten

Non-Patent Citations (29)

* Cited by examiner, † Cited by third party
Title
ANDRAKA, Ray: Dynamic hardware video processing platform. Proc. SPIE 2914, High-Speed Computing, Digital Signal Processing, and Filtering Using Reconfigurable Logic, 90 (October 21, 1996); *
ARTH, Clemens: Visual Surveillance on DSP-Based Embedded Platforms. Dissertation, Graz University of Technology, Institute for Computer Graphics and Vision, März 2008. Graz: TU, 2008. *
BROERS, Harry et al.: Architecture Study for Smart Cameras. EOS (European Optial Society) Conference on Industrial Imaging and Machine Vision, Munich, Germany, June 13-15, 2005. Conference Proceedings, pp. 39-49 *
CHALIMBAUD, Pierre; BERRY, Francois; MARTINET, P.: The Task "Template Tracking" in a Sensor Dedicated to Active Vision. 2003 IEEE International Workshop on Computer Architectures for Machine Perception, CAMP'03, New Orleans, 12-16 May 2003. Proceedings, ISBN 0-7803-7970-5, pp. 307 - 313. *
DIETRICH, Dietmar; GARN, Heinrich; KEBSCHULL, Udo et al. [Hrsg.]: Embedded Vision System. EURASIP Journal on Embedded Systems, Special Issue, Volume 2007. Hindawi Publishing Corporation, 2007. *
FATEMI, Hamed: Processor Architecture Design for Smart Cameras. Dissertation, TU Eindhoven. ISBN 978-90-386-1983-5. Eindhoven: Technische Universität Eindhoven, 2007 *
GRAEFE, Volker, FLEDER, Karlheinz: A Powerful and Flexible Co-Processor for Feature Extraction in a Robot Vision System. 1991 International Conference on Industrial Electronics, Control and Instrumentation, IECON '91, Kobe, Japan, 28 Oct-1 Nov 1991. Conference Proceedings, ISBN 0-87942-688-8, Vol. 3, pp. 2019-2024 *
GRAEFE, Volker: Echtzeit-Bildverarbeitung für ein Fahrer-Unterstützungssystem zum Einsatz auf Autobahnen. it + ti - Informationstechnik und Technische Informatik 36 (1994) 1, Heft 1/94, Sonderheft Robotik, R. Oldenbourg Verlag, S. 16-24. *
GRAEFE, Volker: The BVV-Family of Robot Vision Systems. IEEE International Workshop on Intelligent Motion Control, Istanbul, 20-22 August 1990, Conference Proceedings, Vol. 1, pp. IP-55 - IP -65 *
HAMBLEN, James O.; HALL, Tyson S.: Using System-on-a-Programmable-Chip Technology to Design Embedded Systems. International Journal of Computer Applications IJCA, Vol. 13, No. 3, Sept. 2006, pp. 1 - 11. *
HODSON, Mike: Prototyping Image Processing Applications. Firmenschrift, Xilinx. Xcell Journal, Fourth Quarter 2007, pp. 31 - 33. *
KNAPP, Steven K.: Using Programmable Logic to Accelerate DSP Functions. Firmenschrift, Xilinx, Inc. and The ASM Group. San Jose: Xilinx, 1995. *
MICRON: MT43C8128A/9A 128K x 8 Triple-Port DRAM. Data Sheet, MT43C8128A/9A Rev. 6/94. S. 4-47 - 4-92. MICRON Semiconductor, Inc., 1994. *
MIR-NASIRI, Nazim; AL-OBAIDY, Haitham; SALAMI, Momoh J. E.; AMIN, Shamsuddin: An Effective Vision Technique for Microchip Lead Inspection. 2003 IEEE International Conference on Industrial Technology, ICIT 2003, Maribor, Slovenia, 10-12 December 2003. Conference Proceedings, Vol. 1, ISBN 0-7803-7852-0, pp. 135 - 139. *
MOON, Hosun; MOON, Sunghwan; SEO, Youngbin; KIM, Yongdeak: A Hardware/Software Codesign for Image Processing in a Processor Based Embedded System for Vehicle Detection. International Journal of Information Processing Systems, ISSN 1738-8899, Vol. 1, No. 1, 2005, pp. 27 - 31. *
MUSTAFAH, Y. M.; AZMAN, A. W. et al.: An Automated Face Recognition System for Intelligence Surveillance: Smart Camera Recognizing Faces in the Crowd. First ACM/IEEE International Conference on Distributed Smart Cameras, ICDSC '07, 25-28 Sept. 2007. Conference Proceedings, ISBN 978-1-4244-1354-6, pp. 147-152 *
RINNER, Bernhard; WOLF, Wayne: An Introduction to Distributed Smart Cameras. Proceedings of the IEEE, Vol. 96, No. 10, October 2008, pp. 1565 - 1575. *
SCHLESSMAN, Jason; CHEN, Cheng-Yao; OZER, Burak et al.: Hardware/Software Co-Design of an FPGA-based Embedded Tracking System. 2006 Conference on Computer Vision and Pattern Recognition Workshop, CVPRW’06, 17-22 June 2006. Conference Proceedings, ISBN 0-7695-2646-2, Article 123.
SCHLESSMAN, Jason; CHEN, Cheng-Yao; OZER, Burak et al.: Hardware/Software Co-Design of an FPGA-based Embedded Tracking System. 2006 Conference on Computer Vision and Pattern Recognition Workshop, CVPRW'06, 17-22 June 2006. Conference Proceedings, ISBN 0-7695-2646-2, Article 123. *
SCHMID, Reiner: Industrielle Bildverarbeitung. Vom visuellen Empfinden zur Problemlösung. ISBN 978-3-528-04945-4. Braunschweig; Wiesbaden: Friedr. Vieweg & Sohn, 1995. S. I-VIII, 1-5, 26-31, 75-79, 146-150, 187-196, 225-233. *
SCHREY, O.; HUPPERTZ, J.; FILIMONOVIC, G.; BUSSMANN, A.; BROCKHERDE, W.; HOSTICKA, B. J.: A 1Kx1K High Dynamic Range CMOS Image Sensor with On-Chip Programmable Region of Interest Readout. Proceedings of the 27th European Solid-State Circuits Conference, 2001. ESSCIRC 2001, pp. 97 - 100. *
SEDCOLE, Nicholas Peter: Reconfigurable Platform-Based Design in FPGAs for Video Image Processing. PhD Thesis, Department of Electrical and Electronic Engineering, Imperial College of Science, Technology and Medicine, University of London, January 2006. London: Imperial College, 2006. *
TEICH, Jürgen: Digitale Hardware/Software-Systeme. ISBN 978-3-540-62433-2. Berlin; Heidelberg: Springer, 1997. Kapitel 1: Einleitung, S. 1 - 30; Kapitel 7: Softwaresynthese, Abschnitt 7.1, S. 270 - 274, und Abschnitt 7.13, S. 359-366. *
TESSAROLO, Alex: Using VRAMs and DSPs for System Performance. TMS320 DSP Designer’s Notebook. Firmenschrift, Texas Instruments, Application Brief: SPRA224. Texas Instruments Incorporated, March 1993, Copyright 1997.
TESSAROLO, Alex: Using VRAMs and DSPs for System Performance. TMS320 DSP Designer's Notebook. Firmenschrift, Texas Instruments, Application Brief: SPRA224. Texas Instruments Incorporated, March 1993, Copyright 1997. *
TOLEDO, Ana; VICENTE-CHICOTE, Cristina; SUARDÍAZ, Juan; CUENCA, Sergio: Xilinx System Generator Based HW Components for Rapid Prototyping of Computer Vision SW/HW Systems. In: J. S. Marques et al. (Eds.): IbPRIA 2005, LNCS 3522. Berlin; Heidelberg: Springer, 2005. pp. 667 - 674. *
TREIN, J.; SCHWARZBACHER, A. TH. et al.: Development of a FPGA Based Real-Time Blob Analysis Circuit. Irish Systems and Signals Conference, ISSC 2007 , Derry, North Ireland, Sept. 13-14, 2007. Conference Proceedings , pp. 121-126 *
WOLF, Wayne; OZER, Burak; LV, Tiehan: Smart Cameras as Embedded Systems. IEEE Computer, Vol. 35, No. 9, September 2002, pp. 48 - 53. *
WU, Kesheng; OTOO, Ekow; SHOSHANI, Arie: Optimizing connected component labeling algorithms. Proc. SPIE 5747, Medical Imaging 2005: Image Processing, 1965 (May 05, 2005); *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3537707A1 (de) 2018-03-06 2019-09-11 B&R Industrial Automation GmbH Kamerakern einer smart kamera für die industrielle bildverarbeitung und verfahren zur industriellen bildverarbeitung
DE102019135211A1 (de) * 2019-12-19 2021-06-24 Sensific GmbH Verfahren und Vorrichtung zur Nachverfolgung von Objekten

Also Published As

Publication number Publication date
DE102009009533A1 (de) 2010-08-26

Similar Documents

Publication Publication Date Title
DE102008052930B4 (de) Bildverarbeitender Sensor
EP1789925B1 (de) Vorrichtung, verfahren und computerprogramm zum ermitteln einer information über eine form und/oder eine lage einer ellipse in einem graphischen bild
EP2854106B1 (de) 3D-Kamera nach dem Stereoskopieprinzip und Verfahren zum Erfassen von Tiefenkarten
WO2015117905A1 (de) 3d-bildanalysator zur blickrichtungsbestimmung
DE102009009533B4 (de) Bildverarbeitender Sensor
EP1575808B1 (de) Bildgeber
EP0523407A2 (de) Verfahren zur Klassifikation von Signalen
EP3188080B1 (de) Verfahren zur auswertung von gesten
EP3586090B1 (de) Verfahren zum kalibrieren eines sensorsystems
Belu et al. Poka Yoke system based on image analysis and object recognition
EP3907466A1 (de) 3d-sensor und verfahren zur erfassung von dreidimensionalen bilddaten eines objekts
WO2008034599A2 (de) Verfahren und vorrichtung zur bildverarbeitung
EP1709587B1 (de) Bildverarbeitungssystem
WO2022018019A1 (de) Verfahren und system bzw. vorrichtung zum erkennen eines objektes in einem elektronischen bild
DE10147807A1 (de) Verfahren zur dreidimensionalen Erfassung von Objekten oder Szenen
DE10142457A1 (de) Digitale Bildmessung retroreflektierender Marken
EP0966727B1 (de) Kompaktes sensorsystem zur optischen bewegungserkennung in echtzeit
Song et al. A hardware architecture design for real-time Gaussian filter
DE112021005088T5 (de) Informationsverarbeitungsvorrichtung und informationsverarbeitungssystem
Mohapatra et al. Optimized approach of sobel edge detection technique using Xilinx system generator
WO2020043440A1 (de) Richtungsschätzung einer freiraumgeste
EP2214135B1 (de) Pipeline-Recheneinrichtung zur Verbindung von Konturelementen aus Bilddaten
Szatmári et al. An analogic CNN engine board with the 64/spl times/64 analog I/O CNN-UM chip
DE112010004292B4 (de) System und Verfahren zur Ausrichtung und Inspektion von Ball Grid Array Geräten
DE19516274C1 (de) Anordnung zur Kontrolle von kontinuierlich an einem Kontrollpunkt vorbeibewegten Objekten

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
R016 Response to examination communication
R018 Grant decision by examination section/examining division
R020 Patent grant now final