BE1029310B1 - SYSTEMS AND METHODS FOR ENHANCEMENT OF IMAGE CONTENT CAPTURED BY A MACHINE VIEW CAMERA - Google Patents
SYSTEMS AND METHODS FOR ENHANCEMENT OF IMAGE CONTENT CAPTURED BY A MACHINE VIEW CAMERA Download PDFInfo
- Publication number
- BE1029310B1 BE1029310B1 BE20225323A BE202205323A BE1029310B1 BE 1029310 B1 BE1029310 B1 BE 1029310B1 BE 20225323 A BE20225323 A BE 20225323A BE 202205323 A BE202205323 A BE 202205323A BE 1029310 B1 BE1029310 B1 BE 1029310B1
- Authority
- BE
- Belgium
- Prior art keywords
- image
- boundary
- display area
- indicia
- pixel coordinate
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
- G06T7/73—Determining position or orientation of objects or cameras using feature-based methods
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/20—Image preprocessing
- G06V10/22—Image preprocessing by selection of a specific region containing or referencing a pattern; Locating or processing of specific regions to guide the detection or recognition
- G06V10/225—Image preprocessing by selection of a specific region containing or referencing a pattern; Locating or processing of specific regions to guide the detection or recognition based on a marking or identifier characterising the area
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/20—Scenes; Scene-specific elements in augmented reality scenes
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/10—Character recognition
- G06V30/14—Image acquisition
- G06V30/1444—Selective acquisition, locating or processing of specific regions, e.g. highlighted text, fiducial marks or predetermined fields
- G06V30/1448—Selective acquisition, locating or processing of specific regions, e.g. highlighted text, fiducial marks or predetermined fields based on markings or identifiers characterising the document or the area
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10004—Still image; Photographic image
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20092—Interactive image processing based on input by user
- G06T2207/20104—Interactive definition of region of interest [ROI]
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30204—Marker
- G06T2207/30208—Marker matrix
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2210/00—Indexing scheme for image generation or computer graphics
- G06T2210/12—Bounding box
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Studio Devices (AREA)
Abstract
Systeme und Verfahren zum Anreichern eines von einer Maschinensicht-Kamera aufgenommenen Bildinhalts sind hier offenbart. Ein beispielhaftes Verfahren weist auf: Empfangen eines von einer Maschinensicht-Kamera aufgenommenen Bilds, das eine Mehrzahl von Angaben enthält, Bestimmen von Begrenzungen eines Begrenzungsrahmens für jede entsprechende Angabe und Anzeigen einer Mehrzahl von Einträgen, die den entsprechenden Angaben entsprechen. Das beispielhafte Verfahren weist ferner auf: Empfangen einer Auswahl eines Eintrags und Bestimmen von Koordinatengrenzen des Begrenzungsrahmens und eines Sekundärrahmens des Eintrags. Das beispielhafte Verfahren enthält ferner ein Anzeigen des Bilds, sodass ein Mittelpunkt des Sekundärrahmens in der Nähe des Mittelpunkts eines Anzeigebereichs angeordnet ist, und ein Skalieren des Bilds, sodass mindestens eine aus einer senkrechten Pixelzahl oder einer waagrechten Pixelzahl des Sekundärrahmens innerhalb eines Verhältnisschwellenwerts einer senkrechten Pixelzahl bzw. einer waagrechten Pixelzahl des Anzeigebereichs ist.Systems and methods for enhancing image content captured by a machine vision camera are disclosed herein. An exemplary method includes receiving an image captured by a machine vision camera that includes a plurality of items of information, determining boundaries of a bounding box for each corresponding item of information, and displaying a plurality of items corresponding to the corresponding items of information. The example method further includes: receiving a selection of an entry and determining coordinate boundaries of the bounding box and a secondary frame of the entry. The example method further includes displaying the image such that a center point of the secondary frame is located near the center point of a display area, and scaling the image such that at least one of a vertical pixel count and a horizontal pixel count of the secondary frame is within a vertical pixel count ratio threshold or a horizontal number of pixels of the display area.
Description
1 BE2022/53231 BE2022/5323
SYSTEME UND VERFAHREN ZUM ANREICHERN EINES VONSYSTEMS AND METHODS FOR ENRICHING ONE OF
EINER MASCHINENSICHT-KAMERA AUFGENOMMENENCAPTURED BY A MACHINE VIEW CAMERA
BILDINHALTSIMAGE CONTENT
HINTERGRUNDBACKGROUND
Über die Jahre verlässt sich die industrielle Automation in zunehmendem Maße auf Maschinensichtkomponenten, die dazu fähig sind,Over the years, industrial automation has increasingly relied on machine vision components capable of
Bedienpersonen in einer Vielzahl von Aufgaben zu unterstützen. In manchenTo support operators in a variety of tasks. In some
Implementierungen werden Maschinensichtkomponenten, wie zum BeispielImplementations become machine-view components, such as
Kameras, dazu verwendet, sich vorbeibewegende Objekte nachzuverfolgen, wie zum Beispiel diejenigen, die sich auf Förderbändern an stationären Kameras vorbeibewegen. Oft werden diese Kameras zusammen mit der Backend-Software dazu verwendet, Bilder aufzunehmen und eine Vielzahl von Parametern zu bestimmen, die den sich vorbeibewegenden Gegenständen zugeordnet sind. EinCameras used to track moving objects, such as those traveling on conveyor belts past stationary cameras. Often these cameras are used in conjunction with backend software to capture images and determine a variety of parameters associated with objects moving by. A
Aspekt hiervon erfordert leicht zu bedienende Mittel zum Visualisieren verschiedener Elemente auf dem Bildschirm einer Benutzerrechnervorrichtung, auf der die Backend-Software ausgeführt wird. Es besteht daher ein Bedarf nach verbesserten Systemen und Verfahren, die solche Merkmale bereitstellen.Aspect of this requires an easy-to-use means of visualizing various elements on the screen of a user computing device running the backend software. There is therefore a need for improved systems and methods that provide such features.
ZUSAMMENFASSUNGSUMMARY
In einer Ausführungsform stellt die vorliegende Erfindung einIn one embodiment, the present invention sets out
Verfahren zum Anreichern eines von einer Maschinensicht-Kamera aufgenommenen Bildinhalts bereit. Das Verfahren kann Folgendes umfassen:Method for enhancing an image content recorded by a machine vision camera. The procedure may include:
Empfangen, an einer Anwendung, die auf einer Benutzerrechnervorrichtung ausgeführt wird, die mit einer Maschinensicht-Kamera in einerReceived, at an application running on a user computing device connected to a machine vision camera in a
Kommunikationsverbindung steht, eines von der Maschinensicht-Kamera aufgenommenen Bilds, wobei das Bild eine Mehrzahl von Angaben enthält, wobei in jeder der mehreren Angaben eine Nutzlast codiert ist; Identifizieren einer jedenin communication, an image captured by the machine vision camera, the image including a plurality of indicia, each of the plurality of indicia having a payload encoded therein; Identify each
Angabe in dem Bild; für jede der entsprechenden Angaben in dem Bild, Bestimmen von Begrenzungen eines jeweiligen Begrenzungsrahmens, der im Wesentlichen die jeweilige Angabe in dem Bild einfasst; Anzeigen, auf einer Schnittstelle derindication in the picture; for each of the corresponding indicia in the image, determining bounds of a respective bounding box substantially enclosing the respective indicia in the image; Ads, on an interface of
Anwendung, einer Mehrzahl von Einträgen, wobei jeder der Mehrzahl vonApplication, a plurality of entries, each of the plurality of
Einträgen jeweils einer Angabe der mehreren Angaben entspricht; Empfangen, an der Schnittstelle, einer Auswahl eines der Einträge, die einen ausgewähltenEntries each correspond to one item of the multiple items; Receiving, at the interface, a selection of one of the entries that selected one
9 BE2022/53239 BE2022/5323
Eintrag zum Ergebnis hat, der eine entsprechende Angabe hat; Bestimmen, aus dem entsprechenden Begrenzungsrahmen der entsprechenden Angabe, einer oberen Pixel-Koordinatengrenze, einer unteren Pixel-Koordinatengrenze, einer ersten Seiten-Pixel-Koordinatengrenze und einer zweiten Seiten-Pixel-results in an entry that has a corresponding indication; Determine, from the corresponding bounding box of the corresponding indication, an upper pixel coordinate limit, a lower pixel coordinate limit, a first side pixel coordinate limit, and a second side pixel coordinate
Koordinatengrenze; auf Basis der oberen Pixel-Koordinatengrenze, der unterencoordinate boundary; based on the upper pixel coordinate limit, the lower
Pixel-Koordinatengrenze, der ersten Seiten-Pixel-Koordinatengrenze und der zweiten Seiten-Pixel-Koordinatengrenze, Bestimmen eines Sekundärrahmens, der eine obere Begrenzung, eine untere Begrenzung, eine erste seitliche Begrenzung und eine zweite seitliche Begrenzung hat; Anzeigen des Bilds in einempixel coordinate boundary, the first side pixel coordinate boundary and the second side pixel coordinate boundary, determining a secondary frame having an upper boundary, a lower boundary, a first lateral boundary and a second lateral boundary; View the image in one
Anzeigebereich der Schnittstelle, sodass ein Mittelpunkt des Sekundärrahmens innerhalb eines vorbestimmten Entfernungsschwellenwerts von einem Mittelpunkt des Anzeigebereichs angeordnet ist; und Skalieren des Bilds, sodass mindestens eine aus (i) einer ersten senkrechten Pixelzahl zwischen der oberen Begrenzung und der unteren Begrenzung innerhalb eines ersten vorbestimmtendisplay area of the interface such that a center point of the secondary frame is located within a predetermined distance threshold from a center point of the display area; and scaling the image so that at least one of (i) a first vertical pixel count between the upper bound and the lower bound is within a first predetermined
Verhältnisschwellenwerts einer zweiten senkrechten Pixelzahl des Anzeigebereichs ist oder (ii) einer ersten waagrechten Pixelzahl zwischen der ersten seitlichenratio threshold of a second vertical number of pixels of the display area or (ii) a first horizontal number of pixels between the first lateral
Begrenzung und der zweiten seitlichen Begrenzung innerhalb eines zweiten vorbestimmten Verhältnisschwellenwerts einer zweiten waagrechten Pixelzahl desBoundary and the second lateral boundary within a second predetermined ratio threshold of a second horizontal number of pixels
Anzeigebereichs ist.display area is.
In einer Variation dieser Ausführungsform kann das Verfahren ferner, für jede entsprechende Angabe in dem Bild, ein Anzeigen des entsprechendenIn a variation of this embodiment, the method may further include, for each corresponding indication in the image, displaying the corresponding
Begrenzungsrahmens auf einer Schnittstelle der Anwendung umfassen.bounding box on an interface of the application.
In einer weiteren oder ferneren Variation dieser Ausführungsform ist mindestens einer aus dem ersten vorbestimmten Verhältnisschwellenwert oder dem zweiten vorbestimmten Verhältnisschwellenwert einschlieBend zwischen 1:2 und 2:3.In a further or further variation of this embodiment, at least one of the first predetermined ratio threshold and the second predetermined ratio threshold is inclusive between 1:2 and 2:3.
In noch einer weiteren oder ferneren Variation dieser Ausführungsform enthält ein Skalieren des Bilds ein Skalieren des Bilds, sodass (1) die erste senkrechte Pixelzahl den ersten vorbestimmten Verhältnisschwellenwert der zweiten senkrechten Pixelzahl nicht übersteigt, und (ii) die erste waagrechteIn yet another or further variation of this embodiment, scaling the image includes scaling the image so that (1) the first vertical pixel count does not exceed the first predetermined ratio threshold of the second vertical pixel count, and (ii) the first horizontal
Pixelzahl den zweiten vorbestimmten Verhältnisschwellenwert der zweiten waagrechten Pixelzahl nicht übersteigt.Pixel count does not exceed the second predetermined ratio threshold of the second horizontal pixel count.
3 BE2022/53233 BE2022/5323
In noch einer weiteren oder ferneren Variation dieser Ausführungsform enthält jeder der Mehrzahl von Einträgen eine Nutzlast der entsprechendenIn yet another or further variation of this embodiment, each of the plurality of entries includes a payload of the corresponding one
Angaben.Declarations.
In noch einer weiteren oder ferneren Variation dieser Ausführungsform umfasst das Verfahren ferner ein Anzeigen des entsprechendenIn yet another or further variation of this embodiment, the method further comprises displaying the corresponding one
Begrenzungsrahmens, der den mehreren Angaben jeweils entspricht, die innerhalb eines sichtbaren Teils des Bilds erscheinen, der in dem Anzeigebereich angezeigt wird.bounding box corresponding to each of the multiple items of information appearing within a visible portion of the image displayed in the display area.
In noch einer weiteren oder ferneren Variation dieser Ausführungsform umfasst das Verfahren ferner ein Maskieren eines maskierten Bereichs in demIn yet another or further variation of this embodiment, the method further comprises masking a masked area in the
Anzeigebereich in Reaktion auf ein Empfangen der Auswahl, wobei der maskiertedisplay area in response to receiving the selection, wherein the masked
Bereich ein Bereich außerhalb mindestens eines aus (i) dem jeweiligenarea means an area outside of at least one of (i) the respective
Sekundärrahmen oder (ii) dem jeweiligen Begrenzungsrahmen der entsprechendensecondary frame or (ii) the respective bounding box of the corresponding
Angaben ist.information is.
In noch einer weiteren oder ferneren Variation dieser Ausführungsform ist mindestens einer aus dem ersten vorbestimmten Verhältnisschwellenwert und dem zweiten vorbestimmten Verhältnisschwellenwert benutzerdefinierbar, sodass ein Teil der entsprechenden Angaben aus dem skalierten Bild ausgeschlossen ist.In yet another or further variation of this embodiment, at least one of the first predetermined ratio threshold and the second predetermined ratio threshold is user-definable such that a portion of the corresponding indication is excluded from the scaled image.
In noch einer weiteren oder ferneren Variation dieser Ausführungsform umfasst das Verfahren ferner ein Anzeigen einer Miniaturversion des Bilds in demIn yet another or further variation of this embodiment, the method further comprises displaying a miniature version of the image in the
Anzeigebereich als ein Overlay, das einen Teil des skalierten Bilds abdeckt, wobei die Miniaturversion des Bilds einen angegebenen Bereich enthält, der das skalierteDisplay area as an overlay covering part of the scaled image, with the thumbnail version of the image containing a specified area covering the scaled
Bild repräsentiert.picture represents.
In einer weiteren Ausführungsform stellt die vorliegende Erfindung einIn another embodiment, the present invention provides
Verfahren zum Anreichern eines von einer Maschinensicht-Kamera aufgenommenen Bildinhalts bereit. Das Verfahren kann Folgendes umfassen:Method for enriching an image content recorded by a machine vision camera. The procedure may include:
Empfangen, an einer Anwendung, die auf einer Benutzerrechnervorrichtung ausgeführt wird, die mit einer Maschinensicht-Kamera in einerReceived, at an application running on a user computing device connected to a machine vision camera in a
Kommunikationsverbindung steht, eines von der Maschinensicht-Kamera aufgenommenen Bilds, wobei das Bild eine Mehrzahl von Angaben enthält, wobei in jeder der mehreren Angaben eine Nutzlast codiert ist; Identifizieren einer jedenin communication, an image captured by the machine vision camera, the image including a plurality of indicia, each of the plurality of indicia having a payload encoded therein; Identify each
Angabe in dem Bild; für jede der entsprechenden Angaben in dem Bild, Bestimmen von Begrenzungen eines jeweiligen Begrenzungsrahmens, der im Wesentlichen dieindication in the picture; for each of the corresponding indicia in the image, determining bounds of a respective bounding box that is substantially the
4 BE2022/5323 jeweilige Angabe in dem Bild einfasst; Bestimmen, aus dem entsprechenden4 BE2022/5323 encloses the respective information in the image; Determine from the appropriate
Begrenzungsrahmen der entsprechenden Angaben, einer oberen Pixel-bounding box of the corresponding information, a top pixel
Koordinatengrenze, einer unteren Pixel-Koordinatengrenze, einer ersten Seiten-coordinate boundary, a lower pixel coordinate boundary, a first side
Pixel-Koordinatengrenze und einer zweiten Seiten-Pixel-Koordinatengrenze für diepixel coordinate boundary and a second side pixel coordinate boundary for the
Jeweiligen Angaben, und auf Basis der oberen Pixel-Koordinatengrenze, der unteren Pixel-Koordinatengrenze, der ersten Seiten-Pixel-Koordinatengrenze und der zweiten Seiten-Pixel-Koordinatengrenze des jeweiligen Begrenzungsrahmens,Respective indications, and based on the upper pixel coordinate limit, the lower pixel coordinate limit, the first side pixel coordinate limit and the second side pixel coordinate limit of the respective bounding box,
Bestimmen eines jeweiligen Sekundärrahmens, der eine obere Begrenzung, eine untere Begrenzung, eine erste seitliche Begrenzung und eine zweite seitlichedetermining a respective secondary frame having an upper boundary, a lower boundary, a first lateral boundary and a second lateral boundary
Begrenzung für die jeweilige Angabe hat; Anzeigen, auf einer Schnittstelle derhas limitation for the respective indication; Ads, on an interface of
Anwendung, einer Mehrzahl von Einträgen, wobei jeder der Mehrzahl vonApplication, a plurality of entries, each of the plurality of
Einträgen jeweils einer Angabe der Mehrzahl von Angaben entspricht; Empfangen, an der Schnittstelle, einer Auswahl eines der Einträge, die einen ausgewähltenentries corresponds to one item of the plurality of items; Receiving, at the interface, a selection of one of the entries that selected one
Eintrag zum Ergebnis hat, der eine entsprechende Angabe hat; Anzeigen des Bilds in einem Anzeigebereich der Schnittstelle, sodass ein Mittelpunkt des jeweiligenresults in an entry that has a corresponding indication; Displaying the image in a display area of the interface such that a center point of each
Sekundärrahmens innerhalb eines vorbestimmten Entfernungsschwellenwerts von einem Mittelpunkt des Anzeigebereichs angeordnet ist; und Skalieren des Bilds, sodass mindestens eine aus (i) einer ersten senkrechten Pixelzahl zwischen der oberen Begrenzung des jeweiligen Sekundärrahmens der entsprechenden Angaben und der unteren Begrenzung des jeweiligen Sekundärrahmens der entsprechendensecondary frame is located within a predetermined distance threshold from a center point of the display area; and scaling the image so that at least one of (i) a first vertical number of pixels between the upper boundary of the respective secondary frame of the corresponding indicia and the lower boundary of the respective secondary frame of the corresponding
Angaben innerhalb eines ersten vorbestimmten Verhältnisschwellenwerts einer zweiten senkrechten Pixelzahl des Anzeigebereichs ist oder (2) einer ersten waagrechten Pixelzahl zwischen der ersten seitlichen Begrenzung des jeweiligenindications within a first predetermined ratio threshold of a second vertical number of pixels of the display area or (2) a first horizontal number of pixels between the first lateral boundary of the respective
Sekundärrahmens der entsprechenden Angabe und der zweiten seitlichenSecondary frame of the corresponding indication and the second lateral
Begrenzung des jeweiligen Sekundärrahmens der entsprechenden Angabe innerhalb eines zweiten vorbestimmten Verhältnisschwellenwerts einer zweiten waagrechten Pixelzahl des Anzeigebereichs ist.boundary of the respective secondary frame of the corresponding indication is within a second predetermined ratio threshold of a second horizontal pixel count of the display area.
In einer Variation dieser Ausführungsform kann das Verfahren ferner, für jede entsprechende Angabe in dem Bild, ein Anzeigen des entsprechendenIn a variation of this embodiment, the method may further include, for each corresponding indication in the image, displaying the corresponding
Begrenzungsrahmens auf einer Schnittstelle der Anwendung umfassen.bounding box on an interface of the application.
In einer weiteren oder ferneren Variation dieser Ausführungsform ist mindestens einer aus dem ersten vorbestimmten Verhältnisschwellenwert oder dem zweiten vorbestimmten Verhältnisschwellenwert einschließend zwischen 1:2 und 2:3.In a further or further variation of this embodiment, at least one of the first predetermined ratio threshold or the second predetermined ratio threshold is inclusive between 1:2 and 2:3.
In noch einer weiteren oder ferneren Variation dieser Ausführungsform enthält ein Skalieren des Bilds ein Skalieren des Bilds, sodass (i) die erste 5 senkrechte Pixelzahl den ersten vorbestimmten Verhältnisschwellenwert der zweiten senkrechten Pixelzahl nicht übersteigt, und (2) die erste waagrechteIn yet another or further variation of this embodiment, scaling the image includes scaling the image so that (i) the first 5 vertical pixel count does not exceed the first predetermined ratio threshold of the second vertical pixel count, and (2) the first horizontal
Pixelzahl den zweiten vorbestimmten Verhältnisschwellenwert der zweiten waagrechten Pixelzahl nicht übersteigt.Pixel count does not exceed the second predetermined ratio threshold of the second horizontal pixel count.
In noch einer weiteren oder ferneren Variation dieser Ausführungsform enthält jeder der Mehrzahl von Einträgen eine Nutzlast der entsprechendenIn yet another or further variation of this embodiment, each of the plurality of entries includes a payload of the corresponding one
Angaben.Declarations.
In noch einer weiteren oder ferneren Variation dieser Ausführungsform umfasst das Verfahren ferner ein Anzeigen des entsprechendenIn yet another or further variation of this embodiment, the method further comprises displaying the corresponding one
Begrenzungsrahmens, der den mehreren Angaben jeweils entspricht, die innerhalb eines sichtbaren Teils des Bilds erscheinen, der in dem Anzeigebereich angezeigt wird.bounding box corresponding to each of the multiple items of information appearing within a visible portion of the image displayed in the display area.
In noch einer weiteren oder ferneren Variation dieser Ausführungsform umfasst das Verfahren ferner ein Maskieren eines maskierten Bereichs in demIn yet another or further variation of this embodiment, the method further comprises masking a masked area in the
Anzeigebereich in Reaktion auf ein Empfangen der Auswahl, wobei der maskiertedisplay area in response to receiving the selection, wherein the masked
Bereich ein Bereich außerhalb mindestens eines aus (i) dem jeweiligenarea means an area outside of at least one of (i) the respective
Sekundärrahmen oder (ii) dem jeweiligen Begrenzungsrahmen der entsprechendensecondary frame or (ii) the respective bounding box of the corresponding
Angaben ist.information is.
In noch einer weiteren Ausführungsform stellt die vorliegendeIn yet another embodiment, the present
Erfindung ein Maschinensichtsystem zum Anreichern eines von einerinvention a machine vision system for enhancing one of a
Maschinensicht-Kamera aufgenommenen Bildinhalts bereit. DasMachine vision camera recorded image content ready. The
Maschinensichtsystem kann Folgendes umfassen: eine Maschinensicht-Kamera, die dazu konfiguriert ist, ein Bild aufzunehmen, das eine Mehrzahl von Angaben enthält, wobei in jeder der Mehrzahl von Angaben eine Nutzlast codiert ist; und eine Benutzerrechnervorrichtung, die eine Anwendung ausführt, wobei dieA machine vision system may include: a machine vision camera configured to capture an image including a plurality of indicia, each of the plurality of indicia having a payload encoded therein; and a user computing device executing an application, wherein the
Benutzerrechnervorrichtung mit dem Maschinensichtsystem in einerUser computing device with the machine vision system in one
Kommunikationsverbindung steht und dazu konfiguriert ist: das von derCommunication connection is established and configured for it: that of the
Maschinensicht-Kamera aufgenommene Bild zu empfangen, in dem Bild jede derMachine vision camera to receive captured image in which each of the image
Angaben zu identifizieren, für jede der entsprechenden Angaben in dem Bildidentifying information for each of the corresponding information in the image
6 BE2022/53236 BE2022/5323
Begrenzungen eines jeweiligen Begrenzungsrahmens zu bestimmen, die die jeweilige Angabe in dem Bild im Wesentlichen einfassen, auf einer Schnittstelle der Anwendung eine Mehrzahl von Einträgen anzuzeigen, wobei jeder derdetermine boundaries of a respective bounding box that substantially enclose the respective indication in the image, display a plurality of entries on an interface of the application, each of the
Mehrzahl von Einträgen einer jeweiligen Angabe der Mehrzahl von Angaben entspricht, an der Schnittstelle eine Auswahl eines der Einträge zu empfangen, die einen ausgewählten Eintrag zum Ergebnis hat, der eine entsprechende Angabe hat, aus dem jeweiligen Begrenzungsrahmen der entsprechenden Angabe eine obere Pixel-Koordinatengrenze, eine untere Pixel-Koordinatengrenze, eine ersteplurality of items corresponding to a respective item of the plurality of items, receiving at the interface a selection of one of the items resulting in a selected item having a corresponding item, from the respective bounding box of the corresponding item an upper pixel coordinate limit, a lower pixel coordinate limit, a first
Seiten-Pixel-Koordinatengrenze und eine zweite Seiten-Pixel-Koordinatengrenze zu bestimmen, auf Basis der oberen Pixel-Koordinatengrenze, der unteren Pixel-determine a side pixel coordinate boundary and a second side pixel coordinate boundary based on the upper pixel coordinate boundary, the lower pixel coordinate
Koordinatengrenze, der ersten Seiten-Pixel-Koordinatengrenze und der zweitencoordinate boundary, the first side pixel coordinate boundary, and the second
Seiten-Pixel-Koordinatengrenze, einen Sekundärrahmen zu bestimmen, der eine obere Begrenzung, eine untere Begrenzung, eine erste seitliche Begrenzung und eine zweite seitliche Begrenzung hat, das Bild in einem Anzeigebereich derlateral pixel coordinate boundary, determining a secondary frame having an upper boundary, a lower boundary, a first lateral boundary and a second lateral boundary, the image in a display area of the
Schnittstelle so anzuzeigen, dass ein Mittelpunkt des Sekundärrahmens innerhalb eines vorbestimmten Entfernungsschwellenwerts von einem Mittelpunkt desInterface so as to indicate that a center point of the secondary frame is within a predetermined distance threshold from a center point of the
Anzeigebereichs angeordnet ist, und das Bild so zu skalieren, dass mindestens eine aus (i) einer ersten senkrechten Pixelzahl zwischen der oberen Begrenzung und der unteren Begrenzung innerhalb eines ersten vorbestimmtenDisplay area is arranged, and to scale the image so that at least one of (i) a first vertical number of pixels between the upper limit and the lower limit within a first predetermined
Verhältnisschwellenwerts einer zweiten senkrechten Pixelzahl des Anzeigebereichs ist oder (ii) einer ersten waagrechten Pixelzahl zwischen der ersten seitlichenratio threshold of a second vertical number of pixels of the display area or (ii) a first horizontal number of pixels between the first lateral
Begrenzung und der zweiten seitlichen Begrenzung innerhalb eines zweiten vorbestimmten Verhältnisschwellenwerts einer zweiten waagrechten Pixelzahl desBoundary and the second lateral boundary within a second predetermined ratio threshold of a second horizontal number of pixels
Anzeigebereichs ist.display area is.
In einer Variation dieser Ausführungsform ist dieIn a variation of this embodiment is the
Benutzerrechnervorrichtung ferner dazu konfiguriert, für jede entsprechendeUser computing device further configured to, for each respective
Angabe in dem Bild, den entsprechenden Begrenzungsrahmen auf einerIndication in the image, the corresponding bounding box on a
Schnittstelle der Anwendung anzuzeigen.View the application interface.
In einer weiteren oder ferneren Variation dieser Ausführungsform ist mindestens einer aus dem ersten vorbestimmten Verhältnisschwellenwert oder dem zweiten vorbestimmten Verhältnisschwellenwert einschließend zwischen 1:2 und 2:3.In a further or further variation of this embodiment, at least one of the first predetermined ratio threshold or the second predetermined ratio threshold is inclusive between 1:2 and 2:3.
7 BE2022/53237 BE2022/5323
In noch einer weiteren oder ferneren Variation dieser Ausführungsform ist die Benutzerrechnervorrichtung ferner dazu konfiguriert, das Bild so zu skalieren, dass (i) die erste senkrechte Pixelzahl den ersten vorbestimmtenIn yet another or further variation of this embodiment, the user computing device is further configured to scale the image such that (i) the first vertical pixel count equals the first predetermined
Verhältnisschwellenwert der zweiten senkrechten Pixelzahl nicht übersteigt, und (2) die erste waagrechte Pixelzahl den zweiten vorbestimmtenratio threshold of the second vertical pixel number does not exceed, and (2) the first horizontal pixel number exceeds the second predetermined one
Verhältnisschwellenwert der zweiten waagrechten Pixelzahl nicht übersteigt.ratio threshold of the second horizontal pixel number does not exceed.
KURZE BESCHREIBUNG DER ZEICHNUNGENBRIEF DESCRIPTION OF THE DRAWINGS
Die beiliegenden Zeichnungen, in denen sich gleiche Bezugszeichen auf identische oder funktional ähnliche Elemente über die mehreren Ansichten hinweg beziehen, zusammen mit der unten angegebenen detaillierten Beschreibung sind in die Beschreibung integriert und bilden einen Teil von dieser und dienen zur weiteren Veranschaulichung von Ausführungsformen von Konzepten, welche die beanspruchte Erfindung beinhalten, und erläutern verschiedene Prinzipien undThe accompanying drawings, in which like reference numerals refer to identical or functionally similar elements throughout the several views, together with the detailed description provided below, are incorporated in and constitute a part of the specification and serve to further illustrate embodiments of concepts, incorporating the claimed invention and explaining various principles and
Vorteile dieser Ausführungsformen.Advantages of these embodiments.
FIG. 1 ist ein beispielhaftes System, das dazu konfiguriert ist, einen von einer Maschinensicht-Kamera aufgenommenen Bildinhalt anzureichern, gemäß hier beschriebener Ausführungsformen.FIG. 1 is an example system configured to enhance image content captured by a machine vision camera, in accordance with embodiments described herein.
FIG. 2A ist eine perspektivische Darstellung derFIG. 2A is a perspective view of FIG
Bilderzeugungsvorrichtung von FIG. 1 gemäß hier beschriebenerimaging device of FIG. 1 according to described here
Ausführungsformen.embodiments.
FIG. 2B ist ein Blockdiagramm einer beispielhaften Logikschaltung zum Implementieren beispielhafter Verfahren und/oder Operationen, die hier beschrieben sind.FIG. 2B is a block diagram of example logic circuitry for implementing example methods and/or operations described herein.
FIGs. 3A und 3B stellen jeweils eine beispielhafteFIGs. 3A and 3B each represent an example
Anwendungsschnittstelle dar, bei der eine Stufe einer Bildanreicherung veranschaulicht wird, die dem Decodieren von Angaben und Anzeigen decodierterAn application interface that illustrates a level of image enhancement that corresponds to the decoding of indications and displays
Nutzlasten entspricht, die in einem Bild vorhanden sind, das von einercorresponds to payloads present in an image captured by a
Maschinensicht-Kamera aufgenommenen wurde, gemäß Ausführungsformen der vorliegenden Offenbarung.machine view camera, according to embodiments of the present disclosure.
FIG. 4A und 4B stellen jeweils eine beispielhafteFIG. 4A and 4B each provide an example
Anwendungsschnittstelle dar, bei der eine Stufe einer Bildanreicherung veranschaulicht wird, die einem Erzeugen eines Sekundärrahmens entspricht, der im Wesentlichen Angaben einfasst, die in einem Bild enthalten sind, das von einerApplication interface illustrating a stage of image enhancement that corresponds to generating a secondary frame that essentially encloses information contained in an image captured by a
8 BE2022/53238 BE2022/5323
Maschinensicht-Kamera aufgenommen wurde, gemäß Ausführungsformen der vorliegenden Offenbarung.machine view camera, according to embodiments of the present disclosure.
FIG. 5A-5C stellen jeweils eine beispielhafte Anwendungsschnittstelle dar, bei der eine Stufe einer Bildanreicherung veranschaulicht wird, die einemFIG. 5A-5C each depict an example application interface illustrating a level of image enhancement that provides a
Skalieren und/oder sonstigen Hervorheben einer ausgewählten Angabe entspricht, innerhalb eines von einer Maschinensicht-Kamera aufgenommenen Bilds, gemäßScaling and/or otherwise emphasizing a selected indication within an image captured by a machine vision camera corresponds to FIG
Ausführungsformen der vorliegenden Offenbarung.Embodiments of the present disclosure.
FIG. 6 ist ein Flussdiagramm, das für ein Verfahren zum Anreichern eines Bildinhalts repräsentativ ist, der von einer Maschinensicht-Kamera aufgenommen wurde, gemäß hier beschriebener Ausführungsformen.FIG. 6 is a flow chart representative of a method for enhancing image content captured by a machine vision camera, according to embodiments described herein.
Der Fachmann wird erkennen, dass Elemente in den Figuren ausThose skilled in the art will recognize that elements in the figures differ from one another
Gründen der Einfachheit und Klarheit veranschaulicht sind und nicht notwendigerweise maßstabsgetreu dargestellt sind. Zum Beispiel können dieIllustrated for simplicity and clarity and are not necessarily drawn to scale. For example, they can
Abmessungen einiger Elemente in den Figuren relativ zu anderen Elementen übertrieben dargestellt sein, um zu einem Verständnis von Ausführungsformen der vorliegenden Erfindung beizutragen.Dimensions of some elements in the figures may be exaggerated relative to other elements to aid in an understanding of embodiments of the present invention.
Die Vorrichtungs- und Verfahrenskomponenten wurden gegebenenfalls durch konventionelle Symbole in den Zeichnungen dargestellt, wobei nur diejenigen spezifischen Einzelheiten gezeigt sind, die für das Verständnis derWhere appropriate, the apparatus and process components have been represented by conventional symbols in the drawings, only those specific details necessary for an understanding of the figures being shown
Ausführungsformen der vorliegenden Erfindung wesentlich sind, um dieEmbodiments of the present invention are essential to the
Offenbarung nicht mit Einzelheiten zu überfrachten, die sich für denRevelation not to overload with details that are suitable for the
Durchschnittsfachmann auf diesem Gebiet anhand der hier gegebenenof ordinary skill in the art based on those given here
Beschreibung leicht erschließen.Description easy to understand.
DETAILLIERTE BESCHREIBUNGDETAILED DESCRIPTION
Die Inhaber/Betreiber von Maschinensichtsystemen haben periodisch einen Bedarf nach einer visuellen Auswertung von Bildern, die von denPeriodically, owners/operators of machine vision systems have a need for visual evaluation of images generated by the
Bilderzeugungsgeräten des Systems aufgenommen wurden. Hierbei besteht einimaging devices of the system were recorded. Here there is a
Bedarf nach dem Heranzoomen bestimmter Elemente (wie Barcodes) innerhalb der aufgenommenen Bilder zur näheren Auswertung. Dies kann in einer _ automatischen Weise schwierig zu bewerkstelligen sein, insbesondere wenn mehrere Elemente der gleichen Art auf dem Bildschirm vorhanden sind. Hier beschriebene Vorgehensweisen nehmen sich dieser Schwierigkeiten an und liefernNeed to zoom in on certain elements (such as barcodes) within the captured images for closer evaluation. This can be difficult to do in an automatic way, especially when there are multiple items of the same kind on the screen. Procedures described here address these difficulties and deliver
9 BE2022/5323 eine Lösung, die zur Automatisierung und Vereinfachung des Heranzoomprozesses beiträgt.9 BE2022/5323 a solution that helps automate and simplify the zoom-in process.
Fig. 1 veranschaulicht ein beispielhaftes Bilderzeugungssystem 100, das dazu konfiguriert ist, einen von einer Maschinensicht-Kamera aufgenommenen1 illustrates an example imaging system 100 configured to capture an image captured by a machine vision camera
Bildinhalt anzureichern, gemäß verschiedener hier offenbarterEnrich image content according to various disclosed herein
Ausführungsformen. Bei der beispielhaften Ausführungsform von Fig. 1 enthält das Bilderzeugungssystem 100 eine Benutzerrechnervorrichtung 102 und eineembodiments. In the exemplary embodiment of FIG. 1, imaging system 100 includes user computing device 102 and a
Bilderzeugungsvorrichtung 104, die über ein Netzwerk 106 mit derImaging device 104 connected via a network 106 to the
Benutzerrechnervorrichtung 102 in Kommunikationsverbindung ist. Allgemein können die Benutzerrechnervorrichtung 102 und die Bilderzeugungsvorrichtung 104 dazu fähig sein, Befehle auszuführen, um zum Beispiel Operationen der hier beschriebenen beispielhaften Verfahren auszuführen, wie das durch dieUser computing device 102 is in communication. In general, user computing device 102 and imaging device 104 may be capable of executing instructions to perform, for example, operations of the example methods described herein, such as that illustrated by FIGS
Flussdiagramme der Zeichnungen dargestellt ist, welche der vorliegendenFlow charts of the drawings shown which of the present
Beschreibung beiliegen. Die Benutzerrechnervorrichtung 102 ist allgemein dazu konfiguriert, es einem Benutzer/einer Bedienperson zu ermöglichen, einendescription enclosed. The user computing device 102 is generally configured to allow a user/operator to
Maschinensicht-Job zur Ausführung auf der Bilderzeugungsvorrichtung 104 zu erstellen. Nach der Erstellung kann der Benutzer/die Bedienperson dann dento create a machine view job for execution on the imaging device 104. Once created, the user/operator can then use the
Maschinensicht-Job über das Netzwerk 106 an die Bilderzeugungsvorrichtung 104 übertragen/hochladen, wo der Maschinensicht-Job dann interpretiert und ausgeführt wird. Die Benutzerrechnervorrichtung 102 kann eine oder mehrereTransmit/upload the machine view job over the network 106 to the imaging device 104 where the machine view job is then interpreted and executed. User computing device 102 may be one or more
Benutzer-Workstations umfassen und kann einen oder mehrere Prozessoren 108, einen oder mehrere Speicher 110, eine Netzwerkschnittstelle 112, eineUser workstations include and may include one or more processors 108, one or more memories 110, a network interface 112, a
Eingabe/Ausgabe-Schnittstelle (I/O-Schnittstelle) 114, eine Smart-Imaging-Input/Output Interface (I/O Interface) 114, a smart imaging
Anwendung 116 und eine Bildanreicherungsanwendung 128 aufweisen. Dabei versteht es sich, dass ein „Maschinensicht-Job“, wie er hier erwähnt wird, einen beliebigen geeigneten Bilderzeugungs-Job enthalten kann oder dieser sein kann, der beliebige ausführbare Aufgaben, wie zum Beispiel Maschinensichtaufgaben,application 116 and an image enhancement application 128 . It is to be understood that a "machine view job" as referred to herein may include or be any suitable imaging job that performs any executable task, such as machine view tasks,
Barcode-Decodierungsaufgaben und/oder beliebige andere Aufgaben oderBarcode decoding tasks and/or any other tasks or
Kombinationen hiervon, enthält.combinations thereof.
Die Bilderzeugungsvorrichtung 104 ist über ein Netzwerk 106 mit derThe imaging device 104 is connected via a network 106 to the
Benutzerrechnervorrichtung 102 verbunden und dazu konfiguriert,User computing device 102 connected and configured to
Maschinensicht-Jobs zu interpretieren und auszuführen, die von derInterpret and execute machine view jobs created by the
Benutzerrechnervorrichtung 102 empfangen werden. Allgemein kann dieuser computing device 102 are received. In general, they can
10 BE2022/532310 BE2022/5323
Bilderzeugungsvorrichtung 104 über das Netzwerk 106 von derImaging device 104 via network 106 from the
Benutzerrechnervorrichtung 102 eine Job-Datei enthalten, die eines oder mehrereUser computing device 102 contain a job file containing one or more
Job-Skripte enthält, die den Maschinensicht-Job definieren und dieContains job scripts that define the machine view job and the
Bilderzeugungsvorrichtung 104 dazu konfigurieren können, Bilder gemäß demImage generating device 104 can configure images according to the
Maschinensicht-Job aufzunehmen und/oder zu analysieren. Zum Beispiel kann dieRecord and/or analyze machine view jobs. For example, the
Bilderzeugungsvorrichtung 104 einen Flash-Speicher enthalten, der zumImage generating device 104 contain a flash memory, which for
Bestimmen, Speichern oder sonst wie Verarbeiten von Bilderzeugungs-Determining, storing or otherwise processing image generation
Daten/Datensätzen und/oder Post-Bilderzeugungsdaten verwendet wird. Diedata/records and/or post-imaging data is used. The
Bilderzeugungsvorrichtung 104 kann dann einen Auslöser empfangen, erkennen und/oder sonst wie interpretieren, der die Bilderzeugungsvorrichtung 104 dazu veranlasst, ein Bild des Zielobjekts gemäß der Konfiguration aufzunehmen, die über das eine oder die mehrere Job-Skripte erstellt wurde. Nachdem die Bilder aufgenommen und/oder analysiert wurden, kann die Bilderzeugungsvorrichtung 104 die Bilder und auch jegliche dazugehörende Daten über das Netzwerk 106 an die Benutzerrechnervorrichtung 102 zur weiteren Analyse und/oder Speicherung übertragen. In verschiedenen Ausführungsformen kann dieImaging device 104 may then receive, detect, and/or otherwise interpret a trigger that causes imaging device 104 to capture an image of the target object according to the configuration created via the one or more job scripts. After the images are captured and/or analyzed, the imaging device 104 may transmit the images, as well as any associated data, over the network 106 to the user computing device 102 for further analysis and/or storage. In various embodiments, the
Bilderzeugungsvorrichtung 104 eine „Smart“-Kamera sein und/oder kann sonst wie dazu konfiguriert sein, eine ausreichende Funktionalität derImaging device 104 may be a "smart" camera and/or otherwise configured to provide sufficient functionality
Bilderzeugungsvorrichtung 104 automatisch auszuführen, um Job-Skripte zu erhalten, zu interpretieren und auszuführen, welche Maschinensicht-Jobs definieren, wie zum Beispiel eines oder mehrere Job-Skripte, die in einer oder mehreren Job-Dateien enthalten sind, die zum Beispiel von derImage generating device 104 to obtain, interpret, and execute job scripts that define machine vision jobs, such as one or more job scripts contained in one or more job files, e.g
Benutzerrechnervorrichtung 102 erhalten werden.User computing device 102 can be obtained.
Allgemein ausgedrückt kann die Job-Datei in einem JSON-Generally speaking, the job file can be in a JSON
Darstellungs-/Daten-Format des einen oder der mehreren Job-Skripte sein, die von der Benutzerrechnervorrichtung 102 an die Bilderzeugungsvorrichtung 104 übertragbar sind. Die Job-Datei kann ferner von einer C++-Runtime-Engine oder einer anderen geeigneten Runtime-Engine ladbar/lesbar sein, die auf derrepresentation/data format of the one or more job scripts transmittable from user computing device 102 to imaging device 104 . The job file may also be loadable/readable by a C++ runtime engine or other suitable runtime engine running on the
Bilderzeugungsvorrichtung 104 ausgeführt wird. Darüber hinaus kann dieImage forming device 104 is executed. In addition, the
Bilderzeugungsvorrichtung 104 einen (nicht gezeigten) Server betreiben, der dazu konfiguriert ist, über das Netzwerk 106 nach Jobdateien von derImage forming device 104 operate a server (not shown) configured to search for job files from the
Benutzerrechnervorrichtung 102 Ausschau zu halten und diese zu empfangen.to look out for and receive user computing device 102 .
Zusätzlich oder alternativ dazu kann der zum Ausschau-Halten und EmpfangenAdditionally or alternatively, the one for looking out and receiving
11 BE2022/5323 von Jobdateien konfigurierte Server als einer oder mehrere cloudbasierte Server implementiert sein, wie zum Beispiel als eine cloudbasierte Computing-Plattform.11 BE2022/5323 servers configured by job files may be implemented as one or more cloud-based servers, such as a cloud-based computing platform.
Zum Beispiel kann der Server eine oder mehrere cloudbasierte Plattformen, wie zum Beispiel MICROSOFT AZURE, AMAZON AWS oder dergleichen sein.For example, the server can be one or more cloud-based platforms such as MICROSOFT AZURE, AMAZON AWS, or the like.
Jedenfalls kann die Bilderzeugungsvorrichtung 104 einen oder mehrereIn any event, the imaging device 104 may include one or more
Prozessoren 118, einen oder mehrere Speicher 120, eine Netzwerkschnittstelle 120 eine I/O-Schnittstelle 124 und eine Bilderzeugungsanordnung 126 enthalten. Dieprocessors 118, one or more memories 120, a network interface 120, an I/O interface 124, and an imaging assembly 126. The
Bilderzeugungsanordnung 126 kann eine Digitalkamera und/oder eine digitaleImaging assembly 126 may be a digital camera and/or a digital
Videokamera zum Aufnehmen oder Aufzeichnen digitaler Bilder und/odervideo camera for taking or recording digital images and/or
Aufnahmen enthalten. Jedes digitale Bild kann Pixeldaten enthalten, die durch eines oder mehrere Werkzeuge analysiert werden können, die jeweils dazu konfiguriert sind, eine Bildanalyseaufgabe auszuführen. Die Digitalkamera und/oder die digitale Videokamera zum Beispiel der Bilderzeugungsanordnung 126 kann, wie hier offenbart ist, dazu konfiguriert sein, digitale Bilder aufzunehmen, aufzufangen oder sonst wie zu generieren, und kann mindestens in manchenrecordings included. Each digital image may contain pixel data that can be analyzed by one or more tools, each configured to perform an image analysis task. The digital camera and/or digital video camera, for example, of the imaging assembly 126 as disclosed herein may be configured to take, capture, or otherwise generate digital images, and in at least some
Ausführungsformen solche Bilder in einem Speicher (zum Beispiel einem oder mehreren Speichern 110, 120) einer entsprechenden Vorrichtung (z. B. derEmbodiments store such images in a memory (e.g. one or more memories 110, 120) of a corresponding device (e.g. the
Benutzerrechnervorrichtung 102, der Bilderzeugungsvorrichtung 104) speichern.user computing device 102, the imaging device 104).
Zum Beispiel kann die Bilderzeugungsanordnung 126 eine (nicht gezeigte) fotorealistische Kamera aufweisen, um 2D-Bilddaten aufzufangen, zu erfassen oder zu scannen. Die fotorealistische Kamera kann eine RGB-Kamera (RGB = rot, grün, blau) zum Aufnehmen von 2D-Bildern sein, die RGB-Pixel-Daten enthalten. In verschiedenen Ausführungsformen kann dieFor example, imaging assembly 126 may include a photorealistic camera (not shown) to capture, capture, or scan 2D image data. The photorealistic camera may be an RGB (RGB=Red, Green, Blue) camera for capturing 2D images containing RGB pixel data. In various embodiments, the
Bilderzeugungsanordnung zusätzlich eine (nicht gezeigte) 3D-Kamera enthalten, um 3D-Bilddaten aufzunehmen, zu erfassen oder zu scannen. Die 3D-Kamera kann einen Infrarot-Projektor (IR) und eine entsprechende IR-Kamera zum Aufnehmen,Imaging arrangement also contain a (not shown) 3D camera to record, capture or scan 3D image data. The 3D camera can use an infrared (IR) projector and a corresponding IR camera to record,
Erfassen oder Scannen von 3D-Bilddaten/-Datensätzen enthalten. In manchenCapture or scan 3D image data/datasets included. In some
Ausführungsformen kann die fotorealistische Kamera derEmbodiments, the photorealistic camera of
Bilderzeugungsanordnung 126 2D-Bilder und zugehörige 2D-Bilddaten zum selben oder zu einem ähnlichen Zeitpunkt wie die 3D-Kamera derImaging arrangement 126 2D images and associated 2D image data at the same or a similar time as the 3D camera of FIG
Bilderzeugungsanordnung 126 aufnehmen, sodass die Bilderzeugungsvorrichtung 104 für eine bestimmte Oberfläche, ein bestimmtes Objekt, eine bestimmte Fläche oder Szene zu einem gleichen oder ähnlichen Zeitpunkt beide Sätze aus 3D-Record imaging assembly 126 such that imaging device 104 for a particular surface, object, area, or scene can have both sets of 3D images at the same or similar time.
12 BE2022/532312 BE2022/5323
Bilddaten und 2D-Bilddaten zur Verfügung haben kann. In verschiedenenImage data and 2D image data may have available. In different
Ausführungsformen kann die Bilderzeugungsanordnung 126 die 3D-Kamera und die fotorealistische Kamera als eine einzige Bilderzeugungsvorrichtung aufweisen, die dazu konfiguriert ist, 3D-Tiefenbilddaten gleichzeitig mit 2D-Bilddaten aufzunehmen. Folglich können die aufgenommenen 2D-Bilder und die entsprechenden 2D-Bilddaten mit den 3D-Bildern und 3D-Bilddaten tiefenausgerichtet werden.In embodiments, the imaging assembly 126 may include the 3D camera and the photorealistic camera as a single imaging device configured to capture 3D depth image data concurrently with 2D image data. Consequently, the captured 2D images and the corresponding 2D image data can be depth-aligned with the 3D images and 3D image data.
In Ausführungsformen kann die Bilderzeugungsanordnung 126 dazu konfiguriert sein, Bilder von Oberflächen oder Flächen eines vorbestimmtenIn embodiments, the imaging assembly 126 may be configured to generate images of surfaces or areas of a predetermined
Suchraumes oder von Zielobjekten innerhalb des vorbestimmten Suchraums aufzunehmen. Zum Beispiel kann jedes in einem Job-Skript enthaltene Werkzeug zusätzlich einen interessierenden Bereich (Region of Interest, ROT) enthalten, der einem spezifischen Bereich oder Zielobjekt entspricht, das von derSearch space or record of target objects within the predetermined search space. For example, each tool contained in a job script may also contain a region of interest (ROT) that corresponds to a specific area or target object that is being processed by the
Bilderzeugungsanordnung 126 abgebildet wird. Der von den ROIs für alleImaging assembly 126 is imaged. The one from the ROIs for everyone
Werkzeuge, die in einem bestimmten Job-Skript enthalten sind, zusammengesetzteCompound tools included in a specific job script
Bereich, kann dadurch daher den vorbestimmten Suchraum definieren, welchen die Bilderzeugungsanordnung 126 aufnehmen kann, um die Ausführung des Job-area, can thereby define the predetermined search space that the imaging assembly 126 can accommodate in order to carry out the job
Scripts zu ermöglichen. Der vorbestimmte Suchraum kann benutzerspezifisch sein, um ein Sichtfeld (Field of View, FOV) zu enthalten, das mehr oder weniger als den zusammengesetzten Bereich aufweisen kann, der von den ROIs aller Werkzeuge definiert wird, die in dem bestimmten Job-Skript enthalten sind. Es sollte darauf hingewiesen werden, dass die Bilderzeugungsanordnung 126 2D- und/oder 3D-enable scripts. The predetermined search space may be customized to include a field of view (FOV) that may be more or less than the composite area defined by the ROIs of all tools included in the particular job script. It should be noted that imaging assembly 126 may include 2D and/or 3D
Bilddaten/-Datensätze einer Vielzahl von Bereichen aufnehmen kann, sodass zusätzliche Bereiche zusätzlich zu den vorbestimmten Suchräumen hier auch mit berücksichtigt sind. Darüber hinaus kann in verschiedenen Ausführungsformen die Bilderzeugungsanordnung 126 dazu konfiguriert sein, andere Sätze vonCan record image data/datasets from a large number of areas, so that additional areas are also taken into account here in addition to the predetermined search areas. Additionally, in various embodiments, the imaging assembly 126 may be configured to include other sets of
Bilddaten zusätzlich zu den 2D-/3D-Bilddaten, wie zum Beispiel Graustufen-Image data in addition to the 2D/3D image data, such as greyscale
Bilddaten oder Amplituden-Bilddaten, aufzunehmen, von denen jede mit den 2D- /3D-Bilddaten tiefenausgerichtet werden kann.image data or amplitude image data, each of which can be depth-aligned with the 2D/3D image data.
Die Bilderzeugungsvorrichtung 104 kann auch die 2D-Bilddaten/-The imaging device 104 can also use the 2D image data/
Datensätze und/oder 3D-Bild Datensätze zur Verwendung durch andereData sets and/or 3D image data sets for use by others
Vorrichtungen (z. B. die Benutzerrechnervorrichtung 102, einen externen Server) verarbeiten. Zum Beispiel können der eine oder die mehreren Prozessoren 118 diedevices (e.g., client computing device 102, an external server). For example, the one or more processors 118 may
13 BE2022/532313 BE2022/5323
Bilddaten oder Datensätze, die von der Bilderzeugungsanordnung 126 aufgenommen, gescannt oder erfasst wurden, verarbeiten. Die Verarbeitung derProcess image data or datasets captured, scanned or captured by the imaging assembly 126 . The processing of
Bilddaten kann Post-Bilderzeugungsdaten generieren, die Metadaten, vereinfachteImage data can generate post-imaging data metadata simplified
Daten, normalisierte Daten, Ergebnis-Daten, Statusdaten oder Alarmdaten enthalten können, wie das aus den ursprünglich gescannten oder erfasstendata, normalized data, results data, status data, or alarm data, such as that from what was originally scanned or captured
Bilddaten bestimmt wurde. Die Bilddaten und/oder die Post-Bilderzeugungsdaten können an die Benutzerrechnervorrichtung 102 gesendet werden, auf der dieimage data was determined. The image data and/or the post-imaging data may be sent to the user computing device 102 on which the
Smart-Imaging-Anwendung 116 ausgeführt wird, zur Betrachtung, Manipulation und/oder sonstigen Interaktion. In anderen Ausführungsformen können dieSmart imaging application 116 is run for viewing, manipulation, and/or other interaction. In other embodiments, the
Bilddaten und/oder die Post-Bilderzeugungsdaten zur Speicherung oder zur weiteren Manipulation an einen Server gesendet werden. Wie hier beschrieben, können die Benutzerrechnervorrichtung 102, die Bilderzeugungsvorrichtung 104 und/oder der externe Server oder eine andere zentralisierte Verarbeitungseinheit und/oder Speicher solche Daten speichern und können auch die Bilddaten und/oder die Post-Bilderzeugungsdaten an eine andere Anwendung senden, die auf einerImage data and/or the post-imaging data are sent to a server for storage or further manipulation. As described herein, the user computing device 102, the imaging device 104, and/or the external server or other centralized processing unit and/or memory may store such data and may also send the image data and/or the post-imaging data to another application running on one
Benutzervorrichtung, wie zum Beispiel einem mobilen Gerät, einem Tablet, einer handgehaltenen Vorrichtung oder einem Desktopgerät, implementiert ist.user device, such as a mobile device, a tablet, a handheld device, or a desktop device.
Jeder aus dem einen oder den mehreren Speichern 110, 120 kann eine oder mehrere Arten eines flüchtigen und/oder nicht flüchtigen, festen und/oder entfernbaren Speichers, wie zum Beispiel einen Nurlesespeicher (ROM), einen elektronisch programmierbaren Nurlesespeicher (EPROM), einen Speicher mit wahlfreiem Zugriff (RAM), einen löschbaren elektronisch programmierbarenEach of the one or more memories 110, 120 may be one or more types of volatile and/or non-volatile, fixed and/or removable memory, such as read-only memory (ROM), electronically programmable read-only memory (EPROM), memory with random access (RAM), an erasable electronically programmable
Nurlesespeicher (EEPROM) und/oder Festplatten, Flash-Speicher, MicroSD-Read-only memory (EEPROM) and/or hard drives, flash memory, MicroSD
Karten und andere beinhalten. Allgemein kann ein Computerprogramm oder ein computerbasiertes Produkt, eine Anwendung oder ein Code (z. B. die Smart-Maps and others include. In general, a computer program or computer-based product, application, or code (such as the Smart
Imaging-Anwendung 116 oder andere Berechnungsbefehle, die hier beschrieben sind) auf einem von einem Computer verwendbaren Speichermedium oder tangiblen, nicht flüchtigen computerlesbaren Medium (z. B. einem standardmäßigen Speicher mit wahlfreiem Zugriff (RAM), einer optischen Platte, einem USB-Laufwerk (Universal Serial Bus) oder dergleichen) gespeichert werden, in dem ein solcher computerlesbarer Programmcode oder solche Computerbefehle verkörpert sind, wobei der computerlesbarer Programmcode oder dieImaging Application 116 or other computational commands described herein) on a computer-usable storage medium or tangible, non-transitory computer-readable medium (e.g., standard random access memory (RAM), optical disk, USB drive (Universal Serial Bus) or the like) are stored, in which such computer-readable program code or such computer instructions are embodied, wherein the computer-readable program code or the
Computerbefehle installiert oder sonst wie angepasst sein können, um von demComputer commands may be installed or otherwise adapted to be controlled by the
14 BE2022/5323 einen oder den mehreren Prozessoren 108, 118 ausgeführt zu werden (z. B. im14 BE2022/5323 to be executed on one or more processors 108, 118 (e.g. in
Zusammenhang mit dem entsprechenden Betriebssystem in dem einen oder den mehreren Speichern 110, 120), um die maschinenlesbaren Befehle, Methoden,connection with the corresponding operating system in the one or more memories 110, 120) to the machine-readable instructions, methods,
Prozesse, Elemente oder Beschränkungen zu ermöglichen, zu implementieren oder auszuführen, wie sie für die verschiedenen Flussdiagramme, Illustrationen,enable, implement or carry out any process, element or constraint as required for the various flowcharts, illustrations,
Diagramme, Figuren und/oder andere Offenbarung hier veranschaulicht, dargestellt oder beschrieben sind. In dieser Hinsicht kann der Programmcode in einer jeglichen gewünschten Programmiersprache implementiert sein und kann alsDiagrams, figures and/or other disclosure illustrated, illustrated or described herein. In this regard, the program code may be implemented in any desired programming language and may be
Maschinencode, Assemblercode, Bytecode, interpretierbar Sourcecode oder dergleichen (z. B. über Golang, Python, C, C++, C#, Objective-C, Java, Scala,Machine code, assembler code, byte code, interpretable source code or the like (e.g. via Golang, Python, C, C++, C#, Objective-C, Java, Scala,
ActionScript, JavaScript, HTML, CSS, XML, usw.) implementiert sein.ActionScript, JavaScript, HTML, CSS, XML, etc.) must be implemented.
In dem einen oder den mehreren Speichern 110, 120 kann einIn the one or more memories 110, 120, a
Betriebssystem (Operating System, OS) (z. B. Microsoft Windows, Linux, Unix, usw.) gespeichert sein, dass dazu fähig ist, die Funktionalitäten, Apps, Methoden oder andere hier erörterte Software zu ermöglichen. Der eine oder die mehrerenOperating System (OS) (e.g., Microsoft Windows, Linux, Unix, etc.) capable of enabling the functionalities, apps, methods, or other software discussed herein. The one or the several
Speicher 110 können auch die Smart-Imaging-Anwendung 160 und/oder dieStorage 110 may also include smart imaging application 160 and/or the
Bildanreicherungsanwendung 128 speichern, die dazu konfiguriert sein kann, diestore image enhancement application 128 that may be configured to store the
Konstruktion/den Aufbau des Maschinensicht-Jobs zu ermöglichen, wie imTo allow construction/building of the machine view job as in
Weiteren hier beschrieben ist. Zusätzlich oder alternativ dazu können die Smart-Further described here. Additionally or alternatively, the smart
Imaging-Anwendung 116 und/oder die Bildanreicherungsanwendung 128 auch in dem einen oder den mehreren Speichern 120 der Bilderzeugungsvorrichtung 104 und/oder in einer (nicht gezeigten) externen Datenbank gespeichert sein, die für die Benutzerrechnervorrichtung 102 über das Netzwerk 106 zugänglich oder sonst wie in Kommunikation ist. Der eine oder die mehreren Speicher 110, 120 können auch maschinenlesbare Befehle speichern, die eine oder mehrere Anwendungen, eine oder mehrere Softwarekomponenten und/oder eine oder mehrereImaging application 116 and/or image enhancement application 128 may also be stored in the one or more memories 120 of the imaging device 104 and/or in an external database (not shown) accessible to the user computing device 102 via the network 106 or otherwise as in communication is. The memory(s) 110, 120 may also store machine-readable instructions representing one or more applications, one or more software components, and/or one or more
Anwendungs-Programmierschnittstellen (Application Programming Interfaces,Application Programming Interfaces,
APIs) enthalten können, die dazu implementiert werden können, um dieAPIs) that can be implemented to use the
Merkmale, Funktionen oder andere hier beschriebene Offenbarungen zu ermöglichen, wie zum Beispiel beliebige Methoden, Prozesse, Elemente oderenable features, functions, or other disclosures described herein, such as any methods, processes, elements, or
Beschränkungen, wie sie für die verschiedenen Flussdiagramme, Illustrationen,limitations as applied to the various flow charts, illustrations,
Diagramme, Figuren und/oder andere hier gegebene Offenbarung veranschaulicht, dargestellt oder beschrieben sind. Zum Beispiel können mindestens einige derdiagrams, figures and/or other disclosure provided herein are illustrated, illustrated or described. For example, at least some of the
15 BE2022/532315 BE2022/5323
Anwendungen, Softwarekomponenten oder API eine Maschinensicht-basierteApplications, software components or API a machine view-based
Bilderzeugungsanwendung, wie zum Beispiel die Smart-Imaging-Anwendung 116 und/oder die Bildanreicherungsanwendung 128 sein, diese enthalten unter sonst wie Teil davon sein, wobei diese jeweils dazu konfiguriert sein können, ihre verschiedenen Funktionalitäten, die hier erörtert sind, zu ermöglichen. Es sollte darauf hingewiesen werden, dass eine oder mehrere andere Anwendungen inImage generation application such as smart imaging application 116 and/or image enhancement application 128 may be included and otherwise be part of, each of which may be configured to enable their various functionalities discussed herein. It should be noted that one or more other applications in
Betracht gezogen werden können und diese von einem oder mehreren Prozessoren 108, 118 ausgeführt werden können.can be considered and executed by one or more processors 108,118.
Der eine oder die mehreren Prozessoren 108, 118 können mit einem oder mehreren Speichern 110, 120 über einen Computerbus verbunden sein, der zum Übertragen elektronischer Daten, Datenpakete oder sonstiger elektronischerThe one or more processors 108, 118 can be connected to one or more memories 110, 120 via a computer bus suitable for transferring electronic data, data packets or other electronic
Signale an den einen oder die mehreren Prozessoren 108, 118 und den einen oder die mehreren Speicher 110, 120 oder von diesen verantwortlich ist, um die maschinenlesbaren Befehle, Methoden, Prozesse, Elemente oder Beschränkungen, wie sie für die verschiedenen Flussdiagramme, Illustrationen, Diagrammen,signals to or from the one or more processors 108, 118 and the one or more memories 110, 120 to implement the machine-readable instructions, methods, processes, elements or constraints as defined for the various flowcharts, illustrations, diagrams ,
Figuren und/oder andere hier gegebenen Offenbarungen veranschaulicht, dargestellt oder beschrieben sind, zu implementieren oder durchzuführen.Figures and/or other disclosures provided herein are illustrated, illustrated or described to be implemented or performed.
Der eine oder die mehreren Prozessoren 108, 118 können überThe one or more processors 108, 118 can be
Schnittstellen mit dem einen oder den mehreren Speichern 110, 120 über denInterfaces with the one or more memories 110, 120 via the
Computerbus verbunden sein, um das Betriebssystem (Operating System, OS) auszuführen. Der eine oder die mehreren Prozessoren 108, 118 können auch übercomputer bus to run the operating system (OS). The one or more processors 108, 118 can also have
Schnittstellen mit dem einen oder den mehreren Speichern 110, 120 über denInterfaces with the one or more memories 110, 120 via the
Computerbus verbunden sein, um die Daten, die in dem einen oder in den mehreren Speichern 110, 120 und/oder der externen Datenbank(en) (z. B. einer relationalen Datenbank, wie zum Beispiel Oracle, DB2, MySQL oder einer NoSQL- basierten Datenbank wie zum Beispiel MongoDB) zu erstellen, zu lesen, zu aktualisieren, zu löschen oder sonst wie auf diese zuzugreifen oder mit ihr zu interagieren. Die in dem einen oder den mehreren Speichern 110, 120 und/oder einer externen Datenbank gespeicherten Daten können alle oder einen Teil oder beliebige der Daten oder Informationen enthalten, die hier beschrieben sind, einschließlich zum Beispiel von Maschinensicht-Job-Bildern (z. B. Bildern, die von der Bilderzeugungsvorrichtung 104 in Reaktion auf die Ausführung eines Job-computer bus to store the data stored in the one or more memories 110, 120 and/or the external database(s) (e.g. a relational database such as Oracle, DB2, MySQL or a NoSQL based database such as MongoDB), read, update, delete or otherwise access or interact with it. The data stored in the one or more memories 110, 120 and/or an external database may include all, part or any of the data or information described herein including, for example, machine view job images (e.g Images generated by the imaging device 104 in response to the execution of a job
16 BE2022/532316 BE2022/5323
Skripts aufgenommen wurden) und/oder andere geeignete Informationen enthalten können.scripts included) and/or other appropriate information.
Die Netzwerkschnittstellen 112, 122 können dazu konfiguriert sein,The network interfaces 112, 122 can be configured to
Daten über einen oder mehrere externe/Netzwerk-Anschlüsse an eines oder mehrere Netzwerke oder lokale Endgeräte, wie zum Beispiel das Netzwerk 106, das hier beschrieben ist, zu kommunizieren (z. B. zu senden und zu empfangen). In manchen Ausführungsformen können die Netzwerkschnittstellen 112, 122 eineCommunicate (e.g., send and receive) data over one or more external/network ports to one or more networks or local terminals, such as network 106 described herein. In some embodiments, the network interfaces 112, 122 can be a
Client-Server-Plattform-Technologie, wie zum Beispiel ASP.NET, Java J2EE, Ruby on Rails, Node.js, einen Web-Service oder Online-API enthalten, die zumClient-server platform technology, such as ASP.NET, Java J2EE, Ruby on Rails, Node.js, contain a web service or online API used for
Empfangen von und zum Reagieren auf elektronische Anforderungen reagieren kann. Die Netzwerkschnittstellen 112, 122 können die Client-Server-Plattform-Receive and respond to electronic requests. The network interfaces 112, 122 can use the client-server platform
Technologie implementieren, die über den Computerbus mit dem einen oder den mehreren Speichern 110, 120 (einschließlich den Anwendungen, Komponenten,implement technology that communicates with the one or more memories 110, 120 (including the applications, components,
API(s), Daten, usw., die hier gespeichert sind) interagieren, um die maschinenlesbaren Befehle, Methoden, Prozesse, Elemente oder Beschränkungen zu implementieren, wie sie für die verschiedenen Flussdiagrammen, Illustrationen,API(s), data, etc. stored herein) to implement the machine-readable instructions, methods, processes, elements, or constraints specified for the various flowcharts, illustrations,
Diagramme, Figuren und/oder andere hier gegebenen Offenbarungen veranschaulicht, dargestellt oder beschrieben sind.diagrams, figures and/or other disclosures provided herein are illustrated, illustrated or described.
Gemäß manchen Ausführungsformen können dieAccording to some embodiments, the
Netzwerkschnittstellen 112, 122 einen oder mehrere Transceiver (z. B. WWAN,Network interfaces 112, 122 one or more transceivers (e.g. WWAN,
WLAN, und/oder WPAN-Transceiver) enthalten oder mit ihnen interagieren, die gemäß dem IEEE-Standard, 3GPP-Standard oder anderen Standards funktionieren, und die beim Empfang und der Übertragung von Daten über externe/Netzwerk-Anschlüsse verwendet werden können, die mit dem Netzwerk 106 verbunden sind. In manchen Ausführungsformen kann das Netzwerk 106 ein privates Netzwerk oder ein lokales Netzwerk (LAN) umfassen. Zusätzlich oder alternativ dazu kann das Netzwerk 106 ein öffentliches Netzwerk, wie zumWLAN, and/or WPAN transceivers) containing or interacting with them, functioning according to the IEEE standard, 3GPP standard or other standards, and which can be used in the reception and transmission of data via external/network connections that are connected to the network 106. In some embodiments, network 106 may include a private network or a local area network (LAN). Additionally or alternatively, network 106 may be a public network, such as
Beispiel das Internet, umfassen. In manchen Ausführungsformen kann dasExample the Internet, include. In some embodiments it can
Netzwerk 106 Router, drahtlose Switches oder andere derartige drahtloseNetwork 106 routers, wireless switches, or other such wireless
Verbindungspunkte enthalten, die mit der Benutzerrechnervorrichtung 102 (über die Netzwerkschnittstelle 112) und der Bilderzeugungsvorrichtung 104 (über dieContain connection points that are connected to the user computing device 102 (via the network interface 112) and the imaging device 104 (via the
Netzwerkschnittstelle 122) über eine drahtlose Kommunikation auf Basis von einem oder mehreren verschiedenen drahtlosen Standards, zum Beispiel als nichtNetwork interface 122) via wireless communication based on one or more different wireless standards, for example as not
17 BE2022/5323 einschränkendes Beispiel IEEE 802.11a/b/c/g (WIFD, den BLUETOOTH-Standard oder dergleichen umfassen.17 BE2022/5323 limiting example include IEEE 802.11a/b/c/g (WIFD, the BLUETOOTH standard or the like.
Die I/O-Schnittstellen 114, 124 können Operator-Schnittstellen enthalten oder implementieren, die dazu konfiguriert sind, einem Administrator oder einem Operator Informationen zu liefern, und/oder Eingaben von demThe I/O interfaces 114, 124 may include or implement operator interfaces configured to provide information and/or input from an administrator or an operator
Administrator oder Operator entgegenzunehmen. Eine Operator-Schnittstelle kann einen Bildschirm bereitstellen (z. B. über die Benutzerrechnervorrichtung 102 und/oder Bilderzeugungsvorrichtung 104), den ein Benutzer/ Operator weiter dazu verwenden kann, jegliche Bilder, Grafiken, Text, Daten, Merkmale, Pixel und/oder andere geeignete Visualisierungen oder Informationen zu visualisieren.administrator or operator. An operator interface may provide a screen (e.g., via user computing device 102 and/or imaging device 104) that a user/operator may further use to display any images, graphics, text, data, features, pixels, and/or others to visualize suitable visualizations or information.
Zum Beispiel können die Benutzerrechnervorrichtung 102 und/oder dieFor example, user computing device 102 and/or the
Bilderzeugungsvorrichtung 104 mindestens teilweise eine grafischeImaging device 104 is at least partially a graphical
Benutzerschnittstelle (Graphical User Interface, GUT) zum Anzeigen von Bildern,Graphical User Interface (GUT) for displaying images,
Grafiken, Text, Daten, Merkmalen, Pixeln und/oder anderen geeignetenGraphics, text, data, features, pixels and/or other appropriate
Visualisierung oder Informationen auf dem Bildschirm umfassen, implementieren, darauf Zugriff haben, sie rendern oder sonst wie darstellen. Die I/O-Schnittstellen 114, 124 können auch I/O-Komponenten (z. B. Anschlüsse, kapazitiven oder resistive berührungsempfindliche Eingabepaneele, Tasten, Knöpfe, Lichter, LEDs, eine beliebige Anzahl von Tastaturen, Mäusen, USB-Laufwerken, optischenInclude, implement, access, render, or otherwise display any visualization or information on the screen. The I/O interfaces 114, 124 can also include I/O components (e.g., connectors, capacitive or resistive touch-sensitive input panels, buttons, knobs, lights, LEDs, any number of keyboards, mice, USB drives, optical
Laufwerken, Bildschirmen, Touchscreens usw.) enthalten, die über diedrives, monitors, touch screens, etc.) that contain the
Benutzerrechnervorrichtung 102 und/oder die Bilderzeugungsvorrichtung 104 direkt/indirekt zugänglich sind oder an diese angeschlossen sind. Gemäß manchenUser computing device 102 and/or imaging device 104 are directly/indirectly accessible or connected to. According to some
Ausführungsformen kann ein Administrator oder Benutzer/Operator auf dieembodiments, an administrator or user/operator can access the
Benutzerrechnervorrichtung 102 und/oder die Bilderzeugungsvorrichtung 104 zugreifen, um Jobs zu erstellen, Bilder oder andere Informationen zu sichten,Access user computing device 102 and/or image generation device 104 to create jobs, view images or other information,
Änderungen vorzunehmen, Antworten und/oder Auswahlen einzugeben und/oder andere Funktionen auszuführen.make changes, enter answers and/or choices and/or perform other functions.
Wie im Vorausgehenden beschrieben, kann in manchenAs described above, in some
Ausführungsformen die Benutzerrechnervorrichtung 102 die hier als ein Teil eines „Cloud“-Netzwerks beschriebenen Funktionalitäten ausführen oder kann sonst mit anderen Hardware- oder Software-Komponenten innerhalb der Cloud kommunizieren, um hier beschriebene Daten oder Informationen zu senden, abzurufen oder sonst wie zu analysieren.In embodiments, user computing device 102 may perform the functionality described herein as part of a "cloud" network or otherwise communicate with other hardware or software components within the cloud to send, retrieve, or otherwise analyze data or information described herein.
18 BE2022/532318 BE2022/5323
Fig. 2A ist eine perspektivische Darstellung der2A is a perspective view of the
Bilderzeugungsvorrichtung 104 von Fig. 1 gemäß hier beschriebenenImaging device 104 of FIG. 1 as described herein
Ausführungsformen. Die Bilderzeugungsvorrichtung 104 enthält ein Gehäuse 202, eine Bilderzeugungsapertur 204, ein Benutzerschnittstellenfeld 206, einen Dome-embodiments. The imaging device 104 includes a housing 202, an imaging aperture 204, a user interface panel 206, a dome
Switch/Knopf 208, eine oder mehrere Leuchtdioden (Light Emitting Diodes, LEDs) 210 und Befestigungspunkt(e) 212. Wie zuvor erwähnt, kann dieSwitch/knob 208, one or more light emitting diodes (LEDs) 210 and attachment point(s) 212. As previously mentioned, the
Bilderzeugungsvorrichtung 104 Job-Dateien von einer Benutzerrechnervorrichtung (z. B. der Benutzerrechnervorrichtung 102) erhalten, welche dieImaging device 104 may receive job files from a client computing device (e.g., client computing device 102) that contains the
Bilderzeugungsvorrichtung 104 hiernach interpretiert und ausführt. Die in derImage generating device 104 hereafter interpreted and executed. The one in the
Job-Datei enthaltenen Befehle können Geräte-Konfigurationseinstellungen (hiernach auch als „Bilderzeugungseinstellungen“ bezeichnet) enthalten, die dazu wirksam sind, die Konfiguration der Bilderzeugungsvorrichtung 104 vor derCommands contained in the job file may include device configuration settings (also referred to hereinafter as "imaging settings") effective to configure the imaging device 104 prior to the
Aufnahme von Bildern eines Zielobjekts einzustellen.stop capturing images of a target object.
Zum Beispiel können die Geräte-Konfigurationseinstellungen Befehle zum Einstellen einer oder mehrerer Einstellungen enthalten, die sich auf dieFor example, the device configuration settings may contain commands for setting one or more settings related to the
Bilderzeugungsapertur 204 beziehen. Als ein Beispiel sei angenommen, dass mindestens ein Teil der beabsichtigten Analyse, die einem Maschinensicht-Job entspricht, es erforderlich macht, dass die Bilderzeugungsvorrichtung 104 dieImaging aperture 204 related. As an example, assume that at least a portion of the intended analysis corresponding to a machine vision job requires the imaging device 104 to perform the
Helligkeit eines aufgenommenen Bilds maximiert. Zum Umsetzen dieserBrightness of a captured image is maximized. To implement this
Anforderung kann die Job-Datei Geräte-Konfigurationseinstellungen enthalten, um die Aperturgröfe der Bilderzeugungsapertur 204 zu erhöhen. DieIf required, the job file may contain device configuration settings to increase the aperture size of the imaging aperture 204 . The
Bilderzeugungsvorrichtung 104 kann diese Befehle (zum Beispiel über einen oder mehrere Prozessoren 118) interpretieren und demgemäß die AperturgrôBe derImaging device 104 may interpret these commands (e.g., via one or more processors 118) and adjust the aperture size accordingly
Bilderzeugungsapertur 204 vergrößern. Auf diese Weise kann dieEnlarge imaging aperture 204. In this way, the
Bilderzeugungsvorrichtung 104 dazu konfiguriert sein, ihre eigene Konfiguration automatisch einzustellen und sich optimal auf einen bestimmten Maschinensicht-Image generating device 104 can be configured to automatically set its own configuration and optimally adapt to a specific machine view
Job einzustellen. Zusätzlich kann die Bilderzeugungsvorrichtung 104 zum Beispiel, jedoch ohne Einschränkung, eines oder mehrere Bandpassfilter, einen oder mehrere Polarisatoren, einen oder mehrere DPM-Diffusoren, eines oder mehrere C-job. Additionally, for example but without limitation, imaging device 104 may include one or more bandpass filters, one or more polarizers, one or more DPM diffusers, one or more C-
Mount-Objektive und/oder eine oder mehrere C-Mount-Flüssiglinsen haben oder sonst wie dazu einstellbar sein, diese aufzuweisen, über die empfangeneMount lenses and/or one or more C-mount liquid lenses have, or otherwise be configurable to have, over the received
Beleuchtung durch die Bilderzeugungsapertur 204, oder diese sonst wie beeinflussend.Illuminating through, or otherwise affecting, imaging aperture 204.
19 BE2022/532319 BE2022/5323
Das Benutzerschnittstellenfeld 206 kann den Dome-Switch/Knopf 208 und eine oder mehrere LEDs 210 enthalten und kann dadurch eine Vielzahl interaktiver und/oder anzeigender Merkmale ermöglichen. Allgemein kann dasUser interface panel 206 may include dome switch/button 208 and one or more LEDs 210 and may thereby enable a variety of interactive and/or display features. In general it can
Benutzerschnittstellenfeld 206 es einem Benutzer ermöglichen, dieUser interface panel 206 allow a user to
Bilderzeugungsvorrichtung 104 (z. B. über den Dome-Switch/Knopf 208) auszulösen und/oder einzustellen und (z. B. über die eine oder die mehreren LEDs 210) zu erkennen, wann eine oder mehrere Funktionen, Fehler und/oder andereTrigger and/or adjust imaging device 104 (e.g., via dome switch/button 208) and detect (e.g., via LED(s) 210) when one or more functions, errors, and/or others
Aktionen hinsichtlich der Bilderzeugungsvorrichtung 104 durchgeführt wurden oder stattgefunden haben. Zum Beispiel kann die Auslösefunktion eines Dome-Actions have been taken or taken place with respect to the imaging device 104. For example, the release function of a dome
Switch/Knopfs (zum Beispiel des Dome-Switch/Knopfs 208) es einem Benutzer ermöglichen, ein Bild unter der Verwendung der Bilderzeugungsvorrichtung 104 aufzunehmen und/oder einen Auslöser-Konfigurationsbildschirm einerSwitch/button (e.g., dome switch/button 208) allow a user to capture an image using imaging device 104 and/or a trigger configuration screen
Benutzeranwendung (z. B. der Smart-Imaging-Anwendung 116, derUser application (e.g. the smart imaging application 116, the
Bildanreicherungsanwendung 128) anzuzeigen. Der Auslöser-Image Enhancement Application 128). The trigger-
Konfigurationsbildschirm kann es dem Benutzer erlauben, einen oder mehrereConfiguration screen may allow the user to set one or more
Auslöser für die Bilderzeugungsvorrichtung 104 zu konfigurieren, die im Speicher (z. B. dem einen oder den mehreren Speichern 110, 120) zur Verwendung in später entwickelten Maschinensicht-Jobs, wie hier erörtert, gespeichert werden können.Configure triggers for the imaging device 104 that may be stored in memory (e.g., the one or more memories 110, 120) for use in later developed machine vision jobs as discussed herein.
Als ein weiteres Beispiel kann die Einstellfunktion eines Dome-As another example, the setting function of a dome
Switch/Knopfs (z. B. des Dome-Switch/Knopfs 208) es einem Benutzer ermöglichen, die Konfiguration der Bilderzeugungsvorrichtung 104 gemäß einer bevorzugten/vorbestimmten Konfiguration automatisch und/oder manuell einzustellen und/oder einen Bilderzeugungs-Konfigurationsbildschirm einerSwitch/knob (e.g., dome switch/knob 208) allow a user to automatically and/or manually adjust the configuration of the imaging device 104 according to a preferred/predetermined configuration and/or an imaging configuration screen
Benutzeranwendung (z. B. der Smart-Imaging-Anwendung 116, derUser application (e.g. the smart imaging application 116, the
Bildanreicherungsanwendung 128) anzuzeigen. Der Bilderzeugungs-Image Enhancement Application 128). The imaging
Konfigurationsbildschirm kann es dem Benutzer erlauben, eine oder mehrereConfiguration screen may allow the user to set one or more
Konfigurationen der Bilderzeugungsvorrichtung 104 (z. B. Aperturgröße,Configurations of the imaging device 104 (eg, aperture size,
Belichtungszeit usw.) zu konfigurieren, die im Speicher (z. B. dem einen oder den mehreren Speichern 110, 120) zur Verwendung in später entwickeltenexposure time, etc.) stored in memory (e.g., the one or more memories 110, 120) for use in later developed
Maschinensicht-Jobs, wie hier erörtert, gespeichert werden können.Machine View jobs can be saved as discussed herein.
Um dieses Beispiel zu erweitern und wie ferner hier erörtert, kann einTo extend this example, and as further discussed herein, a
Benutzer den Bilderzeugungs-Konfigurationsbildschirm (oder allgemeiner dieUser the imaging configuration screen (or more generally the
Smart-Imaging-Anwendung 116 und/oder die Bildanreicherungsanwendung 128)smart imaging application 116 and/or the image enhancement application 128)
20 BE2022/5323 dazu verwenden, zwei oder mehr Konfigurationen von20 BE2022/5323 to use two or more configurations of
Bilderzeugungseinstellungen für die Bilderzeugungsvorrichtung 104 zu erstellen.create imaging settings for imaging device 104 .
Der Benutzer kann dann diese zwei oder mehr Konfigurationen vonThe user can then choose these two or more configurations of
Bilderzeugungseinstellungen als Teil eines Maschinensicht-Jobs speichern, der dann an die Bilderzeugungsvorrichtung 104 in einer Job-Datei übertragen wird, die eines oder mehrere Job-Skripte enthält. Das eine oder die mehreren Job-Save imaging settings as part of a machine view job, which is then transmitted to the imaging device 104 in a job file containing one or more job scripts. One or more jobs
Skripte kann dann die Prozessoren (z. B. einen oder mehrere Prozessoren 118) derScripts can then use the processors (e.g. one or more processors 118) of the
Bilderzeugungsvorrichtung 104 anweisen, automatisch und sequenziell dieInstruct image forming device 104 to automatically and sequentially
Bilderzeugungseinstellungen der Bilderzeugungsvorrichtung gemäß einem oder mehreren der zwei oder mehr Konfigurationen von Bilderzeugungseinstellungen nach jeder aufeinanderfolgenden Bildaufnahme einzustellen.adjust imaging settings of the imaging device according to one or more of the two or more configurations of imaging settings after each successive image capture.
Der/die Befestigungspunkt(e) 212 können einen Benutzer befähigen, dieThe attachment point(s) 212 may enable a user to
Bilderzeugungsvorrichtung 104 auf einer Befestigungsvorrichtung (z. B. einemImaging device 104 on a mounting device (e.g. a
Bilderzeugungsstativ, einer Kamerabefestigung usw.), einer baulichen Oberfläche (z. B. einer Lagerhallenwand, einer Lagerhallendecke, einer Gebäudesäule usw.) anderen Zubehörgegenstände und/oder beliebigen anderen geeignetenimaging tripod, a camera mount, etc.), a structural surface (e.g., a warehouse wall, a warehouse ceiling, a building pillar, etc.), other accessories, and/or any other suitable one
Verbindungsvorrichtungen, Strukturen oder Oberflächen, zu befestigen und/oder entfernbar anzubringen. Zum Beispiel kann die Bilderzeugungsvorrichtung 104 optimal auf einer Befestigungsvorrichtung in einem Logistikzentrum, einerconnecting devices, structures or surfaces to be attached and/or removably attached. For example, the imaging device 104 can be optimally mounted on a fixture in a logistics center, a
Fertigungsanlage, einem Lagerhaus und/oder einer anderen Einrichtung angebracht werden, um die Qualität/Konsistenz von Produkten, Verpackungen und/oder anderen Gegenständen abzubilden und dadurch zu überwachen, während diese sich durch das FOV der Bilderzeugungsvorrichtung 104 bewegen. Darüber hinaus kann/können der/die Befestigungspunkt(e) 212 es einem Benutzer ermöglichen, die Bilderzeugungsvorrichtung 104 mit einer großen Vielzahl vonmanufacturing facility, warehouse, and/or other facility to image and thereby monitor the quality/consistency of products, packages, and/or other items as they move through the FOV of imaging device 104 . Additionally, the attachment point(s) 212 may allow a user to attach the imaging device 104 to a wide variety of
Zubehörgegenständen zu verbinden, einschließlich, jedoch ohne Einschränkung, einer oder mehreren externen Beleuchtungsvorrichtungen, einer oder mehrerento connect accessories including, without limitation, one or more external lighting devices, one or more
Anbringungsvorrichtungen/-Halterungen und dergleichen.attachment devices/brackets and the like.
Zusätzlich kann die Bilderzeugungsvorrichtung 104 mehrereIn addition, the imaging device 104 may have multiple
Hardwarekomponenten enthalten, die im Gehäuse 202 enthalten sind, die eineContain hardware components that are contained in the housing 202, the one
Verbindung zu einem Computernetzwerk (z. B. dem Netzwerk 106) ermöglichen.Enable connection to a computer network (e.g., network 106).
Zum Beispiel kann die Bilderzeugungsvorrichtung 104 eine Netzwerkschnittstelle (z. B. die Netzwerkschnittstelle 122) enthalten, die es derFor example, imaging device 104 may include a network interface (e.g., network interface 122) that allows the
91 BE2022/532391 BE2022/5323
Bilderzeugungsvorrichtung 104 ermöglicht, mit einem Netzwerk verbunden zu werden, wie zum Beispiel eine Gigabit-Ethernet-Verbindungen und/oder eine Dual-Imaging device 104 allows for being connected to a network, such as a Gigabit Ethernet connection and/or a dual
Gigabit-Ethernet-Verbindung. Ferner kann die Bilderzeugungsvorrichtung 104Gigabit Ethernet connection. Furthermore, the image generation device 104
Transceiver und/oder andere Kommunikationskomponenten als Teil derTransceivers and/or other communications components as part of
Netzwerkschnittstelle enthalten, um mit anderen Geräten (z. B. derNetwork interface included to communicate with other devices (e.g. the
Benutzerrechnervorrichtung 102) zum Beispiel über Ethernet/IP, PROFINET,User computing device 102) for example via Ethernet/IP, PROFINET,
Modbus TCP, CC-Link, USB 3.0, RS-232, und/oder einem beliebigen anderen geeigneten Kommunikationsprotokoll oder Kombinationen davon zu kommunizieren.Communicate with Modbus TCP, CC-Link, USB 3.0, RS-232, and/or any other suitable communication protocol or combinations thereof.
Fig. 2B ist ein Blockdiagramm, das für eine beispielhafte2B is a block diagram used for an example
Logikschaltung repräsentativ ist, die dazu fähig ist, zum Beispiel eine oder mehrere Komponenten der beispielhaften Bilderzeugungsvorrichtung 104 von Fig. 2A zu implementieren. Die beispielhafte Logikschaltung von Fig. 2B ist einelogic circuitry capable of implementing, for example, one or more components of the example imaging device 104 of FIG. 2A. The example logic circuit of FIG. 2B is one
Verarbeitungsplattform 230, die zum Ausführen von Befehlen fähig ist, zumProcessing platform 230 capable of executing instructions to
Beispiel um Operationen der hier beschriebenen beispielhaften Verfahren zu implementieren, wie sie durch die Flussdiagramme der Zeichnungen dargestellt sind, die der vorliegenden Beschreibung beiliegen. Andere beispielhafteExample to implement operations of the example methods described herein as illustrated by the flow charts of the drawings that accompany the present specification. Other exemplary
Logikschaltungen, die zum Beispiel zum Implementieren von Operationen der hier beschriebenen beispielhaften Verfahren fähig sind, sind unter anderen FieldLogic circuits capable of implementing operations of the example methods described herein, for example, include Field
Programmable Gate Arrays (FPGAs) und Application Specific Integrated Circuits (ASICS).Programmable Gate Arrays (FPGAs) and Application Specific Integrated Circuits (ASICS).
Die beispielhafte Verarbeitungsplattform 230 von Fig. 2B enthält einenThe example processing platform 230 of FIG. 2B includes a
Prozessor 232, wie zum Beispiel einen oder mehrere Mikroprozessoren, Controller und/oder eine beliebige geeignete Art von Prozessor. Die beispielhafteProcessor 232, such as one or more microprocessors, controllers, and/or any suitable type of processor. The exemplary
Verarbeitungsplattform 230 von Fig. 2B enthält einen Speicher (z. B. flüchtigenProcessing platform 230 of Figure 2B includes memory (e.g., volatile
Speicher, nicht flüchtigen Speicher) 234, auf den der Prozessor 232 (z. B. über einen Speichercontroller) zugreifen kann. Der beispielhafte Prozessor 232 interagiert mit dem Speicher 234 zum Beispiel zum Erhalten von maschinenlesbaren Befehlen, die in dem Speicher 234 gespeichert sind, die zummemory, non-volatile memory) 234 accessible to processor 232 (e.g., via a memory controller). The example processor 232 interacts with the memory 234 to obtain, for example, machine-readable instructions stored in the memory 234 that are used for
Beispiel den Operationen entsprechen, die durch die Flussdiagramme der vorliegenden Offenbarung repräsentiert werden. Der Speicher 234 enthält auch dieexample correspond to the operations represented by the flowcharts of the present disclosure. The memory 234 also contains the
Smart-Imaging-Anwendung 116 und optional die Bildanreicherungsanwendung 128, auf die der beispielhafte Prozessor 232 jeweils zugreifen kann. Die Smart-smart imaging application 116 and optionally image enhancement application 128, each of which can be accessed by example processor 232. the smart
99 BE2022/532399 BE2022/5323
Imaging-Anwendung 116 und/oder die Bildanreicherungsanwendung 128 können regelbasierte Befehle, eine künstliche Intelligenz (KI) und/oder einImaging application 116 and/or image enhancement application 128 may be rule-based commands, artificial intelligence (AI), and/or a
Maschinenlernen-basiertes Modell und/oder eine beliebige andere geeigneteMachine learning based model and/or any other suitable one
Algorithmus-Architektur oder eine Kombination hiervon enthalten, die zumAlgorithm architecture, or a combination thereof, used for
Beispiel dazu konfiguriert ist, einen von einer Maschinensicht-Kamera (z. B. derexample is configured to receive a signal from a machine vision camera (e.g. the
Bilderzeugungsvorrichtung 104) aufgenommenen Bildinhalt anzureichern. ZurImage generating device 104) to enrich recorded image content. To the
Veranschaulichung kann der beispielhafte Prozessor 232 auf den Speicher 234 zugreifen, um die Smart-Imaging-Anwendung 116 und/oder dieAs an illustration, the example processor 232 may access the memory 234 to run the smart imaging application 116 and/or the
Bildanreicherungsanwendung 128 auszuführen, wenn dieRun Image Enhancement Application 128 when the
Bilderzeugungsvorrichtung 104 (über die Bilderzeugungsanordnung 126) ein Bild aufnimmt, das eine Vielzahl von Angaben enthält, in denen jeweils eine Nutzlast codiert ist. Zusätzlich oder alternativ dazu können maschinenlesbare Befehle, die den hier beschriebenen beispielhaften Operationen entsprechen, auf einem oder mehreren entfernbaren Medien (z. B. einer Compact Disc, einer DVD, einem entfernbaren Flash-Speicher usw.) gespeichert sein, die mit derImaging device 104 captures (via imaging assembly 126) an image containing a plurality of indicia, each of which encodes a payload. Additionally or alternatively, machine-readable instructions corresponding to the example operations described herein may be stored on one or more removable media (e.g., compact disc, DVD, removable flash memory, etc.) compatible with the
Verarbeitungsplattform 230 verbunden werden können, um auf die darauf gespeicherten maschinenlesbaren Befehle zugreifen zu können.Processing platform 230 can be connected to access the machine-readable instructions stored thereon.
Die beispielhafte Verarbeitungsplattform 230 von Fig. 2B enthält auch eine Netzwerkschnittstelle 236 zum Ermöglichen einer Kommunikation mit anderen Maschinen zum Beispiel über eines oder mehrere Netzwerke. Die beispielhafte Netzwerkschnittstelle 236 enthält eine beliebige geeignete Art vonThe example processing platform 230 of FIG. 2B also includes a network interface 236 for enabling communication with other machines over, for example, one or more networks. The example network interface 236 includes any suitable type of
Kommunikationsschnittstelle(en) (z. B. drahtgebundene und/oder drahtloseCommunication interface(s) (e.g. wired and/or wireless
Schnittstellen), die dazu konfiguriert sind, gemäß (einem) beliebigen geeignetenInterfaces) configured to do so, according to any suitable one
Protokoll(en) (z. B. Ethernet für drahtgebundene Kommunikationen und/oderProtocol(s) (e.g. Ethernet for wired communications and/or
IEEE 802.11 für drahtlose Kommunikationen) betrieben zu werden.IEEE 802.11 for wireless communications).
Die beispielhafte Verarbeitungsplattform 230 von Fig. 2B enthält auchThe example processing platform 230 of FIG. 2B also includes
Eingabe/Ausgabe (1/0)-Schnittstellen 238 zur Ermöglichung des Empfangs vonInput/Output (I/O) interfaces 238 to enable receipt of
Benutzereingaben und zur Kommunikation von Ausgabedaten an den Benutzer.user input and to communicate output data to the user.
Solche Benutzer-Eingaben und -Kommunikationen können zum Beispiel eine beliebige Anzahl von Tastaturen, Mäusen, USB-Laufwerken, optischenSuch user input and communications can include, for example, any number of keyboards, mice, USB drives, optical
Laufwerken, Bildschirmen, Touchscreens usw. beinhalten.drives, monitors, touch screens, etc.
Fig. 3A stellt eine beispielhafte Anwendungsschnittstelle 300 dar, die ein Beispielbild 314 enthält, das von einer Bilderzeugungsvorrichtung 1043A illustrates an example application interface 300 that includes an example image 314 generated by an imaging device 104
23 BE2022/5323 aufgenommen wurde. Die beispielhafte Anwendungsschnittstelle 300 kann als ein23 BE2022/5323. The example application interface 300 may be a
Teil einer Smart-Imaging-Anwendung (z. B. der Smart-Imaging-Anwendung 106), einer Bildanreicherungsanwendung (z. B. der Bildanreicherungsanwendung 128) und/oder einer beliebigen anderen geeigneten Anwendung oder Kombinationen davon angezeigt werden. Zum Beispiel kann die beispielhaftePart of a smart imaging application (e.g., smart imaging application 106), an image enhancement application (e.g., image enhancement application 128), and/or any other suitable application, or combinations thereof. For example, the exemplary
Anwendungsschnittstelle 300 auf einer Schnittstelle einerApplication interface 300 on an interface a
Benutzerrechnervorrichtung (z. B. der Benutzerrechnervorrichtung 102) als einuser computing device (e.g., user computing device 102) as a
Ergebnis dessen wiedergegeben werden, dass die Bilderzeugungsvorrichtung einenResult of which are reproduced that the imaging device a
Maschinensicht-Job ausführt, und kann gemäß Befehlen formatiert sein, die als ein Teil der Smart-Imaging-Anwendung 106 enthalten sind. Die besonderenmachine view job and may be formatted according to commands included as part of the smart imaging application 106 . The special ones
Bildwiedergaben und/oder andere Aspekte der beispielhaftenImage renderings and/or other aspects of the exemplary
Anwendungsschnittstelle 300 können gemäß Befehlen bestimmt und angezeigt werden, die als ein Teil der Bildanreicherungsanwendung 128, wie hier beschrieben, enthalten sind.Application interface 300 may be determined and displayed according to commands included as part of image enhancement application 128 as described herein.
In manchen Fällen enthält jedes in der beispielhaftenIn some cases, each in the example
Anwendungsschnittstelle 300 angezeigte Bild einen Barcode, wie zum Beispiel denApplication interface 300 displayed image a barcode, such as the
Barcode 302 und den Barcode 304. Je nachdem, wie ein Maschinensicht-Job konfiguriert ist, kann die Anwendung (z. B. die Bildanreicherungsanwendung 128) von der Bilderzeugungsvorrichtung decodierte Barcodedaten empfangen, die einem der Barcodes 302/304 zugeordnet sind (diese können auch als „Barcode-barcode 302 and the barcode 304. Depending on how a machine view job is configured, the application (e.g. the image enrichment application 128) can receive from the imaging device decoded barcode data that is associated with one of the barcodes 302/304 (they can also as "barcode
Ergebnisdaten“ bezeichnet werden). Diese Informationen können an einer entsprechenden Stelle innerhalb der Schnittstelle angezeigt werden. In der dargestellten Schnittstelle 300 sind die aus dem Barcode 302 decodierten Daten als eine Zeichenkette 306 angezeigt und die aus dem Barcode 304 decodierten Daten als eine Zeichenkette 308 innerhalb des Eintragsfensters 310 angezeigt (in denresult data”). This information can be displayed at an appropriate location within the interface. In the illustrated interface 300, the data decoded from barcode 302 is displayed as a character string 306 and the data decoded from barcode 304 is displayed as a character string 308 within entry window 310 (in Figs
Figuren 3A und 3B als „Ergebnisse betrachten“ angegeben).Figures 3A and 3B indicated as "View Results").
Wie in Fig. 3A veranschaulicht, enthält die beispielhafteAs illustrated in Figure 3A, the exemplary
Anwendungsschnittstelle 300 zusätzlich einen Einstellungsteil 316 und einenApplication interface 300 additionally a setting part 316 and a
Filmstreifenteil 318. Der Einstellungsteil 316 kann es einem Benutzer allgemein ermöglichen, bestimmte Aktionen zu konfigurieren, die als ein Teil desFilmstrip portion 318. Settings portion 316 may generally allow a user to configure certain actions to be included as part of the
Maschinensicht-Jobs, Barcode-Decodier-Jobs und/oder eines beliebigen anderen geeigneten ausführbaren Jobs durchgeführt werden, der von dermachine view jobs, barcode decoding jobs and/or any other suitable executable job run by the
Bilderzeugungsvorrichtung ausgeführt wird. Zum Beispiel kann der Benutzer dieImage forming device is running. For example, the user can
24 BE2022/532324 BE2022/5323
Option „alle decodieren“ freischalten, die in Fig. 3A gezeigt ist, um den als ein Teil des Maschinensicht-Jobs enthaltenen Angaben-Decodierer zu konfigurieren, um jegliche decodierbaren Angaben zu decodieren, die innerhalb des Beispielbilds 314 identifizierbar sind. Als ein Ergebnis hiervon kann der Angaben-Decodierer jede der Nutzlasten aus den Barcodes 302, 304 decodieren und die Ergebnisse derEnable the "decode all" option shown in FIG. 3A to configure the indication decoder included as part of the machine view job to decode any decodable indication identifiable within the example image 314 . As a result, the indication decoder can decode each of the payloads from the barcodes 302, 304 and the results of the
Decodierung innerhalb des Eintragsfensters 310 anzeigen. Der Filmstreifenteil 318 kann alle von der Bilderzeugungsvorrichtung während einer einzelnen Ausführung des Maschinensicht-Jobs aufgenommenen Bilder enthalten. Zum Beispiel kann, während sich ein Zielobjekt an der Bilderzeugungsvorrichtung vorbei bewegt, dieDisplay decoding within entry window 310. Filmstrip portion 318 may contain all of the images captured by the imaging device during a single execution of the machine view job. For example, as a target moves past the imaging device, the
Bilderzeugungsvorrichtung eines oder mehrere Bilder des Zielobjekts aufnehmen, und kann jedes dieser aufgenommenen Bilder innerhalb des Filmstreifenteils 318 angezeigt werden.Imaging device may capture one or more images of the target object, and each of those captured images may be displayed within filmstrip portion 318.
Fig. 3B stellt eine weitere beispielhafte Anwendungsschnittstelle 330 dar, die ein weiteres Beispielbild 320 enthält, das von einerFIG. 3B illustrates another example application interface 330 that includes another example image 320 generated by a
Bilderzeugungsvorrichtung 104 aufgenommen wurde. Dieses Beispielbild 320 enthält mehrere Angaben (z. B. Quick Response (QR)-Codes), und mehrere dieserImage forming device 104 was recorded. This sample image 320 includes multiple indicia (e.g., Quick Response (QR) codes), and multiple of these
Angaben 322, 324 können von dem Angaben-Decodierer decodiert werden, der als ein Teil des Maschinensicht-Jobs enthalten ist, der von derIndications 322, 324 may be decoded by the indication decoder included as part of the machine view job provided by the
Bilderzeugungsvorrichtung ausgeführt wird. Die aus den Angaben 322 decodiertenImage forming device is running. Those decoded from the indications 322
Daten werden als eine Zeichenkette 326 angezeigt, und die aus der Angabe 324 decodierten Daten werden als eine Zeichenkette 328 innerhalb desData is displayed as a string 326 and the data decoded from the indication 324 is displayed as a string 328 within the
Eintragsfensters 310 angezeigt. Auf diese Weise kann die als ein Teil vonEntry window 310 is displayed. In this way, as a part of
Maschinensicht-Jobs, die in der vorliegenden Offenbarung beschrieben sind, durchgeführte Angaben-Decodierung dazu konfiguriert sein, eine Nutzlast aus beliebigen geeigneten Angaben, wie zum Beispiel Barcodes, QR-Codes,Indication decoding performed in machine view jobs described in the present disclosure may be configured to generate a payload from any suitable indicia, such as barcodes, QR codes,
Datenmatrizen usw., zu decodieren.data matrices etc. to decode.
Gemäß einigen Aspekten der vorliegenden Erfindung stellt dieAccording to some aspects of the present invention, the
Anwendung (z. B. die Bildanreicherungsanwendung 128) ein Mittel bereit, mit dem ein Benutzer eine gewünschte Angabe auswählen kann und die Anwendung dasApplication (e.g., image enhancement application 128) provides a means for a user to select a desired item and the application to do so
Bild um diese Angabe herum automatisch zentriert und diese Angabe auf ein bestimmtes Zoom-Niveau heranzoomt. Das Umsetzen dieser Funktionalität kann aufgrund dessen besonders schwierig sein, dass die Angaben in einer großenImage automatically centers around this indication and zooms in on this indication to a specified zoom level. Implementing this functionality can be particularly difficult due to the fact that the information is in a large
Vielzahl von Formen und Größen (z. B. Barcodes 302, 304 und Angaben 322, 324)Variety of shapes and sizes (e.g. barcodes 302, 304 and indicia 322, 324)
25 BE2022/5323 auftreten können und dass je nach der Betriebsumgebung die Abmessungen der25 BE2022/5323 and that depending on the operating environment, the dimensions of the
Angaben, wie sie auf dem aufgenommenen Bild erscheinen, sehr stark variieren können.Information as it appears on the captured image can vary greatly.
In manchen Umsetzungen kann die Anwendung dies über Folgendes erreichen. Zum Erkennen, welche Angabe der Benutzer heranzoomen will, kann der Benutzer die bestimmte Angabe dadurch auswählen, dass er einen bestimmtenIn some implementations, the application can achieve this through the following. To identify which item the user wants to zoom in on, the user can select the specific item by clicking a specific
Eintrag aus dem Eintragsfenster 310 auswählt. Dies kann durch ein Schweben-entry from entry window 310. This can be done by a hover
Lassen des Zeigers einer Maus über einer Zeile, der die Nutzlast mit der betreffenden Angabe zugeordnet ist, und dann durch Klicken einer Maustaste zumHovering a mouse pointer over a line associated with the payload containing the specification in question and then clicking a mouse button to
Treffen der Auswahl geschehen. Eine ähnliche Funktionalität kann zum Beispiel über eine Tastatur oder ein beliebiges anderes Eingabegerät erfolgen, das in demmaking the selection happen. A similar functionality can be done, for example, via a keyboard or any other input device that is in the
Eintragsfenster 310 eine Auswahl eines spezifischen Eintrags ermöglicht, dem eine gewünschte Angabe zugeordnet ist. In anderen Fällen kann der Benutzer dadurch eine Auswahl treffen, dass er die Maus (oder eine beliebige andereEntry window 310 allows selection of a specific entry associated with a desired item. In other cases, the user can make a selection by using the mouse (or any other
Eingabevorrichtung) über der gewünschten Angabe in dem Anzeigebereich 312 schweben lässt und dann durch Klicken einer Maustaste die Auswahl trifft. Es sollte berücksichtigt werden, dass über die gesamte vorliegende Offenbarunginput device) over the desired indication in the display area 312 and then makes the selection by clicking a mouse button. It should be borne in mind that throughout the present disclosure
Bezugnahmen auf Eingabevorrichtungen, wie zum Beispiel eine Maus, nicht alsReferences to input devices, such as a mouse, should not be construed as
Einschränkung gesehen werden sollten, sondern dass auch andere Eingabegeräte innerhalb des Umfangs dieser Offenbarung in Betracht gezogen werden. Zumlimitations, but that other input devices are also contemplated within the scope of this disclosure. For the
Beispiel sollte berücksichtigt werden, dass in dem Fall, dass die Anwendung auf einem mobilen Gerät, wie zum Beispiel einem Tablet oder einem Notebook, die über Touchscreen-Fähigkeiten verfügen, ausgeführt wird, der Finger einesFor example, it should be taken into account that in the event that the application is run on a mobile device such as a tablet or a notebook that has touch screen capabilities, the finger of a
Benutzers und die entsprechenden Eingabefunktionen über einen Bildschirm in der gleichen Weise wie die Eingabefunktionen einer Computermaus funktionieren können.User and the corresponding input functions can work over a screen in the same way as the input functions of a computer mouse.
Vor oder nach der Auswahl einer gewünschten Angabe bestimmt dieBefore or after selecting a desired indication determines the
Anwendung die Begrenzungen eines Begrenzungsrahmens, der nachfolgend mindestens einige der Angaben in dem Bild im Wesentlichen einfasst. In manchenApplying the bounds of a bounding box that subsequently substantially encloses at least some of the information in the image. In some
Implementierungen, bei denen die Bestimmung vor der Auswahl der gewünschtenImplementations where the determination before choosing the desired
Angabe gemacht wird, kann die Anwendung dazu konfiguriert sein, mindestens einen Begrenzungsrahmen um jede entsprechende Angabe anzuzeigen, die in dem im Anzeigebereich 312 dargestellten Bild sichtbar ist.When an indication is made, the application may be configured to display at least one bounding box around each corresponding indication that is visible in the image presented in the display area 312 .
26 BE2022/532326 BE2022/5323
Allgemein kann jeder Begrenzungsrahmen aus einer Reihe vonIn general, each bounding box can be one of a number of
Bildpunkten (Pixeln) bestehen, die den äußeren Rändern der jeweiligen Angaben entsprechen. Folglich hat dann jeder Punkt des Begrenzungsrahmens eine xy-There are picture elements (pixels) that correspond to the outer edges of the respective information. Consequently, each point of the bounding box then has an xy
Pixel-Koordinate, die innerhalb des Koordinatensystems des Bilds ist. Hieraus kann, und wie hier erörtert, die Anwendung (z. B. diePixel coordinate that is within the coordinate system of the image. From this, and as discussed here, the application (e.g. the
Bildanreicherungsanwendung 128) für jeden gewünschten Begrenzungsrahmen den höchsten Pixel-Koordinatenwert in der senkrechten Richtung (x-Achse) (der auch als die obere Pixel-Koordinatengrenze bezeichnet wird), den niedrigstenImage enhancement application 128) for each desired bounding box, the highest pixel coordinate value in the vertical direction (x-axis) (also referred to as the upper pixel coordinate limit), the lowest
Pixel-Koordinatenwert in der senkrechten Richtung (x-Achse) (der auch als die untere Pixel-Koordinatengrenze bezeichnet wird), den Pixel-Koordinatenwert der entfernten Seite (z. B. der linken Seite) in der waagrechten Richtung (y-Achse) (der auch als die erste Seiten-Pixel-Koordinatengrenze bezeichnet wird) und den Pixel-pixel coordinate value in the vertical direction (x-axis) (also referred to as the lower pixel coordinate limit), the pixel coordinate value of the far side (e.g. the left side) in the horizontal direction (y-axis) (also referred to as the first side pixel coordinate boundary) and the pixel
Koordinatenwert der anderen entfernten Seite (z. B. der rechten Seite) in der waagrechten Richtung (y-Achse) (der auch als die zweite Seiten-Pixel-Coordinate value of the other far side (e.g. the right side) in the horizontal direction (y-axis) (also called the second side pixel
Koordinatengrenze bezeichnet wird) bestimmen. Wenn die Anwendung über dieseCoordinate limit is called) determine. If the application has this
Daten verfügt, so kann sie damit einen Sekundärrahmen für beliebige gewünschteData features so it can allow a secondary frame for whatever you want
Angaben ableiten, wobei der Sekundärrahmen nicht aus der Form oderDerive information, with the secondary frame not out of shape or
Ausrichtung der Angabe abgeleitet wird, sondern aus ihren Koordinatengrenzen.Orientation of the indication is derived, but from its coordinate boundaries.
Dies ergibt den Vorteil, dass der Sekundärrahmen in einer Weise ausgerichtet werden kann, die zu dem Anzeigebereich passt, was in den meistenThis gives the advantage that the secondary frame can be oriented in a way that suits the display area, which is what most
Implementierungen dazu führen würde, dass der Sekundärrahmen eine ungefähr quadratische oder rechteckige Form hat, wobei die obere und die untere Seite sich entlang einer entsprechenden einzigen Höhenkoordinate und die beiden senkrechten Seiten sich entlang einer entsprechenden einzigen Breitenkoordinate erstrecken.Implementations would result in the secondary frame having a roughly square or rectangular shape with the top and bottom sides extending along a respective single height coordinate and the two perpendicular sides extending along a respective single width coordinate.
Ein Beispiel eines derartigen Sekundärrahmens ist sowohl in Fig. 4A als auch Fig. 4B als 412 bzw. 422 gezeigt. Fig. 4A stellt eine beispielhafteAn example of such a secondary frame is shown in both Figures 4A and 4B as 412 and 422, respectively. 4A provides an example
Anwendungsschnittstelle 410 dar, welche den Sekundärrahmen 412 enthält. Wie in Fig. 4A veranschaulicht, kann das angezeigte Bild mehrere Angaben enthalten, und mehr als eine davon (z. B. der Barcode, der in dem Sekundärrahmen 412 enthalten ist, und der Barcode unterhalb des Sekundärrahmens 412) können decodierbar sein. In diesem Fall kann die Bildanreicherungsanwendung automatisch jede Angabe erkennen und decodieren, die in dem Bild enthalten ist,Application interface 410 containing secondary frame 412 . As illustrated in FIG. 4A, the displayed image may contain multiple items of information, and more than one of them (e.g., the barcode contained in the secondary frame 412 and the barcode below the secondary frame 412) may be decodable. In this case, the image-enhancing application can automatically recognize and decode any information contained in the image,
27 BE2022/5323 und kann die aus der Decodierung resultierende Nutzlast anzeigen. In bestimmten27 BE2022/5323 and can display the payload resulting from the decoding. In particular
Aspekten kann die Bildanreicherungsanwendung den Sekundärrahmen 412 inaspects, the image enhancement application may use the secondary frame 412 in
Reaktion darauf bestimmen, dass der Benutzer in dem Sekundärrahmen 412 enthaltene Angaben auswählt. Zusätzlich oder alternativ dazu kann diedetermine in response to the user selecting information contained in the secondary frame 412 . Additionally or alternatively, the
Bildanreicherungsanwendung automatisch den Sekundärrahmen 412 und einen imImage enhancement application automatically creates the secondary frame 412 and an im
Wesentlichen die anderen Angaben einrahmenden Sekundärrahmen in Reaktion auf die Decodierung der jeweiligen Angaben bestimmen. Natürlich kann in beidensubstantially determine the secondary frame framing the other indicia in response to the decoding of the respective indicia. Of course it can be in both
Fällen die Bildanreicherungsanwendung den bzw. die Sekundärrahmen auf Basis von Koordinatengrenzen bestimmen, die den decodierten Angaben entsprechen.cases, the image enhancement application determines the secondary frame(s) based on coordinate boundaries corresponding to the decoded indications.
Alternativ dazu kann in manchen Aspekten das angezeigte Bild mehrere Angaben enthalten, doch kann es sein, dass nur eine davon (z. B. der in dem Sekundärrahmen 412 enthaltene Barcode) decodierbar ist. In diesem Fall kann die Bildanreicherungsanwendung automatisch die in dem Sekundärrahmen 412 veranschaulichte Angabe erkennen und decodieren. Hiernach kann dieAlternatively, in some aspects, the displayed image may contain multiple pieces of information, but only one of them (e.g., the barcode contained in secondary frame 412) may be decodable. In this case, the image enhancement application can automatically recognize and decode the indication illustrated in the secondary frame 412 . After that, the
Bildanreicherungsanwendung den Sekundärrahmen 412 auf Basis derImage enrichment application the secondary frame 412 based on the
Koordinatengrenzen bestimmen, die der decodierten Angabe entsprechen.Determine coordinate boundaries corresponding to the decoded specification.
In noch einem weiteren Beispiel stellt Fig. 4B eine beispielhafteIn yet another example, FIG. 4B illustrates an example
Anwendungsschnittstelle 420 dar, die den Sekundärrahmen 422 enthält. Wie inApplication interface 420 containing secondary frame 422 . As in
Fig. 4B veranschaulicht, kann das angezeigte Bild Teile mehrerer Angaben enthalten, doch kann es sein, dass nur eine davon (z. B. der in dem4B, the displayed image may contain portions of multiple pieces of information, but only one of them (e.g., the one in the
Sekundärrahmen 422 enthaltene QR-Code) vollständig decodierbar ist. In diesemSecondary frame 422 contained QR code) is fully decodable. In this
Fall kann die Bildanreicherungsanwendung die innerhalb des Sekundärrahmens 422 gezeigten Angaben automatisch erkennen und decodieren. Hiernach kann dieIn this case, the image enhancement application can automatically recognize and decode the information shown within the secondary frame 422 . After that, the
Bildanreicherungsanwendung den Sekundärrahmen 422 auf Basis derImage enrichment application the secondary frame 422 based on the
Koordinatengrenzen bestimmen, die der decodierten Angabe entsprechen.Determine coordinate boundaries corresponding to the decoded specification.
In jedem Fall kann, nachdem der Sekundärrahmen bestimmt wurde, die Anwendung (z. B. die Bildanreicherungsanwendung 128) ferner dazu konfiguriert sein, das Bild in dem Anzeigebereich umzupositionieren, sodass derIn any case, after the secondary frame has been determined, the application (e.g., image enhancement application 128) may be further configured to reposition the image in the display area such that the
Mittelpunkt des Sekundärrahmens, der der interessierenden Angabe zugeordnet ist (z. B. der Angabe, die zuvor zur Sichtung/Analyse ausgewählt wurde) innerhalb eines Schwellenwertabstands von dem Mittelpunkt des Anzeigebereichs angeordnet wird. In manchen Aspekten kann der Schwellenwertabstand null sein und kann der Mittelpunkt des Sekundärrahmens den Mittelpunkt desThe center of the secondary frame associated with the item of interest (e.g., the item previously selected for viewing/analysis) is placed within a threshold distance from the center of the display area. In some aspects, the threshold distance may be zero and the center of the secondary frame may be the center of the
28 BE2022/532328 BE2022/5323
Anzeigebereichs überlagern. In anderen Implementierungen kann einoverlay display area. In other implementations, a
Schwellenwertabstand von ungleich null (der zum Beispiel durch Pixel ausgedrückt werden könnte) implementiert werden. Letztendlich ist das Ergebnis einer derartigen Positionierung, dass der Sekundärrahmen (und daher auch die ihm zugeordnete Angabe) in der Mitte oder visuell in der Nähe der Mitte desNon-zero threshold distance (which could be expressed by pixels, for example) can be implemented. Ultimately, the result of such positioning is that the secondary frame (and hence the indication associated with it) is at or visually near the center of the
Anzeigebereichs angezeigt wird.display area is displayed.
Zum Beispiel, und wie in Fig. 5A veranschaulicht, kann dieFor example, and as illustrated in FIG. 5A, the
Bildanreicherungsanwendung die beispielhafte Anwendungsschnittstelle 500 inImage enrichment application the example application interface 500 in
Reaktion darauf anzeigen, dass eine Auswahl einer Angabe von einem Benutzer empfangen wird, und das Bild innerhalb des Anzeigebereichs so umpositionieren, dass die Angabe im Wesentlichen innerhalb des Anzeigebereichs zentriert ist. Diedisplaying in response to receiving a selection of an indication from a user and repositioning the image within the display area such that the indication is substantially centered within the display area. The
Bildanreicherungsanwendung kann eine Nachricht empfangen, dass ein Benutzer die Angabe 502 innerhalb des Bilds ausgewählt hat, und kann damit fortfahren, dass sie den Sekundärrahmen 504 auf Basis verschiedener Koordinatengrenzen (z.Image enrichment application may receive a message that a user has selected the indication 502 within the image and may proceed to render the secondary frame 504 based on different coordinate boundaries (eg.
B. obere Pixel-Koordinatengrenze, untere Pixel-Koordinatengrenze, erste Seiten-B. upper pixel coordinate limit, lower pixel coordinate limit, first page
Pixel-Koordinatengrenze, zweite Seiten-Pixel-Koordinatengrenze) bestimmt, die der Angabe 502 entsprechen.pixel coordinate boundary, second side pixel coordinate boundary) corresponding to indication 502.
Allgemein kann, wie zuvor erwähnt, die Bildanreicherungsanwendung das die Angabe 502 enthaltene Bild so umpositionieren, dass der Abstand 506c zwischen den zwei Mittelpunkten 5064, 506b mindestens kleiner als einIn general, as previously mentioned, the image enhancement application can reposition the image containing the indication 502 such that the distance 506c between the two centers 5064, 506b is at least less than a
Schwellenwertabstand ist. Wenn die Bildanreicherungsanwendung das Bild umpositioniert, kann die Anwendung auch den Mittelpunkt 5064 desthreshold distance is. When the image-enhancement application repositions the image, the application can also use the center 5064 of the
Sekundärrahmens mit dem Mittelpunkt 506b des Anzeigebereichs vergleichen, um zu bestimmen, ob das Bild umzupositionieren ist, um den Abstand 506c zwischen den beiden Mittelpunkten 5064, 506b noch optimaler zu verringern. Auf dieseCompare the secondary frame to the center 506b of the display area to determine whether to reposition the image to more optimally reduce the distance 506c between the two centers 5064, 506b. To this
Weise kann die Bildanreicherungsanwendung die Angabe 502, die von demway, the image-enhancement application can use the 502 statement returned by the
Benutzer ausgewählt wurde, so nahe wie möglich an dem Mittelpunkt desUser has been selected as close as possible to the center point of the
Anzeigebereichs positionieren (z. B. entfällt der Abstand 506c zwischen den beidenPosition the display area (e.g. the distance 506c between the two is omitted
Mittelpunkten 5064, 506b).centers 5064, 506b).
Wenn ferner die Bildanreicherungsanwendung das Bild umpositioniert, kann die Anwendung den Blickpunkt ebenfalls (nach oben oder nach unten) skalieren, sodass der Sekundärrahmen 504 einen vorbestimmten Raum desFurthermore, when the image-enhancement application repositions the image, the application may also scale the viewpoint (up or down) so that the secondary frame 504 fills a predetermined space of the
Anzeigefensters belegt. Zum Beispiel kann die von derDisplay window occupied. For example, the one from the
29 BE2022/532329 BE2022/5323
Bildanreicherungsanwendung durchgeführte Skalierung als ein Verhältnis der von dem Sekundärrahmen 504 in der senkrechten Richtung belegten Pixel zu der senkrechten Pixelzahl des Anzeigebereichs ausgedrückt werden. Wenn daher das gewünschte Verhältnis 1:2 ist, und der Sekundärrahmen 504 eine Höhe von 200Image-enhancement application scaling can be expressed as a ratio of the pixels occupied by the secondary frame 504 in the vertical direction to the vertical pixel count of the display area. Therefore, if the desired ratio is 1:2 and the secondary frame 504 has a height of 200
Pixeln hat, während der Anzeigebereich eine Höhe von 1000 Pixeln hat, wird derpixels, while the display area has a height of 1000 pixels, the
Blickpunkt 2,5 mal skaliert, sodass der Sekundärrahmen 504 dann 500 Pixel belegt. Die Bildanreicherungsanwendung kann dieselbe oder eine ähnlicheViewpoint scaled 2.5 times, so the secondary frame 504 then occupies 500 pixels. The image enhancement application can be the same or similar
Vorgehensweise entlang der waagrechten Achse anwenden.Use the procedure along the horizontal axis.
Natürlich sollte berücksichtigt werden, dass, wenn dasOf course, it should be borne in mind that if that
Aspektverhältnis des Sekundärrahmens (z. B. des Sekundärrahmens 504) mit demAspect ratio of the secondary frame (z. B. the secondary frame 504) with the
Aspektverhältnis des Anzeigebereichs nicht übereinstimmt, es sein kann, dass das waagrechte Verhältnis von Sekundärrahmen zu Anzeigebereich nicht gleich dem senkrechten Verhältnis von Sekundärbox zu Anzeigebereich ist. Wenn daher dieaspect ratio of the display area does not match, the horizontal ratio of the secondary frame to the display area may not be equal to the vertical ratio of the secondary box to the display area. If therefore the
Bildanreicherungsanwendung des Bild in bestimmten Aspekten skaliert, wird dieImage enrichment application scales the image in certain aspects, the
Anwendung den Blickpunkt so skalieren, dass sowohl das waagrechte Verhältnis von Sekundärrahmen zu Anzeigebereich als auch das senkrechte Verhältnis vonApplication scale the viewpoint so that both the horizontal ratio of secondary frame to display area and the vertical ratio of
Sekundärrahmen zu Anzeigebereich auf oder unterhalb des gewünschtenSecondary frame to display area at or below desired one
Schwellenwerts liegt. Dies kann dazu beitragen, Fälle zu verhindern, bei denen ein relativ schmaler, jedoch hoher Blickpunkt auf Basis eines waagrechtenthreshold is. This can help prevent cases where a relatively narrow but tall viewpoint is based on a level
Verhältnisses ohne Rücksicht auf ein senkrechtes Verhältnis skaliert wird.Ratio is scaled without regard to a perpendicular ratio.
Zum Beispiel erfordert bei einem Anzeigebereich von 1000 mal 2000For example, a display area of 1000 by 2000 requires
Pixeln und einem Sekundärrahmen von 400 mal 100 Pixeln ein Skalieren des Bilds auf einen Punkt, bei dem das Verhältnis von Sekundärrahmen zu Anzeigebereich 1:2 ist, ein Skalieren des Bilds um 10. Eine solche Vergrößerung würde jedoch verursachen, dass der Sekundärrahmen (und daher die Angabe, die darin angezeigt ist) sich auf eine Höhe von 4000 Pixeln vergrößert; was außerhalb derpixels and a secondary frame of 400 by 100 pixels, scaling the image to a point where the ratio of secondary frame to display area is 1:2, scaling the image by 10. However, such an enlargement would cause the secondary frame (and therefore the information displayed therein) increases to a height of 4000 pixels; what outside of
Anzeigemöglichkeiten des Anzeigebereichs liegt. Daher kann in diesem Fall diedisplay options of the display area. Therefore, in this case, the
Bildanreicherungsanwendung eine Skalierung des Bilds auf 1,25 einschränken, wodurch verursacht wird, dass der Sekundärrahmen auf Abmessungen von 500 mal 125 Pixel anwächst, wodurch die Schwellenwertanforderung von 1:2 entlang der senkrechten Achse eingehalten wird. Alternativ dazu kann in bestimmtenImage enhancement application will constrain a scaling of the image to 1.25, causing the secondary frame to grow to dimensions of 500 by 125 pixels, thereby meeting the 1:2 threshold requirement along the vertical axis. Alternatively, in certain
Aspekten ein Benutzer die Bildanreicherungsanwendung so konfigurieren, dassAspects a user can configure the image enrichment application to
30 BE2022/5323 das Bild so skaliert wird, dass ein Teil der ausgewählten Angaben nicht im30 BE2022/5323 the image is scaled so that part of the selected information is not in the
Anzeigebereich vorhanden ist, nachdem das Bild skaliert wurde.display area exists after the image has been scaled.
Zum Beispiel, wie in Fig. 5A veranschaulicht, kann dieFor example, as illustrated in FIG. 5A, the
Bildanreicherungsanwendung waagrechte Abstände 508 zwischen den senkrechtenImage enrichment application horizontal distances 508 between the vertical ones
Seiten des Sekundärrahmens 504 und den senkrechten Rändern dessides of the secondary frame 504 and the vertical edges of the
Anzeigebereichs und senkrechte Abstände 509 zwischen den waagrechten Seiten des Sekundärrahmens 504 und den waagrechten Rändern des Anzeigebereichs bestimmen. Es sei angenommen, dass das gewünschte Aspektverhältnis für dieDetermine the display area and vertical distances 509 between the horizontal sides of the secondary frame 504 and the horizontal edges of the display area. It is assumed that the desired aspect ratio for the
Angabe 502 relativ zum Anzeigebereich 1:2 ist. Im vorliegenden Beispiel kann dieSpecification 502 is 1:2 relative to the display area. In this example, the
Bildanreicherungsanwendung das Bild dann so skalieren, dass die Gesamtlänge der waagrechten Abstände 509 gleich der Länge einer senkrechten Seite desImage enrichment application then scale the image so that the total length of the horizontal spaces 509 is equal to the length of one vertical side of the
Sekundärrahmens 504 ist und die Gesamtlänge der senkrechten Abstände 508 gleich der Länge einer waagrechten Seite des Sekundärrahmens 504 ist. Natürlich versteht es sich, dass die Bildanreicherungsanwendung das Bild, wie zuvor beschrieben, auf ein beliebiges geeignetes Aspektverhältnis skalieren kann.Secondary frame 504 and the total length of the vertical distances 508 equal to the length of a horizontal side of the secondary frame 504 is. Of course, it should be understood that the image enhancement application can scale the image to any suitable aspect ratio, as previously described.
In manchen Fällen, wie zum Beispiel in den Figuren 5B und 5C, kann vor/nach dem Skalieren der Bereich außerhalb der ausgewählten Angaben maskiert werden, um die ausgewählten Angaben hervorzuheben. Diese Maske kann außerhalb des Sekundärrahmens oder außerhalb des Begrenzungsrahmens der ausgewählten Angaben sein. Die Maske kann transparent, undurchsichtig, farbveränderlich, verschwimmend oder in einer beliebigen anderen Art sein, welche die interessierenden Angaben in den Fokus der Benutzeraufmerksamkeit rückt.In some cases, such as in Figures 5B and 5C, before/after scaling, the area outside the selected indicia may be masked to emphasize the selected indicia. This mask can be outside the secondary box or outside the bounding box of the selected information. The mask can be transparent, opaque, color-changing, blurry, or any other type that puts the information of interest in the focus of the user's attention.
Wie zum Beispiel in Fig. 5B veranschaulicht, kann dieFor example, as illustrated in FIG. 5B, the
Bildanreicherungsanwendung eine beispielhafte Anwendungsschnittstelle 510 anzeigen, in der eine ausgewählte Angabe 512 und ein maskierter Hintergrundteil 514 gezeigt sind. Der Benutzer kann die Bildanreicherungsanwendung so konfigurieren, dass sie den maskierten Hintergrundteil 514 automatisch nachImage Enhancement Application Display an example application interface 510 in which a selected indication 512 and a masked background portion 514 are shown. The user can configure the image enhancement application to automatically track the masked background portion 514
Abschluss der Bildskalierung und/oder an einem beliebigen anderen Punkt, nachdem der Benutzer die ausgewählte Angabe 512 ausgewählt hat, hervorhebt.completion of image scaling and/or at any other point after the user has selected the selected indication 512 .
Zusätzlich oder alternativ dazu kann die Bildanreicherungsanwendung eineAdditionally or alternatively, the image enhancement application may be a
Vielzahl graphischer Angaben vorsehen, um es einem Benutzer zu ermöglichen, zuProvide a variety of graphical information to enable a user to
31 BE2022/5323 verstehen, welche Angabe aktuell angezeigt wird und wo die Angabe innerhalb des angezeigten Bilds angeordnet ist.31 BE2022/5323 understand what information is currently displayed and where the information is located within the displayed image.
Als ein Beispiel stellt Fig. 5C eine beispielhafteAs an example, FIG. 5C provides an exemplary
Anwendungsschnittstelle 520 dar, die die ausgewählte Angabe 512, den maskierten Hintergrundteil 514 und ein Miniaturbild 522 darstellt, das einenApplication interface 520 showing the selected indication 512, the masked background portion 514, and a thumbnail 522 showing a
Skaliertbildanzeiger 524 enthält. Das Miniaturbild 522 kann allgemein dasScaled image indicator 524 includes. Thumbnail 522 can generally do that
Originalbild darstellen, aus dem das angezeigte Bild generiert wurde (z. B. überDisplay the original image from which the displayed image was generated (e.g. via
Umpositionierung, Skalierung, Maskierung), und der Skaliertbildanzeiger 524 kann eine grafische Anzeige des angezeigten Bilds als Teil des Originalbilds zurrepositioning, scaling, masking), and the scaled image viewer 524 can provide a graphical display of the displayed image as part of the original image
Bezugnahme durch einen Benutzer anzeigen. Die Bildanreicherungsanwendung kann nach Auswahl der Angabe das Bild automatisch skalieren, um das angezeigteShow reference by a user. The image enrichment application can automatically scale the image to fit the displayed one after selecting the specification
Bild zu generieren und das Miniaturbild 522 und den Skaliertbildanzeiger 524 anzuzeigen, sodass der Benutzer nicht die Orientierung darüber verliert, wo das angezeigte Bild und die ausgewählte Angabe 512 relativ zum Originalbild sind.generate the image and display the thumbnail image 522 and the scaled image indicator 524 so that the user does not become disoriented as to where the displayed image and the selected indication 512 are relative to the original image.
Ferner kann in bestimmten Aspekten die Bildanreicherungsanwendung daraufhin, dass der Benutzer die ausgewählte Angabe 512 auswählt, innerhalb desFurther, in certain aspects, in response to the user selecting the selected indication 512, the image enhancement application may within the
Anzeigebereichs, der das Originalbild in das Miniaturbild 522 minimiert, eineDisplay area that minimizes the original image into the thumbnail 522, a
Animation rendern, und danach einen Skaliertbildanzeiger 524 als ein Overlay über dem Miniaturbild 522 generieren.Render animation, and then generate scaled image indicator 524 as an overlay over thumbnail 522.
Fig. 6 ist ein Flussdiagramm, das ein Verfahren 600 zum Anreichern eines von einer Maschinensicht-Kamera aufgenommenen Bildinhalts gemäß hier beschriebener Ausführungsformen darstellt. Das Verfahren 600 weist ein6 is a flow diagram illustrating a method 600 for enhancing image content captured by a machine vision camera, in accordance with embodiments described herein. Method 600 instructs
Empfangen eines von einer Maschinensicht-Kamera aufgenommenen Bilds auf (Block 602). Das Bild kann an einer Anwendung empfangen werden, die auf einerreceiving an image captured by a machine vision camera (block 602). The image can be received on an application running on a
Benutzerrechnervorrichtung ausgeführt wird, die mit einer Maschinensicht-User computing device running with a machine view
Kamera kommunikativ gekoppelt ist, und das Bild kann eine Mehrzahl vonCamera is communicatively coupled, and the image can be a plurality of
Angaben (z. B. Barcodes, QR-Codes usw.) enthalten. Darüber hinaus kann in jeder der Mehrzahl von Angaben eine Nutzlast codiert sein.contain information (e.g. barcodes, QR codes, etc.). Additionally, a payload may be encoded in each of the plurality of indicia.
Das Verfahren 600 kann auch ein Identifizieren der jeweiligen Angaben in dem empfangenen Bild enthalten (Block 604). Demgemäß kann das Verfahren 600 für jede entsprechende Angabe in dem Bild ein Bestimmen von Begrenzungen eines entsprechenden Begrenzungsrahmens beinhalten, die im Wesentlichen die jeweiligen entsprechenden Angaben in dem Bild einfassen (Block 606). ZumThe method 600 may also include identifying the particular indicia in the received image (block 604). Accordingly, for each corresponding indication in the image, the method 600 may include determining boundaries of a corresponding bounding box that substantially encloses the respective corresponding indication in the image (block 606). For the
392 BE2022/5323392 BE2022/5323
Beispiel kann die Bildanreicherungsanwendung durch Identifizieren der äußerstenExample, the image enrichment application by identifying the outermost
Koordinaten der Angabe, welche die äußerste Begrenzung der Angaben innerhalb des Bilds definieren, die Begrenzungen eines entsprechendenCoordinates of the indicia defining the outermost boundary of the indicia within the image, the boundaries of a corresponding one
Begrenzungsrahmens erstellen, der einer einzigen Angabe entspricht. Auf dieseCreate a bounding box that matches a single specification. To this
Weise kann in bestimmten Aspekten der Begrenzungsrahmen eine beliebige geeignete Form haben, um die Angaben im Wesentlichen einzufassen.Thus, in certain aspects, the bounding box can be of any suitable shape to substantially enclose the disclosure.
Das Verfahren 600 kann auch ein Anzeigen einer Mehrzahl vonThe method 600 may also include displaying a plurality of
Einträgen enthalten, wobei jeder der Mehrzahl von Einträgen einer entsprechenden Angabe der Mehrzahl von Angaben entspricht (Block 608). In bestimmten Aspekten enthält jeder der Mehrzahl von Einträgen eine Nutzlast der entsprechenden Angaben. Ein Benutzer kann mit der Schnittstelle interagieren, um eine Auswahl eines oder mehrerer der angezeigten Einträge und/oder Angaben anzugeben. Als solches kann das Verfahren 600 ein Empfangen einer Auswahl eines der Einträge an der Schnittstelle enthalten, was einen ausgewählten Eintrag zum Ergebnis hat, der über eine entsprechende Angabe verfügt (Block 610).entries, each of the plurality of entries corresponding to a respective one of the plurality of entries (block 608). In certain aspects, each of the plurality of entries includes a payload of the corresponding information. A user may interact with the interface to indicate a selection of one or more of the items and/or information displayed. As such, method 600 may include receiving a selection of one of the entries at the interface, resulting in a selected entry having a corresponding indication (block 610).
In bestimmten Aspekten kann die Anwendung (z. B. dieIn certain aspects, the application (e.g. the
Bildanreicherungsanwendung) einen Bereich des Anzeigebereichs maskieren, nachdem ein Benutzer einen Eintrag/eine Angabe ausgewählt hat. Auf diese Weise kann das Verfahren 600 ein Maskieren eines maskierten Bereichs in demImage enhancement application) masking an area of the display area after a user has selected an entry/indication. In this way, the method 600 can mask a masked area in the
Anzeigebereich in Reaktion auf den Empfang der Auswahl enthalten. In diesenDisplay area included in response to receiving the selection. In these
Aspekten kann der maskierte Bereich ein Bereich außerhalb mindestens eines aus (i) dem jeweiligen Sekundärrahmen oder (ii) dem entsprechendenIn other aspects, the masked area may be an area outside of at least one of (i) the respective secondary frame or (ii) the corresponding one
Begrenzungsrahmen der entsprechenden Angabe sein.be the bounding box of the relevant disclosure.
Das Verfahren 600 kann auch ein Bestimmen einer oberen Pixel-The method 600 can also include determining a top pixel
Koordinatengrenze, einer unteren Pixel-Koordinatengrenze, einer ersten Seiten-coordinate boundary, a lower pixel coordinate boundary, a first side
Pixel-Koordinatengrenze und einer zweiten Seiten-Pixel-Koordinatengrenze enthalten (Block 612). Die Bildanreicherungsanwendung kann diesepixel coordinate boundary and a second side pixel coordinate boundary (block 612). The image enrichment application can do this
Koordinatengrenzen auf Basis des entsprechenden Begrenzungsrahmens der entsprechenden Angaben bestimmen. Auf Basis dieser Koordinatengrenzen kann die Bildanreicherungsanwendung einen Sekundärrahmen bestimmen, der eine obere Begrenzung, eine untere Begrenzung, eine erste seitliche Begrenzung und eine zweite seitliche Begrenzung hat (Block 614).Determine coordinate boundaries based on the corresponding bounding box of the corresponding specifications. Based on these coordinate boundaries, the image enhancement application can determine a secondary frame having a top boundary, a bottom boundary, a first side boundary, and a second side boundary (block 614).
33 BE2022/532333 BE2022/5323
Das Verfahren 600 kann auch ein Anzeigen des Bilds in einemThe method 600 can also include displaying the image in a
Anzeigebereich der Schnittstelle enthalten, sodass ein Mittelpunkt desContain the display area of the interface so that a center point of the
Sekundärrahmens innerhalb eines vorbestimmten Abstandsschwellenwerts von einem Mittelpunkt des Anzeigebereichs angeordnet wird (Block 616). In bestimmten Aspekten kann die Bildanreicherungsanwendung für jede entsprechende Angabe in dem Bild den entsprechenden Begrenzungsrahmen auf einer Schnittstelle der Anwendung anzeigen. In manchen Aspekten kann diesecondary frame is placed within a predetermined distance threshold from a center point of the display area (block 616). In certain aspects, for each corresponding indication in the image, the image enhancement application can display the corresponding bounding box on an interface of the application. In some aspects, the
Bildanreicherungsanwendung den entsprechenden Begrenzungsrahmen anzeigen, der der Mehrzahl der Angaben entspricht, die innerhalb eines sichtbaren Teils desImage enrichment application will display the appropriate bounding box corresponding to the majority of the information contained within a visible portion of the
Bilds erscheinen, das in dem Anzeigebereich angezeigt wird.image displayed in the display area.
Das Verfahren 600 kann auch ein Skalieren des Bilds beinhalten, sodass mindestens eine aus (i) einer ersten senkrechten Pixelzahl zwischen der oberen Begrenzung und der unteren Begrenzung innerhalb eines vorbestimmtenThe method 600 may also include scaling the image so that at least one of (i) a first vertical pixel count between the upper bound and the lower bound is within a predetermined
Verhältnisschwellenwerts einer zweiten senkrechten Pixelzahl des Anzeigebereichs ist oder (ii) einer ersten waagrechten Pixelzahl zwischen der ersten seitlichenratio threshold of a second vertical number of pixels of the display area or (ii) a first horizontal number of pixels between the first lateral
Begrenzung und der zweiten seitlichen Begrenzung innerhalb eines zweiten vorbestimmten Verhältnisschwellenwerts einer zweiten waagrechten Pixelzahl desBoundary and the second lateral boundary within a second predetermined ratio threshold of a second horizontal number of pixels
Anzeigebereichs ist (Block 618). In bestimmten Aspekten ist mindestens einer aus dem ersten vorbestimmten Verhältnisschwellenwert oder dem zweiten vorbestimmten Verhältnisschwellenwert einschließend zwischen 1:2 und 2:3. In manchen Aspekten kann die Bildanreicherungsanwendung das Bild so skalieren, dass (i) die erste senkrechte Pixelzahl den ersten vorbestimmtendisplay area (block 618). In certain aspects, at least one of the first predetermined ratio threshold and the second predetermined ratio threshold is inclusive between 1:2 and 2:3. In some aspects, the image enhancement application can scale the image so that (i) the first vertical pixel count matches the first predetermined
Verhältnisschwellenwert der zweiten senkrechten Pixelzahl nicht übersteigt, und (ii) die erste waagrechte Pixelzahl den zweiten vorbestimmtenRatio threshold of the second vertical pixel number does not exceed, and (ii) the first horizontal pixel number exceeds the second predetermined one
Verhältnisschwellenwert der zweiten waagrechten Pixelzahl nicht übersteigt.ratio threshold of the second horizontal pixel number does not exceed.
Darüber hinaus ist mindestens einer aus dem ersten vorbestimmtenIn addition, at least one of the first is predetermined
Verhältnisschwellenwert und dem zweiten vorbestimmtenRatio threshold and the second predetermined
Verhältnisschwellenwert benutzerdefinierbar, sodass ein Teil der entsprechendenRatio threshold user-definable, so part of the appropriate
Angaben aus dem skalierten Bild ausgeschlossen ist. Zusätzlich oder alternativ dazu kann die Bildanreicherungsanwendung eine Miniaturversion des Bildes in dem Anzeigebereich als ein Overlay darstellen, das einen Teil des skalierten Bilds abdeckt. In diesen Aspekten enthält die Miniaturversion des Bildes einen angegebenen Teil, der das skalierte Bild repräsentiert.Information from the scaled image is excluded. Additionally or alternatively, the image enhancement application may present a miniature version of the image in the display area as an overlay covering part of the scaled image. In these aspects, the thumbnail version of the image includes a specified portion that represents the scaled image.
34 BE2022/532334 BE2022/5323
ZUSÄTZLICHE ÜBERLEGUNGENADDITIONAL CONSIDERATIONS
Die oben gegebene Beschreibung bezieht sich auf ein Blockdiagramm der beiliegenden Zeichnungen. Alternative Implementierungen des durch dasThe description given above refers to a block diagram of the accompanying drawings. Alternative implementations of the through the
Blockdiagram dargestellten Beispiels schließen eines oder mehrere zusätzliche oder alternative Elemente, Prozesse und/oder Geräte mit ein. Zusätzlich oder alternativ dazu können einer oder mehrere der beispielhaften Blöcke desThe example depicted in the block diagram includes one or more additional or alternative elements, processes, and/or devices. Additionally or alternatively, one or more of the exemplary blocks of
Diagramms kombiniert, getrennt, umgeordnet oder weggelassen werden. Durch diediagrams can be combined, separated, rearranged or omitted. through the
Blöcke des Diagramms dargestellte Komponenten sind durch Hardware, Software,Components shown in blocks of diagram are represented by hardware, software,
Firmware und/oder eine beliebige Kombination von Hardware, Software und/oderfirmware and/or any combination of hardware, software and/or
Firmware implementiert. In manchen Beispielen ist mindestens eine der durch dieFirmware implemented. In some examples, at least one of the by the
Blöcke dargestellten Komponenten durch eine Logikschaltung implementiert. DerComponents shown blocks implemented by a logic circuit. The
Begriff „Logikschaltung“, wie er hier verwendet wird, ist ausdrücklich als eine physische Vorrichtung definiert, die mindestens eine Hardwarekomponente enthält, die (zum Beispiel über einen Betrieb gemäß einer vorbestimmtenTerm "logic circuitry" as used herein is expressly defined as a physical device containing at least one hardware component capable (for example, of operating according to a predetermined
Konfiguration und/oder über eine Ausführung gespeicherter maschinenlesbarerConfiguration and/or execution stored machine-readable
Befehle) dazu konfiguriert ist, eine oder mehrere Maschinen zu steuern und/odercommands) is configured to control one or more machines and/or
Operationen einer oder mehrerer Maschinen durchzuführen. Beispiele einerperform operations of one or more machines. Examples of a
Logikschaltung schließen einen oder mehrere Prozessoren, einen oder mehrere Co-Logic circuit include one or more processors, one or more co-
Prozessoren, einen oder mehrere Mikroprozessoren, einen oder mehrere Controller, einen oder mehrere digitale Signalprozessoren (DSPs), eine oder mehrere applikationsspezifische integrierte Schaltungen (ASICs), eines oder mehrere Field-Processors, one or more microprocessors, one or more controllers, one or more digital signal processors (DSPs), one or more application specific integrated circuits (ASICs), one or more field
Programmable Gate Arrays (FPGAs), eine oder mehrere Mikrocontroller-Finheiten (MCUs), einen oder mehrere Hardwarebeschleuniger, einen oder mehrere Spezial-Programmable gate arrays (FPGAs), one or more microcontrollers (MCUs), one or more hardware accelerators, one or more specialty
Computerchips und eines oder mehrere SoC-Geräte (System-on-a-Chip) ein. Einige beispielhafte Logikschaltungen, wie zum Beispiel ASICs oder FPGAs, sind spezifisch konfigurierte Hardware zum Durchführen von Operationen (zumcomputer chips and one or more SoC (system-on-a-chip) devices. Some example logic circuits, such as ASICs or FPGAs, are specifically configured hardware to perform operations (eg
Beispiel einer oder mehrerer der Operationen, die hier beschrieben und durch dieExample of one or more of the operations described here and by the
Flussdiagramme dieser Offenbarung, wenn sie vorhanden sind, dargestellt sind).flowcharts of this disclosure, if any, are shown).
Einige beispielhafte Logikschaltungen sind Hardware, die maschinenlesbareSome example logic circuits are hardware that is machine-readable
Befehle ausführt, um Operationen (zum Beispiel eine oder mehrere derExecutes commands to perform operations (e.g. one or more of the
Operationen, die hier beschrieben und durch die Flussdiagramme dieserOperations described here and by the flowcharts of these
Offenbarung, wenn sie vorhanden sind, dargestellt sind) auszuführen. Einige beispielhafte Logikschaltungen enthalten eine Kombination spezifischdisclosure, if any, are shown). Some example logic circuits include a combination specific
35 BE2022/5323 konfigurierter Hardware sowie Hardware, die maschinenlesbare Befehle ausführt.35 BE2022/5323 configured hardware and hardware that executes machine-readable commands.
Die oben gegebene Beschreibung bezieht sich auf verschiedene Operationen, die hier beschrieben sind, und Flussdiagramme, die hier beiliegen können, um denThe description given above refers to various operations described herein and flowcharts that may accompany the
Ablauf dieser Operationen zu veranschaulichen. Beliebige solche Flussdiagramme sind für hier offenbarte beispielhafte Verfahren repräsentativ. In manchento illustrate the course of these operations. Any such flowcharts are representative of example methods disclosed herein. In some
Beispielen implementieren die durch die Flussdiagramme repräsentiertenExamples implement those represented by the flowcharts
Verfahren die durch die Blockdiagramme dargestellten Vorrichtungen. AlternativeProcess the devices represented by the block diagrams. alternative
Implementierungen beispielhafter Verfahren, die hier offenbart sind, können zusätzliche oder alternative Operationen enthalten. Ferner können Operationen alternativer Implementierungen der hier offenbarten Verfahren kombiniert, getrennt, umgeordnet oder weggelassen werden. In manchen Beispielen sind die hier beschriebenen Operationen durch maschinenlesbare Befehle (zum BeispielImplementations of example methods disclosed herein may include additional or alternative operations. Furthermore, operations of alternative implementations of the methods disclosed herein may be combined, separated, rearranged, or omitted. In some examples, the operations described herein are executable by machine-readable instructions (for example
Software und/oder Firmware) implementiert, die auf einem Medium (zum Beispiel einem tangiblen maschinenlesbaren Medium) durch Ausführung durch eine oder mehrere Logikschaltungen (zum Beispiel Prozessor(en)) gespeichert. In manchensoftware and/or firmware) stored on a medium (e.g., a tangible machine-readable medium) through execution by one or more logic circuits (e.g., processor(s)). In some
Beispielen sind die hier beschriebenen Operationen durch eine oder mehrereExamples are the operations described here by one or more
Konfigurationen einer oder mehrerer spezifisch konstruierter Logikschaltungen (zum Beispiel ASIC(s)) implementiert. In manchen Beispielen sind die hier beschriebenen Operationen durch eine Kombination spezifisch konstruierterConfigurations of one or more specifically designed logic circuits (e.g. ASIC(s)) are implemented. In some instances, the operations described herein are more specifically constructed through a combination
Logikschaltung(en) und auf einem Medium (zum Beispiel einem tangiblen maschinenlesbaren Medium) gespeicherter maschinenlesbarer Befehle zurLogic circuit(s) and machine-readable instructions stored on a medium (for example a tangible machine-readable medium).
Ausführung durch eine Logikschaltung bzw. Logikschaltungen implementiert.Execution implemented by a logic circuit or logic circuits.
Wie sie hier gebraucht werden, sind die Begriffe „tangibles maschinenlesbares Medium“, „nicht-flüchtiges maschinenlesbares Medium“ und „maschinenlesbare Speichervorrichtung“ ausdrücklich jeweils als einAs used herein, the terms "tangible machine-readable medium," "non-transitory machine-readable medium," and "machine-readable storage device" are each expressly construed as one
Speichermedium (z. B. eine Platte eines Festplattenlaufwerks, eine DVD, eineStorage medium (e.g. a platter of a hard disk drive, a DVD, a
Compact Disc, einen Flash-Speicher, einen Nurlesespeicher, einen Speicher mit wahlfreiem Zugriff usw.) definiert, auf denen maschinenlesbare Befehle (z. B.compact disc, flash memory, read-only memory, random access memory, etc.) on which machine-readable instructions (e.g.
Programmcode in der Form zum Beispiel von Software und/oder Firmware) über einen beliebigen geeigneten Zeitraum (z. B. permanent, über einen längerenprogram code in the form of, for example, software and/or firmware) for any suitable period of time (e.g., permanently, over an extended period of time).
Zeitraum (z. B. während ein den maschinelesbaren Befehlen zugeordnetesPeriod of time (e.g. during a period associated with the machine-readable instructions
Programm ausgeführt wird), und/oder einen kurzen Zeitraum (z. B. während die maschinenlesbaren Befehle zwischengespeichert sind und/oder während einesprogram is running), and/or a short period of time (e.g., while the machine-readable instructions are cached and/or during a
36 BE2022/532336 BE2022/5323
Pufferungsprozesses)) gespeichert sind. Ferner sind, wie sie hier gebraucht werden, die Begriffe „tangibles maschinenlesbares Medium“, „nicht-flüchtiges maschinenlesbares Medium“ und „maschinenlesbare Speichervorrichtung“ ausdrücklich jeweils so definiert, dass sie sich ausbreitende Signale ausschließen.buffering process)) are saved. Further, as used herein, the terms “tangible machine-readable medium,” “non-transitory machine-readable medium,” and “machine-readable storage device” are each expressly defined to exclude propagated signals.
Das heißt, dass keiner der Begriffe „tangibles maschinenlesbares Medium“, „nicht- flüchtiges maschinenlesbares Medium“ und „maschinenlesbareThis means that none of the terms "tangible machine-readable medium", "non-transitory machine-readable medium" and "machine-readable
Speichervorrichtung“, wie sie in einem beliebigen Anspruch des vorliegendenStorage device” as defined in any claim herein
Patents verwendet werden, so zu lesen sind, dass sie durch ein sich ausbreitendesPatents are used to be read by an expanding
Signal implementiert werden.signal to be implemented.
In der oben gegebenen Beschreibung wurden spezifischeIn the description given above, specific
Ausführungsformen beschrieben. Der Durchschnittsfachmann wird jedoch erkennen, dass verschiedene Modifikationen und Änderungen vorgenommen werden können, ohne dass dadurch vom Umfang der Erfindung abgewichen wird, wie er in den unten angegebenen Ansprüchen dargelegt ist. Demgemäß sollen dieembodiments described. However, one of ordinary skill in the art will recognize that various modifications and changes can be made without departing from the scope of the invention as set forth in the claims below. Accordingly, they should
Beschreibung und die Figuren in einem veranschaulichenden und nicht in einem einschränkenden Sinn verstanden werden, und alle derartigen Modifikationen sollen im Umfang der vorliegenden Lehre enthalten sein. Zusätzlich sollten die beschriebenen Ausführungsformen/Beispiele/Implementierungen nicht als sich gegenseitig ausschließend verstanden werden, sondern sollten stattdessen als potenziell kombinierbar verstanden werden, wenn solche Kombinationen in irgendeiner Weise gestattet sind. Mit anderen Worten können beliebige in beliebigen der zuvor erwähntenThe specification and figures are to be regarded in an illustrative rather than a restrictive sense, and all such modifications are intended to be included within the scope of the present teachings. Additionally, the described embodiments/examples/implementations should not be construed as mutually exclusive, but instead should be construed as potentially combinable where such combinations are permitted in any way. In other words, any in any of the previously mentioned
Ausführungsformen/Beispielen/Implementierungen offenbarten Merkmale in beliebigen der anderen zuvor erwähntenEmbodiments/examples/implementations disclosed features in any of the others mentioned above
Ausführungsformen/Beispielen/Implementierungen enthalten sein.embodiments/examples/implementations.
Die Vorteile, Vorzüge, Lösungen von Problemen und jegliche(s)The advantages, benefits, solutions to problems and any
Element(e), die einen Vorteil, einen Vorzug oder eine Lösung verursachen können oder diese ausgeprägter erscheinen lassen, sollen nicht als kritische, erforderliche oder wesentliche Merkmale oder Elemente eines oder aller Ansprüche verstanden werden. Die beanspruchte Erfindung ist lediglich durch die beiliegendenElement(s) that can cause or make appear more pronounced an advantage, advantage, or solution are not to be construed as critical, required, or essential features or elements of any or all claims. The invention claimed is solely by the appended
Ansprüche definiert, einschließlich aller Änderungen, die während des schwebenden Zustands der vorliegenden Anmeldung vorgenommen werden, und aller Äquivalente dieser Ansprüche, wie sie erteilt sind. Zu Zwecken der KlarheitClaims defined, including any changes made while the present application is pending, and all equivalents of these claims as granted. For the sake of clarity
37 BE2022/5323 und einer prägnanten Beschreibung werden Merkmale hier als Teil derselben oder getrennter Ausführungsformen beschrieben, es versteht sich jedoch, dass der37 BE2022/5323 and a concise description, features are described here as part of the same or separate embodiments, but it should be understood that the
Umfang der Erfindung auch Ausführungsformen enthalten kann, dieScope of the invention may also include embodiments that
Kombinationen aller oder einiger der beschriebenen Merkmale enthalten. Es versteht sich, dass die gezeigten Ausführungsformen die gleichen oder ähnlicheCombinations of all or some of the features described. It should be understood that the embodiments shown are the same or similar
Komponenten haben, außer wenn sie als verschieden beschrieben sind.have components unless described as different.
Außerdem können in dem vorliegenden Dokument eine Beziehung anzeigende Begriffe, wie zum Beispiel erster und zweiter, oben und unten und dergleichen lediglich dazu verwendet werden, eine Entität oder Aktion von einer anderen Entität oder Aktion zu unterscheiden, ohne dass dadurch eine tatsächliche solche Beziehung oder Reihenfolge zwischen solchen Entitäten oder Aktionen benötigt oder vorausgesetzt wird. Die Begriffe „umfasst“, „umfassend“, „hat“, „habend“, „beinhaltet“, „beinhaltend“, „enthält“, „enthaltend“ oder eine beliebige andere Variation hiervon sollen ein nicht ausschließliches Vorhandensein abdecken, sodass ein Prozess, ein Verfahren, ein Artikel oder eine Vorrichtung, die eine Liste von Elementen umfasst, hat, aufweist, enthält, nicht nur diese Elemente aufweist, sondern auch andere Elemente aufweisen kann, die nicht ausdrücklich aufgelistet sind oder für einen derartigen Prozess, ein derartiges Verfahren, einen derartigen Artikel oder eine derartige Vorrichtung inhärent sind. Wenn einemAlso, throughout this document, terms indicating a relationship, such as first and second, top and bottom, and the like, may be used merely to distinguish one entity or action from another entity or action, without thereby implying any actual such relationship or order between such entities or actions is required or assumed. The terms "comprises", "comprising", "has", "having", "includes", "including", "includes", "including" or any other variation thereof are intended to cover non-exclusive existence such that a process, a method, article or device that comprises, has, comprises, comprises a list of elements, comprises not only those elements but may also comprise other elements not expressly listed or relevant to such process, method, inherent in such an article or device. If one
Element „umfasst... ein“, „hat... ein“, „weist... ein... auf“, „enthält... ein“ vorausgeht, so schließt das die Existenz zusätzlicher identischer Elemente in demelement "comprises...a", "has...a", "has...a... has", "contains...a" precedes the existence of additional identical elements in the
Prozess, dem Verfahren, dem Artikel oder der Vorrichtung ohne weitereprocess, procedure, article or device without further ado
Einschränkungen nicht aus, der bzw. die das Element umfasst, hat, aufweist, enthält. Die Wörter „einer/eine/eines“ sind als eines oder mehrere definiert, wenn das hier nicht explizit anders angegeben ist. Die Begriffe „im Wesentlichen“, „essenziell“, „annäherungsweise“, „ungefähr“ oder eine beliebige Version davon sind so definiert, dass sie dem nahe kommen, was ein Fachmann auf diesem Gebiet darunter versteht, und in einer nicht einschränkenden Ausführungsform ist derConstraints that the item includes, has, has, contains. The words "a/an" are defined as one or more unless explicitly stated otherwise herein. The terms "substantially," "essential," "approximately," "about," or any version thereof are defined to approximate what is understood by one skilled in the art, and in one non-limiting embodiment, the
Ausdruck so definiert, dass er in einem Bereich innerhalb von 10%, in einer anderen Ausführungsform innerhalb von 5%, in einer anderen Ausführungsform innerhalb von 1% und in einer anderen Ausführungsform innerhalb von 0,5% davon ist. Der Begriff „gekoppelt“ wird hier so benutzt, dass er als verbunden definiert ist, auch wenn nicht notwendigerweise direkt oder nichtTerm defined as being in a range within 10%, in another embodiment within 5%, in another embodiment within 1%, and in another embodiment within 0.5% thereof. As used herein, the term "coupled" is defined as connected, although not necessarily directly or not
38 BE2022/5323 notwendigerweise mechanisch. Eine Vorrichtung oder Struktur, die in einer bestimmten Weise „konfiguriert“ ist, ist mindestens auf diese Weise konfiguriert, kann jedoch auch in Arten und Weisen konfiguriert sein, die nicht aufgelistet sind.38 BE2022/5323 necessarily mechanical. A device or structure that is “configured” in a particular way is configured in at least that way, but may also be configured in ways that are not listed.
Die Zusammenfassung der Offenbarung wird gegeben, um es dem Leser zu ermöglichen, sich über die Art der technischen Offenbarung schnell einenThe Summary of the Disclosure is provided to allow the reader to quickly ascertain the nature of the technical disclosure
Eindruck zu verschaffen. Sie wird mit der Maßgabe vorgelegt, dass sie nicht zumto make an impression. It is submitted with the understanding that it is not
Auslegen oder Eingrenzen des Umfangs oder der Bedeutung der Ansprüche verwendet wird. Zusätzlich dazu ist in der vorhergehenden detailliertento interpret or limit the scope or meaning of the claims. In addition to this is detailed in the previous
Beschreibung zu sehen, dass verschiedene Merkmale in verschiedenenDescription to see that different characteristics in different
Ausführungsformen für die Zwecke einer rationelleren Offenbarung kombiniert wurden. Dieses Verfahren der Offenbarung soll nicht dahingehend interpretiert werden, dass die Absicht besteht, dass die beanspruchten Ausführungsformen mehr Merkmale erfordern, als im jeweiligen Anspruch ausdrücklich angegeben.Embodiments have been combined for the purpose of more streamlined disclosure. This method of disclosure should not be interpreted to mean that the claimed embodiments are intended to require more features than are expressly recited in each claim.
Vielmehr liegt, wie die folgenden Ansprüche das widerspiegeln, derRather, as the following claims reflect, the
Erfindungsgegenstand in weniger als allen Merkmalen einer einzigen offenbartenSubject of the invention disclosed in less than all features of a single
Ausführungsform. Auf diese Weise sind die folgenden Ansprüche hierdurch in die detaillierte Beschreibung mit aufgenommen, wobei jeder Anspruch als getrennt beanspruchter Gegenstand für sich selbst steht. Die bloße Tatsache, dass bestimmte Maßnahmen in voneinander verschiedenen Ansprüchen angegeben sind, zeigt nicht an, dass eine Kombination dieser Maßnahmen nicht auch vorteilhaft eingesetzt werden kann. Viele Varianten werden dem Fachmann auf diesem Gebiet ersichtlich sein. Alle Varianten sollen als im Umfang der Erfindung enthalten verstanden werden, der in den folgenden Ansprüchen definiert ist.embodiment. Thus the following claims are hereby incorporated into the Detailed Description, with each claim standing on its own as a separately claimed subject matter. The mere fact that certain measures are recited in different claims does not indicate that a combination of these measures cannot also be used to advantage. Many variations will be apparent to those skilled in the art. All variants are to be understood as included within the scope of the invention, which is defined in the following claims.
Claims (20)
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US202163182392P | 2021-04-30 | 2021-04-30 | |
US17/375,846 US11507245B1 (en) | 2021-04-30 | 2021-07-14 | Systems and methods for enhancing image content captured by a machine vision camera |
Publications (2)
Publication Number | Publication Date |
---|---|
BE1029310A1 BE1029310A1 (en) | 2022-11-10 |
BE1029310B1 true BE1029310B1 (en) | 2023-07-04 |
Family
ID=82701959
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
BE20225323A BE1029310B1 (en) | 2021-04-30 | 2022-04-29 | SYSTEMS AND METHODS FOR ENHANCEMENT OF IMAGE CONTENT CAPTURED BY A MACHINE VIEW CAMERA |
Country Status (1)
Country | Link |
---|---|
BE (1) | BE1029310B1 (en) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090324032A1 (en) * | 2008-06-25 | 2009-12-31 | Jadak Llc | System and Method For Test Tube and Cap Identification |
US20100027894A1 (en) * | 2008-07-31 | 2010-02-04 | Imageid | System and method for automatic recognition of undetected assets |
-
2022
- 2022-04-29 BE BE20225323A patent/BE1029310B1/en active IP Right Grant
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090324032A1 (en) * | 2008-06-25 | 2009-12-31 | Jadak Llc | System and Method For Test Tube and Cap Identification |
US20100027894A1 (en) * | 2008-07-31 | 2010-02-04 | Imageid | System and method for automatic recognition of undetected assets |
Also Published As
Publication number | Publication date |
---|---|
BE1029310A1 (en) | 2022-11-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE60023900T2 (en) | PRESENTATION SYSTEM FOR CALCULATOR AND OPTICAL TRACKING PROCEDURE OF A WIRELESS INDICATOR | |
DE112016006262B4 (en) | Three-dimensional scanner and processing method for measurement support therefor | |
BE1029597B1 (en) | Image processing systems and methods for automatically generating one or more image processing jobs based on regions of interest (ROIs) of digital images | |
DE112019000687T5 (en) | PHOTOREALISTIC THREE-DIMENSIONAL TEXTURING USING CANONICAL VIEWS AND A TWO-STAGE APPROACH | |
DE102018207088A1 (en) | PICTURE ANALYSIS WITHOUT MARKERS FOR AUGMENTED REALITY | |
DE112022001743T5 (en) | SYSTEMS AND METHODS FOR OPTIMIZING IMAGING SETTINGS AND IMAGE CAPTURE FOR AN IMAGE PROCESSING JOB | |
DE112016006066T5 (en) | ANALYSIS OF ENVIRONMENTAL LIGHT FOR PICTURE TRACKING | |
BE1029610B1 (en) | Systems and methods for improving the performance of a trainable optical character recognition (OCR) | |
WO2008015020A1 (en) | Method for analyzing and/or testing at least one user interface, data processing device and computer program product | |
DE112022005421T5 (en) | METHOD FOR IDENTIFYING A CHARACTER ORIENTATION AND DECODING CHARACTER FOR MACHINE IMAGE PROCESSING SYSTEMS | |
DE112019004488T5 (en) | DOUBLE-MODE DATA ACQUISITION SYSTEM FOR COLLISION DETECTION AND OBJECT DIMENSIONING | |
DE102017116854A1 (en) | A system and method for configuring a tag reader using a mobile device | |
DE202016008004U1 (en) | Automatically associate images using visual property references to related applications | |
DE202016006110U1 (en) | Extension of the field of view of photography | |
DE102024115463A1 (en) | PORTAL CONTENT FOR COMMUNICATION SESSIONS | |
DE112022001773T5 (en) | Systems and methods for determining an adaptive region of interest (ROI) for calculating image metrics | |
DE102021119123A1 (en) | SYSTEMS AND METHODS FOR GENERATION OF IMAGE PROCESSING JOBS INCLUDING BAR CODE SCANNING | |
DE112021004030T5 (en) | AUTOMATICALLY IDENTIFYING AND REPRESENTING EDGES, SHAPES AND UNIQUE OBJECTS IN AN IMAGE USED TO SET UP AN IMAGING JOB | |
DE102021119128A1 (en) | SYSTEMS AND METHODS FOR OPTIMIZING IMAGING SETTINGS FOR AN IMAGING JOB | |
BE1029310B1 (en) | SYSTEMS AND METHODS FOR ENHANCEMENT OF IMAGE CONTENT CAPTURED BY A MACHINE VIEW CAMERA | |
DE112023002887T5 (en) | Systems and methods for tool canvas metadata and autoconfiguration in image processing applications | |
DE102022124537A1 (en) | METHOD OF CREATING AN OPTIMIZED/ADAPTIVE REGION OF INTEREST (ROI) BASED ON DETECTION OF A BAR CODE POSITION IN FIELD OF VIEW (FOV) | |
DE112020006943T5 (en) | PANORAMIC CREATION WITH MOBILE CAMERA | |
EP3972924A1 (en) | Method and device for visualising replacement parts | |
DE112021004035T5 (en) | SYSTEMS AND PROCEDURES TO FACILITATE SELECTION OF TOOLS FOR IMAGING JOBS |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
FG | Patent granted |
Effective date: 20230704 |