WO2022100960A1 - Method for providing navigation data in order to control a robot, method for controlling a robot, method for producing at least one predefined point-symmetric region, and device - Google Patents

Method for providing navigation data in order to control a robot, method for controlling a robot, method for producing at least one predefined point-symmetric region, and device Download PDF

Info

Publication number
WO2022100960A1
WO2022100960A1 PCT/EP2021/078611 EP2021078611W WO2022100960A1 WO 2022100960 A1 WO2022100960 A1 WO 2022100960A1 EP 2021078611 W EP2021078611 W EP 2021078611W WO 2022100960 A1 WO2022100960 A1 WO 2022100960A1
Authority
WO
WIPO (PCT)
Prior art keywords
symmetry
point
symmetrical
pattern
image
Prior art date
Application number
PCT/EP2021/078611
Other languages
German (de)
French (fr)
Inventor
Stephan Simon
Original Assignee
Robert Bosch Gmbh
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Robert Bosch Gmbh filed Critical Robert Bosch Gmbh
Priority to CN202180090220.6A priority Critical patent/CN116710975A/en
Publication of WO2022100960A1 publication Critical patent/WO2022100960A1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • G06T7/529Depth or shape recovery from texture
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/30Determination of transform parameters for the alignment of images, i.e. image registration
    • G06T7/33Determination of transform parameters for the alignment of images, i.e. image registration using feature-based methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/60Analysis of geometric attributes
    • G06T7/68Analysis of geometric attributes of symmetry
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01BMEASURING LENGTH, THICKNESS OR SIMILAR LINEAR DIMENSIONS; MEASURING ANGLES; MEASURING AREAS; MEASURING IRREGULARITIES OF SURFACES OR CONTOURS
    • G01B11/00Measuring arrangements characterised by the use of optical techniques
    • G01B11/16Measuring arrangements characterised by the use of optical techniques for measuring the deformation in a solid, e.g. optical strain gauge
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20021Dividing image into blocks, subimages or windows
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20112Image segmentation details
    • G06T2207/20164Salient point detection; Corner detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30108Industrial image inspection
    • G06T2207/30124Fabrics; Textile; Paper
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30108Industrial image inspection
    • G06T2207/30164Workpiece; Machine component
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30204Marker
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/22Image 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/225Image 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/24Aligning, centring, orientation detection or correction of the image
    • G06V10/245Aligning, centring, orientation detection or correction of the image by locating a pattern; Special marks for positioning

Definitions

  • Method for providing navigation data for controlling a robot method for controlling a robot, method for producing at least one predefined point-symmetrical area and device
  • the invention is based on a device or a method according to the species of the independent claims.
  • the subject matter of the present invention is also a computer program.
  • the subsequently published DE 10 2020 202 160 A1 discloses a method for determining a symmetry property in image data and a method for controlling a function.
  • a symmetrical area is not completely displayed in the camera image, e.g. B. because it may be partially covered by an object, or because it may partially protrude from the image, or because the pattern may have been cropped.
  • a precision of a localization of the point center of symmetry can nevertheless be maintained, because the partial occlusion(s) do not falsify its position: remaining point-symmetrical correspondence pairs can nevertheless vote for the correct center of symmetry.
  • a partial occlusion can only reduce a strength of an accumulation point in a matching matrix or the like, but the position of the center of symmetry can be retained and still be precisely and easily determinable. This is a special advantage of exploiting point symmetry.
  • a point-symmetric planar surface can be invariant under an affine mapping.
  • An imaging of an arbitrarily oriented plane by a real camera can always be approximated very well, at least locally, by an affine imaging. For example, if you look at a circular area with point symmetry from an oblique perspective, the circular shape becomes an elliptical shape, with the point symmetric property and the point symmetry center being retained.
  • the at least one point-symmetrical area does not necessarily have to be viewed from a frontal perspective - also provide very oblique perspectives does not pose a difficulty and obtainable accuracy can be maintained.
  • Such an invariance, in particular with respect to rotation and with respect to perspective can make it possible to dispense with precautions for aligning the camera in a suitable manner with respect to the symmetrical area or vice versa. Rather, it may already be sufficient if the respective point-symmetrical area is at least partially recorded in the camera image so that it can be detected.
  • a relative positional relationship or arrangement between the point-symmetrical area and the camera can be irrelevant or almost irrelevant.
  • a method for providing navigation data for controlling a robot is presented, the method having the following steps:
  • This method can be implemented, for example, in software or hardware or in a mixed form of software and hardware, for example in a control unit or a device.
  • image data from a plurality of cameras can also be read in, with the image data representing a plurality of camera images of the at least one area.
  • a plurality of reference images can be used in the implementation step.
  • the reference image can also be replaced by reference data that at least partially corresponds to or is equivalent to the information that can be obtained from a reference image.
  • the reference data can represent the reference image in a condensed form or representation, for example as a descriptor image, signature image and/or with a listing of all coordinates and types of existing centers of symmetry.
  • the at least one predefined point-symmetrical region can be manufactured by performing a variant of a manufacturing method described below.
  • the determination specification can be similar to or correspond to a procedure that is disclosed in the applicant's subsequently published DE 10 2020 202 160.
  • the reference image can represent the at least one predefined point-symmetrical area.
  • the optional step of determining can be performed using the optical flow, in particular the dense optical flow.
  • Controlling the robot can represent controlling or regulating a pose, location, position, orientation or the like of the robot relative to a reference point or reference object marked with the at least one predefined point-symmetrical area.
  • At least one actuator of the robot can be controlled using the control signal to control the robot.
  • the displacement information can represent displacement vectors or absolute coordinates.
  • the determination rule used in the determination step can be designed to cause a signature to be generated for a plurality of pixels of at least one section of the camera image is used to obtain a plurality of signatures.
  • each of the signatures can be generated using a descriptor with a plurality of different filters.
  • Each filter can have at least one type of symmetry.
  • Each of the signatures can have a sign for each filter of the descriptor.
  • the determination rule can also be designed to ensure that at least one mirror signature for at least one type of symmetry of the filter is determined for the signature.
  • the determination rule can also be designed to cause a pixel having the signature to be checked for the presence of at least one other pixel with a signature that corresponds to the at least one mirror signature in a search area in an area surrounding the pixel, in order to determine the presence of at least one other Pixels to determine pixel coordinates of at least one symmetrical pair of signatures from the pixel and another pixel.
  • the determination rule can be designed to cause the pixel coordinates of the at least one symmetrical signature pair to be evaluated in order to identify the at least one center of symmetry.
  • the descriptor can describe an image content in a local neighborhood around a pixel or reference pixel in a compact form.
  • a signature can describe a value of the descriptor for a pixel, for example in a binary representation.
  • the at least one mirror signature can thus be determined using a plurality of calculated signature images, eg one with normal filters, one with even point-mirrored filters, and one with odd point-mirrored filters.
  • at least one reflector can be applied to the signs of one of the signatures in order to determine the at least one mirror signature.
  • each reflector for a type of symmetry can have specific rules for modifying the signs that are dependent on the filters of the descriptor.
  • the search area can be dependent on at least one of the reflectors used.
  • a transformation rule for transforming pixel coordinates of the center of symmetry and / or the at least one predefined even and / or odd point-symmetrical area are determined.
  • the transformation rule can be applied to the pixel coordinates of the center of symmetry and/or the at least one predefined even and/or odd point-symmetrical area in order to correct a distorted perspective of the camera image.
  • a type of symmetry of the at least one center of symmetry can also be determined in the determination step.
  • the type of symmetry can represent an even point symmetry and additionally or alternatively an odd point symmetry.
  • the type of symmetry of the at least one center of symmetry in the camera image can be compared with a predefined type of symmetry of at least one reference center of symmetry in a reference image in order to determine a match between the at least one center of symmetry and the at least one reference center of symmetry to consider.
  • Odd point symmetry can be generated by point reflection with inversion of gray values or color values.
  • the image data read in in the reading step can represent a camera image of at least one pattern from a plurality of predefined even and/or odd point-symmetrical regions.
  • a geometric arrangement of symmetry centers of the at least one pattern can be determined, a geometric sequence of symmetry types of the symmetry centers can be determined and additionally or alternatively the pattern can be determined from a plurality of predefined patterns using the sequence.
  • the arrangement and/or the sequence may represent an identification code of the pattern.
  • step of determining using the arrangement of the centers of symmetry of the at least one pattern and additionally or alternatively the sequence of types of symmetry of the centers of symmetry, implicit additional information of the at least one pattern or a reading rule for reading out explicit additional information in the camera image can be determined.
  • the arrangement and additionally or alternatively the sequence can represent the additional information in encoded form.
  • the additional information can be related to controlling the robot. Such an embodiment offers the advantage that additional information can be communicated through the topology of the at least one pattern.
  • the reference image can also be selected from a plurality of stored reference images or generated using a stored generation rule in the step of performing. In this way, the correct reference image can be reliably identified.
  • a storage requirement for reference images can also be minimized since only generation specifications need to be stored.
  • the determining step and additionally or alternatively the performing step can be carried out jointly for all symmetry centers independently of the symmetry type of the symmetry centers or separately for the symmetry centers of the same symmetry type depending on the symmetry type of the symmetry centers.
  • joint execution a low memory and time requirement for an exact and reliable identification of the symmetry centers can be achieved.
  • confusion with patterns that occur randomly in images can be minimized by separate execution.
  • a method for controlling a robot is also presented, the method having the following steps:
  • This method can be implemented, for example, in software or hardware or in a mixed form of software and hardware, for example in a control unit or a device.
  • the method for controlling can advantageously be carried out in connection with an embodiment of the above-mentioned method for providing.
  • a method for producing at least one predefined even and/or odd point-symmetrical region for use by an embodiment of a method mentioned above is also presented, the method having the following steps:
  • At least one predefined even and/or odd point-symmetrical region using the design data on, on or in a display medium to produce the at least one predefined even and/or odd point-symmetrical region.
  • This method can be implemented, for example, in software or hardware or in a mixed form of software and hardware, for example in a control unit or a device.
  • at least one predefined even and/or odd point-symmetrical region can be manufactured, which can be used within the scope of an embodiment of an above-mentioned method.
  • design data can be generated in the generation step, which is a graphic representation of the at least one predefined even and/or odd point-symmetrical area as a circle, an ellipse, a square, a rectangle, a pentagon, a hexagon, a polygon or a represent annulus.
  • the at least one predefined even and/or odd point-symmetrical area can have a regular or quasi-random content pattern.
  • a first half of an area of the at least one predefined even and/or odd point-symmetrical area can be specified arbitrarily and a second half of the area can be constructed by point reflection and optionally additional inversion of gray values and additional or alternative color values.
  • the at least one predefined even and/or odd point-symmetrical area can be generated by an additive manufacturing process, separating, coating, forming, primary forming or optical display.
  • the display medium may include glass, stone, ceramic, plastic, rubber, metal, concrete, plaster, paper, cardboard, food, or a visual display device.
  • the at least one predefined even and/or odd point-symmetrical area can thus be produced in a precisely suitable manner depending on the specific use or depending on the specific application and the boundary conditions prevailing there.
  • Design data can also be generated in the generation step, which represent a graphical representation of at least one pattern from a plurality of predefined even and/or odd point-symmetrical regions.
  • at least a subset of even and / or odd point-symmetrical areas on a regular or irregular grid, directly adjacent to each other and additionally or alternatively partially separated from at least one adjacent even and/or odd point-symmetrical region by a gap be identical to or different from each other in terms of their dimensions and/or their content patterns and additionally or alternatively in a be arranged in the same plane or in different planes.
  • design data can be generated that represent a graphical representation of at least one pattern with hierarchical symmetry. In this way, different patterns with specific information content and additionally or alternatively patterns with hierarchical symmetries can be produced for different distances to the pattern.
  • a pattern can comprise one or more point-symmetrical areas with odd or even point symmetry. These areas can, for example, have a circular, hexagonal, square, elliptical, polygonal or other shape.
  • the point-symmetrical areas can be of the same type or different in shape and size. You can connect to each other without gaps or be spaced apart.
  • the approach presented here also creates a device that is designed to carry out, control or implement the steps of a variant of a method presented here in corresponding devices.
  • the object on which the invention is based can also be achieved quickly and efficiently by this embodiment variant of the invention in the form of a device.
  • the device can have at least one computing unit for processing signals or data, at least one memory unit for storing signals or data, at least one interface to a sensor or an actuator for reading in sensor signals from the sensor or for outputting data or control signals to the Have actuator and / or at least one communication interface for reading or outputting data that are embedded in a communication protocol.
  • the arithmetic unit can be, for example, a signal processor, a microcontroller or the like, with the memory unit being able to be a flash memory, an EEPROM or a magnetic memory unit.
  • the communication interface can be designed to read in or output data wirelessly and/or by wire, wherein a communication interface that can read in or output wire-bound data can, for example, read this data electrically or optically from a corresponding data transmission line or can output it to a corresponding data transmission line.
  • a device can be understood to mean an electrical device that processes sensor signals and, depending thereon, outputs control and/or data signals.
  • the device can have an interface that can be configured as hardware and/or software.
  • the interfaces can be part of a so-called system ASIC, for example, which contains a wide variety of functions of the device. However, it is also possible for the interfaces to be separate integrated circuits or to consist at least partially of discrete components.
  • the interfaces can be software modules which are present, for example, on a microcontroller alongside other software modules.
  • a computer program product or computer program with program code which can be stored on a machine-readable carrier or storage medium such as a semiconductor memory, a hard disk memory or an optical memory and for carrying out, implementing and/or controlling the steps of the method according to one of the embodiments described above, is also advantageous used, especially when the program product or program is run on a computer or device.
  • the method can be implemented as a hardware accelerator on a SoC or ASIC.
  • FIG. 1 shows a schematic representation of an exemplary embodiment of a device for providing, an exemplary embodiment of a device for controlling and a camera;
  • FIG. 2 shows a schematic representation of an exemplary embodiment of a device for production
  • FIG. 3 shows a flowchart of an embodiment of a method for providing; 4 shows a flow chart of an embodiment of a method for controlling;
  • FIG. 5 shows a flow chart of an exemplary embodiment of a method for manufacturing
  • FIG. 6 shows schematic representations of display media with patterns of predefined point-symmetrical areas according to exemplary embodiments
  • FIG. 7 shows schematic representations of display media with patterns of predefined point-symmetrical areas according to exemplary embodiments
  • FIG. 8 shows schematic representations of the display media with the patterns from FIG. 7 with graphical highlighting of the patterns or the predefined point-symmetrical areas;
  • FIG. 10 shows a schematic representation of a pattern of predefined point-symmetrical regions according to an embodiment
  • FIG. 11 shows a schematic representation of the use of a look-up table according to an embodiment
  • FIG. 12 shows a schematic diagram of a voting matrix according to an embodiment
  • FIG. 13 shows a schematic representation of patterns arranged in the form of a cube by way of example according to an exemplary embodiment with regard to correct identification of a raster
  • FIG. 14 is an oblique perspective schematic representation of the pattern shown in the first partial representation of Fig. 6;
  • FIG. 15 shows the pattern from the first partial representation of FIG. 14 with an emphasis on a predefined point-symmetrical area;
  • FIG. 15 shows the pattern from the first partial representation of FIG. 14 with an emphasis on a predefined point-symmetrical area;
  • FIG. 16 shows a schematic illustration of the pattern from FIG. 15 after perspective rectification according to an exemplary embodiment
  • Fig. 17 is a schematic representation of an embodiment of a pattern having hierarchical symmetry
  • Fig. 18 is a schematic representation of an embodiment of a pattern having hierarchical symmetry
  • Fig. 19 is a schematic representation of an embodiment of a pattern having hierarchical symmetry
  • FIG. 21 shows a schematic representation of an application situation for the control device from FIG. 1 and/or the method for control from FIG. 4;
  • 22 shows a schematic representation of various display media with predefined point-symmetrical areas
  • FIG. 23 shows a camera image of a conveyor belt as a display medium with an exemplary embodiment of a pattern made up of predefined point-symmetrical areas and objects placed on the conveyor belt;
  • Fig. 24 shows the camera image from Fig. 23 after processing using the method for providing from Fig. 3.
  • Fig. 1 shows a schematic representation of an exemplary embodiment of a device 120 for providing, an exemplary embodiment of a device 140 for controlling and, by way of example, only one camera 102.
  • device 120 is for providing or providing device 120 and device 140 shown separate from camera 102 for control or control device 140 .
  • the provision device 120 and the control device 140 are connected to the camera 102 in a data-transmitting manner.
  • the provision device 120 and/or the control device 140 can also be part of the camera 102 and/or can be combined with one another.
  • the camera 102 is designed to record a camera image of the surroundings of the camera 102 . In the vicinity of the camera 102, for example, only a predefined even and/or odd point-symmetrical region 110 with a center of symmetry 112 is arranged.
  • the camera 102 is also designed to provide or generate image data 105 that represent the camera image, the camera image also showing the predefined even and/or odd point-symmetrical region 110 .
  • the provision device 120 is designed to provide navigation data 135 for controlling a robot.
  • the camera 102, the provision device 120 and/or the control device 140 can be embodied as part of the robot or separately from them.
  • the provision device 120 comprises a reading device 124, a determining device 126, an implementation device 130 and optionally also a determination device 132.
  • the reading device 124 is designed to read in the image data 105 from an input interface 122 of the provision device 120 to the camera 102.
  • the reading-in device 124 is also designed to forward the image data 105 representing the camera image to the determination device 126 .
  • Determination device 126 of provision device 120 is designed to determine center of symmetry 112 of at least one point-symmetrical region 110 using image data 105 and a determination rule 128 .
  • the specification 128 will be discussed in more detail below.
  • the determination rule 128 is similar to or corresponds to a procedure that is disclosed in the subsequently published DE 10 2020 202 160 of the applicant.
  • Determination device 126 is also designed to pass on the at least one specific center of symmetry 112 to implementation device 130 .
  • the implementation device 130 is designed to carry out a comparison of a position of the at least one center of symmetry 112 in the camera image with a predefined position of at least one reference center of symmetry in a reference image 115 relative to a reference coordinate system, in order to determine a position deviation 131 between the center of symmetry 112 and the reference to determine the center of symmetry.
  • the implementation device 130 is also designed to read in or receive the reference image 115 or reference data 115 from a storage device 150 .
  • the storage device 150 can be embodied as part of the provision device 120 or separately from the same.
  • implementation device 130 is designed to forward position deviation 131 to determination device 132 .
  • determination device 132 is designed to then determine displacement information 133 for at least a subset of pixels of the camera image relative to corresponding pixels of reference image 115 using position deviation 131 .
  • the provision device 120 is designed to provide the navigation data 135 using the position deviation 131 and/or the displacement information 133 . More precisely, the Providing device 120 designed to provide the navigation data 135 to the control device 140 via an output interface 138 of the providing device 120 .
  • the control device 140 is designed to control the robot.
  • the control device 140 includes an evaluation device 144 and an output device 146.
  • the control device 140 is designed to receive or read in the navigation data 135 via an input interface 142 of the control device 140 from the provision device 120.
  • the evaluation device 144 is designed to evaluate the navigation data 135 provided by the provision device 120 in order to generate a control signal 145 dependent on the navigation data 135 .
  • the evaluation device 144 is also designed to forward the control signal 145 to the output device 146 .
  • the output device 146 is designed to output the control signal 145 to an output interface 148 on the robot in order to control the robot.
  • determination rule 128 is designed to cause a signature to be generated for a plurality of pixels of at least one section of the camera image in order to obtain a plurality of signatures.
  • each of the signatures is generated using a descriptor with a plurality of different filters.
  • Each filter has at least one type of symmetry.
  • Each of the signatures includes a sign for each filter of the descriptor.
  • the determination rule 128 is also designed to cause at least one reflector to be applied to the signs of one of the signatures in order to determine at least one mirror signature for at least one type of symmetry of the filters for the signature.
  • each reflector for a type of symmetry has specific rules for modifying the signs that are dependent on the filters of the descriptor.
  • the determination rule is also designed to cause a pixel having the signature to be checked for the presence of at least one other pixel with a signature corresponding to the at least one mirror signature in a search area dependent on at least one of the reflectors used in a vicinity of the pixel, to at least one if present further pixel to determine pixel coordinates of at least one symmetrical signature pair from the pixel and a further pixel.
  • the determination rule is designed to cause the pixel coordinates of the at least one symmetrical pair of signatures to be evaluated in order to identify the at least one center of symmetry.
  • determination device 126 is designed to use the pixel coordinates of each symmetrical signature pair that contributed to the correct identification of symmetry center 112 to generate a transformation rule for transforming pixel coordinates of symmetry center 112 and/or point-symmetrical region 110 for each already determined center of symmetry 112 to determine.
  • the transformation rule is applied to the pixel coordinates of the center of symmetry 112 and/or the point-symmetrical area 110 in order to correct a distorted perspective of the camera image.
  • it is advantageous, because it is more robust, more accurate and subject to less noise, to determine a transformation rule using a plurality of, in particular adjacent, point-symmetrical regions 110, in particular if these are located on a common plane.
  • the application of the transformation is particularly advantageous when an arrangement of several centers of symmetry 112 is considered.
  • determination device 126 is also designed to determine a type of symmetry of the at least one center of symmetry 112 .
  • the symmetry type represents an even point symmetry and additionally or alternatively an odd point symmetry.
  • implementation device 130 is designed to compare the type of symmetry of the at least one center of symmetry 112 in the camera image with a predefined type of symmetry of at least one reference center of symmetry in a reference image 115 in order to determine a match between the at least one center of symmetry 112 and the at least to check a reference center of symmetry.
  • the image data 105 represent a camera image of at least one pattern from a plurality of predefined ones point-symmetrical regions 110.
  • Determination device 126 is designed to determine a geometric arrangement of centers of symmetry 112 of the at least one pattern, to determine a geometric sequence of types of symmetry of centers of symmetry 112, and/or to determine the correct pattern represented by image data 105 using the sequence to be determined from several predefined patterns.
  • the arrangement and/or sequence may represent an identification code of the pattern.
  • determination device 126 is designed here to use the arrangement of the centers of symmetry 112 of the at least one pattern and/or the sequence of symmetry types of the centers of symmetry 112 to determine implicit additional information of the at least one pattern or a readout rule for reading out explicit additional information in the camera image to determine.
  • the arrangement and/or the sequence represents or represent the additional information in encoded form.
  • the additional information relates to controlling the robot.
  • implementation device 130 is designed here to select reference image 115 from a plurality of stored reference images or to generate it using a stored generation rule, depending on the specific arrangement, the specific sequence and/or the specific pattern.
  • FIG. 2 shows a schematic representation of an exemplary embodiment of a device 200 for production.
  • the device 200 for producing is designed to produce at least one predefined even and/or odd point-symmetrical region 110 for use by the providing device from FIG. 1 or a similar device and/or control device from FIG. 1 or a similar device.
  • the device 200 for manufacturing comprises a generating device 202 and a generating device 206.
  • the generating device 202 is designed to generate design data 204.
  • the design data 204 represents a graphical representation of the at least one predefined even and/or odd point-symmetrical region 110.
  • the generating device 206 is designed to use the design data 204 to generate the at least one predefined even and/or odd point-symmetrical region 110 on, on or in a To generate display medium to produce the same.
  • the generating device 202 is designed to generate design data 204, which is a graphic representation of the at least one predefined point-symmetrical region 110 as a circle, an ellipse, a square, a rectangle, a pentagon, a hexagon, a polygon or an annulus represent, wherein the at least one predefined point-symmetrical area 110 has a regular or quasi-random content pattern, and/or wherein a first half of an area of the at least one predefined point-symmetrical area 110 is specified arbitrarily and a second half of the area by point reflection and/or inversion is constructed from gray values and/or color values.
  • the generating device 206 is designed to generate the at least one predefined point-symmetrical region 110 by an additive manufacturing process, separating, coating, forming, primary forming or optical display.
  • the display medium has glass, stone, ceramics, plastic, rubber, metal, concrete, plaster, paper, cardboard, food or an optical display device.
  • the generating device 202 is designed to generate design data 204 that represents a graphical representation of at least one pattern from a plurality of predefined point-symmetrical regions 110, with at least a subset of the point-symmetrical regions 110 being aligned on a regular or irregular grid, directly are adjacent to each other and/or partially separated from at least one adjacent point-symmetrical region 110 by a gap, are identical to or different from each other in terms of their dimensions and/or their content patterns, and/or are arranged in a common plane or in different planes. Additionally or alternatively, the generating device 202 is designed to generate design data 204 that represent a graphical representation of at least one pattern with hierarchical symmetry.
  • FIG. 3 shows a flow chart of an embodiment of a method 300 for providing navigation data for controlling a robot. That Method 300 for providing can be carried out using the providing device from FIG. 1 or a similar device.
  • the method 300 for providing comprises a step 324 of reading in, a step 326 of determining, a step 330 of implementation and optionally an additional step 332 of determining.
  • step 324 of reading in image data provided by a camera are read in from an interface to the camera.
  • the image data represent a camera image of at least one predefined even and/or odd point-symmetrical area in an area surrounding the camera.
  • At least one center of symmetry of the at least one point-symmetrical region is then determined in step 326 of determination using the image data and a determination rule.
  • step 330 of execution a comparison of a position of the at least one center of symmetry in the camera image with a predefined position of at least one reference center of symmetry in a reference image relative to a reference coordinate system is carried out in order to determine a position deviation between the center of symmetry and the reference center of symmetry determine.
  • step 332 of determining, using the position deviation displacement information is determined for at least a subset of pixels of the camera image relative to corresponding pixels of the reference image.
  • the navigation data is provided using the position deviation and/or the determined displacement information.
  • the image data read in in step 324 of reading represent a camera image of at least one pattern from a plurality of predefined point-symmetrical regions.
  • step 326 of determining a geometric arrangement of symmetry centers of the at least one pattern is determined, a geometric sequence of symmetry types of the symmetry centers is determined and/or the pattern is determined from a plurality of predefined patterns using the sequence.
  • the arrangement and/or the sequence represents an identification code of the pattern.
  • step 326 of Determining and/or the step 330 of carrying out is carried out jointly for all centers of symmetry independently of the type of symmetry of the centers of symmetry or carried out separately for the centers of symmetry of the same type of symmetry depending on the type of symmetry of the centers of symmetry.
  • FIG. 4 shows a flowchart of an embodiment of a method 400 for controlling a robot.
  • the method 400 for controlling can be carried out using the control device from FIG. 1 or a similar device. Also, the method 400 for controlling is executable in connection with the method for providing of FIG. 3 or a similar method.
  • the method 400 for controlling comprises a step 444 of evaluating and a step 446 of outputting.
  • step 444 of the evaluation navigation data provided according to the method for providing from FIG. 3 or a similar method is evaluated in order to generate a control signal dependent on the navigation data. Subsequently, in step 446 of outputting, the drive signal is output to an interface to the robot in order to control the robot.
  • the manufacturing method 500 is executable to manufacture at least one predefined point-symmetrical region for use by the providing method of FIG. 3 or a similar method and/or for use by the controlling method of FIG. 4 or a similar method.
  • the method 500 for manufacturing can also be carried out in connection with or using the device for manufacturing from FIG. 2 or a similar device.
  • the method 500 for manufacturing comprises a step 502 of generating and a step 506 of creating.
  • step 502 of generation design data are generated which represent a graphical representation of the at least one predefined point-symmetrical area.
  • step 506 of generating using the design data the at least one predefined point-symmetrical area generated on, on or in a display medium in order to produce the at least one predefined point-symmetrical area.
  • FIG. 6 shows schematic representations of presentation media 600 with patterns 610 of predefined point-symmetric regions 110A and HOB according to embodiments.
  • Each of the predefined point-symmetrical areas 110A and 110B corresponds to or is similar to the predefined point-symmetrical area from Fig. 1.
  • a pattern 610 of 49 predefined point-symmetrical areas 110A and HOB is shown merely by way of example
  • a second partial view B there is a pattern 610 is shown from eight predefined point-symmetrical regions 110A and HOB, merely by way of example.
  • first predefined point-symmetrical areas 110A have odd point symmetry as the type of symmetry
  • second predefined point-symmetrical areas HOB have even point symmetry as the type of symmetry.
  • a noise-like image pattern with the respective pattern 610 is printed on each of the display media 600 .
  • a use of symmetries in the field of machine vision according to exemplary embodiments can be illustrated with reference to FIG .
  • point symmetries are more or less hidden in the patterns 610, which are hardly recognizable to an observer.
  • the first partial representation A contains 49 exemplary circular symmetrical regions 110A and HOB, of which 25 first regions 110A with odd point symmetry and 24 second regions HOB with even point symmetry are merely exemplary.
  • the symmetrical regions 110A and HOB are selected to be larger than in FIG the first partial representation A, and is therefore particularly suitable for larger camera distances or lower image resolutions.
  • Circular symmetrical areas 110A and HOB are therefore located on the representation media 600 designed as plates, whereby in the case of odd or negative point symmetry, the point reflection maps light to dark and vice versa, while in the case of even or positive point symmetry this reversal does not take place.
  • several patterns 610 are required, they can be designed to be distinguishable. This can be done via the arrangement of the centers of symmetry of the areas 110A and 110B, as can be seen in Fig. 6, in which the first partial representation A and the second partial representation B can be easily distinguished, or by means of the sequence of negative or odd and positive or straight point symmetries of regions 110A and HOB within respective patterns 610.
  • FIG. 7 shows schematic representations of representation media 600 with patterns 610 of predefined point-symmetrical areas according to embodiments.
  • the patterns 610 correspond to or are similar to one of the patterns from FIG. 6, the patterns 610 being shown in the representation of FIG. 7 without graphical emphasis.
  • Ten presentation media 600 similar to those of FIG. 6 are shown in FIG. 7 by way of example only.
  • FIG. 8 shows schematic representations of the display media 600 with the patterns 610 from FIG. 7 with graphical highlighting of patterns or predefined point-symmetrical regions 110A and HOB.
  • patterns 610 with predefined point-symmetrical regions 110A and HOB are arranged or graphically highlighted on the ten display media 600, merely by way of example.
  • FIG. 7 and FIG. 8 show ten patterns 610 optimized for distinguishability only by way of example.
  • Each pattern 610 has an individual arrangement of the odd and even point-symmetrical regions 110A and HOB.
  • the patterns 610 are thus encoded by this arrangement.
  • the codings were selected here and matched to one another and/or optimized by training in such a way that the ten patterns 610 are still clearly recognizable and distinguishable even if they are rotated or mirrored or partially covered by be captured by the camera.
  • the point-symmetrical regions 110A and HOB in the four corners of each display medium 600 are intentionally made slightly more conspicuous, respectively. This is irrelevant to the function itself, but offers practical advantages when manually assembling the display media 600 with the patterns 610.
  • the display media 600 with the patterns 610 can be arranged as desired within the scope of the manufacturing process already described, e.g. B. three-dimensional or flat in a row or as a surface.
  • the point symmetry centers of the patterns 610 can be found correctly and precisely within the scope of the provision method already described and/or by means of the provision device already described.
  • the patterns 610 may be printed on any size solid board, which may optionally be placed in a partially orthogonal relationship relative to one another.
  • the centers of symmetry can also be detected sufficiently well in the case of a blurred image of the pattern 610 by the camera in order to enable the functions described.
  • the detection of the point symmetry centers is robust to a blurred image.
  • the patterns 610 of FIGS. 7 and 8 can be printed on paper, for example, and assembled into a flexible box. Even with non-flat or elastic surfaces (such as paper), the above-mentioned provision method works without any problems. This enables the Determination of movements of these surfaces. In contrast to many substances, paper does not allow shearing, but the point symmetry is also invariant to shearing, so this does not pose a problem.
  • a position of the centers of symmetry in the camera images can be determined precisely.
  • This then allows e.g. B. to determine the smallest deviations between the actually observed pattern 610 and the ideal pattern according to the construction (ground truth).
  • This is of interest, for example, if the pattern 610 is printed on a non-smooth or non-rigid surface and thereby z. B. variable folds or dents arise in the pattern 610, the exact shape of which is to be determined.
  • random patterns are excellent for finding corresponding points from a first image to a second image.
  • the first and second images can be recorded in chronological order with the same camera or by two cameras from different perspectives.
  • the first image is a real image from a camera and the second image is an artificially generated (stored) image of the given pattern, also called a reference image, which e.g. B. was placed in the second image based on the centers of symmetry found (e.g. scaled, rotated, mapped affinely, projected) so that it comes as close as possible to the real (first) image.
  • a reference image processing steps that are necessary for the first image that comes from the camera, e.g. B. Image preprocessing steps.
  • z. B. the optical flow or the disparity estimation can be applied to z. B. to find the correspondence in the reference image for each pixel in the camera image - or vice versa.
  • the centers of symmetry found and, if applicable, the coding they contain are used to register or roughly align the real image with the known pattern.
  • This then represents the initialization to, in the second step, e.g. B. using optical flow methods to precisely determine the smallest deviations in the sense of local shifts between the registered real image and pattern, if necessary for each point or pixel of the image or pattern 610.
  • the computational effort required for the second step is all the smaller , the smaller the search area. Here it is usually very small - due to the good initialization from the first step.
  • the reference image should be provided for the two-step procedure mentioned above. This can be solved in such a way that the associated reference image is kept available in a memory for all patterns 610 in question.
  • the associated memory overhead can be reduced by only storing the respective parameters that are necessary to recalculate or generate the reference image if required.
  • the patterns 610 can, for example, be generated according to simple rules using a quasi-random number generator.
  • the word "quasi" here indicates that the random number generator actually works according to deterministic rules and its results are therefore reproducible, which is an advantage here.
  • Rules are to be understood here, for example, as to the diameter of the symmetrical areas 110A and HOB and how the mirroring is to be carried out and how the pattern 610 is composed of a plurality of patterns with different degrees of detail, e.g. B. so that it can be easily detected at short, medium and large distances. It is then sufficient to store only the initialization data (seeds) of the quasi-random number generator and, if applicable, the selection of the rules for the construction of pattern 610. By means of this formation rule, the reference pattern can be generated again and again and identically (and then deleted again) if required.
  • the two-step procedure can be represented, for example, as follows. In the first step, the symmetry centers are found and their signs determined.
  • the sign here means the case distinction between odd and even symmetry.
  • the sequence of signs of the pattern 610 can also be referred to as a code. This can be described in a compact manner and requires a maximum of 64 bits for a pattern 610 with, for example, 8 ⁇ 8 centers of symmetry.
  • all existing or candidate codes should be stored. From this set, the code is sought that matches the observation with as few contradictions as possible. This result is usually unambiguous. This search is still possible even if the camera z. B.
  • the code in this example with 8 ⁇ 8 centers of symmetry offers a very large number of up to 2 64 possibilities, while the number of patterns 610 produced will be much smaller, see above that there is a high level of redundancy.
  • the information such as parameters and selection of rules necessary to generate the reference image should also be stored. This is generated for the second step, e.g. B. as needed, i.e. only at the time when it is needed, and possibly only temporarily.
  • a transformation rule can be calculated that maps these coordinates into one another as well as possible, for example with a projective or affine mapping, which in the sense of the least squares optimization.
  • the two images can be transformed (warped) into a common coordinate system, e.g. B. in the coordinate system of the camera image or in the coordinate system of the reference image or in any third coordinate system.
  • the two images, which are already aligned with one another, are then compared more precisely, e.g. B. with optical flow methods.
  • the best corresponding pixel with surroundings of the second image is sought for each pixel of the first image, preferably taking into account its surroundings.
  • the relative displacement of corresponding positions can be expressed as displacement information, in particular as absolute coordinates or as a displacement vector.
  • Such a displacement vector can be determined with sub-pixel accuracy, the correspondence is then usually not on the pixel grid, but in between.
  • This information allows highly accurate analyzes of the entire area of the pattern 610 captured in the camera image, e.g. B. to analyze deformations or distortions of the pattern 610 or its carrier/representation medium 600 with elastic patterns or deviations of the image in the optical path in the case of rigid patterns.
  • a local occlusion of the pattern 610 can be inferred.
  • the cause of the masking can e.g. B. an object lying on the pattern 610, or a second pattern that partially obscures the first pattern.
  • Valuable information can also be obtained from this occlusion analysis, e.g. B. masks or outlines of the objects.
  • FIG. 9 shows schematic representations of predefined point-symmetrical regions 110A and HOB according to exemplary embodiments.
  • Each of the predefined point-symmetrical areas 110A and 110B corresponds to or is similar to the predefined point-symmetrical area from one of the figures described above.
  • a first partial view A shows a second point-symmetrical or even point-symmetrical area HOB including its center of symmetry 112 and a second partial view B shows a first point-symmetrical or odd point-symmetrical area 110A including its center of symmetry 112 .
  • the predefined point-symmetrical areas 110A and HOB here represent areas formed with gray levels.
  • point symmetry has the advantages over other forms of symmetry that it is retained when the pattern and/or the at least one predefined point-symmetrical area is rotated about the viewing axis, that when the pattern and/or the at least one predefined point-symmetrical area is tilted, i.e under oblique perspectives, is also preserved.
  • Rotation and tilting of the pattern / or at least one predefined point-symmetrical range do not pose a problem for the detection of odd and even point symmetries, because these are retained.
  • the method for providing or providing method already mentioned above is also suitable for oblique perspectives of the pattern or the at least one predefined point-symmetrical area.
  • straight point symmetry for example, a gray or color value is retained in point reflection.
  • suitable odd or even point-symmetrical patterns is correspondingly easy.
  • the half of the respective area 110A or HOB shown at the top in the illustration in FIG. 9 is defined arbitrarily or generated at random.
  • the half shown below in the representation of FIG. 9 then results from this, namely by point reflection with inversion of the gray values for odd point symmetry or without inversion of the gray values for even point symmetry.
  • rpu 1 - r (red)
  • gpu 1 - g (g stands for green )
  • bpu 1 - b (blue).
  • dark violet maps to light green and blue maps to orange.
  • Colored patterns can represent more information than monochrome patterns, which can be advantageous. precondition The use of this advantage is that the color information is also used in the conversion of the original image, ie the color image of a camera or another imaging sensor, into descriptors.
  • a specific embodiment of the pattern 610 and/or the at least one predefined point-symmetrical region 110 or 110A and/or HOB will also be discussed below with reference to the figures described above.
  • the point-symmetrical regions 110 or 110A and/or HOB can be circular, for example, and these can in turn usually be arranged in a regular grid in the pattern 610.
  • areas can remain unused between the circular areas 110 or 110A and/or HOB.
  • the areas 110 or 110A and/or HOB can be square and connect to one another without gaps, so that the entire area is used, or the symmetrical areas 110 or 110A and/or HOB can be regular hexagonal areas that also connect to each other without gaps, so that the entire area is used.
  • FIG. 10 shows a schematic representation of a pattern 610 of predefined point-symmetrical regions 110A and HOB according to an exemplary embodiment.
  • the predefined point-symmetrical areas 110A and HOB correspond to or are similar to the predefined point-symmetrical areas from FIG. 1, FIG. 6 and/or FIG. 8.
  • the areas 110A and HOB in FIG. 10 are each circular and are arranged on a hexagonal grid. In this case, a distance between grid points or centers of symmetry can correspond to the circle diameter. Thus, an unused area 1010 between the areas 110A and HOB in the pattern 610 can be minimized.
  • the pattern 610 and/or the at least one predefined point-symmetrical region 110 or 110A and/or HOB can be formed in a wide variety of ways. Only a few examples are given below. Random pattern or quasi-random pattern such as noise pattern. By including low spatial frequency components, these were formed in such a way that the camera still perceives them as sufficiently high-contrast noise patterns even at medium and large distances. So-called white noise, i. H. uncorrelated gray values would be unsuitable for this. Aesthetic, possibly regular patterns, such as floral patterns, tendril patterns (leaves, twigs, flowers), ornamental patterns, mosaics, mathematical patterns, traditional patterns, onion patterns, patterns of iconic symbols (hearts, etc.).
  • the material, surface and production of the pattern 610 and/or the at least one predefined point-symmetrical region 110 or 110A and/or 110B there are numerous possibilities.
  • the following list is not exhaustive: black and white, grayscale or Multi-color printing on a wide range of materials, printing on or behind glass or transparent film, printing on or behind frosted glass or semi-transparent film, relief in stone or glass or plastic or rubber, relief in fired materials such as earthenware, terracotta or ceramics, relief casting in metal or concrete or plaster, embossing in plastic or paper/cardboard, etching in glass or metal or ceramic surfaces, milling in wood, cardboard, metal, stone etc., burnt surface in wood or paper, photographic exposure of paper or other materials, transient or Rotting or water-soluble patterns for short-term applications in plant material, ash, sand, wood, paper, on fruit, food shells, etc., representation as a hologram, representation on a monitor or display, possibly also changing over time, representation on an LCD film or other display film,
  • the area should be perceived by the camera as odd and/or evenly symmetrical. It may therefore be necessary to include e.g. B. a later illumination, such as oblique incidence of light on a relief, and non-linearities in the optical image and other disturbances to be considered. It is not essential that the 3D shape or relief itself has the even and/or odd type of point symmetry, but that the image captured by the camera shows this symmetry. The incidence of light or the direction of illumination and the reflection of the light on the surface are also relevant and should be taken into account in the design.
  • the recording technique should be designed to be suitable for recording the pattern 610 and/or the at least one predefined point-symmetrical area 110 or 110A and/or HOB.
  • suitable lighting e.g. flashlight or stroboscopic light or bright LED light
  • pattern 610 and/or area(s) 110 or 110A and/or HOB can be illuminated from one side and observed from the other side.
  • disruptive reflections from the light source on the display medium can be effectively avoided.
  • the risk of contamination of sample 610 and/or area(s) 110 or 110A and/or HOB or camera or wear and tear of sample 610 and/or area(s) 110 or 110A and/or HOB can also be a Play role: So it can z. B.
  • pattern 610 and / or area (s) 110 or 110A and / or HOB and camera on the back because they are better there z.
  • B. be protected from dust or water or because pattern 610 and/or area(s) 110 or 110A and/or HOB is or are protected there from mechanical wear and tear.
  • the subsequently published DE 10 2020 202 160 discloses a method that is also used in exemplary embodiments in order to find symmetrical regions or patterns in an image reliably and with very little computing effort.
  • the original image i. H. a color image or grayscale image from a camera or another imaging sensor
  • the descriptor is another form of representation for the local image content that prepares it in a form that is easier to process.
  • the descriptor image can have the same resolution as the original image, such that there is approximately one descriptor per pixel of the original image. Other resolutions are also possible, alternatively or additionally.
  • a signature is formed from the respective descriptor, which is represented in a computer unit as a binary word, or from a number of adjacent descriptors, which signature represents the local environment of the pixel of the original image describes as characteristically as possible.
  • the signature can also be identical to the descriptor or a part of it.
  • the signature is used as an address to access a lookup table. If the signature consists of N bits, a look-up table of size 2N (ie: 2 to the power of N ) can be accessed. It is advantageous not to select a word length N of the signature that is too large, since the memory requirement for the table grows exponentially with N: for example 8 ⁇ N ⁇ 32.
  • the signature or the descriptor is constructed in such a way that signature symmetries with simple operations, e.g. B. bit-wise XOR (exclusive or) on a part of the bits can be determined.
  • SP bit-wise XOR (exclusive or) on a part of the bits.
  • s is a signature of length N bits and RP is a matched reflector (R) for point symmetry (P).
  • R matched reflector
  • P point symmetry
  • the character A stands for the bitwise XOR operation.
  • the signature SP stands for the point-symmetrical counterpart of the signature s. This relationship also applies in the opposite direction.
  • the reflector is automatically fixed (and constant). By applying it to any signature, it can be transformed into its symmetric counterpart.
  • a voting weight is cast there or as close as possible and collected in a voting matrix (voting map). In the voting matrix, the weighted voting weights accumulate at the locations of the sought-after centers of symmetry. These can thus be found, e.g. B. by searching the voting matrix for accumulation points.
  • this algorithm is extended to odd point symmetries. It is particularly advantageous that the odd and even symmetries can be determined simultaneously in just one common pass. This saves time because only one pass through the signature image is required instead of two, and latency. When only one pass (rather than two) is required, stream mode processing can provide the result of the symmetry search with much lower latency. Processing starts as soon as the first pixel data arrives from the camera and the processing steps are carried out in quick succession. This means that the signature is already calculated as soon as the necessary image data from the local environment of the current pixel are available. The search for symmetries is immediately carried out for the signature just formed.
  • the voting matrix (voting map) can be used jointly for both forms of symmetry, ie even point symmetry and odd point symmetry, with the two forms of symmetry or types of symmetry with different signs participating in the vote, e.g. B. Subtraction of the voting weight in case of odd point symmetry and addition of the voting weight in case of even point symmetry. This is explained in more detail below. Furthermore, energy can also be saved by saving memory.
  • the low-latency implementation option described above also means that only a small amount of intermediate data needs to be stored, in contrast to entire images. This Working with little memory is particularly important for cost-critical embedded systems and also leads to savings in energy consumption.
  • FIG. 11 shows a schematic representation for using a lookup table 1150 according to an embodiment.
  • the look-up table 1150 is usable by the determining means of the provisioning apparatus of FIG. 1 or a similar apparatus.
  • an exemplary embodiment of an algorithmic procedure when searching for point-symmetrical correspondences in FIG. 11 is a snapshot in connection with the device for providing from FIG. 1 or a similar device and/or the method for providing from FIG. 3 or a similar procedure shown.
  • FIG. 11 is also similar to FIG. 15 of the published DE 10 2020 202 160, with FIG. 11 additionally including an extension to include even and odd point symmetry.
  • the lookup table 1150 may also be referred to herein as an entry table.
  • a pixel grid 1100 is shown, in which a signature s with the exemplary value 2412 was generated for a currently viewed or processed pixel.
  • FIG. 11 shows a snapshot during the formation of a concatenation of pixels or pixel coordinates with an identical signature s.
  • a reference to the position of the last predecessor signature that had the same signature value can be stored per pixel in the pixel grid 1100 . This creates a concatenation of positions with an identical signature. The signature values themselves therefore do not need to be stored.
  • a corresponding entry position in the pixel grid 1100 is stored for each signature value in the lookup table 1150 or entry table with N table fields.
  • N corresponds to a number of possible signature values.
  • the stored value can also be "invalid".
  • the contents of the lookup table 1150 or entry table and the image of references (linking image) change dynamically.
  • the concatenations and signatures are not yet known at the time shown, and for a third image area 1103 in the upper part of the image, the concatenations, e.g. B. due to a limitation of a search area, no longer needed, wherein a concatenation memory for pixels in the third image area 1103 can be released again.
  • the index PG stands for point symmetry, straight line.
  • the index PU is also used, which stands for point symmetry, odd.
  • the look-up table 1150 comprises two elements: the entry pixel positions for the respective signature s together with the references thereto illustrated by curved arrows. Other possible contents of the lookup table 1150 are not shown for the sake of clarity.
  • a search area 1104 which can also have a different form than that shown here, e.g. B. rectangular or circular.
  • two point-symmetric correspondence candidates that lie within the search region 1104 are found.
  • the third correspondence which is the first element of the even point symmetry concatenation, is not of interest here because it is outside the search region 1104 and thus too far from the current pixel position. If the number of symmetry center candidates 1112 is not too large, a voting weight for the position of the respective symmetry center can be cast for each symmetry center candidate 1112 .
  • the symmetry center candidate 1112 is in the middle on the Connection axis between the position of the signature s and the respective straight point mirrored signature SPG. If there is more than one symmetry center candidate 1112, the voting weight can be reduced in each case, for example the reciprocal of the number of symmetry center candidates can be used as the respective voting weight. As a result, ambiguous symmetry center candidates are weighted less than clear symmetry center candidates.
  • the entry into the corresponding concatenation is found via the same lookup table 1150 .
  • the lookup table 1150 refers to the concatenation shown for odd point symmetry for the signature 3731.
  • the first two pixel positions along the concatenation again lead to the formation of symmetry center candidates 1112 because they are located in the search region 1104 and because the number of symmetry center candidates 1112 is not too large .
  • the last pixel position along the concatenation lies in the third image area 1103. This area is no longer required at all, since it can no longer come into the search area 1104, which is sliding line by line here.
  • the snaking along the link can be terminated.
  • the shimmying is also terminated when the end of the chain is reached.
  • the concatenation memory requirement is therefore low overall and essentially depends here only on one dimension of the search area 1104, here the height of the search area, and on one dimension of the signature image, here the width of the signature image.
  • a symmetry center candidate 1112 or candidate for a symmetry center does not always fall exactly on a pixel position, but there are three other possibilities. There are four options in total:
  • Point or symmetry center candidate 1112 falls on a pixel position.
  • Point or symmetry center candidate 1112 falls in the middle between two horizontally directly adjacent pixel positions.
  • Point or symmetry center candidate 1112 falls in the middle between two vertically directly adjacent pixel positions.
  • Point or symmetry center candidate 1112 falls in the middle between four directly adjacent pixel positions.
  • voting weight In the ambiguous cases 2. to 4., it is advantageous to distribute the voting weight to be cast evenly over the pixel positions involved.
  • the voting weights given are entered in a voting matrix and added up or accumulated therein.
  • voting weights are used at the same time.
  • the even symmetries are given a different sign, here positive, than the odd symmetries, here negative.
  • positive and negative voting weights balance each other out and thus cancel each other out in the voting matrix.
  • there is about a zero in the voting matrix In contrast, in odd symmetrical or even symmetrical areas, there are strong extremes in the voting matrix, specifically in in this exemplary embodiment, negative-valued minima in the case of odd point symmetries and positive-valued maxima in the case of even point symmetries.
  • the same resources are used for the odd and even point symmetries, i.e. lookup table 1150 or entry table, chaining diagram, matching matrix, which in particular saves memory requirements, and both forms of symmetry or types of symmetry are considered in a joint run, which saves time and cache saves.
  • FIG. 12 shows a schematic diagram 1200 for a voting matrix according to an embodiment.
  • the diagram 1200 relates to a matching matrix as a 3D plot for a camera image processed by the device for providing of FIG. 1 or a similar device, in which the pattern from the second partial representation of FIG. 6 was recorded by a camera.
  • FIG. 12 shows that these extremes are very clearly pronounced and can therefore be detected easily and unequivocally for the device for providing from FIG. 1 or a similar device and/or the method for providing from FIG. 3 or a similar method.
  • the information about the type of symmetry, ie odd or even, is contained in the sign.
  • a high-precision determination of the position of the centers of symmetry with sub-pixel accuracy is possible if the local surroundings of the respective extremum are also taken into account when evaluating the coordination matrix. Appropriate methods for this are known to those skilled in the art. If the patterns are properly constructed, odd and even point symmetries do not compete with each other. Then an image area has, if at all, either the odd or the even point symmetry form.
  • a separate treatment of odd and even point symmetry can be provided. It makes sense to split them up before making entries in the voting matrix: Instead of a common, signed voting matrix, two unsigned voting matrices are then provided, with the voting weights for negative symmetries being entered in the first and the voting weights for positive symmetries in the second voting matrix.
  • Patterns can also be constructed and taken into account by the detection algorithm which have odd and even point symmetry at the same time and whose center of symmetry coincides locally. While such a mixed symmetry form is very unusual, this unusualness ensures that confusion with random patterns occurring in the images is extremely unlikely.
  • the two matching matrices are then to be searched for maxima that are present at the same location in both matrices.
  • Another possible advantage of treating odd and even point symmetry separately is that it is easier to parallelize and, as a result, it can be executed more quickly. Because by using two voting matrices, access conflicts when entering the voting weights can be avoided, which saves waiting times.
  • Fig. 13 shows a schematic representation of patterns 610 arranged in the form of a cube, for example, according to an embodiment with regard to correct identification of a grid 1311.
  • the patterns 610 shown in Fig. 13 are, for example, patterns from Fig. 7 or Fig. 8, three of which are here arranged in a cube shape.
  • Detected or identified centers of symmetry 112A and 112B of the respective predefined point-symmetrical areas of the patterns 610 are shown for the patterns 610, with signs and values of the associated extrema in the voting matrix may be known.
  • First centers of symmetry 112A are assigned to predefined point-symmetrical areas with odd point symmetry and second centers of symmetry 112b are assigned to predefined point-symmetrical areas with even point symmetry.
  • a correct grid 1311 is drawn in for one of the patterns 610, on which the predefined point-symmetrical areas and thus the centers of symmetry 112A and 112B are aligned.
  • the correct grids are to be searched for the other two patterns 610 , incorrect solutions of the grid search being illustrated by first markings 1313 and correct solutions of the grid search being illustrated by second marking 1314 in FIG. 13 .
  • Finding the associated correct grids is an ambiguous task. After the odd/even coded symmetry centers 112A and 112B have been detected, the next step is often to group them and determine which pattern 610 this group belongs to, since it is not always known in advance which and how many patterns 610 are included in the picture. Part of this task can be finding the grid 1311 on which the symmetry centers 112 A and 112 B are arranged. Instead of a square grid 1311, other topologies for the arrangement of the centers of symmetry 112 A and 112 B are also possible, e.g. B. annular concentric arrangements, see e.g. B. the second partial representation in Fig. 6. As a representative, square grids 1311 are considered below.
  • the second markings 1314 lie correctly on the grid. This shows that a naive approach, e.g. B. searching for the nearest neighbors of the respective center of symmetry, may lead to an incorrect solution in the case of an oblique perspective. In practice, solutions with a very oblique perspective are ruled out because the centers of symmetry 112A and 112B can then no longer be found.
  • FIG. 14 shows a schematic representation of the pattern 610 shown in the first partial representation of FIG. 6 in an oblique perspective.
  • a first partial representation A the representation medium 600 with the pattern 610 made up of the predefined point-symmetrical regions 110A and HOB is shown in FIG. 14 .
  • a second partial illustration B in Fig. 14 shows the centers of symmetry 112A and 112B of the pattern 610 identified or detected by means of the device for providing from Fig. 1 or a similar device and/or the method for providing from Fig. 3 or a similar method shown.
  • the symmetry centers 112 A and 112 B have been detected and at least their positions are available.
  • FIG. 15 shows the pattern 610 from the first partial representation of FIG. 14 with an emphasis on a predefined point-symmetrical region 110B.
  • a predefined straight point-symmetrical area HOB is graphically emphasized here merely by way of example in order to illustrate a distortion of the pattern 610 or of the areas 110A and HOB as a result of the oblique perspective.
  • the point-symmetrical regions 110A and HOB which are predefined as circular here by way of example, are distorted into ellipses by the oblique perspective.
  • a reconstruction of the correct grid or topology of the pattern 610 is discussed below with particular reference to FIGS. 14 and 15 and general reference to the figures described above.
  • each circular area 110A and HOB from which the voices for the respective center of symmetry 112A and 112B originate, becomes an ellipse.
  • the shape and orientation of the respective ellipse can be deduced.
  • the direction and relationship of the major axes of the ellipse reveal how it can be stretched or straightened to convert it back into a circle.
  • this area 110B is circular or approximately circular, e.g. B. hexagonal. From an oblique perspective, this circle becomes an ellipse.
  • symmetrical pairs of points contribute to forming the extremum in the matching matrix that lies within this ellipse.
  • the index of the center of symmetry 112A, 112B, to which the symmetrical pair of points contributes is also stored or used. In this way, all contributions to the successful symmetry centers can be subsequently determined and (temporarily) stored or reused.
  • the beginning of the further processing step does not have to be the end of the first processing step, ie the formation of the voting matrix and Determination of the centers of symmetry, but it can be started beforehand and the already finished intermediate results, ie found centers of symmetry 112A, 112B, of the first processing step can be used.
  • all image positions that contributed to each center of symmetry 112A, 112B found can then be read. These positions lie essentially or apart from a few outliers within the ellipse, as shown in FIG. 15 by way of example for a center of symmetry 112B.
  • a major axis transformation can be formed over the set of all points contributing to a center of symmetry 112A, 112B in order to determine the orientation of the major axes and the two diameters of the ellipse. This is even possible without the contributing image positions needing to be temporarily stored: Instead, they can be charged immediately after they become known.
  • the elliptical envelope around the set of points can also be determined, with which the largest possible part of the set of points, excluding any outliers, is enclosed as closely as possible.
  • an index image equivalent to an index matrix
  • the index image serves the same purpose, which is to form the parameters of all ellipses, but it stores the information in a different way.
  • the index image ideally has the same size as the signature image and is set up to store indices, specifically the indices assigned to the centers of symmetry 112A, 112B found.
  • a special index value e.g. B. 0, is provided to indicate that there is no entry yet. If, when running through the further processing step, a symmetrical pair of points or pair of signatures is found that contributes to an i-th index, then the index i is entered at the two associated locations of the respective signatures.
  • index image is thus obtained at the end of the run, in which all the indices assigned to the centers of symmetry 112A, 112B occur multiple times, these forming elliptical areas: apart from a few outliers, each elliptical area then only contains entries a uniform index, as well as the index 0 at the unused positions.
  • the index image can then be easily evaluated to determine the parameters of each ellipse. Otherwise, it is not necessary to save the entire index picture. As soon as the data no longer changes in a section of the index picture, this section can already be evaluated and the memory can then be released again. This also leads to lower temporal latency, so that intermediate results can be provided earlier.
  • the two-dimensional arrangement of the detected centers of symmetry can then be corrected in such a way that they subsequently lie on the grid of the pattern 610, which is at least approximately square here only as an example.
  • FIG. 16 shows a schematic representation of the pattern 610 from FIG. 15 after a perspective rectification according to an embodiment.
  • FIG. 16 shows the pattern 610 from FIG. 15 after it has been stretched normal or perpendicular to the direction of the found ellipse or the highlighted elliptically distorted area HOB by the ratio of the two main axis lengths.
  • the correct grid 1311 can be found in a simple manner. The ellipse is thus rectified in comparison with FIG. 15 in such a way that the original circular shape of the region 110B is restored.
  • Fig. 16 is for illustrative purposes only. In practice, it is not necessary to warp the image. Since the information about the positions of the symmetry centers 112A and 112B is already available in a condensed form, it makes sense to continue working only with this data and to transform its coordinates, with the transformation rule being formed from the determined ellipse parameters in such a way that the ellipses become circles.
  • one global transformation per subsection may be sufficient to create the raster 1311 to determine.
  • a wide-angle lens e.g. fish-eye lens
  • local transformations can be used at least in some areas.
  • the transformation rule mentioned above can be applied globally and/or locally.
  • all projection centers are transformed using the same, common transformation rule. This is useful and sufficient in many cases.
  • the common transformation rule can be formed from the joint consideration of all ellipses. If the symmetry centers 112A and 112B lie spatially on several surfaces, the ellipses can be classified into groups according to their parameters. The ellipses belonging to a surface have very similar parameters - especially if the surface is flat.
  • a global transformation rule can then be determined and applied for each group. This procedure is appropriate for telephoto lenses.
  • the local transformation makes sense when the majority of the circular areas are imaged in differently shaped or differently oriented ellipses by the imaging of the camera. This is especially the case with wide-angle cameras or lenses with high distortion.
  • the symmetry center positions belonging to the same face are at least approximately on a common grid 1311.
  • the next task is to associate the symmetry centers 112A and 112B with the grid positions. This can e.g. B. be carried out iteratively in small steps. For example, for a center of symmetry 112A, 112B, up to four nearest neighbors are searched that have approximately the same distance, see also the markings from Fig. 13. From the neighbors you work your way to the other neighbors until all centers of symmetry 112 A and 112 A and 112 B, which belong to a pattern 610, are assigned to a common grid 1311 or can be excluded from it.
  • each Center of symmetry 112A, 112B is associated with a surface.
  • the patterns 610 can then be identified for the surfaces, preferably using the binary coding associated with the centers of symmetry 112A and 112B, which is contained in the sign of the extremum in each case.
  • pattern 17 shows a schematic representation of an embodiment of a pattern 1710 with hierarchical symmetry.
  • the pattern 1710 corresponds or resembles a pattern from the figures described above. More specifically, pattern 1710 has a two-level hierarchy of four predefined point-symmetrical regions 110A and HOB, by way of example only. According to the exemplary embodiment illustrated here, the pattern 1710 has two predefined odd point-symmetrical regions 110A and two predefined even point-symmetrical regions 110B, merely by way of example.
  • the pattern 1710 as a whole has an odd point-symmetrical structure. On a first hierarchical level are the even point-symmetrical areas HOB and the odd point-symmetrical areas 110A.
  • the overall arrangement of the odd point-symmetrical pattern 610B is on a second hierarchical level.
  • the center of symmetry 112 of the second hierarchical level is marked with the quartered circle.
  • FIG. 18 shows a schematic representation of an embodiment of a pattern 1810 with hierarchical symmetry.
  • the pattern 1810 in FIG. 18 is similar to the pattern from FIG. 17. More precisely, FIG. 18 shows a further example for a two-level hierarchy of predefined point-symmetric regions HOB.
  • the predefined point-symmetrical areas HOB are each point-symmetrical.
  • the second hierarchy level there is odd point symmetry at the level of pattern 1810, with center of symmetry 112 at the center of a six-point hexagon shown for illustrative purposes.
  • the odd symmetry manifests itself here in an inversion of the predefined point-symmetrical areas HOB, e.g. B.
  • a dark symbol on a light background is reflected in a light symbol on a dark background.
  • FIG. 19 shows a schematic representation of an embodiment of a pattern 610 with hierarchical symmetry.
  • the pattern 610 is constructed from the patterns 1710 and 1810 from FIGS. 17 and 18 or their inverted and/or point-mirrored form.
  • the pattern 610 has a three-level hierarchy of two patterns 1710 from FIG. 17 and two patterns 1810 from FIG. 18, by way of example only. Patterns 1710 and 1810 are odd and thus inverted mirrored at the center of symmetry 112 of pattern 610 at the center of a sixteenth hexagon shown for illustrative purposes.
  • pattern 1710 shown in the lower right of Figure 19 is an inverted form of pattern 1710 in the upper left.
  • This hierarchical principle can be continued at will, i.e. a fourth and fifth level can be constructed, and so on.
  • FIG. 17 and FIG. 18 each show an example of how a two-stage hierarchical pattern 1710 or 1810 can be constructed. Based on this, a three-level hierarchical pattern 610 is constructed in FIG. The example from FIG. 19 therefore contains three hierarchical levels.
  • the third hierarchical level extends over the entire surface of the pattern 610 (area framed by dashed lines) and includes the center of symmetry 112.
  • the second hierarchical level there are the four patterns 1710 and 1810 (each framed by a solid line), each with a center of symmetry in the middle (not explicitly mentioned here).
  • the first hierarchical level there are consequently 16 predefined point-symmetrical regions, each with a center of symmetry, according to the exemplary embodiment illustrated here.
  • the symmetry of the third hierarchical level is already visible from a greater distance.
  • the four symmetries of the second hierarchical level also become visible.
  • the symmetries of the first hierarchical level also become visible.
  • a visual control visual servoing
  • a robot z. B. towards the pattern 610 or in any other direction over a large range of distances It is generally not necessary to record coarser or higher hierarchical levels if finer or lower hierarchical levels can already be recorded. It is also not necessary to be able to capture all symmetries of the respective hierarchical level at the same time, for example if it is no longer possible to capture the entire pattern 610 in the camera image at a very short distance. It is obvious that even and odd symmetries can be freely chosen and combined. Additional information can also be contained in this definition, in particular one bit each for the choice between odd and even symmetry, with such additional information being able to be transmitted in this way to a detecting system.
  • Partially free means here that the remaining part of the symmetry forms on the respective hierarchical level inevitably result from the next higher hierarchical level.
  • the patterns "X" and "O" can be freely selected.
  • the second row is then inevitable, here with inversion, because a negative point symmetry is selected on the next hierarchical level.
  • FIG. 20 shows schematic representations of patterns 610 according to exemplary embodiments.
  • FIG. 20 shows a pattern 610 which is, by way of example, one of the patterns from FIG. 8 .
  • a pattern 610 is shown in FIG.
  • predefined point-symmetrical areas 110A and 110B which is made up of four predefined point-symmetrical areas 110A and 110B, for example, here, for example, a predefined odd point-symmetrical area 110A and three predefined even point-symmetrical areas HOB on a square grid.
  • a code matrix 2010 for explicit additional information is arranged in the pattern 610 here.
  • the implicit additional information from the first partial representation A is explicitly contained in the code matrix 2010 purely by way of example.
  • the predefined region 110A indicates odd point symmetry or marks the beginning line of the 8 • 8 matrix so that a readout order is clearly defined.
  • the pattern 610 may be useful or necessary to use the pattern 610 to transmit additional information to a recipient, for example to a computer, autonomous robot, etc.
  • the additional information can be more or less extensive. Some illustrative examples of additional information include stopping point, picking up charge, position at location 52°07'01.9"N 9°53'57.4"E facing southwest, turn left, speed limit 20 km/h, charging station for lawn mower, etc.
  • additional information include stopping point, picking up charge, position at location 52°07'01.9"N 9°53'57.4"E facing southwest, turn left, speed limit 20 km/h, charging station for lawn mower, etc.
  • Implicit overhead means that it is somehow included in the symmetric patterns 610 themselves, while explicit overhead is generally designed and captured separately from those patterns 610.
  • implicit additional information is illustrated using the first partial illustration A of FIG. 20: implicit additional information as binary code. Since the choice between odd and even point symmetry is made when constructing the pattern 610 for each symmetrical region 110A and HOB, additional binary information (corresponding to 1 bit) can thus be transmitted in each case. If you also allow patterns that are odd and even with point symmetry at the same time, the binary additional information becomes ternary additional information, i.e. three cases instead of two.
  • a further possibility for the transmission of additional information results from the use of non-uniform distances between the centers of symmetry of the areas 110A and 110B, ie implicit additional information based on the arrangement. Unlike the arrangement shown in FIG. 20, where the centers of symmetry lie on a square grid, they would then be arranged irregularly, with the additional information or part of it being encoded in this arrangement.
  • Example: If the respective center of symmetry is allowed to be shifted by a fixed distance to the left/right and up/down, there are 9 possible positions, with which Iog2(9) 3.17 bits of additional information per center of symmetry can be encoded. Diagonal perspectives between the imaging sensor and the pattern 610 do not pose a problem with any of the options mentioned. For example, some of the centers of symmetry (for example the outermost four in the corners) can be used to define a coordinate system or the regular basic grid. The deviations or binary/ternary codes used for coding then relate to this basic grid.
  • the symmetrical areas 110A and HOB for implicit additional information should not be too small so that sufficiently prominent extremes form in the matching matrix. If a large amount of additional information (in particular static, location-based) is to be transmitted to the recipient (e.g. a mobile robot), it can be advantageous to encode it explicitly.
  • the second partial illustration B of Fig. 20 shows how static, location-based additional information in particular can be explicitly transmitted to the recipient (e.g. a mobile robot): It can be agreed, for example, that in a coordinate system defined by the centers of symmetry at certain coordinates there is more information that z. B. are encoded in binary (black/white) or in further gradations (gray levels) or in colors.
  • the procedure then consists of two steps: In a first step, a field is found using odd and even symmetries, for example the code matrix 2010, in which further information is encoded. In a second step, the field and thus the information contained therein is read out.
  • Diagonal perspectives between the imaging sensor and the pattern 610 do not pose a problem, because the readout of the explicit additional information does not require that the base vectors of the coordinate system found are perpendicular to one another, nor that they are of the same length.
  • the image can also be corrected in such a way that then a Cartesian coordinate system is available.
  • a display can also be installed in the field with the pattern 610, which in addition to information that is static over time can also transmit information that changes over time and/or that transmits information about the change over time.
  • High-resolution additional information can also be contained in the pattern 610 itself, with implicit error detection.
  • additional information is contained in the sequence of the black-and-white or colored or greyscale pattern 610 itself. With the aforementioned classification, this additional information would be implicit and explicit at the same time. Because the pattern 610 or at least parts of it has symmetries, the additional information is automatically contained redundantly, typically twice in each case. This applies to both odd and even point symmetry. This fact can be used for error correction or error detection.
  • a pattern 610 is soiled, for example by bird droppings, then it is possible with a high degree of certainty to detect the error that has arisen as a result in the additional information, because the same error is most likely not present at the associated symmetrical position.
  • FIG. 21 shows a schematic representation of an application situation for the control device from FIG. 1 and/or the method for controlling from FIG 2165 on a platform 2170 of an offshore wind turbine 2175.
  • At least one camera 102 is arranged on the gangway 2160 and/or the supply ship 2165.
  • At least one predefined point-symmetrical area 110 and/or at least one pattern 610 from at least one predefined point-symmetrical area 110 is arranged on the offshore wind turbine 2175 in the area of the platform 2170 .
  • the at least one predefined point-symmetrical region 110 corresponds to or resembles one of the predefined point-symmetrical regions described above from one of the figures described above.
  • the pattern 610 corresponds to or resembles one of the above-described patterns from one of the previously described figures.
  • Fig. 21 shows a situation in which the supply ship 2165 with a movable gangway 2160, which can be moved by lifting, pivoting, pitching and/or telescoping, as illustrated by arrows, on the platform 2170 of the offshore wind power plant or the Offs h o re wind power plant 2175 should dock.
  • the described areas 110 and/or patterns 610 are attached to the platform 2170, while cameras 102 are installed on the gangway 2160 and on the supply ship 2165, which monitor these areas 110 or patterns 610.
  • the relative position and orientation between platform 2170 and gangway 2160 is continuously determined and this is adjusted in such a way that docking and undocking can be carried out reliably and gently and in meanwhile the position can be held.
  • a mechanical actuator system here the gangway 2160, is controlled on the basis of the detection of the symmetrical areas 110 or patterns 610 in images from cameras 102 or other imaging sensors, the actuation of the actuators leading to a relative movement between pattern 610 and camera 102 or sensor.
  • the supply ship 2165 is moved by waves and wind
  • the platform 2170 which can also be floating, is also moved by waves and wind, but with a different dynamic. Nevertheless, a safe transfer of service personnel between the supply ship 2165 and the platform 2170 should be achieved, in all weather conditions if possible.
  • the described areas 110/or patterns 610 are attached on the side of the wind power plant or off-shore wind power plant 2175, in the direct vicinity of the docking point or platform 2170 and above it.
  • the Sample 610 are passive, meaning they don't require an electrical connection or anything control.
  • the necessary light for the night operation comes from the support ship 2165.
  • the at least one camera 102 and associated image processing is located on the ship's side.
  • the camera 102 is mounted on the gangway 2160 and therefore moves with it.
  • it can also be mounted further away from the docking point, e.g. B. on the rear part of a telescopic mechanism, because z. B. the extension path of the telescope is known and can be taken into account when calculating relative movements.
  • the pattern or patterns 610 are used, for example, which can be designed in such a way that they are distinguishable from one another, as explained, for example, with reference to FIGS. 7 and 8 .
  • a triangulation can be made possible with a plurality of patterns 610, which makes the determination of the relative orientation easier or more precise.
  • patterns 610 with hierarchical symmetry are used, for example, as explained, for example, with reference to FIGS. These include both a few large-area point symmetries that can still be detected from a great distance and in fog, rain or snow, as well as many small-area point symmetries that are used for precise operation at short distances.
  • the relative motion between a camera and a sample has six degrees of freedom, namely three degrees of rotational freedom and three degrees of translational freedom.
  • the movement with these degrees of freedom leads to a change in the image content, namely the relative rotation - imagine that the camera rotates around itself, around its projection center - leads to a distance-independent displacement and rotation of the image content and leads to the relative Translation to a distance-dependent change in image content, in particular change in size of the objects shown and change in perspective.
  • the arrangement of the symmetries in the observed pattern 610 is known, for example from a reference pattern.
  • a pattern 610 as shown in FIG. 7 or FIG. 8 can be used.
  • the sequence of odd and even point symmetries of the reference pattern would also be known.
  • this sequence can also be determined from the observation and, if necessary, it can then be determined by a database comparison which reference pattern is present.
  • the six degrees of freedom sought can be determined from each observation of pattern 610, ie with each new camera image.
  • the centers of symmetry of the regions 110 of the pattern 110 are first determined. Then these are registered on the reference pattern, so that for each observed center of symmetry the assignment to the corresponding reference center of symmetry is known. It is not a problem if a significant proportion, e.g. B. significantly more than half, the symmetry centers can not be observed, z. B. because of occlusion, because the arrangement of the symmetries in the respective pattern 610 has a sufficient degree of redundancy, so that the registration and even the unique identification remain possible. If the assignment is known for a sufficient number of symmetry centers, the six degrees of freedom can be determined from this.
  • the six degrees of freedom determined between camera 102 and pattern 610 can be transformed into other references, for example for the reference between the docking point of the gangway 2160 and the docking point of the platform 2170, or between an optional second sensor and the pattern 610.
  • a stereo or multi-camera system can also be used, so that multiple images of the same pattern 610 can be recorded from different perspectives and evaluated together.
  • a stereo or multi-camera system offers the advantage that distances and Surface orientations of the pattern 610 can be determined via triangulation, which can make the desired determination of the six degrees of freedom more accurate, easier and/or faster.
  • the relative arrangement and, if necessary, the relative orientation between camera 102 or imaging sensor and pattern 610 can be used to control a mechanical actuator that changes this relative arrangement or orientation.
  • the camera 102 can be located on the part moved by the actuator and the pattern 610 on the non-moving part—or vice versa. Likewise, both sides can be moved, as is the case with the floating wind power plant and the supply ship.
  • This allows various actions to be carried out in a controlled manner, for example deliberately approaching a certain point, aligning to the intended orientation, and gentle docking, the reverse of this, i.e. undocking and directed and safe removal, parallel movement of a robot to a surface, movement relative to a or multiple patterns 610, along an intended trajectory with intended location-dependent speed and orientation, capturing an object provided with pattern 610 by a robot while the object is moving, etc.
  • Another application example is a visual docking of a contact point, e.g. B. an electrical contact to a mating contact or a pressure connection or tank connection for gases, liquids, etc. to a counterpart.
  • a contact point e.g. B. an electrical contact to a mating contact or a pressure connection or tank connection for gases, liquids, etc. to a counterpart.
  • a contact point e.g. B. an electrical contact to a mating contact or a pressure connection or tank connection for gases, liquids, etc.
  • a counterpart for example, for charging or refueling of ground, air, water vehicles, robots or drones. Since contactless charging for electric and electric hybrid vehicles has not yet been able to establish itself and may not become established due to the power loss, charging via electrical contacts remains interesting and important. That plugging in plugs manually also remains unpopular because it is cumbersome, time-consuming, dirty or cold hands, tripping hazards, risk of the cable being stolen, risk of electric shock if the cable is damaged.
  • Another application example is navigation in buildings and systems with the help of hidden symmetries using the at least one area 110 and/or pattern 610.
  • Visual orientation and navigation can be implemented here by exploiting or using hidden symmetries in the form of patterns 610. especially in buildings and systems, underground, but also in the open air. This enables machines, especially mobile robots, as well as people equipped with tools such as a smartphone with a camera, to locate themselves and navigate independently.
  • SLAM Simultaneous Localization And Mapping
  • beacons different types of tags, e.g. B. radio frequency, electromagnetic or acoustomagnetic, pulsed lights, as well as many types of passive markers, e.g. B. April Tag Markers, ArUco Markers, AR Tag Markers, QR Codes, etc. All of these markers are eye-catching. Some of them are also difficult to install, such as B. beacons to be embedded in the ground, or to maintain.
  • tags e.g. B. radio frequency, electromagnetic or acoustomagnetic, pulsed lights
  • passive markers e.g. B. April Tag Markers, ArUco Markers, AR Tag Markers, QR Codes, etc. All of these markers are eye-catching. Some of them are also difficult to install, such as B. beacons to be embedded in the ground, or to maintain.
  • Patterns 610 provide non-perceptibility, i. H. the patterns 610 are not perceived as markers. They are designed to be particularly difficult for humans to perceive, but particularly easy for a machine to perceive using the method of providing shown in FIG. In addition, they are passive, meaning they require no electrical energy, no networking and no maintenance. With the options already described above for the execution of the areas 110 and pattern 610 in terms of material and symmetrical pattern content, there are a variety of options for making the useful pattern 610 attractively beautiful or at least inconspicuous and to ensure that they blend into an environment insert as best as possible. These possibilities can be used, for example, by interior designers, decorators, planners of hospitals, offices, hotels, airports, train stations, etc.
  • Retrofitting for example, a multi-storey building with samples 610 in preparation for the use of mobile robots can also be carried out without such an intervention changing the appearance of the corridors and rooms or even impairing it.
  • existing elements of the wall or ceiling paneling can be modified or replaced, for example by elements of the same size and color, but with z. B. relief embedded, milled, embossed, drilled, punched or printed, lasered or etched patterns 610.
  • by replacing acoustic ceiling tiles where the hole pattern used is simply replaced by a hole pattern with symmetrical properties. From this, new services and business models and expertise in equipping rooms, buildings and systems with such patterns 610 can also be made possible.
  • FIG. 22 shows a schematic representation of various display media 600 with predefined point-symmetrical regions 110 according to exemplary embodiments.
  • the centers of symmetry 112 of the predefined point-symmetrical regions 110 are also drawn in.
  • At least one predefined point-symmetrical area 110 is generated on, on or in each display medium 600 .
  • the display media 600 are landmark elements.
  • useful or decorative objects for the garden are shown as examples of landmark elements.
  • Point symmetries are hidden in the surfaces of the landmark elements Humans do not perceive, but as landmarks, for example, support a robotic lawnmower in localization and navigation.
  • the display media 600 are therefore objects with hidden symmetries or predefined point-symmetrical areas 110 for the garden and house to support mobile robots.
  • Concrete examples of the display media 600 are planters, flower pots, vessels, supports, borders, stones, floor panels, wall panels, garden lights, water butts or decorative elements.
  • symmetrically designed objects in the garden and house can be advantageously used as display media 600 to support self-localization and navigation of mobile robots, these objects being unobtrusive in the sense that their function is not apparent.
  • any existing, usually non-mobile surveillance cameras can also be included, with support being able to take place in both directions between the robot and the surveillance camera.
  • the self-localization and navigation of autonomous lawn mowers as robots can be improved or supported according to exemplary embodiments.
  • a border wire and possibly a guide wire are used, which are manually laid in the turf and which can be susceptible to damage, e.g. B. when working on the ground.
  • a robotic lawnmower may orientate itself so strongly or frequently on the ground wire that this can leave unsightly marks in the lawn.
  • Alternative conventional solutions may also be unsatisfactory for a variety of reasons.
  • a GPS localization in combination with lawn area detection can be inaccurate, in particular the distinction between lawns and beds as well as adhering to the border to the neighbor can be unreliable.
  • conventional solutions with battery-operated radio beacons which are to be placed in several places in the beds, require maintenance and must not be moved or knocked over.
  • elements such as the landmark elements or display media 600 from FIG. B. as a planter, flower pot, vessel, support, border, stone, base plate, wall plate, garden light, rain barrel or as a decorative element.
  • elements such as the landmark elements or display media 600 from FIG. B. as a planter, flower pot, vessel, support, border, stone, base plate, wall plate, garden light, rain barrel or as a decorative element.
  • a wall design on the house or on a garden shed is also an option, as well as the design of railings, fences or privacy protection elements with point-symmetrical areas 110.
  • the landmark elements or display media 600 should be as stable or heavy as possible or anchored in the ground or on the building or on the fence so that accidental displacement is unlikely.
  • the robot which is preferably equipped with a camera or other imaging sensors, should have at least one landmark element in view if possible. It is better if he has two or more elements in view, then triangulation is also possible, so that the distance and the position of the robot relative to the landmark elements or display media 600 can be determined more precisely.
  • the robot can also have several sensors, e.g. B. two cameras or a camera and a laser scanner to always ensure a precise distance measurement by stereoscopy or time-of-flight measurement to the respective landmark element and possibly other points of the scene.
  • the areas 110 or patterns of the landmark elements or representation media 600 can be encoded, see also FIG. 8, or provided with additional information, see also FIG. 20, in order to make them easily distinguishable for the robot. If large areas or long stretches are to be covered with only a few landmark elements or display media 600, these should each be detectable over a large distance.
  • the hierarchical patterns presented with reference to FIGS. 17 to 19 can be used, the large-area point symmetries for detection from a great distance and small-area ones Have point symmetries for the precise determination of the pose between the robot and landmark element or display medium 600 at small distances.
  • Display media 600 for example a planter, a decorative stone and a self-adhesive decorative film for the rain barrel, and places them in different places in his garden.
  • the teach-in drive is used to show the robot the boundaries of the areas to be mowed and how to get from one section of the garden to the next.
  • the robot automatically recognizes obstacles, so they do not have to be taken into account during the teach-in drive.
  • the obligatory charging station is also provided with point-symmetrical areas 110 and always serves as a landmark element, for example. During the teach-in run, the robot detects the landmark elements or display media 600 that are visible from the respective location and by which it will later orient itself.
  • the robot can then drive autonomously through the garden and mow lanes. In doing so, it is based on the known landmark elements or display media 600 with the areas 110 or patterns. Temporarily missing or covered view of the landmark elements or The robot optionally bridges display media 600 using odometry, inertial navigation and/or GPS. If it turns out during the teach-in drive or during mowing operation that there are too few landmark elements or display media 600, the robot (e.g. via smartphone app) makes a recommendation as to how many elements should be added and where should be set up. If a landmark or a display medium 600 is covered over time by leaf growth, the robot gives a corresponding indication and requests that the covered view be cleared. If a landmark element or a display medium 600 was inadvertently moved or rotated significantly, the robot recognizes that the relative relationships between the landmark elements or display media 600 have changed and prompts the user for an update teach-in for the relevant part of the garden .
  • the method for detecting the areas 110 of the landmark elements or display media 600 also runs on the surveillance cameras.
  • the normally fixed positions of the landmark elements or display media 600 are recorded by the surveillance cameras.
  • the positions are saved. Now and then, e.g. B. once a minute, the positions are re-recorded and compared with the stored positions. If a landmark position was changed, e.g. B. accidentally, the surveillance camera system networked with the robot reports the change in position to the robot. An update teach-in can then possibly be omitted.
  • the surveillance camera system can also provide the information that nothing has changed and mowing operation can take place normally.
  • the surveillance cameras can also benefit from the presence of the arrangement of landmark elements or display media 600: the robot creates a 2- or 3-dimensional digital map of its surroundings while it is driving.
  • the landmark elements or display media 600 have fixed positions in this map.
  • the respective surveillance camera finds part of the landmark elements or display media 600 and can locate itself relatively therein using the map constructed by the robot, ie localize itself. This requires networking of robot and camera. If there is no network, the surveillance camera can still locate itself with respect to the landmark elements or display media 600 .
  • Networking can go even further: the map created by the robot is uploaded back to a server where the planning was previously carried out. Planning and actual status can be compared with each other.
  • the user receives a digital image of his garden, in which he can influence the control of the robot even more precisely.
  • camera images from the robot camera can also be used with this digital image, so that the user can also check the condition of his garden afterwards, e.g. B. about the seasons, in detail in a virtual reality view.
  • manufacturers can voluntarily receive data about all the gardens of the voluntarily participating users and use this information for a further development of their robotic lawnmowers and landmark elements or display media 600 .
  • the application and mode of operation illustrated here for the garden can also be transferred to the interior of a house, in particular for vacuum cleaning robots, floor cleaning robots, window cleaning robots, flying surveillance drones and non-mobile surveillance cameras.
  • Fig. 23 shows a camera image of a conveyor belt as a display medium 600 with an embodiment of a pattern 610 of predefined point-symmetrical areas and objects 2300 placed on the conveyor belt.
  • a conveyor belt is provided with a pattern 610 similar to or corresponding to one of the patterns described above.
  • the pattern 610 is made up of predefined point-symmetric regions with odd and even symmetry.
  • the centers of symmetry 112A and 112B of the predefined point-symmetrical regions are shown in FIG.
  • FIG. 23 shows a camera image with a snapshot of the conveyor belt in a view from above.
  • Objects 2300 are stored on the belt, for example in the form of various lamps with a GU10 base.
  • the drawn-in point symmetry centers 112A and 112B were found. Based on an encoding of the pattern 610 is the Absolute positions on the conveyor belt can be clearly determined in a belt coordinate system.
  • FIG. 24 shows the camera image of FIG. 23 after processing using the method of providing of FIG. 3.
  • the partial occlusion of the pattern 610 due to the partial occlusion of the pattern 610, detected outlines of the objects 2300 located on the conveyor belt are out of the camera image 23 shown.
  • the corresponding known reference pattern was compared pixel by pixel with the camera image. Wherever the camera image and reference pattern deviate from each other, there is occlusion. These areas are marked in FIG. 24 by means of brightening. Thus, the exact outlines of the objects 2300 and their position can be detected.
  • a use of the patterns 610 with included symmetries can be realized for a moving belt, in particular a conveyor belt, with the pattern 610 applied to the outside or inside of the belt and with at least one imaging sensor, e.g. a camera, particularly while the belt is in use and in motion.
  • a surface of a conveyor belt for industrial production is provided with a suitable pattern 610, then there are possible advantages for the observation and control of processes that are carried out at least in part by robots.
  • the centers of symmetry 112A and 112B create distinct locations on the conveyor belt, which remain unambiguous even under mechanical stretching of the belt or if the belt runs imprecisely (e.g. laterally offset) or if the belt vibrates. These distinguished locations can define a flexible coordinate system that is firmly attached to the band.
  • the absolute coordinates of each point of the belt visible in the camera image in the belt Coordinate system determined will.
  • This can be used, for example, to deposit an object 2300 at a well-defined position on the conveyor belt, which can be removed from there again at a different location without it being necessary to detect or recognize the object 2300 .
  • the depositing location which is equipped with a corresponding camera including evaluation, digitally provides the coordinate(s) where the object 2300 was deposited.
  • Further additional information can be supplied, e.g. B. what type of object it is, how the object 2300 is oriented on the belt, which side is down, where it can be grabbed, etc.
  • the next pick-up point which is also equipped with a camera including evaluation, are the digital transmitted data ready in time.
  • FIG. 23 illustrates the evaluated image of a camera that observes the conveyor belt on which objects 2300 are located from above. As can be seen, despite partial occlusion, a more than sufficient number of symmetry centers 112A and 112B are found to determine their respective location on the tape coordinate system.
  • the evaluation unit or determination device from FIG. 1 requires only very little information about the pattern 610 applied to the tape, namely at which coordinates the centers of symmetry 112A and 112B are located and their sign, i.e. whether it is an odd number in each case (negative sign) or even (positive sign) point symmetry.
  • the evaluation unit or determination device from Fig. 1 is additionally complete reference samples provided, e.g. B. in the form of an image file, also known as a reference image, in order to carry out comparisons.
  • the reference pattern can also be made available as a calculation rule, e.g. B.
  • the reference image (or a part of it) can be calculated if required and takes up little storage space when not in use.
  • the camera image e.g. B. pixel by pixel to compare with a corresponding section of the reference image.
  • the necessary scaling adjustment and rotation, so that the two images match in terms of resolution and alignment, is a prerequisite here.
  • This additional step of the image comparison is only made possible or considerably simplified because the position in the tape coordinate system has already been determined beforehand using the pattern 610 with coded point symmetries. Any remaining uncertainty regarding the position is very small. In other words, the two images to be compared are already registered very well with one another, apart from a small residual local uncertainty.
  • a high-precision evaluation can then be carried out based on the exact comparison of camera image and reference image, e.g. B. to determine the local distortion of the belt due to current loads or aging or poor belt tracking.
  • e.g. B. the exact comparison of camera image and reference image
  • With an empty and clean conveyor belt it should then be possible to determine an almost perfect match between the camera image or camera image section and the corresponding reference image section over the entire surface.
  • the correspondence between the camera image and the reference image is no longer given at these locations or pixels.
  • Masks of the objects 2300 on the conveyor belt can be generated from this information or the precise outlines of the objects 2300 can be derived. See Fig. 24. Further advantages are listed below in a non-exhaustive manner.
  • Additional sensors and associated processing steps can be saved, e.g. B. light barriers, laser scanners, time-of-flight sensors, ultrasonic sensors, rangefinders, mechanical switches and dedicated camera-based algorithms that are conventionally used for presence detection, localization, surveying, classification or position detection.
  • B. light barriers, laser scanners, time-of-flight sensors, ultrasonic sensors, rangefinders, mechanical switches and dedicated camera-based algorithms that are conventionally used for presence detection, localization, surveying, classification or position detection.
  • determining an absolute position in the belt coordinate system based on the found centers of symmetry 112 A and 112 B and determining the speed from the time derivative of the position
  • there is also the possibility of determining an expansion or compression of the belt in particular the stretching in the longitudinal direction. This can e.g. B. be caused by aging or overloading of the belt, by stiff rollers or other mechanical parts, by loads on the belt, by poorly synchronized drive units.
  • Determining the strain can help to detect unfavorable influences at an early stage. If the strip deviates laterally from its target position, this can also be detected in good time without the camera having to monitor the edge that may be covered. Such a lateral deviation could otherwise possibly have a negative effect, e.g. B. on the lifespan. Longitudinal or transverse vibrations of the strip can be detected. Longitudinal vibrations would make themselves felt as small periodic deviations in the determined longitudinal speed. They can be caused by defective or sluggish bearings and can lead to objects slipping on the conveyor belt.
  • Retrofitting through integration into existing systems is relatively easy. Only the tape needs to be replaced, with a pattern 610 tape. Existing cameras looking at the tape can continue to be used if necessary.
  • the software or embedded hardware for evaluating your images can be replaced or supplemented with the algorithm for detecting the centers of symmetry and their further processing or an exemplary embodiment of one of the methods mentioned above.
  • the band can be made of different materials or components, for example a rubber band or rubberized fabric band or plastic Link strap or metal link strap.
  • the pattern 610 can be applied to the top of the tape or to the bottom.
  • the upper side means the side that comes into contact with the transported objects 2300 or goods, while the lower side is more likely to come into contact with the transport equipment, transport rollers, and so on. Attaching pattern 610 to the bottom can
  • the pattern on the top can offer the advantage of enabling higher accuracy, also because the objects 2300 are placed on the top and are visible together with the pattern 610 in the same camera image.
  • an embodiment includes an "and/or" link between a first feature and a second feature, this should be read in such a way that the embodiment according to one embodiment includes both the first feature and the second feature and according to a further embodiment either only that having the first feature or only the second feature.

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Geometry (AREA)
  • Manipulator (AREA)
  • Image Analysis (AREA)

Abstract

The invention relates to a method for providing navigation data (135) for controlling a robot. The method has a step of reading image data (105), which is provided by a camera (102), from the camera (102), said image data (105) representing a camera image of at least one predefined point-symmetric region (110); a step of determining at least one symmetry center (112) of the at least one point-symmetric region (110) using the image data (105) and a determination instruction (128); a step of carrying out a comparison of the position of the symmetry center (112) in the camera image using a predefined position of a reference symmetry center in a reference image (115) in order to determine a positional deviation (131) between the symmetry center (112) and the reference symmetry center; and optionally a step of ascertaining displacement vectors (133) for at least a sub-quantity of pixels of the camera image relative to corresponding pixels of the reference image (115) using the positional deviation (131). The navigation data (135) is provided using the positional deviation (131) and/or displacement vectors (133).

Description

Beschreibung description
Titel title
Verfahren zum Bereitstellen von Navigationsdaten zum Steuern eines Roboters, Verfahren zum Steuern eines Roboters, Verfahren zum Herstellen zumindest eines vordefinierten punktsymmetrischen Bereichs und Vorrichtung Method for providing navigation data for controlling a robot, method for controlling a robot, method for producing at least one predefined point-symmetrical area and device
Stand der Technik State of the art
Die Erfindung geht von einer Vorrichtung oder einem Verfahren nach Gattung der unabhängigen Ansprüche aus. Gegenstand der vorliegenden Erfindung ist auch ein Computerprogramm. The invention is based on a device or a method according to the species of the independent claims. The subject matter of the present invention is also a computer program.
Auf dem Gebiet der visuellen Robotersteuerung (visual servoing) kann insbesondere eine effiziente und genaue Bestimmung einer Roboterpose bzw. einer Position und Ausrichtung eines Roboters anhand von Bilddaten von Bedeutung sein. In the field of visual robot control (visual servoing), an efficient and precise determination of a robot pose or a position and orientation of a robot using image data can be of particular importance.
Die nachveröffentlichte DE 10 2020 202 160 Al offenbart ein Verfahren zum Bestimmen einer Symmetrieeigenschaft in Bilddaten und ein Verfahren zum Steuern einer Funktion. The subsequently published DE 10 2020 202 160 A1 discloses a method for determining a symmetry property in image data and a method for controlling a function.
Offenbarung der Erfindung Disclosure of Invention
Vor diesem Hintergrund werden mit dem hier vorgestellten Ansatz ein Verfahren, weiterhin eine Vorrichtung, welche dieses Verfahren verwendet, sowie schließlich ein entsprechendes Computerprogramm gemäß den Hauptansprüchen vorgestellt. Durch die in den abhängigen Ansprüchen aufgeführten Maßnahmen sind vorteilhafte Weiterbildungen und Verbesserungen der im unabhängigen Anspruch angegebenen Vorrichtung möglich. Gemäß Ausführungsformen kann es insbesondere ausgenutzt werden, wenn Punkte oder Objekte in der Welt mit Hilfe von punktsymmetrischen Bereichen markiert sind oder werden, so dass ein System mit bildgebendem Sensor und einem geeigneten hier vorgestellten Verfahren diese punktsymmetrischen Bereiche zum Ausführen einer spezifischen technischen Funktion robust und örtlich hochpräzise detektieren und lokalisieren kann, optional ohne dass der Mensch bzw. ein Lebewesen solche Markierungen als störend wahrnehmen würde. Against this background, with the approach presented here, a method, furthermore a device which uses this method, and finally a corresponding computer program according to the main claims are presented. Advantageous developments and improvements of the device specified in the independent claim are possible as a result of the measures listed in the dependent claims. According to embodiments, it can be exploited in particular when points or objects in the world are or are marked using point-symmetrical areas, so that a system with an imaging sensor and a suitable method presented here can use these point-symmetrical areas to perform a specific technical function in a robust and local manner can detect and localize with high precision, optionally without humans or living beings perceiving such markings as disturbing.
Es kann beispielsweise vorkommen, dass ein symmetrischer Bereich nicht vollständig ins Kamerabild abgebildet wird, z. B. weil er von einem Objekt teilverdeckt sein kann oder weil er teilweise aus dem Bild herausragen kann oder weil das Muster beschnitten worden sein kann. Vorteilhafterweise kann eine Präzision einer Lokalisierung des Punktsymmetriezentrums dennoch beibehalten werden, denn die Teilverdeckung(en) verfälschen seine Lage nicht: Verbleibende punktsymmetrischen Korrespondenzpaare können trotzdem für das korrekte Symmetriezentrum stimmen. Durch eine Teilverdeckung kann lediglich eine Stärke eines Häufungspunkts in einer Abstimmungsmatrix oder dergleichen reduziert werden, die Position des Symmetriezentrums kann jedoch erhalten bleiben und dennoch präzise und einfach bestimmbar sein. Dies ist ein spezieller Vorteil einer Ausnutzung der Punktsymmetrie. It can happen, for example, that a symmetrical area is not completely displayed in the camera image, e.g. B. because it may be partially covered by an object, or because it may partially protrude from the image, or because the pattern may have been cropped. Advantageously, a precision of a localization of the point center of symmetry can nevertheless be maintained, because the partial occlusion(s) do not falsify its position: remaining point-symmetrical correspondence pairs can nevertheless vote for the correct center of symmetry. A partial occlusion can only reduce a strength of an accumulation point in a matching matrix or the like, but the position of the center of symmetry can be retained and still be precisely and easily determinable. This is a special advantage of exploiting point symmetry.
Weitere Vorteile beim Auffinden von auf Punktsymmetrie basierenden Bereichen oder Mustern können sich insbesondere daraus ergeben, dass die Punktsymmetrie invariant gegenüber Verdrehung zwischen punktsymmetrischem Bereich und Kamera bzw. Bildaufnahme und weitgehend invariant gegenüber einer Perspektive ist. Beispielsweise kann eine punktsymmetrische ebene Fläche invariant gegenüber einer affinen Abbildung sein. Eine Abbildung einer beliebig orientierten Ebene durch eine reale Kamera kann zumindest lokal stets sehr gut durch eine affine Abbildung angenähert werden. Betrachtet man beispielsweise einen kreisförmigen punktsymmetrischen Bereich unter schräger Perspektive, so wird aus der Kreisform eine elliptische Form, wobei die punktsymmetrische Eigenschaft und das Punktsymmetriezentrum erhalten bleiben. Somit braucht der zumindest eine punktsymmetrische Bereich nicht unbedingt aus frontaler Perspektive betrachtet zu werden - auch sehr schräge Perspektiven stellen keine Schwierigkeit dar und eine erzielbare Genauigkeit kann beibehalten werden. Eine solche Invarianz insbesondere gegenüber einer Verdrehung und gegenüber der Perspektive kann ermöglichen, dass auf Vorkehrungen verzichtet werden kann, die Kamera geeignet zum symmetrischen Bereich auszurichten oder umgekehrt. Vielmehr kann es bereits ausreichend sein, wenn der jeweilige punktsymmetrische Bereich im Kamerabild zumindest teilweise erfasst wird, damit er detektiert werden kann. Eine relative Positionsbeziehung bzw. Anordnung zwischen punktsymmetrischen Bereich und Kamera kann hierbei unerheblich oder beinahe unerheblich sein. Further advantages when finding areas or patterns based on point symmetry can result in particular from the fact that the point symmetry is invariant with respect to rotation between the point-symmetrical area and the camera or image recording and is largely invariant with respect to a perspective. For example, a point-symmetric planar surface can be invariant under an affine mapping. An imaging of an arbitrarily oriented plane by a real camera can always be approximated very well, at least locally, by an affine imaging. For example, if you look at a circular area with point symmetry from an oblique perspective, the circular shape becomes an elliptical shape, with the point symmetric property and the point symmetry center being retained. Thus, the at least one point-symmetrical area does not necessarily have to be viewed from a frontal perspective - also provide very oblique perspectives does not pose a difficulty and obtainable accuracy can be maintained. Such an invariance, in particular with respect to rotation and with respect to perspective, can make it possible to dispense with precautions for aligning the camera in a suitable manner with respect to the symmetrical area or vice versa. Rather, it may already be sufficient if the respective point-symmetrical area is at least partially recorded in the camera image so that it can be detected. A relative positional relationship or arrangement between the point-symmetrical area and the camera can be irrelevant or almost irrelevant.
Es wird ein Verfahren zum Bereitstellen von Navigationsdaten zum Steuern eines Roboters vorgestellt, wobei das Verfahren folgende Schritte aufweist: A method for providing navigation data for controlling a robot is presented, the method having the following steps:
Einlesen von mittels einer Kamera bereitgestellten Bilddaten von einer Schnittstelle zu der Kamera, wobei die Bilddaten ein Kamerabild von zumindest einem vordefinierten gerade und/oder ungerade punktsymmetrischen Bereich in einer Umgebung der Kamera repräsentieren; Reading in image data provided by a camera from an interface to the camera, the image data representing a camera image of at least one predefined even and/or odd point-symmetrical area in an area surrounding the camera;
Bestimmen zumindest eines Symmetriezentrums des zumindest einen gerade und/oder ungerade punktsymmetrischen Bereichs unter Verwendung der Bilddaten und einer Bestimmungsvorschrift; determining at least one center of symmetry of the at least one even and/or odd point-symmetrical area using the image data and a determination rule;
Durchführen eines Vergleichs einer Position des zumindest einen Symmetriezentrums in dem Kamerabild mit einer vordefinierten Position zumindest eines Referenz-Symmetriezentrums in einem Referenzbild relativ zu einem Bezugskoordinatensystem, um eine Positionsabweichung zwischen dem Symmetriezentrum und dem Referenz-Symmetriezentrum zu bestimmen; und/oder Comparing a position of the at least one center of symmetry in the camera image with a predefined position of at least one reference center of symmetry in a reference image relative to a reference coordinate system in order to determine a position deviation between the center of symmetry and the reference center of symmetry; and or
Ermitteln von Verschiebungsinformationen für zumindest eine Teilmenge von Pixeln des Kamerabildes relativ zu korrespondierenden Pixeln des Referenzbildes unter Verwendung der Positionsabweichung, wobei die Navigationsdaten unter Verwendung der Positionsabweichung und/oder der Verschiebungsinformationen bereitgestellt werden. Dieses Verfahren kann beispielsweise in Software oder Hardware oder in einer Mischform aus Software und Hardware beispielsweise in einem Steuergerät oder einer Vorrichtung implementiert sein. Es können im Schritt des Einlesens auch Bilddaten von einer Mehrzahl von Kameras eingelesen werden, wobei die Bilddaten eine Mehrzahl von Kamerabildern des zumindest einen Bereichs repräsentieren. Optional können dabei im Schritt des Durchführens eine Mehrzahl von Referenzbildern verwendet werden. Das Referenzbild kann auch durch Referenzdaten ersetzt sein, die zumindest teilweise den Informationen entsprechen bzw. gleichwertig sind, die aus einem Referenzbild gewonnen werden können. Das Arbeiten mit Referenzdaten kann vorteilhaft sein, insbesondere im Sinne eines geringeren Aufwands, wenn die aus einem Referenzbild extrahierbaren Informationen bereits in einer leichter verwertbaren Form in Gestalt der Referenzdaten vorliegen. Die Referenzdaten können das Referenzbild in einer verdichteten Form bzw. Darstellung repräsentieren, beispielsweise als Deskriptorbild, Signaturbild und/oder mit Auflistung aller Koordinaten und Typen von vorhandenen Symmetriezentren. Der zumindest eine vordefinierte punktsymmetrische Bereich kann durch Ausführen einer Variante eines nachstehend beschriebenen Verfahrens zum Herstellen hergestellt sein. Die Bestimmungsvorschrift kann einer Vorgehensweise ähneln oder entsprechen, die in der nachveröffentlichten DE 10 2020 202 160 der Anmelderin offenbart ist. Das Referenzbild kann den zumindest einen vordefinierten punktsymmetrischen Bereich repräsentieren. Der optionale Schritt des Ermittelns kann unter Verwendung des optischen Flusses, insbesondere des dichten optischen Flusses durchgeführt werden. Das Steuern des Roboters kann ein Steuern oder Regeln einer Pose, Lage, Position, Ausrichtung oder dergleichen des Roboters relativ zu einem mit dem zumindest einen vordefinierten punktsymmetrischen Bereich markierten Bezugspunkt oder Bezugsobjekt repräsentieren. Zum Steuern des Roboters kann zumindest ein Aktor des Roboters unter Verwendung des Steuersignals angesteuert werden. Die Verschiebungsinformationen können Verschiebungsvektoren oder absolute Koordinaten repräsentieren. Determining displacement information for at least a subset of pixels of the camera image relative to corresponding pixels of the reference image using the positional deviation, the navigation data being provided using the positional deviation and/or the displacement information. This method can be implemented, for example, in software or hardware or in a mixed form of software and hardware, for example in a control unit or a device. In the reading step, image data from a plurality of cameras can also be read in, with the image data representing a plurality of camera images of the at least one area. Optionally, a plurality of reference images can be used in the implementation step. The reference image can also be replaced by reference data that at least partially corresponds to or is equivalent to the information that can be obtained from a reference image. Working with reference data can be advantageous, particularly in terms of reducing the effort if the information that can be extracted from a reference image is already available in a form that can be used more easily in the form of the reference data. The reference data can represent the reference image in a condensed form or representation, for example as a descriptor image, signature image and/or with a listing of all coordinates and types of existing centers of symmetry. The at least one predefined point-symmetrical region can be manufactured by performing a variant of a manufacturing method described below. The determination specification can be similar to or correspond to a procedure that is disclosed in the applicant's subsequently published DE 10 2020 202 160. The reference image can represent the at least one predefined point-symmetrical area. The optional step of determining can be performed using the optical flow, in particular the dense optical flow. Controlling the robot can represent controlling or regulating a pose, location, position, orientation or the like of the robot relative to a reference point or reference object marked with the at least one predefined point-symmetrical area. At least one actuator of the robot can be controlled using the control signal to control the robot. The displacement information can represent displacement vectors or absolute coordinates.
Gemäß einer Ausführungsform kann die im Schritt des Bestimmens verwendete Bestimmungsvorschrift ausgebildet sein, um zu bewirken, dass eine Signatur für eine Mehrzahl von Pixeln zumindest eines Ausschnitts des Kamerabilds erzeugt wird, um eine Mehrzahl von Signaturen zu erhalten. Hierbei kann jede der Signaturen unter Verwendung eines Deskriptors mit einer Mehrzahl von unterschiedlichen Filtern erzeugt werden. Jedes Filter kann zumindest eine Symmetrieart aufweisen. Jede der Signaturen kann für jedes Filter des Deskriptors ein Vorzeichen aufweisen. Die Bestimmungsvorschrift kann auch ausgebildet sein, um zu bewirken, dass für die Signatur zumindest eine Spiegelsignatur für zumindest eine Symmetrieart der Filter ermittelt wird. Die Bestimmungsvorschrift kann ferner ausgebildet sein, um zu bewirken, dass ein die Signatur aufweisendes Pixel auf ein Vorliegen zumindest eines weiteren Pixels mit einer der zumindest einen Spiegelsignatur entsprechenden Signatur in einem Suchbereich in einer Umgebung um das Pixel überprüft wird, um bei Vorliegen zumindest eines weiteren Pixels Pixelkoordinaten zumindest eines symmetrischen Signaturpaars aus dem Pixel und einem weiteren Pixel zu ermitteln. Zudem kann die Bestimmungsvorschrift ausgebildet sein, um zu bewirken, dass die Pixelkoordinaten des zumindest einen symmetrischen Signaturpaars ausgewertet werden, um das zumindest eine Symmetriezentrum zu identifizieren. Der Deskriptor kann einen Bildinhalt in einer lokalen Umgebung um ein Pixel oder Referenzpixel in einer kompakten Form beschreiben. Eine Signatur kann einen Wert des Deskriptors für ein Pixel beschreiben, beispielsweise in einer binären Darstellung. Somit kann die zumindest eine Spiegelsignatur unter Verwendung mehrerer berechneter Signaturbilder, z.B. eines mit normalen Filtern, eines mit gerade punktgespiegelten Filtern, und eines mit ungerade punktgespiegelten Filtern, ermittelt werden. Zusätzlich oder alternativ kann zumindest ein Reflektor auf die Vorzeichen einer der Signaturen angewendet werden, um die zumindest eine Spiegelsignatur zu ermitteln. Hierbei kann jeder Reflektor für eine Symmetrieart spezifische und von den Filtern des Deskriptors abhängige Vorschriften zur Modifikation der Vorzeichen aufweisen. Dabei kann der Suchbereich von zumindest einem der angewendeten Reflektoren abhängig sein. Eine solche Ausführungsform bietet den Vorteil, dass eine effiziente und exakte Detektion einer Symmetrieeigenschaft in Bilddaten ermöglicht werden kann. Die Detektion von Symmetrien in Bildern kann hierbei mit minimalem Aufwand erzielt werden. According to one specific embodiment, the determination rule used in the determination step can be designed to cause a signature to be generated for a plurality of pixels of at least one section of the camera image is used to obtain a plurality of signatures. Here, each of the signatures can be generated using a descriptor with a plurality of different filters. Each filter can have at least one type of symmetry. Each of the signatures can have a sign for each filter of the descriptor. The determination rule can also be designed to ensure that at least one mirror signature for at least one type of symmetry of the filter is determined for the signature. The determination rule can also be designed to cause a pixel having the signature to be checked for the presence of at least one other pixel with a signature that corresponds to the at least one mirror signature in a search area in an area surrounding the pixel, in order to determine the presence of at least one other Pixels to determine pixel coordinates of at least one symmetrical pair of signatures from the pixel and another pixel. In addition, the determination rule can be designed to cause the pixel coordinates of the at least one symmetrical signature pair to be evaluated in order to identify the at least one center of symmetry. The descriptor can describe an image content in a local neighborhood around a pixel or reference pixel in a compact form. A signature can describe a value of the descriptor for a pixel, for example in a binary representation. The at least one mirror signature can thus be determined using a plurality of calculated signature images, eg one with normal filters, one with even point-mirrored filters, and one with odd point-mirrored filters. Additionally or alternatively, at least one reflector can be applied to the signs of one of the signatures in order to determine the at least one mirror signature. In this case, each reflector for a type of symmetry can have specific rules for modifying the signs that are dependent on the filters of the descriptor. The search area can be dependent on at least one of the reflectors used. Such an embodiment offers the advantage that an efficient and precise detection of a symmetry property in image data can be made possible. The detection of symmetries in images can be achieved with minimal effort.
Dabei kann im Schritt des Bestimmens für jedes bereits bestimmte Symmetriezentrum unter Verwendung der Pixelkoordinaten jedes symmetrischen Signaturpaars, das zum korrekten Identifizieren des Symmetriezentrums beigetragen hat, eine Transformationsvorschrift zum Transformieren von Pixelkoordinaten des Symmetriezentrums und/oder des zumindest einen vordefinierten gerade und/oder ungerade punktsymmetrischen Bereichs bestimmt werden. Die Transformationsvorschrift kann auf die Pixelkoordinaten des Symmetriezentrums und/oder des zumindest einen vordefinierten gerade und/oder ungerade punktsymmetrischen Bereichs angewendet werden, um eine verzerrte Perspektive des Kamerabilds zu entzerren. Eine solche Ausführungsform bietet den Vorteil, dass eine zuverlässige und genaue Rekonstruktion des korrekten Rasters bzw. der korrekten Topologie mehrerer punktsymmetrischer Bereiche erreicht werden kann. In this case, in the step of determining for each already determined center of symmetry using the pixel coordinates of each symmetrical Signature pair that has contributed to the correct identification of the center of symmetry, a transformation rule for transforming pixel coordinates of the center of symmetry and / or the at least one predefined even and / or odd point-symmetrical area are determined. The transformation rule can be applied to the pixel coordinates of the center of symmetry and/or the at least one predefined even and/or odd point-symmetrical area in order to correct a distorted perspective of the camera image. Such an embodiment offers the advantage that a reliable and precise reconstruction of the correct grid or the correct topology of a number of point-symmetrical areas can be achieved.
Auch kann im Schritt des Bestimmens eine Symmetrieart des zumindest einen Symmetriezentrums bestimmt werden. Die Symmetrieart kann eine gerade Punktsymmetrie und zusätzlich oder alternativ eine ungerade Punktsymmetrie repräsentieren. Zusätzlich oder alternativ kann hierbei im Schritt des Durchführens ein Vergleich der Symmetrieart des zumindest einen Symmetriezentrums in dem Kamerabild mit einer vordefinierten Symmetrieart zumindest eines Referenz-Symmetriezentrums in einem Referenzbild durchgeführt werden, um eine Übereinstimmung zwischen dem zumindest einen Symmetriezentrum und dem zumindest einen Referenz-Symmetriezentrum zu prüfen. Ungerade Punktsymmetrie kann durch eine Punktspiegelung mit Invertierung von Grauwerten bzw. Farbwerten erzeugt sein. Durch eine Verwendung und Identifikation der beiden unterschiedlichen Punktsymmetrien kann ein Informationsgehalt punktsymmetrischer Bereiche und Muster erhöht werden. A type of symmetry of the at least one center of symmetry can also be determined in the determination step. The type of symmetry can represent an even point symmetry and additionally or alternatively an odd point symmetry. Additionally or alternatively, in the performing step, the type of symmetry of the at least one center of symmetry in the camera image can be compared with a predefined type of symmetry of at least one reference center of symmetry in a reference image in order to determine a match between the at least one center of symmetry and the at least one reference center of symmetry to consider. Odd point symmetry can be generated by point reflection with inversion of gray values or color values. By using and identifying the two different point symmetries, the information content of point-symmetrical areas and patterns can be increased.
Die im Schritt des Einlesens eingelesenen Bilddaten können hierbei ein Kamerabild von zumindest einem Muster aus einer Mehrzahl von vordefinierten gerade und/oder ungerade punktsymmetrischen Bereichen repräsentieren. Dabei kann im Schritt des Bestimmens eine geometrische Anordnung von Symmetriezentren des zumindest einen Musters bestimmt werden, eine geometrische Abfolge von Symmetriearten der Symmetriezentren bestimmt werden und zusätzlich oder alternativ unter Verwendung der Abfolge das Muster aus mehreren vordefinierten Mustern bestimmt werden. Die Anordnung und/oder die Abfolge kann oder können einen Identifikationscode des Musters repräsentieren. Eine solche Ausführungsform bietet den Vorteil, dass eine Sicherheit der Identifikation von Symmetriezentren erhöht werden kann und durch eine Erkennung eines spezifischen Musters weitere Informationen erhalten werden können. Auch kann eine zuverlässige Identifikation von Symmetriezentren für unterschiedliche Entfernungen zwischen Kamera und Muster erreicht werden. The image data read in in the reading step can represent a camera image of at least one pattern from a plurality of predefined even and/or odd point-symmetrical regions. In the step of determining, a geometric arrangement of symmetry centers of the at least one pattern can be determined, a geometric sequence of symmetry types of the symmetry centers can be determined and additionally or alternatively the pattern can be determined from a plurality of predefined patterns using the sequence. The arrangement and/or the sequence may represent an identification code of the pattern. Such an embodiment offers the advantage that the reliability of the identification of centers of symmetry can be increased and further information can be obtained by recognizing a specific pattern. Reliable identification of centers of symmetry for different distances between camera and sample can also be achieved.
Hierbei kann im Schritt des Bestimmens unter Verwendung der Anordnung der Symmetriezentren des zumindest einen Musters und zusätzlich oder alternativ der Abfolge von Symmetriearten der Symmetriezentren eine implizite Zusatzinformation des zumindest einen Musters oder eine Auslesevorschrift zum Auslesen einer expliziten Zusatzinformation in dem Kamerabild bestimmt werden. Die Anordnung und zusätzlich oder alternativ die Abfolge kann oder können die Zusatzinformation in codierter Form repräsentieren. Die Zusatzinformation kann auf das Steuern des Roboters bezogen sein. Eine solche Ausführungsform bietet den Vorteil, dass durch die Topologie des zumindest einen Musters zusätzliche Informationen kommuniziert werden können. In this case, in the step of determining, using the arrangement of the centers of symmetry of the at least one pattern and additionally or alternatively the sequence of types of symmetry of the centers of symmetry, implicit additional information of the at least one pattern or a reading rule for reading out explicit additional information in the camera image can be determined. The arrangement and additionally or alternatively the sequence can represent the additional information in encoded form. The additional information can be related to controlling the robot. Such an embodiment offers the advantage that additional information can be communicated through the topology of the at least one pattern.
Auch kann dabei im Schritt des Durchführens abhängig von der bestimmten Anordnung, der bestimmten Abfolge und zusätzlich oder alternativ des bestimmten Musters das Referenzbild aus mehreren gespeicherten Referenzbildern ausgewählt werden oder unter Verwendung einer gespeicherten Erzeugungsvorschrift erzeugt werden. Auf diese Weise kann das korrekte Referenzbild zuverlässig identifiziert werden. Optional kann bei einer Verknüpfung zwischen identifizierte Muster und einer Erzeugungsvorschrift auch ein Speicherbedarf für Referenzbilder minimiert werden, da lediglich Erzeugungsvorschriften gespeichert zu sein brauchen. Depending on the specific arrangement, the specific sequence and additionally or alternatively the specific pattern, the reference image can also be selected from a plurality of stored reference images or generated using a stored generation rule in the step of performing. In this way, the correct reference image can be reliably identified. Optionally, when there is a link between identified patterns and a generation specification, a storage requirement for reference images can also be minimized since only generation specifications need to be stored.
Ferner kann oder können dabei der Schritt des Bestimmens und zusätzlich oder alternativ der Schritt des Durchführens unabhängig von der Symmetrieart der Symmetriezentren für alle Symmetriezentren gemeinsam ausgeführt werden oder abhängig von der Symmetrieart der Symmetriezentren für die Symmetriezentren derselben Symmetrieart gesondert ausgeführt werden. Somit kann durch gemeinsame Ausführung ein geringer Speicher- und Zeitbedarf für eine genaue und sichere Identifikation der Symmetriezentren erreicht werden. Optional können insbesondere Verwechslungen mit zufällig in Bildern vorkommenden Mustern durch gesonderte Ausführung minimiert werden. Furthermore, the determining step and additionally or alternatively the performing step can be carried out jointly for all symmetry centers independently of the symmetry type of the symmetry centers or separately for the symmetry centers of the same symmetry type depending on the symmetry type of the symmetry centers. Thus, by joint execution, a low memory and time requirement for an exact and reliable identification of the symmetry centers can be achieved. Optionally, in particular, confusion with patterns that occur randomly in images can be minimized by separate execution.
Es wird auch ein Verfahren zum Steuern eines Roboters vorgestellt, wobei das Verfahren folgende Schritte aufweist: A method for controlling a robot is also presented, the method having the following steps:
Auswerten von gemäß einer Ausführungsform des vorstehend genannten Verfahrens bereitgestellten Navigationsdaten, um ein von den Navigationsdaten abhängiges Steuersignal zu erzeugen; und evaluating navigation data provided according to an embodiment of the above method in order to generate a control signal dependent on the navigation data; and
Ausgeben des Steuersignals an eine Schnittstelle zu dem Roboter, um den Roboter zu steuern. outputting the control signal to an interface to the robot to control the robot.
Dieses Verfahren kann beispielsweise in Software oder Hardware oder in einer Mischform aus Software und Hardware beispielsweise in einem Steuergerät oder einer Vorrichtung implementiert sein. Das Verfahren zum Steuern kann dabei in Verbindung mit einer Ausführungsform des vorstehend genannten Verfahrens zum Bereitstellen vorteilhaft ausgeführt werden. This method can be implemented, for example, in software or hardware or in a mixed form of software and hardware, for example in a control unit or a device. In this case, the method for controlling can advantageously be carried out in connection with an embodiment of the above-mentioned method for providing.
Es wird ferner ein Verfahren zum Herstellen zumindest eines vordefinierten gerade und/oder ungerade punktsymmetrischen Bereichs zur Verwendung durch eine Ausführungsform eines vorstehend genannten Verfahrens vorgestellt, wobei das Verfahren folgende Schritte aufweist: A method for producing at least one predefined even and/or odd point-symmetrical region for use by an embodiment of a method mentioned above is also presented, the method having the following steps:
Generieren von Entwurfsdaten, die eine grafische Darstellung des zumindest einen vordefinierten gerade und/oder ungerade punktsymmetrischen Bereichs repräsentieren; und generating design data representing a graphical representation of the at least one predefined even and/or odd point symmetric region; and
Erzeugen des zumindest einen vordefinierten gerade und/oder ungerade punktsymmetrischen Bereichs unter Verwendung der Entwurfsdaten auf, an oder in einem Darstellungsmedium, um den zumindest einen vordefinierten gerade und/oder ungerade punktsymmetrischen Bereich herzustellen. Dieses Verfahren kann beispielsweise in Software oder Hardware oder in einer Mischform aus Software und Hardware beispielsweise in einem Steuergerät oder einer Vorrichtung implementiert sein. Durch Ausführen des Verfahrens zum Herstellen kann zumindest ein vordefinierter gerade und/oder ungerade punktsymmetrischer Bereich hergestellt werden, der im Rahmen einer Ausführungsform eines vorstehend genannten Verfahrens verwendet werden kann. Generating the at least one predefined even and/or odd point-symmetrical region using the design data on, on or in a display medium to produce the at least one predefined even and/or odd point-symmetrical region. This method can be implemented, for example, in software or hardware or in a mixed form of software and hardware, for example in a control unit or a device. By performing the manufacturing method, at least one predefined even and/or odd point-symmetrical region can be manufactured, which can be used within the scope of an embodiment of an above-mentioned method.
Gemäß einer Ausführungsform können im Schritt des Generierens Entwurfsdaten generiert werden, die eine grafische Darstellung des zumindest einen vordefinierten gerade und/oder ungerade punktsymmetrischen Bereichs als ein Kreis, eine Ellipse, ein Quadrat, ein Rechteck, ein Fünfeck, ein Sechseck, ein Polygon oder ein Kreisring repräsentieren. Hierbei kann der zumindest eine vordefinierte gerade und/oder ungerade punktsymmetrische Bereich ein regelmäßiges oder quasi-zufälliges Inhaltsmuster aufweisen. Zusätzlich oder alternativ kann eine erste Hälfte einer Fläche des zumindest einen vordefinierten gerade und/oder ungerade punktsymmetrischen Bereichs beliebig vorgegeben werden und kann eine zweite Hälfte der Fläche durch Punktspiegelung und optional zusätzlich Invertierung von Grauwerten und zusätzlich oder alternativ Farbwerten konstruiert werden. Zusätzlich oder alternativ kann im Schritt des Erzeugens der zumindest eine vordefinierte gerade und/oder ungerade punktsymmetrische Bereich durch einen additiven Fertigungsprozess, Trennen, Beschichten, Umformen, Urformen oder optisches Anzeigen erzeugt werden. Zusätzlich oder alternativ kann das Darstellungsmedium Glas, Stein, Keramik, Kunststoff, Gummi, Metall, Beton, Gips, Papier, Pappe, Lebensmittel oder eine optische Anzeigeeinrichtung aufweisen. Somit kann der zumindest eine vordefinierte gerade und/oder ungerade punktsymmetrische Bereich je nach konkretem Einsatz bzw. je nach konkreter Anwendung und den dort herrschenden Randbedingungen auf genau geeignete Weise hergestellt werden. According to one embodiment, design data can be generated in the generation step, which is a graphic representation of the at least one predefined even and/or odd point-symmetrical area as a circle, an ellipse, a square, a rectangle, a pentagon, a hexagon, a polygon or a represent annulus. In this case, the at least one predefined even and/or odd point-symmetrical area can have a regular or quasi-random content pattern. Additionally or alternatively, a first half of an area of the at least one predefined even and/or odd point-symmetrical area can be specified arbitrarily and a second half of the area can be constructed by point reflection and optionally additional inversion of gray values and additional or alternative color values. Additionally or alternatively, in the step of generating, the at least one predefined even and/or odd point-symmetrical area can be generated by an additive manufacturing process, separating, coating, forming, primary forming or optical display. Additionally or alternatively, the display medium may include glass, stone, ceramic, plastic, rubber, metal, concrete, plaster, paper, cardboard, food, or a visual display device. The at least one predefined even and/or odd point-symmetrical area can thus be produced in a precisely suitable manner depending on the specific use or depending on the specific application and the boundary conditions prevailing there.
Auch können im Schritt des Generierens Entwurfsdaten generiert werden, die eine grafische Darstellung zumindest eines Musters aus einer Mehrzahl von vordefinierten gerade und/oder ungerade punktsymmetrischen Bereichen repräsentieren. Hierbei kann zumindest eine Teilmenge der gerade und/oder ungerade punktsymmetrischen Bereiche an einem regelmäßigen oder unregelmäßigen Raster ausgerichtet sein, direkt aneinander angrenzen und zusätzlich oder alternativ teilweise von mindestens einem benachbarten gerade und/oder ungerade punktsymmetrischen Bereich durch einen Zwischenraum getrennt sein, hinsichtlich ihrer Abmessungen und/oder ihrer Inhaltsmuster identisch zueinander oder unterschiedlich voneinander sein und zusätzlich oder alternativ in einer gemeinsamen Ebene oder in unterschiedlichen Ebenen angeordnet sein. Zusätzlich oder alternativ können im Schritt des Generierens Entwurfsdaten generiert werden, die eine grafische Darstellung zumindest eines Musters mit hierarchischer Symmetrie repräsentieren. Auf diese Weise können unterschiedliche Muster mit spezifischem Informationsgehalt und zusätzlich oder alternativ Muster mit hierarchischen Symmetrien für unterschiedliche Entfernungen zum Muster hergestellt werden. Design data can also be generated in the generation step, which represent a graphical representation of at least one pattern from a plurality of predefined even and/or odd point-symmetrical regions. Here, at least a subset of even and / or odd point-symmetrical areas on a regular or irregular grid, directly adjacent to each other and additionally or alternatively partially separated from at least one adjacent even and/or odd point-symmetrical region by a gap, be identical to or different from each other in terms of their dimensions and/or their content patterns and additionally or alternatively in a be arranged in the same plane or in different planes. Additionally or alternatively, in the generation step, design data can be generated that represent a graphical representation of at least one pattern with hierarchical symmetry. In this way, different patterns with specific information content and additionally or alternatively patterns with hierarchical symmetries can be produced for different distances to the pattern.
Insbesondere Menschen fällt die Wahrnehmung der in den Mustern versteckten Symmetrien schwer, selbst wenn bekannt ist, dass eine entsprechende Markierung vorhanden ist. Dies ermöglicht es beispielsweise auch, solche Markierungen zu verstecken. Das kann aus verschiedenen Gründen sinnvoll bzw. gewünscht sein, z. B. insbesondere aus ästhetischen Gründen, weil die technischen Markierungen nicht zu sehen sein sollen oder erwünscht sind, weil z. B. eine Konzentration nicht durch für Menschen unwichtige Markierungen gemindert werden soll, oder weil die Markierungen geheim bleiben sollen. Ästhetische Gründe spielen insbesondere auf dem Gebiet Design eine wichtige Rolle. Beispielsweise in einem Fahrzeuginnenraum, auf einer Außenhaut eines Fahrzeugs, auf ästhetisch gestalteten Gegenständen oder im Bereich der Innenoder Gebäudearchitektur würden auffällige technische Marker nicht oder kaum akzeptiert. Wären sie jedoch versteckt, z. B. in einem Stoffmuster oder in einem Kunststoff- oder Keramikrelief oder in einem Hologramm oder auf einer bedruckten Fläche, wie es gemäß Ausführungsformen möglich ist, könnten sie gleichzeitig schön und nützlich sein, z. B. um einer Kamera einen oder mehrere Bezugspunkte zur Verfügung zu stellen, z. B. um damit eine relative Kamerapose ermitteln zu können. Der Aspekt des Versteckens kann je nach Anwendung auch irrelevant oder wenig relevant sein. Eine technische Robustheit spricht dann trotzdem für die Verwendung derart gestalteter Muster. Insbesondere kann ein Muster mit Zufallscharakter bzw. Pseudo-Zufallscharakter viele Möglichkeiten bieten, möglichst eindeutige symmetrische Punktepaare finden zu können. Dies kann gemäß Ausführungsformen beispielsweise ausgenutzt werden, insbesondere mit Vorteilen für das Signal- Rausch-Verhältnis eines gemessenen Ansprechens an den Symmetriezentren und damit für eine Robustheit im Sinne ihrer fehlerfreien Detektion und präzisen Lokalisation. Ein Muster kann insbesondere einen oder mehrere punktsymmetrische Bereiche mit ungerader oder gerader Punktsymmetrie umfassen. Diese Bereiche können beispielsweise kreisförmig, sechseckig, quadratisch, elliptisch, polygonal oder auch anders gestaltet sein. Die punktsymmetrischen Bereiche können gleichartig oder unterschiedlich in Form und Größe sein. Sie können lückenlos aneinander anschließen oder voneinander beabstandet sein. Humans, in particular, find it difficult to perceive the symmetries hidden in the patterns, even if a corresponding marking is known to be present. This also makes it possible, for example, to hide such markings. This can be useful or desirable for various reasons, e.g. B. especially for aesthetic reasons, because the technical markings should not be seen or are desired because z. B. a concentration should not be reduced by markings that are unimportant for humans, or because the markings should remain secret. Aesthetic reasons play an important role, especially in the field of design. For example, in a vehicle interior, on an outer skin of a vehicle, on aesthetically designed objects or in the area of interior or building architecture, conspicuous technical markers would not or hardly be accepted. However, if they were hidden, e.g. B. in a fabric pattern or in a plastic or ceramic relief or in a hologram or on a printed surface, as is possible according to embodiments, they could be beautiful and useful at the same time, e.g. B. to provide a camera with one or more reference points, e.g. B. to be able to determine a relative camera pose. The aspect of hiding can also be irrelevant or of little relevance depending on the application. A technical robustness then still speaks for the use of such designed patterns. In particular, a pattern with a random character or pseudo-random character can offer many possibilities of being able to find pairs of points that are as unambiguous as possible. This can, for example, be exploited according to embodiments, in particular with advantages for the signal-to-noise ratio of a measured response at the centers of symmetry and thus for robustness in terms of their error-free detection and precise localization. In particular, a pattern can comprise one or more point-symmetrical areas with odd or even point symmetry. These areas can, for example, have a circular, hexagonal, square, elliptical, polygonal or other shape. The point-symmetrical areas can be of the same type or different in shape and size. You can connect to each other without gaps or be spaced apart.
Der hier vorgestellte Ansatz schafft ferner eine Vorrichtung, die ausgebildet ist, um die Schritte einer Variante eines hier vorgestellten Verfahrens in entsprechenden Einrichtungen durchzuführen, anzusteuern bzw. umzusetzen. Auch durch diese Ausführungsvariante der Erfindung in Form einer Vorrichtung kann die der Erfindung zugrunde liegende Aufgabe schnell und effizient gelöst werden. The approach presented here also creates a device that is designed to carry out, control or implement the steps of a variant of a method presented here in corresponding devices. The object on which the invention is based can also be achieved quickly and efficiently by this embodiment variant of the invention in the form of a device.
Hierzu kann die Vorrichtung zumindest eine Recheneinheit zum Verarbeiten von Signalen oder Daten, zumindest eine Speichereinheit zum Speichern von Signalen oder Daten, zumindest eine Schnittstelle zu einem Sensor oder einem Aktor zum Einlesen von Sensorsignalen von dem Sensor oder zum Ausgeben von Daten- oder Steuersignalen an den Aktor und/oder zumindest eine Kommunikationsschnittstelle zum Einlesen oder Ausgeben von Daten aufweisen, die in ein Kommunikationsprotokoll eingebettet sind. Die Recheneinheit kann beispielsweise ein Signalprozessor, ein Mikrocontroller oder dergleichen sein, wobei die Speichereinheit ein Flash-Speicher, ein EEPROM oder eine magnetische Speichereinheit sein kann. Die Kommunikationsschnittstelle kann ausgebildet sein, um Daten drahtlos und/oder leitungsgebunden einzulesen oder auszugeben, wobei eine Kommunikationsschnittstelle, die leitungsgebundene Daten einlesen oder ausgeben kann, diese Daten beispielsweise elektrisch oder optisch aus einer entsprechenden Datenübertragungsleitung einlesen oder in eine entsprechende Datenübertragungsleitung ausgeben kann. Unter einer Vorrichtung kann vorliegend ein elektrisches Gerät verstanden werden, das Sensorsignale verarbeitet und in Abhängigkeit davon Steuer- und/oder Datensignale ausgibt. Die Vorrichtung kann eine Schnittstelle aufweisen, die hard- und/oder softwaremäßig ausgebildet sein kann. Bei einer hardwaremäßigen Ausbildung können die Schnittstellen beispielsweise Teil eines sogenannten System-ASICs sein, der verschiedenste Funktionen der Vorrichtung beinhaltet. Es ist jedoch auch möglich, dass die Schnittstellen eigene, integrierte Schaltkreise sind oder zumindest teilweise aus diskreten Bauelementen bestehen. Bei einer softwaremäßigen Ausbildung können die Schnittstellen Softwaremodule sein, die beispielsweise auf einem Mikrocontroller neben anderen Softwaremodulen vorhanden sind. For this purpose, the device can have at least one computing unit for processing signals or data, at least one memory unit for storing signals or data, at least one interface to a sensor or an actuator for reading in sensor signals from the sensor or for outputting data or control signals to the Have actuator and / or at least one communication interface for reading or outputting data that are embedded in a communication protocol. The arithmetic unit can be, for example, a signal processor, a microcontroller or the like, with the memory unit being able to be a flash memory, an EEPROM or a magnetic memory unit. The communication interface can be designed to read in or output data wirelessly and/or by wire, wherein a communication interface that can read in or output wire-bound data can, for example, read this data electrically or optically from a corresponding data transmission line or can output it to a corresponding data transmission line. In the present case, a device can be understood to mean an electrical device that processes sensor signals and, depending thereon, outputs control and/or data signals. The device can have an interface that can be configured as hardware and/or software. In the case of a hardware design, the interfaces can be part of a so-called system ASIC, for example, which contains a wide variety of functions of the device. However, it is also possible for the interfaces to be separate integrated circuits or to consist at least partially of discrete components. In the case of a software design, the interfaces can be software modules which are present, for example, on a microcontroller alongside other software modules.
Von Vorteil ist auch ein Computerprogrammprodukt oder Computerprogramm mit Programmcode, der auf einem maschinenlesbaren Träger oder Speichermedium wie einem Halbleiterspeicher, einem Festplattenspeicher oder einem optischen Speicher gespeichert sein kann und zur Durchführung, Umsetzung und/oder Ansteuerung der Schritte des Verfahrens nach einer der vorstehend beschriebenen Ausführungsformen verwendet wird, insbesondere wenn das Programmprodukt oder Programm auf einem Computer oder einer Vorrichtung ausgeführt wird. Dabei kann das Verfahren als Hardware-Beschleuniger auf einem SoC oder ASIC implementiert sein. A computer program product or computer program with program code, which can be stored on a machine-readable carrier or storage medium such as a semiconductor memory, a hard disk memory or an optical memory and for carrying out, implementing and/or controlling the steps of the method according to one of the embodiments described above, is also advantageous used, especially when the program product or program is run on a computer or device. The method can be implemented as a hardware accelerator on a SoC or ASIC.
Ausführungsbeispiele des hier vorgestellten Ansatzes sind in den Zeichnungen dargestellt und in der nachfolgenden Beschreibung näher erläutert. Es zeigt: Exemplary embodiments of the approach presented here are shown in the drawings and explained in more detail in the following description. It shows:
Fig. 1 eine schematische Darstellung eines Ausführungsbeispiels einer Vorrichtung zum Bereitstellen, eines Ausführungsbeispiels einer Vorrichtung zum Steuern und einer Kamera; 1 shows a schematic representation of an exemplary embodiment of a device for providing, an exemplary embodiment of a device for controlling and a camera;
Fig. 2 eine schematische Darstellung eines Ausführungsbeispiels einer Vorrichtung zum Herstellen; 2 shows a schematic representation of an exemplary embodiment of a device for production;
Fig. 3 ein Ablaufdiagramm eines Ausführungsbeispiels eines Verfahrens zum Bereitstellen; Fig. 4 ein Ablaufdiagramm eines Ausführungsbeispiels eines Verfahrens zum Steuern; 3 shows a flowchart of an embodiment of a method for providing; 4 shows a flow chart of an embodiment of a method for controlling;
Fig. 5 ein Ablaufdiagramm eines Ausführungsbeispiels eines Verfahrens zum Herstellen; 5 shows a flow chart of an exemplary embodiment of a method for manufacturing;
Fig. 6 schematische Darstellungen von Darstellungsmedien mit Mustern aus vordefinierten punktsymmetrischen Bereichen gemäß Ausführungsbeispielen; 6 shows schematic representations of display media with patterns of predefined point-symmetrical areas according to exemplary embodiments;
Fig. 7 schematische Darstellungen von Darstellungsmedien mit Mustern aus vordefinierten punktsymmetrischen Bereichen gemäß Ausführungsbeispielen; 7 shows schematic representations of display media with patterns of predefined point-symmetrical areas according to exemplary embodiments;
Fig. 8 schematische Darstellungen der Darstellungsmedien mit den Mustern aus Fig. 7 mit grafischer Hervorhebung der Muster bzw. der vordefinierten punktsymmetrischen Bereiche; FIG. 8 shows schematic representations of the display media with the patterns from FIG. 7 with graphical highlighting of the patterns or the predefined point-symmetrical areas;
Fig. 9 schematische Darstellungen von vordefinierten punktsymmetrischen Bereichen gemäß Ausführungsbeispielen; 9 shows schematic representations of predefined point-symmetrical regions according to exemplary embodiments;
Fig. 10 eine schematische Darstellung eines Musters aus vordefinierten punktsymmetrischen Bereichen gemäß einem Ausführungsbeispiel; 10 shows a schematic representation of a pattern of predefined point-symmetrical regions according to an embodiment;
Fig. 11 eine schematische Darstellung zur Verwendung einer Nachschlagtabelle gemäß einem Ausführungsbeispiel; 11 shows a schematic representation of the use of a look-up table according to an embodiment;
Fig. 12 ein schematisches Diagramm zu einer Abstimmungsmatrix gemäß einem Ausführungsbeispiel; 12 shows a schematic diagram of a voting matrix according to an embodiment;
Fig. 13 eine schematische Darstellung von beispielhaft in Würfelform angeordneten Mustern gemäß einem Ausführungsbeispiel im Hinblick auf eine korrekte Identifikation eines Rasters; 13 shows a schematic representation of patterns arranged in the form of a cube by way of example according to an exemplary embodiment with regard to correct identification of a raster;
Fig. 14 eine schematische Darstellung des in der ersten Teildarstellung von Fig. 6 gezeigten Musters in schräger Perspektive; Fig. 15 das Muster aus der ersten Teildarstellung von Fig. 14 mit einer Hervorhebung eines vordefinierten punktsymmetrischen Bereichs; Fig. 14 is an oblique perspective schematic representation of the pattern shown in the first partial representation of Fig. 6; FIG. 15 shows the pattern from the first partial representation of FIG. 14 with an emphasis on a predefined point-symmetrical area; FIG.
Fig. 16 eine schematische Darstellung des Musters aus Fig. 15 nach einer perspektivischen Entzerrung gemäß einem Ausführungsbeispiel; FIG. 16 shows a schematic illustration of the pattern from FIG. 15 after perspective rectification according to an exemplary embodiment; FIG.
Fig. 17 eine schematische Darstellung eines Ausführungsbeispiels eines Musters mit hierarchischer Symmetrie; Fig. 17 is a schematic representation of an embodiment of a pattern having hierarchical symmetry;
Fig. 18 eine schematische Darstellung eines Ausführungsbeispiels eines Musters mit hierarchischer Symmetrie; Fig. 18 is a schematic representation of an embodiment of a pattern having hierarchical symmetry;
Fig. 19 eine schematische Darstellung eines Ausführungsbeispiels eines Musters mit hierarchischer Symmetrie; Fig. 19 is a schematic representation of an embodiment of a pattern having hierarchical symmetry;
Fig. 20 schematische Darstellungen von Mustern gemäß Ausführungsbeispielen; 20 shows schematic representations of patterns according to exemplary embodiments;
Fig. 21 eine schematische Darstellung einer Anwendungssituation für die Steuervorrichtung aus Fig. 1 und/oder das Verfahrens zum Steuern aus Fig. 4; FIG. 21 shows a schematic representation of an application situation for the control device from FIG. 1 and/or the method for control from FIG. 4;
Fig. 22 eine schematische Darstellung verschiedener Darstellungsmedien mit vordefinierten punktsymmetrischen Bereichen; 22 shows a schematic representation of various display media with predefined point-symmetrical areas;
Fig. 23 ein Kamerabild eines Förderbands als Darstellungsmedium mit einem Ausführungsbeispiel eines Musters aus vordefinierten punktsymmetrischen Bereichen und von auf dem Förderband abgelegten Objekten; und 23 shows a camera image of a conveyor belt as a display medium with an exemplary embodiment of a pattern made up of predefined point-symmetrical areas and objects placed on the conveyor belt; and
Fig. 24 das Kamerabild aus Fig. 23 nach einer Verarbeitung unter Verwendung des Verfahrens zum Bereitstellen aus Fig. 3. Fig. 24 shows the camera image from Fig. 23 after processing using the method for providing from Fig. 3.
In der nachfolgenden Beschreibung günstiger Ausführungsbeispiele der vorliegenden Erfindung werden für die in den verschiedenen Figuren dargestellten und ähnlich wirkenden Elemente gleiche oder ähnliche Bezugszeichen verwendet, wobei auf eine wiederholte Beschreibung dieser Elemente verzichtet wird. In the following description of advantageous exemplary embodiments of the present invention, the same or similar elements are used for the elements which are shown in the various figures and have a similar effect Reference signs used, with a repeated description of these elements is omitted.
Fig. 1 zeigt eine schematische Darstellung eines Ausführungsbeispiels einer Vorrichtung 120 zum Bereitstellen, eines Ausführungsbeispiels einer Vorrichtung 140 zum Steuern und beispielhaft lediglich einer Kamera 102. In der Darstellung von Fig. 1 sind die Vorrichtung 120 zum Bereitstellen bzw. Bereitstellungsvorrichtung 120 und die Vorrichtung 140 zum Steuern bzw. Steuervorrichtung 140 getrennt bzw. außerhalb der Kamera 102 angeordnet gezeigt. Die Bereitstellungsvorrichtung 120 und die Steuervorrichtung 140 sind datenübertragungsfähig mit der Kamera 102 verbunden. Gemäß einem anderen Ausführungsbeispiel kann oder können die Bereitstellungsvorrichtung 120 und/oder die Steuervorrichtung 140 auch Teil der Kamera 102 sein und/oder miteinander kombiniert sein. Fig. 1 shows a schematic representation of an exemplary embodiment of a device 120 for providing, an exemplary embodiment of a device 140 for controlling and, by way of example, only one camera 102. In the representation of Fig. 1, device 120 is for providing or providing device 120 and device 140 shown separate from camera 102 for control or control device 140 . The provision device 120 and the control device 140 are connected to the camera 102 in a data-transmitting manner. According to another exemplary embodiment, the provision device 120 and/or the control device 140 can also be part of the camera 102 and/or can be combined with one another.
Die Kamera 102 ist ausgebildet, um ein Kamerabild von einer Umgebung der Kamera 102 aufzunehmen. In der Umgebung der Kamera 102 ist beispielhaft lediglich ein vordefinierter gerade und/oder ungerade punktsymmetrischer Bereich 110 mit einem Symmetriezentrum 112 angeordnet. Auch ist die Kamera 102 ausgebildet, um Bilddaten 105 bereitzustellen bzw. zu erzeugen, die das Kamerabild repräsentieren, wobei das Kamerabild auch den vordefinierten gerade und/oder ungerade punktsymmetrischen Bereich 110 zeigt. The camera 102 is designed to record a camera image of the surroundings of the camera 102 . In the vicinity of the camera 102, for example, only a predefined even and/or odd point-symmetrical region 110 with a center of symmetry 112 is arranged. The camera 102 is also designed to provide or generate image data 105 that represent the camera image, the camera image also showing the predefined even and/or odd point-symmetrical region 110 .
Die Bereitstellungsvorrichtung 120 ist ausgebildet, um Navigationsdaten 135 zum Steuern eines Roboters bereitzustellen. Hierbei kann oder können die Kamera 102, die Bereitstellungsvorrichtung 120 und/oder die Steuervorrichtung 140 als Teil des Roboters oder getrennt von denselben ausgeführt sein. Dazu umfasst die Bereitstellungsvorrichtung 120 eine Einleseeinrichtung 124, eine Bestimmungseinrichtung 126, eine Durchführungseinrichtung 130 und optional zusätzlich eine Ermittlungseinrichtung 132. Die Einleseeinrichtung 124 ist ausgebildet, um die Bilddaten 105 von einer Eingangsschnittstelle 122 der Bereitstellungsvorrichtung 120 zu der Kamera 102 einzulesen. Ferner ist die Einleseeinrichtung 124 auch ausgebildet, um die das Kamerabild repräsentierenden Bilddaten 105 an die Bestimmungseinrichtung 126 weiterzugeben. Die Bestimmungseinrichtung 126 der Bereitstellungsvorrichtung 120 ist ausgebildet, um unter Verwendung der Bilddaten 105 und einer Bestimmungsvorschrift 128 das Symmetriezentrum 112 des zumindest einen punktsymmetrischen Bereichs 110 zu bestimmen. Auf die Bestimmungsvorschrift 128 wird nachfolgend noch detaillierter eingegangen. An dieser Stelle sei darauf hingewiesen, dass die Bestimmungsvorschrift 128 einer Vorgehensweise ähnelt oder entspricht, die in der nachveröffentlichten DE 10 2020 202 160 der Anmelderin offenbart ist. Die Bestimmungseinrichtung 126 ist auch ausgebildet, um das zumindest eine bestimmte Symmetriezentrum 112 an die Durchführungseinrichtung 130 weiterzugeben. The provision device 120 is designed to provide navigation data 135 for controlling a robot. In this case, the camera 102, the provision device 120 and/or the control device 140 can be embodied as part of the robot or separately from them. For this purpose, the provision device 120 comprises a reading device 124, a determining device 126, an implementation device 130 and optionally also a determination device 132. The reading device 124 is designed to read in the image data 105 from an input interface 122 of the provision device 120 to the camera 102. Furthermore, the reading-in device 124 is also designed to forward the image data 105 representing the camera image to the determination device 126 . Determination device 126 of provision device 120 is designed to determine center of symmetry 112 of at least one point-symmetrical region 110 using image data 105 and a determination rule 128 . The specification 128 will be discussed in more detail below. At this point it should be pointed out that the determination rule 128 is similar to or corresponds to a procedure that is disclosed in the subsequently published DE 10 2020 202 160 of the applicant. Determination device 126 is also designed to pass on the at least one specific center of symmetry 112 to implementation device 130 .
Die Durchführungseinrichtung 130 ist ausgebildet, um einen Vergleich einer Position des zumindest einen Symmetriezentrums 112 in dem Kamerabild mit einer vordefinierten Position zumindest eines Referenz-Symmetriezentrums in einem Referenzbild 115 relativ zu einem Bezugskoordinatensystem durchzuführen, um eine Positionsabweichung 131 zwischen dem Symmetriezentrum 112 und dem Referenz-Symmetriezentrums zu bestimmen. Die Durchführungseinrichtung 130 ist auch ausgebildet, um das Referenzbild 115 bzw. Referenzdaten 115 von einer Speichereinrichtung 150 einzulesen oder zu empfangen. Die Speichereinrichtung 150 kann als ein Teil der Bereitstellungsvorrichtung 120 oder gesondert von derselben ausgeführt sein. Ferner ist die Durchführungseinrichtung 130 gemäß einem Ausführungsbeispiel ausgebildet, um die Positionsabweichung 131 an die Ermittlungseinrichtung 132 weiterzugeben. The implementation device 130 is designed to carry out a comparison of a position of the at least one center of symmetry 112 in the camera image with a predefined position of at least one reference center of symmetry in a reference image 115 relative to a reference coordinate system, in order to determine a position deviation 131 between the center of symmetry 112 and the reference to determine the center of symmetry. The implementation device 130 is also designed to read in or receive the reference image 115 or reference data 115 from a storage device 150 . The storage device 150 can be embodied as part of the provision device 120 or separately from the same. Furthermore, according to one exemplary embodiment, implementation device 130 is designed to forward position deviation 131 to determination device 132 .
Die Ermittlungseinrichtung 132 ist gemäß einem Ausführungsbeispiel ausgebildet, um unter Verwendung der Positionsabweichung 131 dann Verschiebungsinformationen 133 für zumindest eine Teilmenge von Pixeln des Kamerabildes relativ zu korrespondierenden Pixeln des Referenzbildes 115 zu ermitteln. According to one exemplary embodiment, determination device 132 is designed to then determine displacement information 133 for at least a subset of pixels of the camera image relative to corresponding pixels of reference image 115 using position deviation 131 .
Die Bereitstellungsvorrichtung 120 ist ausgebildet, um unter Verwendung der Positionsabweichung 131 und/oder der Verschiebungsinformationen 133 die Navigationsdaten 135 bereitzustellen. Genauer gesagt ist die Bereitstellungsvorrichtung 120 ausgebildet, um über eine Ausgangsschnittstelle 138 der Bereitstellungsvorrichtung 120 die Navigationsdaten 135 der Steuervorrichtung 140 bereitzustellen. The provision device 120 is designed to provide the navigation data 135 using the position deviation 131 and/or the displacement information 133 . More precisely, the Providing device 120 designed to provide the navigation data 135 to the control device 140 via an output interface 138 of the providing device 120 .
Die Steuervorrichtung 140 ist ausgebildet, um den Roboter zu steuern. Dazu umfasst die Steuervorrichtung 140 eine Auswerteeinrichtung 144 und eine Ausgabeeinrichtung 146. Die Steuervorrichtung 140 ist ausgebildet, um die Navigationsdaten 135 über eine Eingangsschnittstelle 142 der Steuervorrichtung 140 von der Bereitstellungsvorrichtung 120 zu empfangen bzw. einzulesen. Die Auswerteeinrichtung 144 ist ausgebildet, um die von der Bereitstellungsvorrichtung 120 bereitgestellten Navigationsdaten 135 auszuwerten, um ein von den Navigationsdaten 135 abhängiges Steuersignal 145 zu erzeugen. Die Auswerteeinrichtung 144 ist auch ausgebildet, um das Steuersignal 145 an die Ausgabeeinrichtung 146 weiterzugeben. Die Ausgabeeinrichtung 146 ist ausgebildet, um das Steuersignal 145 an eine Ausgangsschnittstelle 148 zu dem Roboter auszugeben, um die den Roboter zu steuern. The control device 140 is designed to control the robot. For this purpose, the control device 140 includes an evaluation device 144 and an output device 146. The control device 140 is designed to receive or read in the navigation data 135 via an input interface 142 of the control device 140 from the provision device 120. The evaluation device 144 is designed to evaluate the navigation data 135 provided by the provision device 120 in order to generate a control signal 145 dependent on the navigation data 135 . The evaluation device 144 is also designed to forward the control signal 145 to the output device 146 . The output device 146 is designed to output the control signal 145 to an output interface 148 on the robot in order to control the robot.
Insbesondere ist die Bestimmungsvorschrift 128 ausgebildet, um zu bewirken, dass eine Signatur für eine Mehrzahl von Pixeln zumindest eines Ausschnitts des Kamerabilds erzeugt wird, um eine Mehrzahl von Signaturen zu erhalten. Hierbei wird jede der Signaturen unter Verwendung eines Deskriptors mit einer Mehrzahl von unterschiedlichen Filtern erzeugt. Jedes Filter weist zumindest eine Symmetrieart auf. Jede der Signaturen umfasst für jedes Filter des Deskriptors ein Vorzeichen. Die Bestimmungsvorschrift 128 ist auch ausgebildet, um zu bewirken, dass zumindest ein Reflektor auf die Vorzeichen einer der Signaturen angewendet wird, um für die Signatur zumindest eine Spiegelsignatur für zumindest eine Symmetrieart der Filter zu ermitteln. Hierbei umfasst jeder Reflektor für eine Symmetrieart spezifische und von den Filtern des Deskriptors abhängige Vorschriften zur Modifikation der Vorzeichen. Die Bestimmungsvorschrift ist ferner ausgebildet, um zu bewirken, dass ein die Signatur aufweisendes Pixel auf ein Vorliegen zumindest eines weiteren Pixels mit einer der zumindest einen Spiegelsignatur entsprechenden Signatur in einem von zumindest einem der angewendeten Reflektoren abhängigen Suchbereich in einer Umgebung um das Pixel überprüft wird, um bei Vorliegen zumindest eines weiteren Pixels Pixelkoordinaten zumindest eines symmetrischen Signaturpaars aus dem Pixel und einem weiteren Pixel zu ermitteln. Zudem ist die Bestimmungsvorschrift ausgebildet, um zu bewirken, dass die Pixelkoordinaten des zumindest einen symmetrischen Signaturpaars ausgewertet werden, um das zumindest eine Symmetriezentrum zu identifizieren. In particular, determination rule 128 is designed to cause a signature to be generated for a plurality of pixels of at least one section of the camera image in order to obtain a plurality of signatures. Here, each of the signatures is generated using a descriptor with a plurality of different filters. Each filter has at least one type of symmetry. Each of the signatures includes a sign for each filter of the descriptor. The determination rule 128 is also designed to cause at least one reflector to be applied to the signs of one of the signatures in order to determine at least one mirror signature for at least one type of symmetry of the filters for the signature. In this case, each reflector for a type of symmetry has specific rules for modifying the signs that are dependent on the filters of the descriptor. The determination rule is also designed to cause a pixel having the signature to be checked for the presence of at least one other pixel with a signature corresponding to the at least one mirror signature in a search area dependent on at least one of the reflectors used in a vicinity of the pixel, to at least one if present further pixel to determine pixel coordinates of at least one symmetrical signature pair from the pixel and a further pixel. In addition, the determination rule is designed to cause the pixel coordinates of the at least one symmetrical pair of signatures to be evaluated in order to identify the at least one center of symmetry.
Gemäß einem Ausführungsbeispiel ist die Bestimmungseinrichtung 126 ausgebildet, um für jedes bereits bestimmte Symmetriezentrum 112 unter Verwendung der Pixelkoordinaten jedes symmetrischen Signaturpaars, das zum korrekten Identifizieren des Symmetriezentrums 112 beigetragen hat, eine Transformationsvorschrift zum Transformieren von Pixelkoordinaten des Symmetriezentrums 112 und/ oder des punktsymmetrischen Bereichs 110 zu bestimmen. Die Transformationsvorschrift wird auf die Pixelkoordinaten des Symmetriezentrums 112 und/ oder des punktsymmetrischen Bereichs 110 angewendet, um eine verzerrte Perspektive des Kamerabilds zu entzerren. Des Weiteren ist es vorteilhaft, weil robuster, genauer und weniger rausch behaftet, eine Transformationsvorschrift anhand mehrerer, insbesondere benachbarter, punktsymmetrischer Bereiche 110 zu bestimmen, insbesondere, wenn diese sich auf einer gemeinsamen Ebene befinden. Die Anwendung der Transformation ist besonders vorteilhaft, wenn eine Anordnung von mehreren Symmetriezentren 112 betrachtet wird. According to one exemplary embodiment, determination device 126 is designed to use the pixel coordinates of each symmetrical signature pair that contributed to the correct identification of symmetry center 112 to generate a transformation rule for transforming pixel coordinates of symmetry center 112 and/or point-symmetrical region 110 for each already determined center of symmetry 112 to determine. The transformation rule is applied to the pixel coordinates of the center of symmetry 112 and/or the point-symmetrical area 110 in order to correct a distorted perspective of the camera image. Furthermore, it is advantageous, because it is more robust, more accurate and subject to less noise, to determine a transformation rule using a plurality of, in particular adjacent, point-symmetrical regions 110, in particular if these are located on a common plane. The application of the transformation is particularly advantageous when an arrangement of several centers of symmetry 112 is considered.
Gemäß einem Ausführungsbeispiel ist die Bestimmungseinrichtung 126 auch ausgebildet, um eine Symmetrieart des zumindest einen Symmetriezentrums 112 zu bestimmen. Die Symmetrieart repräsentiert eine gerade Punktsymmetrie und zusätzlich oder alternativ eine ungerade Punktsymmetrie. Zusätzlich oder alternativ ist hierbei die Durchführungseinrichtung 130 ausgebildet, um einen Vergleich der Symmetrieart des zumindest einen Symmetriezentrums 112 in dem Kamerabild mit einer vordefinierten Symmetrieart zumindest eines Referenz- Symmetriezentrums in einem Referenzbild 115 durchzuführen, um eine Übereinstimmung zwischen dem zumindest einen Symmetriezentrum 112 und dem zumindest einen Referenz-Symmetriezentrum zu prüfen. According to one exemplary embodiment, determination device 126 is also designed to determine a type of symmetry of the at least one center of symmetry 112 . The symmetry type represents an even point symmetry and additionally or alternatively an odd point symmetry. Additionally or alternatively, implementation device 130 is designed to compare the type of symmetry of the at least one center of symmetry 112 in the camera image with a predefined type of symmetry of at least one reference center of symmetry in a reference image 115 in order to determine a match between the at least one center of symmetry 112 and the at least to check a reference center of symmetry.
Insbesondere repräsentieren die Bilddaten 105 hierbei ein Kamerabild von zumindest einem Muster aus einer Mehrzahl von vordefinierten punktsymmetrischen Bereichen 110. Dabei ist die Bestimmungseinrichtung 126 ausgebildet, um eine geometrische Anordnung von Symmetriezentren 112 des zumindest einen Musters zu bestimmen, eine geometrische Abfolge von Symmetriearten der Symmetriezentren 112 zu bestimmen und/oder unter Verwendung der Abfolge das korrekte durch die Bilddaten 105 repräsentierte Muster aus mehreren vordefinierten Mustern zu bestimmen. Die Anordnung und/oder die Abfolge kann oder können einen Identifikationscode des Musters repräsentieren. Gemäß einem Ausführungsbeispiel ist die Bestimmungseinrichtung 126 hierbei ausgebildet, um unter Verwendung der Anordnung der Symmetriezentren 112 des zumindest einen Musters und/oder der Abfolge von Symmetriearten der Symmetriezentren 112 eine implizite Zusatzinformation des zumindest einen Musters oder eine Auslesevorschrift zum Auslesen einer expliziten Zusatzinformation in dem Kamerabild zu bestimmen. Die Anordnung und/oder die Abfolge repräsentiert oder repräsentieren die Zusatzinformation in codierter Form. Die Zusatzinformation ist auf das Steuern des Roboters bezogen. Zusätzlich oder alternativ ist hierbei die Durchführungseinrichtung 130 ausgebildet, um abhängig von der bestimmten Anordnung, der bestimmten Abfolge und/oder des bestimmten Musters das Referenzbild 115 aus mehreren gespeicherten Referenzbildern auszuwählen oder unter Verwendung einer gespeicherten Erzeugungsvorschrift zu erzeugen. In particular, the image data 105 represent a camera image of at least one pattern from a plurality of predefined ones point-symmetrical regions 110. Determination device 126 is designed to determine a geometric arrangement of centers of symmetry 112 of the at least one pattern, to determine a geometric sequence of types of symmetry of centers of symmetry 112, and/or to determine the correct pattern represented by image data 105 using the sequence to be determined from several predefined patterns. The arrangement and/or sequence may represent an identification code of the pattern. According to one exemplary embodiment, determination device 126 is designed here to use the arrangement of the centers of symmetry 112 of the at least one pattern and/or the sequence of symmetry types of the centers of symmetry 112 to determine implicit additional information of the at least one pattern or a readout rule for reading out explicit additional information in the camera image to determine. The arrangement and/or the sequence represents or represent the additional information in encoded form. The additional information relates to controlling the robot. Additionally or alternatively, implementation device 130 is designed here to select reference image 115 from a plurality of stored reference images or to generate it using a stored generation rule, depending on the specific arrangement, the specific sequence and/or the specific pattern.
Fig. 2 zeigt eine schematische Darstellung eines Ausführungsbeispiels einer Vorrichtung 200 zum Herstellen. Die Vorrichtung 200 zum Herstellen ist ausgebildet, um zumindest einen vordefinierten gerade und/oder ungerade punktsymmetrischen Bereich 110 zur Verwendung durch die Bereitstellungsvorrichtung aus Fig. 1 oder eine ähnliche Vorrichtung und/oder Steuervorrichtung aus Fig. 1 oder eine ähnliche Vorrichtung herzustellen. Dazu umfasst die Vorrichtung 200 zum Herstellen eine Generiereinrichtung 202 und eine Erzeugungseinrichtung 206. Die Generiereinrichtung 202 ist ausgebildet, um Entwurfsdaten 204 zu generieren. Die Entwurfsdaten 204 repräsentieren eine grafische Darstellung des zumindest einen vordefinierten gerade und/oder ungerade punktsymmetrischen Bereichs 110. Die Erzeugungseinrichtung 206 ist ausgebildet, um unter Verwendung der Entwurfsdaten 204 den zumindest einen vordefinierten gerade und/oder ungerade punktsymmetrischen Bereich 110 auf, an oder in einem Darstellungsmedium zu erzeugen, um denselben herzustellen. Gemäß einem Ausführungsbeispiel ist die Generiereinrichtung 202 ausgebildet, um Entwurfsdaten 204 zu generieren, die eine grafische Darstellung des zumindest einen vordefinierten punktsymmetrischen Bereichs 110 als ein Kreis, eine Ellipse, ein Quadrat, ein Rechteck, ein Fünfeck, ein Sechseck, ein Polygon oder ein Kreisring repräsentieren, wobei der zumindest eine vordefinierte punktsymmetrische Bereich 110 ein regelmäßiges oder quasi-zufälliges Inhaltsmuster aufweist, und/oder wobei eine erste Hälfte einer Fläche des zumindest einen vordefinierten punktsymmetrischen Bereichs 110 beliebig vorgegeben wird und eine zweite Hälfte der Fläche durch Punktspiegelung und/oder Invertierung von Grauwerten und/oder Farbwerten konstruiert wird. Zusätzlich oder alternativ ist die Erzeugungseinrichtung 206 ausgebildet, um den zumindest einen vordefinierten punktsymmetrischen Bereich 110 durch einen additiven Fertigungsprozess, Trennen, Beschichten, Umformen, Urformen oder optisches Anzeigen zu erzeugen. Zusätzlich oder alternativ weist das Darstellungsmedium hierbei Glas, Stein, Keramik, Kunststoff, Gummi, Metall, Beton, Gips, Papier, Pappe, Lebensmittel oder eine optische Anzeigeeinrichtung auf. FIG. 2 shows a schematic representation of an exemplary embodiment of a device 200 for production. The device 200 for producing is designed to produce at least one predefined even and/or odd point-symmetrical region 110 for use by the providing device from FIG. 1 or a similar device and/or control device from FIG. 1 or a similar device. For this purpose, the device 200 for manufacturing comprises a generating device 202 and a generating device 206. The generating device 202 is designed to generate design data 204. The design data 204 represents a graphical representation of the at least one predefined even and/or odd point-symmetrical region 110. The generating device 206 is designed to use the design data 204 to generate the at least one predefined even and/or odd point-symmetrical region 110 on, on or in a To generate display medium to produce the same. According to one embodiment, the generating device 202 is designed to generate design data 204, which is a graphic representation of the at least one predefined point-symmetrical region 110 as a circle, an ellipse, a square, a rectangle, a pentagon, a hexagon, a polygon or an annulus represent, wherein the at least one predefined point-symmetrical area 110 has a regular or quasi-random content pattern, and/or wherein a first half of an area of the at least one predefined point-symmetrical area 110 is specified arbitrarily and a second half of the area by point reflection and/or inversion is constructed from gray values and/or color values. Additionally or alternatively, the generating device 206 is designed to generate the at least one predefined point-symmetrical region 110 by an additive manufacturing process, separating, coating, forming, primary forming or optical display. Additionally or alternatively, the display medium has glass, stone, ceramics, plastic, rubber, metal, concrete, plaster, paper, cardboard, food or an optical display device.
Gemäß einem Ausführungsbeispiel ist die Generiereinrichtung 202 ausgebildet, um Entwurfsdaten 204 zu generieren, die eine grafische Darstellung zumindest eines Musters aus einer Mehrzahl von vordefinierten punktsymmetrischen Bereichen 110 repräsentieren, wobei zumindest eine Teilmenge der punktsymmetrischen Bereiche 110 an einem regelmäßigen oder unregelmäßigen Raster ausgerichtet sind, direkt aneinander angrenzen und/oder teilweise von mindestens einem benachbarten punktsymmetrischen Bereich 110 durch einen Zwischenraum getrennt sind, hinsichtlich ihrer Abmessungen und/oder ihrer Inhaltsmuster identisch zueinander oder unterschiedlich voneinander sind und/oder in einer gemeinsamen Ebene oder in unterschiedlichen Ebenen angeordnet sind. Zusätzlich oder alternativ ist die Generiereinrichtung 202 ausgebildet, um Entwurfsdaten 204 zu generieren, die eine grafische Darstellung zumindest eines Musters mit hierarchischer Symmetrie repräsentieren. According to one exemplary embodiment, the generating device 202 is designed to generate design data 204 that represents a graphical representation of at least one pattern from a plurality of predefined point-symmetrical regions 110, with at least a subset of the point-symmetrical regions 110 being aligned on a regular or irregular grid, directly are adjacent to each other and/or partially separated from at least one adjacent point-symmetrical region 110 by a gap, are identical to or different from each other in terms of their dimensions and/or their content patterns, and/or are arranged in a common plane or in different planes. Additionally or alternatively, the generating device 202 is designed to generate design data 204 that represent a graphical representation of at least one pattern with hierarchical symmetry.
Fig. 3 zeigt ein Ablaufdiagramm eines Ausführungsbeispiels eines Verfahrens 300 zum Bereitstellen von Navigationsdaten zum Steuern eines Roboters. Das Verfahren 300 zum Bereitstellen ist hierbei unter Verwendung der Bereitstellungsvorrichtung aus Fig. 1 oder einer ähnlichen Vorrichtung ausführbar. Das Verfahren 300 zum Bereitstellen umfasst einen Schritt 324 des Einlesens, einen Schritt 326 des Bestimmens, einen Schritt 330 des Durchführens und optional zusätzlich einen Schritt 332 des Ermittelns. FIG. 3 shows a flow chart of an embodiment of a method 300 for providing navigation data for controlling a robot. That Method 300 for providing can be carried out using the providing device from FIG. 1 or a similar device. The method 300 for providing comprises a step 324 of reading in, a step 326 of determining, a step 330 of implementation and optionally an additional step 332 of determining.
In dem Schritt 324 des Einlesens werden mittels einer Kamera bereitgestellte Bilddaten von einer Schnittstelle zu der Kamera eingelesen. Die Bilddaten repräsentieren ein Kamerabild von zumindest einem vordefinierten gerade und/oder ungerade punktsymmetrischen Bereich in einer Umgebung der Kamera. Nachfolgend wird in dem Schritt 326 des Bestimmens unter Verwendung der Bilddaten und einer Bestimmungsvorschrift zumindest ein Symmetriezentrum des zumindest einen punktsymmetrischen Bereichs bestimmt. Wiederum nachfolgend wird in dem Schritt 330 des Durchführens ein Vergleich einer Position des zumindest einen Symmetriezentrums in dem Kamerabild mit einer vordefinierten Position zumindest eines Referenz- Symmetriezentrums in einem Referenzbild relativ zu einem Bezugskoordinatensystem durchgeführt, um eine Positionsabweichung zwischen dem Symmetriezentrum und dem Referenz-Symmetriezentrum zu bestimmen. Nachfolgend werden gemäß einem Ausführungsbeispiel in dem Schritt 332 des Ermittelns unter Verwendung der Positionsabweichung Verschiebungsinformationen für zumindest eine Teilmenge von Pixeln des Kamerabildes relativ zu korrespondierenden Pixeln des Referenzbildes ermittelt. Die Navigationsdaten werden unter Verwendung der Positionsabweichung und/oder der ermittelten Verschiebungsinformationen bereitgestellt. In step 324 of reading in, image data provided by a camera are read in from an interface to the camera. The image data represent a camera image of at least one predefined even and/or odd point-symmetrical area in an area surrounding the camera. At least one center of symmetry of the at least one point-symmetrical region is then determined in step 326 of determination using the image data and a determination rule. Again subsequently, in step 330 of execution, a comparison of a position of the at least one center of symmetry in the camera image with a predefined position of at least one reference center of symmetry in a reference image relative to a reference coordinate system is carried out in order to determine a position deviation between the center of symmetry and the reference center of symmetry determine. Subsequently, according to an exemplary embodiment, in step 332 of determining, using the position deviation, displacement information is determined for at least a subset of pixels of the camera image relative to corresponding pixels of the reference image. The navigation data is provided using the position deviation and/or the determined displacement information.
Die im Schritt 324 des Einlesens eingelesenen Bilddaten repräsentieren gemäß einem Ausführungsbeispiel ein Kamerabild von zumindest einem Muster aus einer Mehrzahl von vordefinierten punktsymmetrischen Bereichen. Dabei wird im Schritt 326 des Bestimmens eine geometrische Anordnung von Symmetriezentren des zumindest einen Musters bestimmt, eine geometrische Abfolge von Symmetriearten der Symmetriezentren bestimmt und/oder unter Verwendung der Abfolge das Muster aus mehreren vordefinierten Mustern bestimmt. Die Anordnung und/oder die Abfolge repräsentiert oder repräsentieren einen Identifikationscode des Musters. Optional werden dabei der Schritt 326 des Bestimmens und/oder der Schritt 330 des Durchführens unabhängig von der Symmetrieart der Symmetriezentren für alle Symmetriezentren gemeinsam ausgeführt oder abhängig von der Symmetrieart der Symmetriezentren für die Symmetriezentren derselben Symmetrieart gesondert ausgeführt. According to one exemplary embodiment, the image data read in in step 324 of reading represent a camera image of at least one pattern from a plurality of predefined point-symmetrical regions. In step 326 of determining, a geometric arrangement of symmetry centers of the at least one pattern is determined, a geometric sequence of symmetry types of the symmetry centers is determined and/or the pattern is determined from a plurality of predefined patterns using the sequence. The arrangement and/or the sequence represents an identification code of the pattern. Optionally, step 326 of Determining and/or the step 330 of carrying out is carried out jointly for all centers of symmetry independently of the type of symmetry of the centers of symmetry or carried out separately for the centers of symmetry of the same type of symmetry depending on the type of symmetry of the centers of symmetry.
Fig. 4 zeigt ein Ablaufdiagramm eines Ausführungsbeispiels eines Verfahrens 400 zum Steuern eines Roboters. Das Verfahren 400 zum Steuern ist dabei unter Verwendung der Steuervorrichtung aus Fig. 1 oder einer ähnlichen Vorrichtung ausführbar. Auch ist das Verfahren 400 zum Steuern in Verbindung mit dem Verfahren zum Bereitstellen aus Fig. 3 oder einem ähnlichen Verfahren ausführbar. Das Verfahren 400 zum Steuern umfasst einen Schritt 444 des Auswertens und einen Schritt 446 des Ausgebens. FIG. 4 shows a flowchart of an embodiment of a method 400 for controlling a robot. The method 400 for controlling can be carried out using the control device from FIG. 1 or a similar device. Also, the method 400 for controlling is executable in connection with the method for providing of FIG. 3 or a similar method. The method 400 for controlling comprises a step 444 of evaluating and a step 446 of outputting.
In dem Schritt 444 des Auswertens werden gemäß dem Verfahren zum Bereitstellen aus Fig. 3 oder einem ähnlichen Verfahren bereitgestellte Navigationsdaten ausgewertet, um ein von den Navigationsdaten abhängiges Steuersignal zu erzeugen. Nachfolgend wird in dem Schritt 446 des Ausgebens das Ansteuersignal an eine Schnittstelle zu dem Roboter ausgegeben, um den Roboter zu steuern. In step 444 of the evaluation, navigation data provided according to the method for providing from FIG. 3 or a similar method is evaluated in order to generate a control signal dependent on the navigation data. Subsequently, in step 446 of outputting, the drive signal is output to an interface to the robot in order to control the robot.
Fig. 5 zeigt ein Ablaufdiagramm eines Ausführungsbeispiels eines Verfahrens 500 zum Herstellen. Das Verfahren 500 zum Herstellen ist ausführbar, um zumindest einen vordefinierten punktsymmetrischen Bereich zur Verwendung durch das Verfahren zum Bereitstellen aus Fig. 3 oder ein ähnliches Verfahren und/oder zur Verwendung durch das Verfahren zum Steuern aus Fig. 4 oder ein ähnliches Verfahren herzustellen. Auch ist das Verfahren 500 zum Herstellen in Verbindung mit bzw. unter Verwendung der Vorrichtung zum Herstellen aus Fig. 2 oder einer ähnlichen Vorrichtung ausführbar. Das Verfahren 500 zum Herstellen umfasst einen Schritt 502 des Generierens und einen Schritt 506 des Erzeugens. 5 shows a flowchart of an embodiment of a method 500 for manufacturing. The manufacturing method 500 is executable to manufacture at least one predefined point-symmetrical region for use by the providing method of FIG. 3 or a similar method and/or for use by the controlling method of FIG. 4 or a similar method. The method 500 for manufacturing can also be carried out in connection with or using the device for manufacturing from FIG. 2 or a similar device. The method 500 for manufacturing comprises a step 502 of generating and a step 506 of creating.
In dem Schritt 502 des Generierens werden Entwurfsdaten generiert, die eine grafische Darstellung des zumindest einen vordefinierten punktsymmetrischen Bereichs repräsentieren. Nachfolgend wird in dem Schritt 506 des Erzeugens unter Verwendung der Entwurfsdaten der zumindest eine vordefinierte punktsymmetrische Bereich auf, an oder in einem Darstellungsmedium erzeugt, um den zumindest einen vordefinierten punktsymmetrischen Bereich herzustellen. In step 502 of generation, design data are generated which represent a graphical representation of the at least one predefined point-symmetrical area. Subsequently, in step 506 of generating using the design data, the at least one predefined point-symmetrical area generated on, on or in a display medium in order to produce the at least one predefined point-symmetrical area.
Fig. 6 zeigt schematische Darstellungen von Darstellungsmedien 600 mit Mustern 610 aus vordefinierten punktsymmetrischen Bereichen 110A und HOB gemäß Ausführungsbeispielen. Jeder der vordefinierten punktsymmetrischen Bereiche 110A und 110B entspricht oder ähnelt hierbei dem vordefinierten punktsymmetrischen Bereich aus Fig. 1. In einer ersten Teildarstellung A ist ein Muster 610 aus lediglich beispielhaft 49 vordefinierten punktsymmetrischen Bereichen 110A und HOB gezeigt und in einer zweiten Teildarstellung B ist ein Muster 610 aus lediglich beispielhaft acht vordefinierten punktsymmetrischen Bereichen 110A und HOB gezeigt. Hierbei weisen erste vordefinierte punktsymmetrische Bereiche 110A als Symmetrieart ungerade Punktsymmetrie auf und weisen zweite vordefinierte punktsymmetrische Bereiche HOB als Symmetrieart gerade Punktsymmetrie auf. Auf jedem der Darstellungsmedien 600 ist hierbei ein rauschartiges Bildmuster mit dem jeweiligen Muster 610 gedruckt. 6 shows schematic representations of presentation media 600 with patterns 610 of predefined point-symmetric regions 110A and HOB according to embodiments. Each of the predefined point-symmetrical areas 110A and 110B corresponds to or is similar to the predefined point-symmetrical area from Fig. 1. In a first partial view A, a pattern 610 of 49 predefined point-symmetrical areas 110A and HOB is shown merely by way of example, and in a second partial view B there is a pattern 610 is shown from eight predefined point-symmetrical regions 110A and HOB, merely by way of example. In this case, first predefined point-symmetrical areas 110A have odd point symmetry as the type of symmetry and second predefined point-symmetrical areas HOB have even point symmetry as the type of symmetry. In this case, a noise-like image pattern with the respective pattern 610 is printed on each of the display media 600 .
Anhand von Fig. 6 kann eine gemäß Ausführungsbeispielen erfolgende Nutzung von Symmetrien im Bereich des maschinellen Sehens veranschaulicht werden, wobei die Symmetrien für den Menschen nicht oder kaum wahrnehmbar gestaltet sein können, gleichzeitig für Ausführungsbeispiele jedoch robust, örtlich präzise, und mit minimalem Rechenaufwand detektierbar sind. In den Mustern 610 sind hierbei Punktsymmetrien quasi versteckt, die für einen Betrachter kaum erkennbar sind. Durch grafische Hervorhebung der vordefinierten punktsymmetrischen Bereiche 110A und HOB in Fig. 6 sind dieselben für einen menschlichen Betrachter in dem rauschartigen Bildmuster auf den Darstellungsmedien 600 erkennbar. In der ersten Teildarstellung A sind 49 beispielhaft kreisförmige symmetrische Bereiche 110A und HOB enthalten, davon lediglich beispielhaft 25 erste Bereiche 110A mit ungerader Punktsymmetrie und 24 zweite Bereich HOB mit gerader Punktsymmetrie. In der zweiten Teildarstellung B sind die symmetrischen Bereiche 110A und HOB, von denen lediglich beispielhaft fünf eine ungerade Punktsymmetrie und lediglich beispielhaft drei eine gerade Punktsymmetrie aufweisen, größer gewählt als in der ersten Teildarstellung A, und damit insbesondere für größere Kamera- Distanzen bzw. niedrigere Bildauflösungen geeignet. Auf den als Platten ausgeführten Darstellungsmedien 600 befinden sich also kreisförmige symmetrische Bereiche 110A und HOB, wobei im Falle von ungerader bzw. negativer Punktsymmetrie, die Punktspiegelung hell auf dunkel abbildet und umgekehrt, während im Falle von gerader bzw. positiver Punktsymmetrie diese Umkehrung nicht stattfindet. Werden mehrere Muster 610 benötigt, können diese unterscheidbar gestaltet werden. Dies kann über die Anordnung der Symmetriezentren der Bereiche 110A und 110B geschehen, wie in Fig. 6 zu sehen, in der die erste Teildarstellung A und die zweite Teildarstellung B einfach unterscheidbar sind, oder anhand der Abfolge von negativen bzw. ungeraden und positiven bzw. geraden Punktsymmetrien der Bereiche 110A und HOB innerhalb jeweiliger Muster 610. A use of symmetries in the field of machine vision according to exemplary embodiments can be illustrated with reference to FIG . In this case, point symmetries are more or less hidden in the patterns 610, which are hardly recognizable to an observer. By graphically highlighting the predefined point-symmetric regions 110A and HOB in FIG. 6, they are recognizable to a human viewer in the noise-like image pattern on the presentation media 600. The first partial representation A contains 49 exemplary circular symmetrical regions 110A and HOB, of which 25 first regions 110A with odd point symmetry and 24 second regions HOB with even point symmetry are merely exemplary. In the second partial representation B, the symmetrical regions 110A and HOB, of which only five have an odd point symmetry and only three of which have an even point symmetry, are selected to be larger than in FIG the first partial representation A, and is therefore particularly suitable for larger camera distances or lower image resolutions. Circular symmetrical areas 110A and HOB are therefore located on the representation media 600 designed as plates, whereby in the case of odd or negative point symmetry, the point reflection maps light to dark and vice versa, while in the case of even or positive point symmetry this reversal does not take place. If several patterns 610 are required, they can be designed to be distinguishable. This can be done via the arrangement of the centers of symmetry of the areas 110A and 110B, as can be seen in Fig. 6, in which the first partial representation A and the second partial representation B can be easily distinguished, or by means of the sequence of negative or odd and positive or straight point symmetries of regions 110A and HOB within respective patterns 610.
Fig. 7 zeigt schematische Darstellungen von Darstellungsmedien 600 mit Mustern 610 aus vordefinierten punktsymmetrischen Bereichen gemäß Ausführungsbeispielen. Die Muster 610 entsprechen oder ähneln hierbei einem der Muster aus Fig. 6, wobei die Muster 610 in der Darstellung von Fig. 7 ohne grafische Hervorhebung gezeigt sind. In Fig. 7 sind lediglich beispielhaft zehn Darstellungsmedien 600 ähnlich jenen aus Fig. 6 gezeigt. FIG. 7 shows schematic representations of representation media 600 with patterns 610 of predefined point-symmetrical areas according to embodiments. The patterns 610 correspond to or are similar to one of the patterns from FIG. 6, the patterns 610 being shown in the representation of FIG. 7 without graphical emphasis. Ten presentation media 600 similar to those of FIG. 6 are shown in FIG. 7 by way of example only.
Fig. 8 zeigt schematische Darstellungen der Darstellungsmedien 600 mit den Mustern 610 aus Fig. 7 mit grafischer Hervorhebung von Mustern bzw. vordefinierten punktsymmetrischen Bereichen 110A und HOB. Es sind lediglich beispielhaft auf den zehn Darstellungsmedien 600 hierbei Muster 610 mit vordefinierten punktsymmetrischen Bereichen 110A und HOB angeordnet bzw. grafisch hervorgehoben dargestellt. FIG. 8 shows schematic representations of the display media 600 with the patterns 610 from FIG. 7 with graphical highlighting of patterns or predefined point-symmetrical regions 110A and HOB. In this case, patterns 610 with predefined point-symmetrical regions 110A and HOB are arranged or graphically highlighted on the ten display media 600, merely by way of example.
Somit zeigen Fig. 7 und Fig. 8 lediglich beispielhaft zehn auf Unterscheidbarkeit optimierte Muster 610. Jedes Muster 610 weist eine individuelle Anordnung der ungerade und gerade punktsymmetrischen Bereiche 110A und HOB auf. Die Muster 610 sind also durch diese Anordnung codiert. Die Codierungen wurden hier so gewählt und aufeinander abgestimmt und/oder per Training optimiert, dass die zehn Muster 610 selbst dann noch eindeutig erkennbar und unterscheidbar sind, wenn sie rotiert oder gespiegelt oder teilweise verdeckt von der Kamera erfasst werden. In den Mustern 610 aus Fig. 7 und Fig. 8 sind jeweils die punktsymmetrischen Bereiche 110A und HOB in den vier Ecken jedes Darstellungsmediums 600 absichtlich etwas auffälliger gestaltet. Dies ist für die Funktion an sich irrelevant, bietet aber praktische Vorteile bei der manuellen Montage der Darstellungsmedien 600 mit den Mustern 610. Die Darstellungsmedien 600 mit den Mustern 610 können im Rahmen des bereits beschriebenen Herstellungsverfahrens beliebig arrangiert werden, z. B. dreidimensional oder flach in Reihe oder als Fläche. Die Punktsymmetriezentren der Muster 610 können im Rahmen des bereits beschriebenen Bereitstellungsverfahrens und/oder mittels der bereits beschriebenen Bereitstellungsvorrichtung korrekt und präzise gefunden werden. Die Muster 610 können beispielsweise auf stabile Platten beliebiger Größe gedruckt sein, die optional in teilweise rechtwinkliger Anordnung relativ zueinander platziert sein können. Auch bei unscharfer Abbildung der Muster 610 durch die Kamera können die Symmetriezentren hinreichend gut detektiert werden, um damit die beschriebenen Funktionen zu ermöglichen. Somit ist die Detektion der Punktsymmetriezentren robust gegenüber einer unscharfen Abbildung. Das erweitert den Einsatzbereich auf Situationen, in denen mit geringer Schärfentiefe gearbeitet wird, z. B. Szenen mit wenig Licht, oder in denen der Fokus bzw. Autofokus der Kamera fehlerhaft gesetzt ist oder eine perfekt scharfe Abbildung nicht realisierbar ist, z. B. in flüssigen oder trüben oder bewegten Medien oder im Randbereich eines Objektivs oder während einer Relativbewegung zwischen Muster 610 und Kamera (Bewegungsunschärfe, gerichtete Unschärfe). Auch wenn Punktsymmetrien natürlich und insbesondere in vom Menschen gestalteten Umgebungen vorkommen, sind darauf beruhende etwaige Fehldetektionen jedoch anders örtlich verteilt als die auf korrekten Mustern 610 beruhenden Detektionen und somit lassen sich beide Gruppen leicht voneinander trennen bzw. unterscheiden. Thus, FIG. 7 and FIG. 8 show ten patterns 610 optimized for distinguishability only by way of example. Each pattern 610 has an individual arrangement of the odd and even point-symmetrical regions 110A and HOB. The patterns 610 are thus encoded by this arrangement. The codings were selected here and matched to one another and/or optimized by training in such a way that the ten patterns 610 are still clearly recognizable and distinguishable even if they are rotated or mirrored or partially covered by be captured by the camera. In the patterns 610 of FIGS. 7 and 8, the point-symmetrical regions 110A and HOB in the four corners of each display medium 600 are intentionally made slightly more conspicuous, respectively. This is irrelevant to the function itself, but offers practical advantages when manually assembling the display media 600 with the patterns 610. The display media 600 with the patterns 610 can be arranged as desired within the scope of the manufacturing process already described, e.g. B. three-dimensional or flat in a row or as a surface. The point symmetry centers of the patterns 610 can be found correctly and precisely within the scope of the provision method already described and/or by means of the provision device already described. For example, the patterns 610 may be printed on any size solid board, which may optionally be placed in a partially orthogonal relationship relative to one another. The centers of symmetry can also be detected sufficiently well in the case of a blurred image of the pattern 610 by the camera in order to enable the functions described. Thus, the detection of the point symmetry centers is robust to a blurred image. This expands the range of applications to situations in which work is carried out with a shallow depth of field, e.g. B. Scenes with little light, or in which the focus or autofocus of the camera is set incorrectly or a perfectly sharp image cannot be achieved, e.g. B. in liquid or cloudy or moving media or in the edge area of a lens or during a relative movement between pattern 610 and camera (motion blur, directional blur). Even if point symmetries occur naturally and in particular in human-designed environments, any incorrect detections based on them are spatially distributed differently than the detections based on correct patterns 610 and the two groups can therefore be easily separated or distinguished from one another.
Um zu vermitteln, dass das vorstehend genannte Bereitstellungsverfahren auch für nichtebene und sogar für elastische Oberflächen in Bewegung funktioniert, können die Muster 610 aus Fig. 7 und Fig. 8 beispielsweise auf Papier gedruckt und zu einer flexiblen Schachtel zusammengefügt werden. Auch bei nichtebenen oder elastischen Oberflächen (wie beispielsweise aus Papier) funktioniert das vorstehend genannte Bereitstellungsverfahren problemlos. Dies ermöglicht die Bestimmung von Bewegungen dieser Oberflächen. Papier erlaubt im Gegensatz zu vielen Stoffen zwar keine Scherung, jedoch ist die Punktsymmetrie auch invariant gegenüber der Scherung, so dass diese keine Schwierigkeit darstellt. To convey that the above provisioning method also works for non-planar and even elastic surfaces in motion, the patterns 610 of FIGS. 7 and 8 can be printed on paper, for example, and assembled into a flexible box. Even with non-flat or elastic surfaces (such as paper), the above-mentioned provision method works without any problems. This enables the Determination of movements of these surfaces. In contrast to many substances, paper does not allow shearing, but the point symmetry is also invariant to shearing, so this does not pose a problem.
Insbesondere eine Lage der Symmetriezentren in den Kamerabildern kann präzise ermittelt werden. Es kann jedoch in verschiedenen Anwendungen auch von Interesse sein, diese präzise Vermessung auf die gesamte Fläche des Musters 610 auszudehnen. Also für jeden Punkt bzw. Pixel des Musters 610 anzugeben, wo dieser sich im Kamerabild befindet. Das erlaubt dann z. B., kleinste Abweichungen zwischen dem real beobachteten Muster 610 und dem idealen Muster gemäß Konstruktion (Ground Truth) zu ermitteln. Dies ist beispielsweise von Interesse, wenn das Muster 610 auf einer nicht glatten oder nicht starren Oberfläche gedruckt aufgebracht ist und dadurch z. B. veränderliche Falten oder Dellen im Muster 610 entstehen, deren genaue Form ermittelt werden soll. Insbesondere Muster mit Zufallscharakter sind ausgezeichnet geeignet, um korrespondierende Punkte von einem ersten Bild zu einem zweiten Bild zu finden. Dabei können das erste und zweite Bild in zeitlicher Abfolge mit derselben Kamera aufgenommen sein oder von zwei Kameras aus unterschiedlicher Perspektive. In particular, a position of the centers of symmetry in the camera images can be determined precisely. However, it may also be of interest in various applications to extend this precise measurement to the entire area of the pattern 610. In other words, to indicate for each point or pixel of the pattern 610 where it is located in the camera image. This then allows e.g. B. to determine the smallest deviations between the actually observed pattern 610 and the ideal pattern according to the construction (ground truth). This is of interest, for example, if the pattern 610 is printed on a non-smooth or non-rigid surface and thereby z. B. variable folds or dents arise in the pattern 610, the exact shape of which is to be determined. In particular, random patterns are excellent for finding corresponding points from a first image to a second image. The first and second images can be recorded in chronological order with the same camera or by two cameras from different perspectives.
Insbesondere soll nun der Fall betrachtet werden, wenn das erste Bild ein reales Bild von einer Kamera ist und das zweite Bild ein künstlich erzeugtes (gespeichertes) Bild des gegebenen Musters, auch Referenzbild genannt, das z. B. anhand der gefundenen Symmetriezentren so ins zweite Bild platziert wurde (z. B. skaliert, gedreht, affin abgebildet, projiziert), dass es dem realen (ersten) Bild möglichst nahekommt. Beim Referenzbild können ggf. Verarbeitungsschritte übersprungen bzw. eingespart werden, die beim ersten Bild, das von der Kamera kommt, notwendig sind, z. B. Schritte der Bildvorverarbeitung. Dann können nachfolgend bekannte Methoden z. B. des optischen Flusses oder der Disparitätsschätzung angewendet werden, um z. B. für jeden Pixel im Kamerabild die Korrespondenz im Referenzbild zu finden - oder umgekehrt. Damit ergibt sich also ein zweischrittiges Vorgehen: Im ersten Schritt werden die gefundenen Symmetriezentren und ggf. die enthaltene Codierung ausgenutzt, um das reale Bild auf das bekannte Muster zu registrieren oder grob auszurichten. Dies stellt dann die Initialisierung dar, um im zweiten Schritt z. B. mit Methoden des optischen Flusses nochmals die kleinsten Abweichungen im Sinne örtlicher Verschiebungen zwischen registriertem realem Bild und Muster präzise zu ermitteln, und zwar bei Bedarf für jeden Punkt bzw. Pixel des Bildes oder des Musters 610. Der aufzuwendende Rechenaufwand für den zweiten Schritt ist umso kleiner, je kleiner der Suchbereich ist. Hier ist er in der Regel sehr klein - aufgrund der guten Initialisierung aus dem ersten Schritt. Da beide Schritte wenig Rechenaufwand beanspruchen, wird auf üblichen Rechnerplattformen ein hoher Pixel-Durchsatz erreicht, der als Produkt aus Bildwiederholrate [Bilder/s] und Bildgröße [Pixel/Bild] definiert ist. Wenn stellenweise keine Übereinstimmung auffindbar ist, ist dies in der Regel dadurch zu erklären, dass die Sicht auf das Muster 610 durch ein Objekt verdeckt ist. Hieraus können Rückschlüsse auf eine Form bzw. einen Umriss des verdeckenden Objekts gezogen werden. In particular, the case should now be considered when the first image is a real image from a camera and the second image is an artificially generated (stored) image of the given pattern, also called a reference image, which e.g. B. was placed in the second image based on the centers of symmetry found (e.g. scaled, rotated, mapped affinely, projected) so that it comes as close as possible to the real (first) image. With the reference image, processing steps that are necessary for the first image that comes from the camera, e.g. B. Image preprocessing steps. Then following known methods z. B. the optical flow or the disparity estimation can be applied to z. B. to find the correspondence in the reference image for each pixel in the camera image - or vice versa. This results in a two-step procedure: In the first step, the centers of symmetry found and, if applicable, the coding they contain are used to register or roughly align the real image with the known pattern. This then represents the initialization to, in the second step, e.g. B. using optical flow methods to precisely determine the smallest deviations in the sense of local shifts between the registered real image and pattern, if necessary for each point or pixel of the image or pattern 610. The computational effort required for the second step is all the smaller , the smaller the search area. Here it is usually very small - due to the good initialization from the first step. Since both steps require little computing effort, a high pixel throughput is achieved on standard computer platforms, which is defined as the product of the frame rate [images/s] and image size [pixels/image]. If no match can be found in places, this can usually be explained by the fact that the view of the pattern 610 is obscured by an object. From this, conclusions can be drawn about a shape or an outline of the obscuring object.
Für das vorstehend genannte zweischrittige Vorgehen soll das Referenzbild bereitgestellt werden. Das kann so gelöst werden, dass für alle in Frage kommenden Muster 610 das zugehörige Referenzbild in einem Speicher vorgehalten wird. Der hiermit einhergehende Speicheraufwand kann reduziert werden, indem man nur die jeweiligen Parameter speichert, die notwendig sind, um das Referenzbild bei Bedarf neu zu errechnen bzw. zu generieren. Die Muster 610 können beispielsweise nach einfachen Regeln mit Hilfe eines Quasi- Zufallszahlen-Generators erzeugt werden. Das Wort „Quasi“ deutet hier an, dass der Zufallszahlen-Generator in Wirklichkeit nach deterministischen Regeln arbeitet und seine Ergebnisse daher reproduzierbar sind, was hier von Vorteil ist. Unter Regeln ist hier beispielsweise zu verstehen, welchen Durchmesser die symmetrischen Bereiche 110A und HOB haben und wie die Spiegelung durchzuführen ist und wie das Muster 610 aus mehreren Mustern mit unterschiedlichem Detaillierungsgrad gewichtet zusammengesetzt wird, z. B. damit es bei kurzen, mittleren und großen Distanzen gut detektierbar ist. Es genügt dann, nur die Initialisierungsdaten (Seeds) des Quasi-Zufallszahlen- Generators und ggf. die Auswahl der Regeln für den Bau des Musters 610 zu speichern. Mittels dieser Bildungsvorschrift kann das Referenzmuster bei Bedarf immer wieder neu und identisch erzeugt (und anschließend wieder gelöscht) werden. Zusammengefasst lässt sich das zweischrittige Vorgehen beispielsweise etwa wie folgt darstellen. Im ersten Schritt werden die Symmetriezentren gefunden und ihre Vorzeichen ermittelt. Mit Vorzeichen ist hier die Fallunterscheidung zwischen ungerader und gerader Symmetrie gemeint. Durch einen Vergleich der Abfolge der Vorzeichen wird ermittelt, um welches von mehreren Mustern es sich handelt. Die Abfolge der Vorzeichen des Musters 610 kann auch als Code bezeichnet werden. Dieser ist kompakt beschreibbar und benötigt bei einem Muster 610 mit beispielsweise 8><8 Symmetriezentren höchstens 64 bit. Zum Zweck des Vergleichs sollten alle existierenden bzw. in Frage kommenden Codes gespeichert sein. Aus dieser Menge wird der Code gesucht, der mit der Beobachtung möglichst widerspruchsfrei übereinstimmt. Dieses Ergebnis ist in der Regel eindeutig. Diese Suche ist auch dann noch möglich, wenn die Kamera z. B. wegen Verdeckung nur einen Teil des Musters 610 erfassen kann, denn der Code bietet in diesem Beispiel mit 8><8 Symmetriezentren eine sehr große Zahl von bis zu 264 Möglichkeiten, während die Zahl der gefertigten Muster 610 viel kleiner sein wird, so dass eine hohe Redundanz gegeben ist. Für jeden gespeicherten Code sollten auch die Informationen wie Parameter und Auswahl der Regeln gespeichert sein, die notwendig sind, um das Referenzbild zu erzeugen. Dieses wird für den zweiten Schritt erzeugt, z. B. nach Bedarf, also erst zu dem Zeitpunkt, wenn es benötigt wird, und ggf. nur temporär. The reference image should be provided for the two-step procedure mentioned above. This can be solved in such a way that the associated reference image is kept available in a memory for all patterns 610 in question. The associated memory overhead can be reduced by only storing the respective parameters that are necessary to recalculate or generate the reference image if required. The patterns 610 can, for example, be generated according to simple rules using a quasi-random number generator. The word "quasi" here indicates that the random number generator actually works according to deterministic rules and its results are therefore reproducible, which is an advantage here. Rules are to be understood here, for example, as to the diameter of the symmetrical areas 110A and HOB and how the mirroring is to be carried out and how the pattern 610 is composed of a plurality of patterns with different degrees of detail, e.g. B. so that it can be easily detected at short, medium and large distances. It is then sufficient to store only the initialization data (seeds) of the quasi-random number generator and, if applicable, the selection of the rules for the construction of pattern 610. By means of this formation rule, the reference pattern can be generated again and again and identically (and then deleted again) if required. In summary, the two-step procedure can be represented, for example, as follows. In the first step, the symmetry centers are found and their signs determined. The sign here means the case distinction between odd and even symmetry. By comparing the sequence of signs, it is determined which of several patterns is involved. The sequence of signs of the pattern 610 can also be referred to as a code. This can be described in a compact manner and requires a maximum of 64 bits for a pattern 610 with, for example, 8×8 centers of symmetry. For comparison purposes, all existing or candidate codes should be stored. From this set, the code is sought that matches the observation with as few contradictions as possible. This result is usually unambiguous. This search is still possible even if the camera z. B. can only detect a part of the pattern 610 due to occlusion, because the code in this example with 8 × 8 centers of symmetry offers a very large number of up to 2 64 possibilities, while the number of patterns 610 produced will be much smaller, see above that there is a high level of redundancy. For each stored code, the information such as parameters and selection of rules necessary to generate the reference image should also be stored. This is generated for the second step, e.g. B. as needed, i.e. only at the time when it is needed, and possibly only temporarily.
Anhand der im ersten Schritt gefundenen Positionen der Symmetriezentren in den Koordinaten des Kamerabilds und den bekannten, dazu korrespondierenden Positionen im Referenzbild kann eine Transformationsvorschrift errechnet werden, die diese Koordinaten möglichst gut ineinander abbildet, zum Beispiel mit einer projektiven oder affinen Abbildung, die im Sinne der kleinsten Quadrate optimiert wird. Mit dieser Transformation und geeigneter Filterung der Bilddaten können die beiden Bilder in ein gemeinsames Koordinatensystem transformiert (gewarpt) werden, z. B. in das Koordinatensystem des Kamerabilds oder in das Koordinatensystem des Referenzbilds oder in ein beliebiges drittes Koordinatensystem. Die beiden somit bereits aufeinander ausgerichteten Bilder werden anschließend genauer verglichen, z. B. mit Methoden des optischen Flusses. Beispielsweise wird für jedes Pixel des ersten Bildes, vorzugsweise unter Berücksichtigung seiner Umgebung, das beste korrespondierende Pixel, mit Umgebung, des zweiten Bildes gesucht. Die relative Verschiebung der korrespondierenden Positionen kann als Verschiebungsinformation, insbesondere als absolute Koordinaten oder als Verschiebungsvektor ausgedrückt werden. Die Ermittlung eines solchen Verschiebungsvektors kann mit Sub-Pixel-Genauigkeit erfolgen, die Korrespondenz liegt dann in der Regel nicht auf dem Pixelraster, sondern dazwischen. Diese Information erlaubt hochgenaue Analysen auf der gesamten Fläche des im Kamerabild erfassten Musters 610, z. B. um mit elastischen Mustern Verformungen oder Verzerrungen des Musters 610 bzw. seines Trägers/Darstellungsmediums 600 oder aber bei starren Mustern Abweichungen der Abbildung im optischen Pfad zu analysieren. Based on the positions of the centers of symmetry in the coordinates of the camera image found in the first step and the known, corresponding positions in the reference image, a transformation rule can be calculated that maps these coordinates into one another as well as possible, for example with a projective or affine mapping, which in the sense of the least squares optimization. With this transformation and suitable filtering of the image data, the two images can be transformed (warped) into a common coordinate system, e.g. B. in the coordinate system of the camera image or in the coordinate system of the reference image or in any third coordinate system. The two images, which are already aligned with one another, are then compared more precisely, e.g. B. with optical flow methods. For example, the best corresponding pixel with surroundings of the second image is sought for each pixel of the first image, preferably taking into account its surroundings. The relative displacement of corresponding positions can be expressed as displacement information, in particular as absolute coordinates or as a displacement vector. Such a displacement vector can be determined with sub-pixel accuracy, the correspondence is then usually not on the pixel grid, but in between. This information allows highly accurate analyzes of the entire area of the pattern 610 captured in the camera image, e.g. B. to analyze deformations or distortions of the pattern 610 or its carrier/representation medium 600 with elastic patterns or deviations of the image in the optical path in the case of rigid patterns.
Ist eine gesuchte Korrespondenz im erwarteten Bereich nicht auffindbar, kann so auf eine lokale Verdeckung des Musters 610 zurückgeschlossen werden. Ursache der Verdeckung kann z. B. ein Objekt sein, das auf dem Muster 610 liegt, oder ein zweites Muster, das das erste Muster teilweise verdeckt. Aus dieser Verdeckungsanalyse können ebenfalls wertvolle Informationen geschöpft werden, z. B. Masken oder Umrisse der Objekte. If a sought-after correspondence cannot be found in the expected area, a local occlusion of the pattern 610 can be inferred. The cause of the masking can e.g. B. an object lying on the pattern 610, or a second pattern that partially obscures the first pattern. Valuable information can also be obtained from this occlusion analysis, e.g. B. masks or outlines of the objects.
Fig. 9 zeigt schematische Darstellungen von vordefinierten punktsymmetrischen Bereichen 110A und HOB gemäß Ausführungsbeispielen. Jeder der vordefinierten punktsymmetrischen Bereiche 110A und 110B entspricht oder ähnelt hierbei dem vordefinierten punktsymmetrischen Bereich aus einer der vorstehend beschriebenen Figuren. In einer ersten Teildarstellung A ist ein zweiter punktsymmetrischer bzw. gerade punktsymmetrischer Bereich HOB einschließlich seines Symmetriezentrums 112 gezeigt und in einer zweiten Teildarstellung B ist ein erster punktsymmetrischer bzw. ungerade punktsymmetrischer Bereich 110A einschließlich seines Symmetriezentrums 112 gezeigt. Die vordefinierten punktsymmetrischen Bereiche 110A und HOB repräsentieren hierbei mit Graustufen gebildete Bereiche. FIG. 9 shows schematic representations of predefined point-symmetrical regions 110A and HOB according to exemplary embodiments. Each of the predefined point-symmetrical areas 110A and 110B corresponds to or is similar to the predefined point-symmetrical area from one of the figures described above. A first partial view A shows a second point-symmetrical or even point-symmetrical area HOB including its center of symmetry 112 and a second partial view B shows a first point-symmetrical or odd point-symmetrical area 110A including its center of symmetry 112 . The predefined point-symmetrical areas 110A and HOB here represent areas formed with gray levels.
Die Verwendung der Punktsymmetrie hat gegenüber anderen Symmetrieformen die Vorteile, dass sie bei Drehung des Musters und/oder des zumindest einen vordefinierten punktsymmetrischen Bereichs, um die Sichtachse, erhalten bleibt, dass bei Verkippung des Musters und/oder des zumindest einen vordefinierten punktsymmetrischen Bereichs, also unter schrägen Perspektiven, ebenfalls erhalten bleibt. Drehung und Verkippung des Musters /oder des zumindest einen vordefinierten punktsymmetrischen Bereichs stellen kein Problem für die Detektion der ungeraden und geraden Punktsymmetrien dar, denn diese bleiben dabei erhalten. Dadurch ist das vorstehend bereits genannte Verfahren zum Bereitstellen bzw. Bereitstellungsverfahren auch für schräge Perspektiven auf das Muster bzw. den zumindest einen vordefinierten punktsymmetrischen Bereich geeignet. Bei gerader Punktsymmetrie bleibt beispielsweise ein Grauoder Farbwert bei der Punktspiegelung erhalten. The use of point symmetry has the advantages over other forms of symmetry that it is retained when the pattern and/or the at least one predefined point-symmetrical area is rotated about the viewing axis, that when the pattern and/or the at least one predefined point-symmetrical area is tilted, i.e under oblique perspectives, is also preserved. Rotation and tilting of the pattern / or at least one predefined point-symmetrical range do not pose a problem for the detection of odd and even point symmetries, because these are retained. As a result, the method for providing or providing method already mentioned above is also suitable for oblique perspectives of the pattern or the at least one predefined point-symmetrical area. In the case of straight point symmetry, for example, a gray or color value is retained in point reflection.
Punktsymmetrisch zu dem Symmetriezentrum 112 in der ersten Teildarstellung A von Fig. 9 findet man zu jedem Grauwert g jeweils denselben Partner-Grauwert gpG = g. In der zweiten Teildarstellung B von Fig. 9 ist ungerade Punktsymmetrie dargestellt, wobei der Grauwert jeweils invertiert wird: Beispielsweise wird weiß zu schwarz und umgekehrt, hellgrau zu dunkelgrau und umgekehrt. In diesem Beispiel mit Grauwerten g im Intervall 0 < g < 1 wurden die punktgespiegelten Grauwerte gpu auf die einfachstmögliche Weise gemäß gpu = 1 - g aus den originalen Grauwerten g aus einer in der Darstellung von Fig. 9 oben gezeigten Hälfte des Bereichs 110A gebildet. Es können auch Nichtlinearitäten in die Invertierung integriert werden, beispielsweise Gamma- Korrekturen, z. B. um andere Nichtlinearitäten in der Bilddarstellung und Bildaufnahme zu kompensieren. Die Bildung geeigneter ungerader oder gerader punktsymmetrischer Muster ist entsprechend einfach. Beispielsweise wird die in der Darstellung von Fig. 9 oben gezeigte Hälfte des jeweiligen Bereichs 110A bzw. HOB beliebig festgelegt oder per Zufall generiert. Die in der Darstellung von Fig. 9 unten gezeigte Hälfte ergibt sich dann daraus, und zwar per Punktspiegelung mit Invertierung der Grauwerte für ungerade Punktsymmetrie oder ohne Invertierung der Grauwerte für gerade Punktsymmetrie. Point-symmetrical to the center of symmetry 112 in the first partial representation A of FIG. 9, one finds the same partner gray value gpG=g for each gray value g. Odd point symmetry is shown in the second partial representation B of FIG. 9, with the gray value being inverted in each case: for example, white becomes black and vice versa, light gray becomes dark gray and vice versa. In this example with gray values g in the interval 0<g<1, the point-mirrored gray values gpu were formed in the simplest possible way according to gpu=1-g from the original gray values g from one half of the region 110A shown in the representation of FIG. 9 at the top. Non-linearities can also be integrated into the inversion, for example gamma corrections, e.g. B. to compensate other non-linearities in the image display and image acquisition. The formation of suitable odd or even point-symmetrical patterns is correspondingly easy. For example, the half of the respective area 110A or HOB shown at the top in the illustration in FIG. 9 is defined arbitrarily or generated at random. The half shown below in the representation of FIG. 9 then results from this, namely by point reflection with inversion of the gray values for odd point symmetry or without inversion of the gray values for even point symmetry.
Diese Betrachtung bzw. Erzeugung lässt sich auch auf farbige Muster und/oder vordefinierter punktsymmetrischer Bereiche erweitern. Bei der ungeraden Punktsymmetrie können hierbei die punktgespiegelten RGB-Werte durch Invertierung der einzelnen originalen RGB-Werte gebildet werden, was wieder die einfachste Möglichkeit darstellt, also rpu = 1 - r (rot), gpu = 1 - g (g steht hier für grün), bpu = 1 - b (blau). So wird beispielsweise dunkelviolett auf hellgrün abgebildet und blau auf orange. Farbige Muster können mehr Information als monochrome Muster repräsentieren, was vorteilhaft sein kann. Voraussetzung für die Nutzung dieses Vorteils ist, dass bei der Umwandlung des Originalbilds, d.h. Farbbild einer Kamera oder eines anderen bildgebenden Sensors, in Deskriptoren die Farbinformation auch ausgenutzt wird. This consideration or generation can also be extended to include colored patterns and/or predefined point-symmetrical areas. With odd point symmetry, the point-mirrored RGB values can be formed by inverting the individual original RGB values, which is the simplest option, i.e. rpu = 1 - r (red), gpu = 1 - g (g stands for green ), bpu = 1 - b (blue). For example, dark violet maps to light green and blue maps to orange. Colored patterns can represent more information than monochrome patterns, which can be advantageous. precondition The use of this advantage is that the color information is also used in the conversion of the original image, ie the color image of a camera or another imaging sensor, into descriptors.
Nachfolgend soll auch unter Bezugnahme auf die vorstehend beschriebenen Figuren auf eine konkrete Ausführung der Muster 610 und/oder des zumindest einen vordefinierten punktsymmetrischen Bereichs 110 bzw. 110A und/oder HOB eingegangen werden. A specific embodiment of the pattern 610 and/or the at least one predefined point-symmetrical region 110 or 110A and/or HOB will also be discussed below with reference to the figures described above.
Hinsichtlich einer Anordnung der Muster 610 und/oder des zumindest einen vordefinierten punktsymmetrischen Bereichs 110 bzw. 110A und/oder 110B können, wie z. B. in Fig. 6, die punktsymmetrischen Bereiche 110 bzw. 110A und/oder HOB beispielsweise kreisförmig sein und können diese wiederum meistens in einem regelmäßigen Gitter in dem Muster 610 angeordnet sein. Zwischen den kreisförmigen Bereichen 110 bzw. 110A und/oder HOB können beispielsweise Flächen ungenutzt bleiben. Dazu gibt es Alternativen: Beispielsweise können die Bereiche 110 bzw. 110A und/oder HOB quadratisch sein und lückenlos aneinander anschließen, so dass die gesamte Fläche ausgenutzt wird, oder die symmetrischen Bereiche 110 bzw. 110A und/oder HOB können regelmäßige Sechseckflächen sein, die ebenfalls lückenlos aneinander anschließen, so dass die gesamte Fläche ausgenutzt wird. With regard to an arrangement of the pattern 610 and/or the at least one predefined point-symmetrical region 110 or 110A and/or 110B, such as e.g. 6, the point-symmetrical regions 110 or 110A and/or HOB can be circular, for example, and these can in turn usually be arranged in a regular grid in the pattern 610. For example, areas can remain unused between the circular areas 110 or 110A and/or HOB. There are alternatives to this: For example, the areas 110 or 110A and/or HOB can be square and connect to one another without gaps, so that the entire area is used, or the symmetrical areas 110 or 110A and/or HOB can be regular hexagonal areas that also connect to each other without gaps, so that the entire area is used.
Fig. 10 zeigt in diesem Zusammenhang eine schematische Darstellung eines Musters 610 aus vordefinierten punktsymmetrischen Bereichen 110A und HOB gemäß einem Ausführungsbeispiel. Die vordefinierten punktsymmetrischen Bereiche 110A und HOB entsprechen oder ähneln hierbei den vordefinierten punktsymmetrischen Bereichen aus Fig. 1, Fig. 6 und/oder Fig. 8. Die Bereiche 110A und HOB in Fig. 10 sind jeweils kreisförmig und sind auf einem hexagonalen Raster angeordnet. Hierbei kann ein Abstand zwischen Rasterpunkten bzw. Symmetriezentren dem Kreisdurchmesser entsprechen. So kann eine ungenutzte Fläche 1010 zwischen den Bereichen 110A und HOB in dem Muster 610 minimiert werden. In this context, FIG. 10 shows a schematic representation of a pattern 610 of predefined point-symmetrical regions 110A and HOB according to an exemplary embodiment. The predefined point-symmetrical areas 110A and HOB correspond to or are similar to the predefined point-symmetrical areas from FIG. 1, FIG. 6 and/or FIG. 8. The areas 110A and HOB in FIG. 10 are each circular and are arranged on a hexagonal grid. In this case, a distance between grid points or centers of symmetry can correspond to the circle diameter. Thus, an unused area 1010 between the areas 110A and HOB in the pattern 610 can be minimized.
Auch andere Anordnungen und Formen, z. B. Rechtecke, Polygone etc., sind möglich, die auch miteinander in Form und/oder Größe kombiniert werden können. Beispielsweise ein Wechsel von Fünf- und Sechsecken wie auf einem gewöhnlichen Fußball. Auch können die Formen anders angeordnet, z. B. gedreht sein, ggf. mit unsymmetrischen Bereichen dazwischen. Es ist auch möglich, dass das Symmetriezentrum außerhalb des punktsymmetrischen Bereichs selbst liegt. Dies ist beispielsweise bei einem Kreisring als Form der Fall. Es ist auch nicht nötig, dass alle punktsymmetrischen Bereiche in einer gemeinsamen Ebene liegen. Sie können stattdessen auf unterschiedlichen, im Raum angeordneten Flächen liegen, die auch uneben sein dürfen. Other arrangements and shapes, e.g. B. rectangles, polygons, etc., are possible, which are also combined with each other in shape and / or size be able. For example, an alternation of pentagons and hexagons like on an ordinary soccer ball. The shapes can also be arranged differently, e.g. B. rotated, possibly with asymmetrical areas in between. It is also possible that the center of symmetry lies outside the point-symmetric region itself. This is the case, for example, with a circular ring as the shape. It is also not necessary for all point-symmetrical areas to lie in a common plane. Instead, they can lie on different surfaces arranged in space, which may also be uneven.
Die Muster 610 und/oder der zumindest eine vordefinierte punktsymmetrische Bereich 110 bzw. 110A und/oder HOB kann bzw. können auf unterschiedlichste Art gebildet sein. Nachfolgend sind lediglich einige Beispiele angegeben. Zufallsmuster bzw. Quasi-Zufallsmuster wie Rauschmuster. Diese wurden, durch Einbeziehen niedriger Ortsfrequenzanteile, so gebildet, dass sie auch bei mittleren und größeren Distanzen von der Kamera noch als ausreichend kontrastreiche Rauschmuster wahrgenommen werden. Sogenanntes weißes Rauschen, d. h. unkorrelierte Grauwerte, wäre hierfür ungeeignet. Ästhetische, ggf. regelmäßige Muster, wie Blumenmuster, Rankenmuster (Blätter, Zweige, Blüten), Ornamentmuster, Mosaiken, mathematische Muster, traditionelle Muster, Zwiebelmuster, Muster aus ikonischen Symbolen (Herzen usw.). Nachahmen von Zufallsmustern aus der Natur, z. B. Ackerboden, Waldboden, Rasen, Kiesstrand, Sand, Schüttgut (Schotter, Salz, Reis, Samenkörner), Marmor, Bruchstein, Beton, Ziegelstein, Schiefer, Asphaltoberfläche, Sternenhimmel, Wasseroberfläche, Filz, Hammerschlaglack, rostiges Eisenblech, Schaffell, verstreute Partikel, usw. Fotos von Szenen mit beliebigem Inhalt. Um aus einem solchen Muster einen für die hierin genannten Zwecke geeigneten punktsymmetrischen Bereich und/oder ein Muster zu erzeugen, gibt man eine Hälfte der jeweiligen Fläche beliebig vor und konstruiert die zweite Hälfte durch Punktspiegelung und ggf. Invertierung der Grauwerte bzw. Farbwerte. Siehe hierzu auch Fig. 9 als einfaches Beispiel. The pattern 610 and/or the at least one predefined point-symmetrical region 110 or 110A and/or HOB can be formed in a wide variety of ways. Only a few examples are given below. Random pattern or quasi-random pattern such as noise pattern. By including low spatial frequency components, these were formed in such a way that the camera still perceives them as sufficiently high-contrast noise patterns even at medium and large distances. So-called white noise, i. H. uncorrelated gray values would be unsuitable for this. Aesthetic, possibly regular patterns, such as floral patterns, tendril patterns (leaves, twigs, flowers), ornamental patterns, mosaics, mathematical patterns, traditional patterns, onion patterns, patterns of iconic symbols (hearts, etc.). Imitation of random patterns from nature, e.g. B. farmland, forest floor, lawn, pebble beach, sand, bulk material (gravel, salt, rice, seeds), marble, rubble stone, concrete, brick, slate, asphalt surface, starry sky, water surface, felt, hammered paint, rusty sheet iron, sheepskin, scattered particles , etc. Photos of scenes with any content. In order to generate a point-symmetrical area and/or a pattern from such a pattern that is suitable for the purposes mentioned here, one half of the respective area is specified arbitrarily and the second half is constructed by point reflection and, if necessary, inversion of the gray values or color values. See also Fig. 9 as a simple example.
Hinsichtlich Material, Oberfläche und Herstellung des Musters 610 und/oder des zumindest einen vordefinierten punktsymmetrischen Bereichs 110 bzw. 110A und/oder 110B kommen zahlreiche Möglichkeiten in Frage. Die folgende Liste erhebt keinen Anspruch auf Vollständigkeit: Schwarzweiß-, Graustufen- oder Mehrfarbdruck auf unterschiedlichste Materialien, Druck auf oder hinter Glas oder transparente Folie, Druck auf oder hinter Mattglas oder semitransparente Folie, Relief in Stein oder Glas oder Kunststoff oder Gummi, Relief in gebrannten Materialien wie Steingut, Terrakotta oder Keramik, Relief-Guss in Metall oder Beton oder Gips, Prägung in Kunststoff oder Papier/Pappe, Ätzung in Glas- oder Metall- oder Keramikoberfläche, Fräsung in Holz, Pappe, Metall, Stein etc., Brandoberfläche in Holz oder Papier, photographische Belichtung von Papier oder anderen Materialien, vergängliche bzw. verrottende bzw. wasserlösliche Muster für Kurzzeit-Anwendungen in pflanzlichem Material, Asche, Sand, Holz, Papier, auf Früchten, Schalen von Lebensmitteln etc., Darstellung als Hologramm, Darstellung auf einem Monitor oder Display, ggf. auch zeitlich veränderlich, Darstellung auf einer LCD-Folie oder einer sonstigen Display-Folie, ggf. auch zeitlich veränderlich, etc. With regard to the material, surface and production of the pattern 610 and/or the at least one predefined point-symmetrical region 110 or 110A and/or 110B, there are numerous possibilities. The following list is not exhaustive: black and white, grayscale or Multi-color printing on a wide range of materials, printing on or behind glass or transparent film, printing on or behind frosted glass or semi-transparent film, relief in stone or glass or plastic or rubber, relief in fired materials such as earthenware, terracotta or ceramics, relief casting in metal or concrete or plaster, embossing in plastic or paper/cardboard, etching in glass or metal or ceramic surfaces, milling in wood, cardboard, metal, stone etc., burnt surface in wood or paper, photographic exposure of paper or other materials, transient or Rotting or water-soluble patterns for short-term applications in plant material, ash, sand, wood, paper, on fruit, food shells, etc., representation as a hologram, representation on a monitor or display, possibly also changing over time, representation on an LCD film or other display film, possibly also changing over time, etc.
Hinsichtlich reliefartiger Herstellungsmöglichkeiten, wie auch im Fall von Fräsung, Prägung, Stanzung usw., ist anzumerken, dass der Bereich von der Kamera als ungerade und/oder gerade symmetrisch wahrgenommen werden soll. Daher kann es nötig sein, bereits beim Entwurf z. B. eine spätere Beleuchtung, wie beispielsweise schrägen Lichteinfall auf ein Relief, und Nichtlinearitäten in der optischen Abbildung und sonstige Störungen zu berücksichtigen. Es ist nicht entscheidend, dass die 3D-Form bzw. das Relief an sich die gerade und/oder ungerade Punktsymmetrieart aufweist, sondern das von der Kamera aufgenommene Bild diese Symmetrie zeigt. Dabei sind auch Lichteinfall bzw. Beleuchtungsrichtung und Reflexion des Lichts an der Oberfläche relevant und sollten beim Entwurf mitbedacht werden. Hinsichtlich Bildaufnahme und Beleuchtung sei angemerkt, dass für eine Erfassung des Musters 610 und/oder des zumindest einen vordefinierten punktsymmetrischen Bereichs 110 bzw. 110A und/oder HOB die Aufnahmetechnik geeignet ausgelegt sein sollte. Insbesondere ist es bei schnellen Relativbewegungen zwischen Muster 610 und/oder Bereich(en) 110 bzw. 110A und/oder 110B und Kamera ratsam, eine geeignete Beleuchtung (z.B. Blitzlicht oder Stroboskoplicht oder helles LED-Licht) zu verwenden, damit die Belichtungszeit und somit die Bewegungsunschärfe im Bild klein gehalten werden kann. Für verschiedene Anwendungen ist es sinnvoll, Muster 610 und/oder Bereich(e) 110 bzw. 110A und/oder HOB auf eine transparente oder semitransparente Oberfläche aufzubringen. Dies ermöglicht, Muster 610 und/oder Bereich(e) 110 bzw. 110A und/oder HOB von der einen Seite zu beleuchten und von der anderen Seite zu beobachten. Mit dieser Lösung lassen sich störende Reflexionen der Lichtquelle auf dem Darstellungsmedium wirkungsvoll vermeiden. Für die Anordnung von Muster 610 und/oder Bereich(en) 110 bzw. 110A und/oder 110B, Lichtquelle und Kamera besteht jeweils grundsätzlich die Freiheit, die Vorderseite oder die Rückseite des Trägers bzw. Darstellungsmediums zu wählen. Bei der Wahl kann auch die Gefahr der Verschmutzung von Muster 610 und/oder Bereich(en) 110 bzw. 110A und/oder HOB oder Kamera oder Abnutzung von Muster 610 und/oder Bereich(en) 110 bzw. 110A und/oder HOB eine Rolle spielen: So kann es z. B. sinnvoll sein, Muster 610 und/oder Bereich(e) 110 bzw. 110A und/oder HOB und Kamera rückseitig anzubringen, weil sie sich dort besser z. B. vor Staub oder Wasser schützen lassen oder weil Muster 610 und/oder Bereich(e) 110 bzw. 110A und/oder HOB dort vor mechanischer Abnutzung geschützt ist bzw. sind. With regard to the possibility of manufacturing in relief, as in the case of milling, embossing, punching, etc., it should be noted that the area should be perceived by the camera as odd and/or evenly symmetrical. It may therefore be necessary to include e.g. B. a later illumination, such as oblique incidence of light on a relief, and non-linearities in the optical image and other disturbances to be considered. It is not essential that the 3D shape or relief itself has the even and/or odd type of point symmetry, but that the image captured by the camera shows this symmetry. The incidence of light or the direction of illumination and the reflection of the light on the surface are also relevant and should be taken into account in the design. With regard to image recording and illumination, it should be noted that the recording technique should be designed to be suitable for recording the pattern 610 and/or the at least one predefined point-symmetrical area 110 or 110A and/or HOB. In particular, in the case of fast relative movements between pattern 610 and/or area(s) 110 or 110A and/or 110B and camera, it is advisable to use suitable lighting (e.g. flashlight or stroboscopic light or bright LED light) so that the exposure time and thus the motion blur in the image can be kept small. For various applications, it makes sense to apply patterns 610 and/or area(s) 110 or 110A and/or HOB to a transparent or semi-transparent surface to bring up. This allows pattern 610 and/or area(s) 110 or 110A and/or HOB to be illuminated from one side and observed from the other side. With this solution, disruptive reflections from the light source on the display medium can be effectively avoided. For the arrangement of pattern 610 and/or region(s) 110 or 110A and/or 110B, light source and camera, there is always the freedom to choose the front or the back of the carrier or display medium. When choosing, the risk of contamination of sample 610 and/or area(s) 110 or 110A and/or HOB or camera or wear and tear of sample 610 and/or area(s) 110 or 110A and/or HOB can also be a Play role: So it can z. B. make sense to attach pattern 610 and / or area (s) 110 or 110A and / or HOB and camera on the back because they are better there z. B. be protected from dust or water or because pattern 610 and/or area(s) 110 or 110A and/or HOB is or are protected there from mechanical wear and tear.
In der nachveröffentlichten DE 10 2020 202 160 ist ein Verfahren offenbart, das auch in Ausführungsbeispielen genutzt wird, um zuverlässig und mit sehr geringem Rechenaufwand symmetrische Bereiche bzw. Muster in einem Bild zu finden. Hierbei wird das Originalbild, d. h. ein Farbbild oder Grauwertbild einer Kamera oder eines anderen bildgebenden Sensors, in ein Bild von Deskriptoren umgewandelt, wobei ein Deskriptor jeweils anhand einer lokalen Umgebung des Originalbilds gebildet wird. Dabei ist der Deskriptor eine andere Repräsentationsform für den lokalen Bildinhalt, der diesen in einer einfacher zu verarbeitenden Form aufbereitet. Unter einfacher ist dabei unter anderem zu verstehen: enthält Information über die Umgebung des Punkts und nicht nur über den Punkt selbst, weitgehende Invarianz gegenüber Helligkeit bzw. Beleuchtung und deren Änderung und geringere Empfindlichkeit gegenüber Rauschen des Sensors. Das Deskriptorbild kann die gleiche Auflösung wie das Originalbild aufweisen, sodass etwa pro Pixel des Originalbilds ein Deskriptor vorliegt. Andere Auflösungen sind ebenfalls möglich, alternativ oder zusätzlich. The subsequently published DE 10 2020 202 160 discloses a method that is also used in exemplary embodiments in order to find symmetrical regions or patterns in an image reliably and with very little computing effort. Here, the original image, i. H. a color image or grayscale image from a camera or another imaging sensor, is converted into an image of descriptors, with a descriptor being formed based on a local environment of the original image. The descriptor is another form of representation for the local image content that prepares it in a form that is easier to process. Under simpler is to be understood here, among other things: contains information about the environment of the point and not only about the point itself, extensive invariance with respect to brightness or illumination and their change and lower sensitivity to noise of the sensor. The descriptor image can have the same resolution as the original image, such that there is approximately one descriptor per pixel of the original image. Other resolutions are also possible, alternatively or additionally.
Aus dem jeweiligen Deskriptor, der in einer Rechnereinheit als Binärwort dargestellt ist, oder aus jeweils mehreren benachbarten Deskriptoren wird eine Signatur gebildet, welche die lokale Umgebung des Pixels des Originalbilds möglichst charakteristisch beschreibt. Die Signatur kann auch mit dem Deskriptor oder einem Teil davon identisch sein. Die Signatur wird als Adresse für den Zugriff auf eine Nachschlagetabelle (Lookup-Tabelle) verwendet. Besteht die Signatur aus N bit, kann demnach auf eine Nachschlagetabelle der Größe 2N (das bedeutet: 2 hoch N) zugegriffen werden. Es ist von Vorteil, die Wortlänge N der Signatur nicht zu groß zu wählen, da der Speicherbedarf für die Tabelle exponentiell mit N wächst: Beispielsweise 8 < N < 32. Die Signatur bzw. der Deskriptor ist so konstruiert, dass Signatur-Symmetrien mit einfachen Operationen, z. B. bit-weises XOR (Exklusiv-Oder) auf einem Teil der Bits, ermittelt werden können. Beispiel: SP = s A RP, wobei s eine Signatur der Länge N bit darstellt und RP einen darauf abgestimmten Reflektor (R) für Punktsymmetrie (P). Das Zeichen A steht für die bit-weise XOR-Operation. Die Signatur SP steht also für das punktsymmetrische Gegenstück zur Signatur s. Diese Beziehung gilt auch in umgekehrter Richtung. A signature is formed from the respective descriptor, which is represented in a computer unit as a binary word, or from a number of adjacent descriptors, which signature represents the local environment of the pixel of the original image describes as characteristically as possible. The signature can also be identical to the descriptor or a part of it. The signature is used as an address to access a lookup table. If the signature consists of N bits, a look-up table of size 2N (ie: 2 to the power of N ) can be accessed. It is advantageous not to select a word length N of the signature that is too large, since the memory requirement for the table grows exponentially with N: for example 8 < N < 32. The signature or the descriptor is constructed in such a way that signature symmetries with simple operations, e.g. B. bit-wise XOR (exclusive or) on a part of the bits can be determined. Example: SP = s A RP, where s is a signature of length N bits and RP is a matched reflector (R) for point symmetry (P). The character A stands for the bitwise XOR operation. The signature SP stands for the point-symmetrical counterpart of the signature s. This relationship also applies in the opposite direction.
Steht die Konstruktion des Deskriptors bzw. der Signatur fest, ist damit automatisch auch der Reflektor festgelegt (und konstant). Durch seine Anwendung auf eine beliebige Signatur kann diese in ihr symmetrisches Gegenstück umgewandelt werden. Es existiert ein Algorithmus, der zur gegebenen Signatur am aktuellen Pixel ein oder mehrere symmetrisches Signatur-Pixel, innerhalb eines optional eingeschränkten Suchfensters, findet. Das Symmetriezentrum liegt dann mittig auf der Verbindungslinie zwischen den Positionen dieser beiden Pixel. Dort oder möglichst in der Nähe wird ein Stimmgewicht abgegeben und in einer Abstimmungsmatrix (voting map) gesammelt. In der Abstimmungsmatrix häufen sich die abgegebenen Stimmgewichte an Orten der gesuchten Symmetriezentren. Diese können somit gefunden werden können, z. B. indem man die Abstimmungsmatrix nach Häufungspunkten durchsucht. Dies funktioniert für Punktsymmetrie, horizontale Achsensymmetrie, vertikale Achsensymmetrie, sowie bei Bedarf weiteren Symmetrien, z. B. Spiegelsymmetrie an weiteren Achsen, sowie Rotationssymmetrie. Eine noch präzisere Lokalisierung mit Sub-Pixel- Genauigkeit ist möglich, wenn bei der Auswertung der Abstimmungsmatrix zur Ermittlung der Häufungspunkte und präzisen Lokalisierung der Symmetriezentren auch jeweils die lokale Umgebung in die Betrachtung einbezogen wird. ln Fig. 15 der DE 10 2020 202 160 ist ein Algorithmus illustriert, der punktsymmetrische Korrespondenzen zu der aktuell betrachteten Signatur finden kann. Dabei waren jedoch nur gerade Punktsymmetrien berücksichtigt. If the construction of the descriptor or signature is fixed, the reflector is automatically fixed (and constant). By applying it to any signature, it can be transformed into its symmetric counterpart. There is an algorithm that finds one or more symmetrical signature pixels at the current pixel for the given signature within an optionally restricted search window. The center of symmetry then lies in the middle of the connecting line between the positions of these two pixels. A voting weight is cast there or as close as possible and collected in a voting matrix (voting map). In the voting matrix, the weighted voting weights accumulate at the locations of the sought-after centers of symmetry. These can thus be found, e.g. B. by searching the voting matrix for accumulation points. This works for point symmetry, horizontal axis symmetry, vertical axis symmetry, as well as other symmetries if required, e.g. B. mirror symmetry on other axes, as well as rotational symmetry. An even more precise localization with sub-pixel accuracy is possible if the local surroundings are also included in the analysis when evaluating the coordination matrix for determining the accumulation points and precise localization of the centers of symmetry. 15 of DE 10 2020 202 160 illustrates an algorithm which can find point-symmetrical correspondences to the signature currently being considered. However, only straight point symmetries were taken into account.
Gemäß Ausführungsbeispielen ist dieser Algorithmus auf ungerade Punktsymmetrien erweitert. Besonders vorteilhaft ist dabei, dass die ungeraden und geraden Symmetrien in nur einem gemeinsamen Durchlauf gleichzeitig ermittelt werden können. Das spart Zeit, weil nur ein Durchlauf durch das Signaturbild erforderlich ist statt zwei Durchläufe, und Latenz. Wenn nur ein Durchlauf (statt zwei) erforderlich ist, kann durch Verarbeitung im Stream-Modus das Ergebnis der Symmetriesuche mit sehr viel geringerer Latenz bereitgestellt werden. Dabei wird die Verarbeitung bereits begonnen, sobald die ersten Pixeldaten von der Kamera ankommen und die Verarbeitungsschritte dicht hintereinander ausgeführt. Das heißt die Signatur wird bereits berechnet, sobald die notwendigen Bilddaten aus der lokalen Umgebung des aktuellen Pixels vorliegen. Für die gerade gebildete Signatur wird umgehend die Suche nach Symmetrien durchgeführt. Sobald Teile der Abstimmungsmatrix fertig sind, was der Fall ist, wenn sie nicht mehr Teil des Suchbereichs sind und dies auch nicht mehr werden, können diese sofort ausgewertet und evtl, gefundene Symmetrien (starke Symmetriezentren) umgehend ausgegeben werden. Dieses Vorgehen führt zu sehr geringen Latenzen, die typischerweise nur wenigen Bildzeilen entsprechen, abhängig von der Höhe des Suchbereichs. Geringe Latenzen sind wichtig, wenn schnell reagiert werden soll, z. B. innerhalb einer Regelschleife, bei der eine Aktuatorik die relative Pose zwischen Symmetrieobjekt und Kamera beeinflusst. Auch kann Speicher gespart werden. Die Abstimmungsmatrix (voting map) kann für beide Symmetrieformen, d.h. gerade Punktsymmetrie und ungerade Punktsymmetrie, gemeinsam genutzt werden, wobei die beiden Symmetrieformen bzw. Symmetriearten mit unterschiedlichem Vorzeichen an der Abstimmung teilnehmen, z. B. Subtraktion des Stimmgewichts bei ungerader Punktsymmetrie und Addition des Stimmgewichts bei gerader Punktsymmetrie. Dies wird nachfolgend noch näher erläutert. Ferner kann durch eingesparten Speicher auch Energie gespart werden. Die oben beschriebene latenzarme Realisierungsmöglichkeit führt auch dazu, dass nur wenige Zwischendaten gespeichert zu werden brauchen, im Gegensatz zu ganzen Bildern. Dieses Arbeiten mit wenig Speicher ist insbesondere für kosten kritische eingebettete Systeme (Embedded Systems) wichtig und führt außerdem zur Einsparungen beim Energiebedarf. According to embodiments, this algorithm is extended to odd point symmetries. It is particularly advantageous that the odd and even symmetries can be determined simultaneously in just one common pass. This saves time because only one pass through the signature image is required instead of two, and latency. When only one pass (rather than two) is required, stream mode processing can provide the result of the symmetry search with much lower latency. Processing starts as soon as the first pixel data arrives from the camera and the processing steps are carried out in quick succession. This means that the signature is already calculated as soon as the necessary image data from the local environment of the current pixel are available. The search for symmetries is immediately carried out for the signature just formed. As soon as parts of the voting matrix are finished, which is the case when they are no longer part of the search area and will no longer be, they can be evaluated immediately and any symmetries found (strong centers of symmetry) can be output immediately. This procedure leads to very low latencies, which typically correspond to only a few image lines, depending on the height of the search area. Low latencies are important if you want to react quickly, e.g. B. within a control loop, in which an actuator influences the relative pose between the symmetry object and the camera. Memory can also be saved. The voting matrix (voting map) can be used jointly for both forms of symmetry, ie even point symmetry and odd point symmetry, with the two forms of symmetry or types of symmetry with different signs participating in the vote, e.g. B. Subtraction of the voting weight in case of odd point symmetry and addition of the voting weight in case of even point symmetry. This is explained in more detail below. Furthermore, energy can also be saved by saving memory. The low-latency implementation option described above also means that only a small amount of intermediate data needs to be stored, in contrast to entire images. This Working with little memory is particularly important for cost-critical embedded systems and also leads to savings in energy consumption.
Fig. 11 zeigt eine schematische Darstellung zur Verwendung einer Nachschlagtabelle 1150 gemäß einem Ausführungsbeispiel. Die Nachschlagtabelle 1150 ist durch die Bestimmungseinrichtung der Vorrichtung zum Bereitstellen aus Fig. 1 oder einer ähnlichen Vorrichtung verwendbar. Anders ausgedrückt ist ein Ausführungsbeispiel für ein algorithmisches Vorgehen bei einer Suche nach punktsymmetrischen Korrespondenzen in Fig. 11 als Momentaufnahme im Zusammenhang mit der Vorrichtung zum Bereitstellen aus Fig. 1 oder einer ähnlichen Vorrichtung und/oder dem Verfahren zum Bereitstellen aus Fig. 3 oder einem ähnlichen Verfahren dargestellt. 11 shows a schematic representation for using a lookup table 1150 according to an embodiment. The look-up table 1150 is usable by the determining means of the provisioning apparatus of FIG. 1 or a similar apparatus. In other words, an exemplary embodiment of an algorithmic procedure when searching for point-symmetrical correspondences in FIG. 11 is a snapshot in connection with the device for providing from FIG. 1 or a similar device and/or the method for providing from FIG. 3 or a similar procedure shown.
Insbesondere ähnelt die Darstellung in Fig. 11 auch Fig. 15 der nach veröffentlichten DE 10 2020 202 160, wobei hier Fig. 11 zusätzlich eine Erweiterung um gerade und ungerade Punktsymmetrie umfasst. In particular, the representation in FIG. 11 is also similar to FIG. 15 of the published DE 10 2020 202 160, with FIG. 11 additionally including an extension to include even and odd point symmetry.
Die Nachschlagtabelle 1150 kann hier auch als eine Einstiegstabelle bezeichnet werden. Gezeigt ist ein Pixelgitter 1100, in dem für ein aktuell betrachtetes bzw. bearbeitetes Pixel eine Signatur s mit dem beispielhaften Wert 2412 erzeugt wurde. Anders ausgedrückt zeigt Fig. 11 eine Momentaufnahme während einer Bildung einer Verkettung von Pixeln bzw. Pixelkoordinaten mit identischer Signatur s. Zur besseren Übersichtlichkeit sind zwei von bis zu N möglichen Ketten dargestellt, und zwar zur Signatur SPG=364 und zur Signatur SPU=3731. In dem Pixelgitter 1100 kann pro Pixel ein Verweis auf die Position der letzten Vorgängersignatur gespeichert werden, die denselben Signaturwert hatte. So entsteht jeweils eine Verkettung der Positionen mit identischer Signatur. Die Signaturwerte selbst brauchen somit nicht gespeichert zu werden. In der Nachschlagtabelle 1150 bzw. Einstiegstabelle mit N Tabellenfeldern ist pro Signaturwert eine entsprechende Einstiegsposition in dem Pixelgitter 1100 gespeichert. Dabei entspricht N einer Anzahl möglicher Signaturwerte. Der gespeicherte Wert kann auch „ungültig“ sein. Der Inhalt der Nachschlagtabelle 1150 bzw. Einstiegstabelle und das Bild von Verweisen (Verkettungsbild) verändern sich dynamisch. Eine z. B. zeilenweise Bearbeitung Pixel für Pixel in dem Pixelgitter 1100 begann z. B. oben links in Fig. 11, wie es durch einen Pfeil veranschaulicht ist, und ist aktuell bis zu einem Pixel fortgeschritten, das die Signatur s = 2412 aufweist. Verkettungen zwischen Pixelpositionen mit jeweils identischer Signatur s sind lediglich für einen ersten Bildbereich 1101 gespeichert. Für einen zweiten Bildbereich 1102 im unteren Bildteil sind die Verkettungen und Signaturen zum dargestellten Zeitpunkt noch nicht bekannt, und für einen dritten Bildbereich 1103 im oberen Bildteil werden die Verkettungen, z. B. aufgrund einer Beschränkung eines Suchbereichs, nicht mehr benötigt, wobei ein Verkettungsspeicher für Pixel in dem dritten Bildbereich 1103 wieder freigegeben werden kann. The lookup table 1150 may also be referred to herein as an entry table. A pixel grid 1100 is shown, in which a signature s with the exemplary value 2412 was generated for a currently viewed or processed pixel. In other words, FIG. 11 shows a snapshot during the formation of a concatenation of pixels or pixel coordinates with an identical signature s. For better clarity, two of up to N possible chains are shown, specifically for the signature SPG=364 and for the signature SPU=3731. A reference to the position of the last predecessor signature that had the same signature value can be stored per pixel in the pixel grid 1100 . This creates a concatenation of positions with an identical signature. The signature values themselves therefore do not need to be stored. A corresponding entry position in the pixel grid 1100 is stored for each signature value in the lookup table 1150 or entry table with N table fields. In this case, N corresponds to a number of possible signature values. The stored value can also be "invalid". The contents of the lookup table 1150 or entry table and the image of references (linking image) change dynamically. a z. B. line-by-line processing pixel by pixel in the pixel grid 1100 began z. 11, as illustrated by an arrow, and has currently progressed to a pixel that has the signature s=2412. Concatenations between pixel positions each with an identical signature s are only stored for a first image area 1101 . For a second image area 1102 in the lower part of the image, the concatenations and signatures are not yet known at the time shown, and for a third image area 1103 in the upper part of the image, the concatenations, e.g. B. due to a limitation of a search area, no longer needed, wherein a concatenation memory for pixels in the third image area 1103 can be released again.
Für die soeben gebildete Signatur s wird durch Anwendung eines Reflektors RPG die gerade punktgespiegelte Signatur SPG= 364 gebildet. Der Index PG steht für Punktsymmetrie, Gerade. Nachfolgend wird auch der Index PU verwendet, der für Punktsymmetrie, Ungerade, steht. Dieser Wert wird als Adresse in die Nachschlagtabelle 1150 verwendet, um den Einstieg in diejenige Verkettung von Pixelpositionen zu finden, denen derselbe Signaturwert SPG = 364 zugeordnet ist. Die Nachschlagtabelle 1150 umfasst zum dargestellten Zeitpunkt zwei Elemente: die Einstiegs-Pixelpositionen zur jeweiligen Signatur s mitsamt den durch geschwungene Pfeile veranschaulichten Verweisen darauf. Weitere möglicherweise vorhandene Inhalte der Nachschlagtabelle 1150 sind aus Gründen der Anschaulichkeit nicht dargestellt. Die Verkettung für den Signaturwert SPG = 364 umfasst hier lediglich beispielhaft drei dargestellte Pixelpositionen. Zwei davon liegen in einem Suchbereich 1104, der auch eine andere als die hier dargestellte Form haben kann, z. B. rechteckig oder kreisförmig. Beim unidirektionalen Durchhangeln entlang der Verkettung, beginnend von unten, werden hier zwei punktsymmetrische Korrespondenz- Kandidaten gefunden, die innerhalb des Suchbereichs 1104 liegen. Die dritte Korrespondenz, welche das erste Element der Verkettung für gerade Punktsymmetrie ist, ist hier nicht von Interesse, da sie außerhalb des Suchbereichs 1104 und damit zu weit von der aktuellen Pixelposition entfernt liegt. Falls die Zahl von Symmetriezentrumskandidaten 1112 nicht zu groß ist, kann pro Symmetriezentrumskandidat 1112 ein Stimmgewicht für die Lage des jeweiligen Symmetriezentrums abgegeben werden. Der Symmetriezentrumskandidat 1112 liegt jeweils in der Mitte auf der Verbindungsachse zwischen der Position der Signatur s und der jeweiligen gerade punktgespiegelten Signatur SPG. Falls mehr als ein Symmetriezentrumskandidat 1112 vorliegt, kann das Stimmgewicht jeweils reduziert werden, beispielsweise kann der Kehrwert der Anzahl der Symmetriezentrumskandidaten als jeweiliges Stimmgewicht verwendet werden. Dadurch werden uneindeutige Symmetriezentrumskandidaten geringer gewichtet als eindeutige Symmetriezentrumskandidaten. For the signature s just formed, the just point-mirrored signature SPG=364 is formed by using a reflector RPG. The index PG stands for point symmetry, straight line. In the following, the index PU is also used, which stands for point symmetry, odd. This value is used as an address into look-up table 1150 to enter the concatenation of pixel locations associated with the same signature value SPG=364. At the time shown, the look-up table 1150 comprises two elements: the entry pixel positions for the respective signature s together with the references thereto illustrated by curved arrows. Other possible contents of the lookup table 1150 are not shown for the sake of clarity. The concatenation for the signature value SPG=364 comprises three pixel positions shown here merely by way of example. Two of them are in a search area 1104, which can also have a different form than that shown here, e.g. B. rectangular or circular. Here, when unidirectionally traversing along the concatenation, starting from the bottom, two point-symmetric correspondence candidates that lie within the search region 1104 are found. The third correspondence, which is the first element of the even point symmetry concatenation, is not of interest here because it is outside the search region 1104 and thus too far from the current pixel position. If the number of symmetry center candidates 1112 is not too large, a voting weight for the position of the respective symmetry center can be cast for each symmetry center candidate 1112 . The symmetry center candidate 1112 is in the middle on the Connection axis between the position of the signature s and the respective straight point mirrored signature SPG. If there is more than one symmetry center candidate 1112, the voting weight can be reduced in each case, for example the reciprocal of the number of symmetry center candidates can be used as the respective voting weight. As a result, ambiguous symmetry center candidates are weighted less than clear symmetry center candidates.
Nun wird eine Betrachtung und Verwendung einer ungerade punktgespiegelten Signatur vorgenommen. In der in Fig. 11 dargestellten Momentaufnahme wird für die soeben gebildete Signatur s durch Anwendung eines weiteren Reflektors RPU die ungerade punktgespiegelte Signatur SPU = 3731 gebildet. Analog zum vorstehend beschriebenen Ablauf für die gerade punktgespiegelte Signatur werden dieselben Schritte auch für die ungerade punktgespiegelte Signatur durchgeführt. Der Einstieg in die entsprechende Verkettung wird über dieselbe Nachschlagtabelle 1150 gefunden. Hier verweist die Nachschlagtabelle 1150 auf die für ungerade Punktsymmetrie dargestellte Verkettung für die Signatur 3731. Die ersten beiden Pixelpositionen entlang der Verkettung führen wieder zur Bildung von Symmetriezentrumskandidaten 1112, da sie im Suchbereich 1104 angeordnet sind und weil die Zahl der Symmetriezentrumskandidaten 1112 nicht zu groß ist. Die letzte Pixelposition entlang der Verkettung liegt im dritten Bildbereich 1103. Dieser Bereich wird gar nicht mehr benötigt, da er nicht mehr in den hier zeilenweise gleitenden Suchbereich 1104 kommen kann. Consideration and use of an odd point-mirrored signature will now be made. In the snapshot shown in FIG. 11, the odd point-mirrored signature SPU=3731 is formed for the signature s just formed by using a further reflector RPU. Analogously to the sequence described above for the even point-mirrored signature, the same steps are also carried out for the odd point-mirrored signature. The entry into the corresponding concatenation is found via the same lookup table 1150 . Here, the lookup table 1150 refers to the concatenation shown for odd point symmetry for the signature 3731. The first two pixel positions along the concatenation again lead to the formation of symmetry center candidates 1112 because they are located in the search region 1104 and because the number of symmetry center candidates 1112 is not too large . The last pixel position along the concatenation lies in the third image area 1103. This area is no longer required at all, since it can no longer come into the search area 1104, which is sliding line by line here.
Verweist der nächste Verweis innerhalb einer Verkettung in den dritten Bildbereich 1103, so kann das Durchhangeln entlang der Verkettung abgebrochen werden. Selbstverständlich wird das Durchhangeln ebenfalls abgebrochen, wenn das Ende der Verkettung erreicht ist. In beiden Fällen ist es sinnvoll, die Anzahl der Symmetriezentrumskandidaten 1112 zu beschränken, d. h. bei zu vielen konkurrierenden Symmetriezentrumskandidaten 1112 alle zu verwerfen. Des Weiteren ist es sinnvoll, das Durchhangeln entlang einer Verkettung vorzeitig abzubrechen, wenn nach einer vorgegebenen maximalen Anzahl von Schritten entlang der Verkettung weder ihr Ende noch der dritte Bildbereich 1103 erreicht werden konnte. Auch in diesem Falle sollten alle bis dahin gefundenen Symmetriezentrumskandidaten 1112 verworfen werden. Speicher für die Verkettung im dritten Bildbereich 1103 kann bereits wieder freigeben werden, so dass lediglich für die Größe des ersten Bildbereichs 1101 Verkettungsspeicher vorgehalten zu werden braucht. Der Verkettungsspeicherbedarf ist also insgesamt gering und hängt hier im Wesentlichen nur von einer Dimension des Suchbereichs 1104, hier Suchbereichshöhe, und von einer Dimension des Signaturbilds, hier Signaturbildbreite, ab. If the next link within a link points to the third image area 1103, the snaking along the link can be terminated. Of course, the shimmying is also terminated when the end of the chain is reached. In both cases it makes sense to limit the number of symmetry center candidates 1112, ie to discard all of them if there are too many competing symmetry center candidates 1112. Furthermore, it makes sense to terminate the shimmy along a link prematurely if, after a specified maximum number of steps along the link, neither its end nor the third image area 1103 could be reached. In this case, too, all symmetry center candidates 1112 found up to that point should be discarded. Memory for the concatenation in the third image area 1103 can already be released again, so that concatenation memory only needs to be reserved for the size of the first image area 1101 . The concatenation memory requirement is therefore low overall and essentially depends here only on one dimension of the search area 1104, here the height of the search area, and on one dimension of the signature image, here the width of the signature image.
Es kann sein, dass ein Symmetriezentrumskandidat 1112 bzw. Kandidat für ein Symmetriezentrum nicht immer genau auf eine Pixelposition fällt, sondern es drei weitere Möglichkeiten gibt. Insgesamt gibt es somit vier Möglichkeiten: It may be that a symmetry center candidate 1112 or candidate for a symmetry center does not always fall exactly on a pixel position, but there are three other possibilities. There are four options in total:
1. Punkt bzw. Symmetriezentrumskandidat 1112 fällt auf eine Pixelposition. 1. Point or symmetry center candidate 1112 falls on a pixel position.
2. Punkt bzw. Symmetriezentrumskandidat 1112 fällt mittig zwischen zwei horizontal direkt benachbarte Pixelpositionen. 2. Point or symmetry center candidate 1112 falls in the middle between two horizontally directly adjacent pixel positions.
3. Punkt bzw. Symmetriezentrumskandidat 1112 fällt mittig zwischen zwei vertikal direkt benachbarte Pixelpositionen. 3. Point or symmetry center candidate 1112 falls in the middle between two vertically directly adjacent pixel positions.
4. Punkt bzw. Symmetriezentrumskandidat 1112 fällt mittig zwischen vier direkt benachbarte Pixelpositionen. 4. Point or symmetry center candidate 1112 falls in the middle between four directly adjacent pixel positions.
In den mehrdeutigen Fällen 2. bis 4. ist es vorteilhaft, das abzugebende Stimmgewicht gleichmäßig auf die beteiligten Pixelpositionen zu verteilen. Die abgegebenen Stimmgewichte werden in eine Abstimmungsmatrix eingetragen und darin aufsummiert bzw. aufakkumuliert. In the ambiguous cases 2. to 4., it is advantageous to distribute the voting weight to be cast evenly over the pixel positions involved. The voting weights given are entered in a voting matrix and added up or accumulated therein.
Dabei werden nicht nur positive, sondern gleichzeitig auch negative Stimmgewichte verwendet. Insbesondere werden die geraden Symmetrien mit einem anderen Vorzeichen versehen, hier positiv, als die ungeraden Symmetrien, hier negativ. Dies führt zu eindeutigen Ergebnissen: In Bildbereichen ohne Symmetrien, die in der Praxis meistens die Mehrheit darstellen können, halten sich positive und negative Stimmgewichtsabgaben etwa die Waage und heben sich somit in der Abstimmungsmatrix in etwa gegenseitig auf. Im Mittel ergibt sich in der Abstimmungsmatrix also etwa eine Null. Demgegenüber ergeben sich in ungerade symmetrischen oder gerade symmetrischen Bereichen starke Extrema in der Abstimmungsmatrix, und zwar in diesem Ausführungsbeispiel negativwertige Minima bei ungeraden Punktsymmetrien und positivwertige Maxima bei geraden Punktsymmetrien. Not only positive, but also negative voting weights are used at the same time. In particular, the even symmetries are given a different sign, here positive, than the odd symmetries, here negative. This leads to clear results: In image areas without symmetries, which in practice can usually represent the majority, positive and negative voting weights balance each other out and thus cancel each other out in the voting matrix. On average, there is about a zero in the voting matrix. In contrast, in odd symmetrical or even symmetrical areas, there are strong extremes in the voting matrix, specifically in in this exemplary embodiment, negative-valued minima in the case of odd point symmetries and positive-valued maxima in the case of even point symmetries.
Es werden gemäß dem hier dargestellten Ausführungsbeispiel für die ungeraden und geraden Punktsymmetrien dieselben Ressourcen verwendet, d.h. Nachschlagtabelle 1150 bzw. Einstiegstabelle, Verkettungsbild, Abstimmungsmatrix, was insbesondere Speicherbedarf einspart, und es werden beide Symmetrieformen bzw. Symmetriearten in einem gemeinsamen Durchlauf betrachtet, was Zeit und Zwischenspeicher einspart. According to the exemplary embodiment shown here, the same resources are used for the odd and even point symmetries, i.e. lookup table 1150 or entry table, chaining diagram, matching matrix, which in particular saves memory requirements, and both forms of symmetry or types of symmetry are considered in a joint run, which saves time and cache saves.
Fig. 12 zeigt ein schematisches Diagramm 1200 zu einer Abstimmungsmatrix gemäß einem Ausführungsbeispiel. Das Diagramm 1200 bezieht sich auf eine Abstimmungsmatrix als 3D-Plot für ein mittels der Vorrichtung zum Bereitstellen aus Fig. 1 oder einer ähnlichen Vorrichtung verarbeitetes Kamerabild, in dem das Muster aus der zweiten Teildarstellung von Fig. 6 von einer Kamera aufgenommen wurde. In der Abstimmungsmatrix bzw. dem Diagramm 1200 sind deutlich beispielhaft drei Maxima 1210B und fünf Minima 1210A zu erkennen, die für die drei gerade punktsymmetrischen und fünf ungerade punktsymmetrischen Bereiche des Musters aus der zweiten Teildarstellung von Fig. 6 stehen. Außerhalb dieser Extrema sind die Werte in der Abstimmungsmatrix nahe Null. Somit sind die Extrema sehr einfach zu bestimmen und somit die Lagen der Symmetriezentren im Kamerabild eindeutig und präzise zu ermitteln. 12 shows a schematic diagram 1200 for a voting matrix according to an embodiment. The diagram 1200 relates to a matching matrix as a 3D plot for a camera image processed by the device for providing of FIG. 1 or a similar device, in which the pattern from the second partial representation of FIG. 6 was recorded by a camera. Three maxima 1210B and five minima 1210A, which stand for the three even point-symmetrical and five odd point-symmetrical areas of the pattern from the second partial representation of FIG. Outside of these extremes, the values in the tuning matrix are close to zero. The extrema can thus be determined very easily and the positions of the centers of symmetry in the camera image can be determined clearly and precisely.
Fig. 12 zeigt, dass diese Extrema sehr deutlich ausgeprägt und somit für die Vorrichtung zum Bereitstellen aus Fig. 1 oder eine ähnliche Vorrichtung und/oder das Verfahren zum Bereitstellen aus Fig. 3 oder ein ähnliches Verfahren einfach und zweifelsfrei detektierbar sind. Die Information über die Art der Symmetrie, d.h. ungerade oder gerade, ist dabei im Vorzeichen enthalten. Eine hochpräzise Ermittlung der Lage der Symmetriezentren mit Sub-Pixel-Genauigkeit ist möglich, wenn bei der Auswertung der Abstimmungsmatrix auch die lokale Umgebung des jeweiligen Extremums in die Betrachtung einbezogen wird. Hierfür sind dem Fachmann entsprechende Methoden bekannt. Bei geeigneter Konstruktion der Muster konkurrieren ungerade und gerade Punktsymmetrien nicht miteinander. Dann weist ein Bildbereich, wenn überhaupt, entweder die ungerade oder die gerade Punktsymmetrieform auf. Selbst wenn ungerade und gerade punktsymmetrische Bereiche nahe beieinander im Kamerabild liegen, kann dafür gesorgt werden, dass ihre Symmetriezentren trotzdem räumlich voneinander getrennt bzw. unterscheidbar bleiben. Dann entstehen durch die gemeinsame Behandlung von negativen und positiven Symmetrien Vorteile im Hinblick auf Ressourcen und Geschwindigkeit. FIG. 12 shows that these extremes are very clearly pronounced and can therefore be detected easily and unequivocally for the device for providing from FIG. 1 or a similar device and/or the method for providing from FIG. 3 or a similar method. The information about the type of symmetry, ie odd or even, is contained in the sign. A high-precision determination of the position of the centers of symmetry with sub-pixel accuracy is possible if the local surroundings of the respective extremum are also taken into account when evaluating the coordination matrix. Appropriate methods for this are known to those skilled in the art. If the patterns are properly constructed, odd and even point symmetries do not compete with each other. Then an image area has, if at all, either the odd or the even point symmetry form. Even if odd and even If point-symmetrical areas are close together in the camera image, it can be ensured that their centers of symmetry remain spatially separated or distinguishable from one another. Then, by treating negative and positive symmetries together, there are advantages in terms of resources and speed.
Gemäß einem Ausführungsbeispiel kann eine getrennte Behandlung ungerader und gerader Punktsymmetrie vorgesehen sein. Sinnvollerweise erfolgt die Aufspaltung vor dem Einträgen in die Abstimmungsmatrix: Statt einer gemeinsamen, vorzeichenbehafteten Abstimmungsmatrix sind dann zwei vorzeichenlose Abstimmungsmatrizen vorgesehen, wobei die Stimmgewichte für negative Symmetrien in die erste und Stimmgewichte für positive Symmetrien in die zweite Abstimmungsmatrix eingetragen werden. Hierbei entsteht ein potenziell interessanter Vorteil: Es können auch Muster konstruiert und vom Detektionsalgorithmus berücksichtigt werden, die gleichzeitig ungerade und gerade Punktsymmetrie aufweisen und deren Symmetriezentrum örtlich zusammenfällt. Eine solche gemischte Symmetrieform ist zwar sehr ungewöhnlich, aber diese Außergewöhnlichkeit gewährleistet, dass Verwechslungen mit zufällig in den Bildern vorkommenden Mustern äußerst unwahrscheinlich sind. Die beiden Abstimmungsmatrizen sind dann nach Maxima zu durchsuchen, die in beiden Matrizen am gleichen Ort vorliegen. Ein weiterer möglicher Vorteil durch die getrennte Behandlung von ungerader und gerader Punktsymmetrie liegt in der einfacheren Parallelisierbarkeit und dadurch ggf. schnelleren Ausführung. Denn durch die Verwendung von zwei Abstimmungsmatrizen können Zugriffskonflikte beim Einträgen der Stimmgewichte vermieden werden, was Wartezeiten einspart. According to an embodiment, a separate treatment of odd and even point symmetry can be provided. It makes sense to split them up before making entries in the voting matrix: Instead of a common, signed voting matrix, two unsigned voting matrices are then provided, with the voting weights for negative symmetries being entered in the first and the voting weights for positive symmetries in the second voting matrix. This gives rise to a potentially interesting advantage: Patterns can also be constructed and taken into account by the detection algorithm which have odd and even point symmetry at the same time and whose center of symmetry coincides locally. While such a mixed symmetry form is very unusual, this unusualness ensures that confusion with random patterns occurring in the images is extremely unlikely. The two matching matrices are then to be searched for maxima that are present at the same location in both matrices. Another possible advantage of treating odd and even point symmetry separately is that it is easier to parallelize and, as a result, it can be executed more quickly. Because by using two voting matrices, access conflicts when entering the voting weights can be avoided, which saves waiting times.
Fig. 13 zeigt eine schematische Darstellung von beispielhaft in Würfelform angeordneten Mustern 610 gemäß einem Ausführungsbeispiel im Hinblick auf eine korrekte Identifikation eines Rasters 1311. Bei den in Fig. 13 dargestellten Mustern 610 handelt es sich beispielsweise um Muster aus Fig. 7 bzw. Fig. 8, von denen drei hier in einer Würfelform angeordnet sind. Von den Mustern 610 sind detektierte bzw. identifizierte Symmetriezentren 112A und 112B jeweiliger vordefinierter punktsymmetrischer Bereiche der Muster 610 gezeigt, wobei optional auch Vorzeichen und Werte der zugehörigen Extrema in der Abstimmungsmatrix bekannt sein können. Hierbei sind erste Symmetriezentren 112A vordefinierten punktsymmetrischen Bereichen mit ungerader Punktsymmetrie zugeordnet und sind zweite Symmetriezentren 112b vordefinierten punktsymmetrischen Bereichen mit gerader Punktsymmetrie zugeordnet. Für eines der Muster 610 ist ein korrektes Raster 1311 eingezeichnet, an dem die vordefinierten punktsymmetrischen Bereiche und somit die Symmetriezentren 112A und 112B ausgerichtet sind. Für die anderen beiden Muster 610 sind die korrekten Raster zu suchen, wobei in Fig. 13 ferner falsche Lösungen der Rastersuche durch erste Markierungen 1313 veranschaulicht sind und richtige Lösungen der Rastersuche durch zweite Markierung 1314 veranschaulicht sind. Fig. 13 shows a schematic representation of patterns 610 arranged in the form of a cube, for example, according to an embodiment with regard to correct identification of a grid 1311. The patterns 610 shown in Fig. 13 are, for example, patterns from Fig. 7 or Fig. 8, three of which are here arranged in a cube shape. Detected or identified centers of symmetry 112A and 112B of the respective predefined point-symmetrical areas of the patterns 610 are shown for the patterns 610, with signs and values of the associated extrema in the voting matrix may be known. First centers of symmetry 112A are assigned to predefined point-symmetrical areas with odd point symmetry and second centers of symmetry 112b are assigned to predefined point-symmetrical areas with even point symmetry. A correct grid 1311 is drawn in for one of the patterns 610, on which the predefined point-symmetrical areas and thus the centers of symmetry 112A and 112B are aligned. The correct grids are to be searched for the other two patterns 610 , incorrect solutions of the grid search being illustrated by first markings 1313 and correct solutions of the grid search being illustrated by second marking 1314 in FIG. 13 .
Das Auffinden der zugehörigen korrekten Raster ist eine Aufgabenstellung mit Mehrdeutigkeiten. Nachdem die ungerade/gerade codierten Symmetriezentren 112A und 112B detektiert worden sind, besteht häufig der nächste Schritt darin, diese zu gruppieren und zu ermitteln, welchem Muster 610 diese Gruppe zuzuordnen ist, da ja im Vorhinein nicht immer bekannt ist, welche und wie viele Muster 610 im Bild enthalten sind. Teil dieser Aufgabe kann das Auffinden der Raster 1311 sein, auf denen die Symmetriezentren 112 A und 112 B angeordnet sind. Statt quadratischer Raster 1311 kommen auch andere Topologien für die Anordnung der Symmetriezentren 112 A und 112 B in Frage, z. B. ringförmige konzentrische Anordnungen, siehe z. B. die zweite Teildarstellung in Fig. 6. Stellvertretend werden nachfolgend quadratische Raster 1311 betrachtet. Finding the associated correct grids is an ambiguous task. After the odd/even coded symmetry centers 112A and 112B have been detected, the next step is often to group them and determine which pattern 610 this group belongs to, since it is not always known in advance which and how many patterns 610 are included in the picture. Part of this task can be finding the grid 1311 on which the symmetry centers 112 A and 112 B are arranged. Instead of a square grid 1311, other topologies for the arrangement of the centers of symmetry 112 A and 112 B are also possible, e.g. B. annular concentric arrangements, see e.g. B. the second partial representation in Fig. 6. As a representative, square grids 1311 are considered below.
Die Aufgabe, alleine aus den Positionen der Symmetriezentren 112A und 112B in Fig. 13 die Lage des korrekten Rasters für alle Muster 610 zu bestimmen, stellt unter Umständen ein mehrdeutiges Problem dar. Betrachtet man in Fig. 13 das Muster 610, für welches das korrekte Raster 1311 bereits eingezeichnet ist, fällt es (dem Betrachter) nicht schwer, das korrekte Raster 1311 anzugeben. Bei den beiden anderen Mustern 610, die von der Kamera unter einer deutlich schrägeren Perspektive erfasst werden, wird jedoch klar, dass die Ausgabe uneindeutig sein kann. Es existieren mehrere mögliche Lösungen, wie ein Raster durch die Symmetriezentren 112A und 112B gelegt werden könnte. Dabei ist die zunächst bei lokaler Betrachtung naheliegendste Lösung, nämlich die mit annähernd senkrechten Achsen, nicht die richtige, wie anhand der ersten Markierungen 1313 zu sehen ist. Die zweiten Markierungen 1314 liegen dagegen korrekt auf dem Raster. Dies zeigt, dass ein naives Vorgehen, z. B. das Suchen der nächsten Nachbarn des jeweiligen Symmetriezentrums, bei schräger Perspektive eventuell zu einer falschen Lösung führen kann. In der Praxis scheiden Lösungen mit sehr schräger Perspektive aus, weil die Symmetriezentren 112A und 112B dann nicht mehr auffindbar sind. The task of determining the position of the correct grid for all patterns 610 solely from the positions of the centers of symmetry 112A and 112B in FIG. 13 presents an ambiguous problem under certain circumstances Grid 1311 is already drawn in, it is not difficult (for the viewer) to specify the correct grid 1311. However, with the other two patterns 610 captured by the camera from a much more oblique perspective, it is clear that the output can be ambiguous. There are several possible solutions as to how a grid could be placed through the symmetry centers 112A and 112B. The solution that is most obvious when viewed locally, namely the one with almost vertical axes, is not the right one, as is the case with the first one Markings 1313 can be seen. In contrast, the second markings 1314 lie correctly on the grid. This shows that a naive approach, e.g. B. searching for the nearest neighbors of the respective center of symmetry, may lead to an incorrect solution in the case of an oblique perspective. In practice, solutions with a very oblique perspective are ruled out because the centers of symmetry 112A and 112B can then no longer be found.
Fig. 14 zeigt eine schematische Darstellung des in der ersten Teildarstellung von Fig. 6 gezeigten Musters 610 in schräger Perspektive. In einer ersten Teildarstellung A ist in Fig. 14 das Darstellungsmedium 600 mit dem Muster 610 aus den vordefinierten punktsymmetrischen Bereichen 110A und HOB gezeigt. In einer zweiten Teildarstellung B sind in Fig. 14 die mittels der Vorrichtung zum Bereitstellen aus Fig. 1 oder einer ähnlichen Vorrichtung und/oder des Verfahrens zum Bereitstellen aus Fig. 3 oder eines ähnlichen Verfahrens identifizierten bzw. detektierten Symmetriezentren 112A und 112B des Musters 610 gezeigt. Die Symmetriezentren 112 A und 112 B wurden detektiert und zumindest ihre Positionen stehen bereit. FIG. 14 shows a schematic representation of the pattern 610 shown in the first partial representation of FIG. 6 in an oblique perspective. In a first partial representation A, the representation medium 600 with the pattern 610 made up of the predefined point-symmetrical regions 110A and HOB is shown in FIG. 14 . A second partial illustration B in Fig. 14 shows the centers of symmetry 112A and 112B of the pattern 610 identified or detected by means of the device for providing from Fig. 1 or a similar device and/or the method for providing from Fig. 3 or a similar method shown. The symmetry centers 112 A and 112 B have been detected and at least their positions are available.
Fig. 15 zeigt das Muster 610 aus der ersten Teildarstellung von Fig. 14 mit einer Hervorhebung eines vordefinierten punktsymmetrischen Bereichs 110B. Dabei ist lediglich beispielhaft ein vordefinierter gerade punktsymmetrischer Bereich HOB grafisch hervorgehoben, um eine Verzerrung des Musters 610 bzw. der Bereiche 110A und HOB durch die schräge Perspektive zu veranschaulichen. Die hier beispielhaft kreisförmig vordefinierten punktsymmetrischen Bereiche 110A und HOB sind durch die schräge Perspektive zu Ellipsen verzerrt. FIG. 15 shows the pattern 610 from the first partial representation of FIG. 14 with an emphasis on a predefined point-symmetrical region 110B. A predefined straight point-symmetrical area HOB is graphically emphasized here merely by way of example in order to illustrate a distortion of the pattern 610 or of the areas 110A and HOB as a result of the oblique perspective. The point-symmetrical regions 110A and HOB, which are predefined as circular here by way of example, are distorted into ellipses by the oblique perspective.
Nachfolgend wird unter besonderer Bezugnahme auf Fig. 14 und Fig. 15 sowie allgemeine Bezugnahme auf die vorstehend beschriebenen Figuren auf eine Rekonstruktion des korrekten Rasters bzw. der Topologie des Musters 610 eingegangen. A reconstruction of the correct grid or topology of the pattern 610 is discussed below with particular reference to FIGS. 14 and 15 and general reference to the figures described above.
Unter schräger Perspektive wird jeder kreisförmige Bereich 110A und HOB, aus dem die Stimmen für das jeweilige Symmetriezentrum 112A und 112B stammen, zu einer Ellipse. Durch Rückverfolgung der Stimmen, die zu dem jeweiligen Symmetriezentrum 112A, 112B, beispielsweise dem in Fig. 15 hervorgehobenen Symmetriezentrum 112 B mit gerader Punktsymmetrie, beigetragen haben, kann auf die Form und Orientierung der jeweiligen Ellipse zurückgeschlossen werden. Richtung und Verhältnis der Hauptachsen der Ellipse verraten, wie diese gestreckt bzw. entzerrt werden kann, um sie zurück in einen Kreis zu überführen. Es sei der beispielhaft hervorgehobene vordefinierte gerade punktsymmetrische Bereich HOB des Musters 610 betrachtet, der zu dem hervorgehobenen Punktsymmetriezentrum 112 B beiträgt. Per Entwurf bzw. Konstruktion ist dieser Bereich 110B kreisförmig oder näherungsweise kreisförmig, z. B. sechseckig. Unter schräger Perspektive wird dieser Kreis zu einer Ellipse. Bei der Abstimmung zum Identifizieren des Symmetriezentrums 112 B tragen symmetrische Punktepaare zur Bildung des Extremums in der Abstimmungsmatrix bei, die innerhalb dieser Ellipse liegen. From an oblique perspective, each circular area 110A and HOB, from which the voices for the respective center of symmetry 112A and 112B originate, becomes an ellipse. By tracing back the voices belonging to the respective center of symmetry 112A, 112B, for example the one highlighted in FIG Center of symmetry 112 B with straight point symmetry, have contributed, the shape and orientation of the respective ellipse can be deduced. The direction and relationship of the major axes of the ellipse reveal how it can be stretched or straightened to convert it back into a circle. Consider the exemplary highlighted predefined straight point symmetric region HOB of the pattern 610 that contributes to the highlighted center of point symmetry 112B. By design, this area 110B is circular or approximately circular, e.g. B. hexagonal. From an oblique perspective, this circle becomes an ellipse. When matching to identify the center of symmetry 112B, symmetrical pairs of points contribute to forming the extremum in the matching matrix that lies within this ellipse.
Gemäß einem Ausführungsbeispiel wird zurückverfolgt, woher im Kamerabild die Punktepaare stammen, die zur Bildung eines hinreichend starken Extremums geführt haben. Zu diesem Zweck wird ein weiterer Verarbeitungsschritt durchgeführt. Es wird zunächst davon ausgegangen, dass die Abstimmung bereits stattgefunden hat und dass die hinreichend starken Symmetriezentren bereits gefunden wurden. Ausgangspunkt ist also eine Situation, wie sie in der zweiten Teildarstellung B von Fig. 14 dargestellt ist. Nachfolgend wird der Prozess der Abstimmung in abgewandelter Form noch einmal durchlaufen. Die bereits existierende Abstimmungsmatrix wird dabei jedoch nicht noch einmal neu gebildet. Stattdessen wird für jedes symmetrische Punktepaar, das einen Beitrag zur Abstimmungsmatrix liefern würde, geprüft, ob der Beitrag zu einem der gefundenen Symmetriezentren 112A, 112 B beitragen würde und damit im ersten Durchlauf auch bereits beigetragen hat. Falls dies der Fall ist, werden die beiden Positionen des Punktepaars gespeichert bzw. sofort weiterverrechnet. Vorteilhafterweise wird dabei auch der Index des Symmetriezentrums 112A, 112B gespeichert bzw. verwendet, zu dem das symmetrische Punktepaar beiträgt. Auf diese Weise können nachträglich alle Beiträge zu den erfolgreichen Symmetriezentren ermittelt und (zwischen-)gespeichert oder weiterverwendet werden. According to one exemplary embodiment, it is traced back to where in the camera image the pairs of points that have led to the formation of a sufficiently strong extremum come from. A further processing step is carried out for this purpose. It is initially assumed that the tuning has already taken place and that the sufficiently strong symmetry centers have already been found. The starting point is therefore a situation as shown in the second partial representation B of FIG. The voting process is then repeated in a modified form. However, the already existing reconciliation matrix is not created again. Instead, for each pair of symmetrical points that would contribute to the matching matrix, it is checked whether the contribution would contribute to one of the found centers of symmetry 112A, 112B and thus has already contributed in the first pass. If this is the case, the two positions of the pair of points are saved or processed immediately. Advantageously, the index of the center of symmetry 112A, 112B, to which the symmetrical pair of points contributes, is also stored or used. In this way, all contributions to the successful symmetry centers can be subsequently determined and (temporarily) stored or reused.
Für den Beginn des weiteren Verarbeitungsschritts muss nicht das Ende des ersten Verarbeitungsschritts, d.h. das Bilden der Abstimmungsmatrix und Ermitteln der Symmetriezentren, abgewartet werden, sondern es kann schon vorher gestartet und die bereits fertigen Zwischenergebnisse, d.h. gefundene Symmetriezentren 112A, 112B, des ersten Verarbeitungsschritts genutzt werden. In den so gebildeten Informationen sind dann für jedes gefundene Symmetriezentrum 112A, 112B alle Bildpositionen ablesbar, die dazu beigetragen haben. Diese Positionen liegen im Wesentlichen bzw. von einigen Ausreißern abgesehen innerhalb der Ellipse, wie in Fig. 15 beispielhaft für ein Symmetriezentrum 112 B dargestellt. The beginning of the further processing step does not have to be the end of the first processing step, ie the formation of the voting matrix and Determination of the centers of symmetry, but it can be started beforehand and the already finished intermediate results, ie found centers of symmetry 112A, 112B, of the first processing step can be used. In the information formed in this way, all image positions that contributed to each center of symmetry 112A, 112B found can then be read. These positions lie essentially or apart from a few outliers within the ellipse, as shown in FIG. 15 by way of example for a center of symmetry 112B.
Für die Ermittlung der Parameter dieser Ellipse sind dem Fachmann Verfahren bekannt. Beispielsweise kann eine Hauptachsentransformation über die Menge aller zu einem Symmetriezentrum 112A, 112B beitragenden Punkte gebildet werden, um die Orientierung der Hauptachsen und die beiden Durchmesser der Ellipse zu bestimmen. Dies ist sogar möglich, ohne dass die beitragenden Bildpositionen zwischengespeichert zu werden brauchen: Sie können stattdessen umgehend nach Bekanntwerden weiterverrechnet werden. Alternativ kann auch die ellipsenförmige Einhüllende um die Punktemenge ermittelt werden, mit der ein möglichst großer Teil der Punktemenge, etwaige Ausreißer ausgeschlossen, möglichst eng umschlossen wird. The person skilled in the art is familiar with methods for determining the parameters of this ellipse. For example, a major axis transformation can be formed over the set of all points contributing to a center of symmetry 112A, 112B in order to determine the orientation of the major axes and the two diameters of the ellipse. This is even possible without the contributing image positions needing to be temporarily stored: Instead, they can be charged immediately after they become known. Alternatively, the elliptical envelope around the set of points can also be determined, with which the largest possible part of the set of points, excluding any outliers, is enclosed as closely as possible.
Anstatt eine Menge von Punkten im Sinne einer Liste zu speichern, kann alternativ auch ein Index-Bild, gleichbedeutend mit Index-Matrix, erstellt werden. Es dient dem gleichen Zweck, nämlich der Bildung der Parameter aller Ellipsen, es speichert die Informationen jedoch in anderer Form. Das Index-Bild hat idealerweise die gleiche Größe wie das Signaturbild und ist dazu eingerichtet, Indizes zu speichern, und zwar die den gefundenen Symmetriezentren 112A, 112B zugeordneten Indizes. Ein spezieller Index-Wert, z. B. 0, ist vorgesehen, um zu kennzeichnen, dass noch keine Eintragung vorliegt. Wenn beim Durchlaufen des weiteren Verarbeitungsschritts ein symmetrisches Punktepaar bzw. Signaturpaar gefunden wird, das zu einem i-ten Index beiträgt, dann wird an den beiden zugehörigen Orten der jeweiligen Signaturen jeweils der Index i eingetragen. Somit erhält man am Ende des Durchlaufs ein Index-Bild, in dem alle den Symmetriezentren 112A, 112B zugeordneten Indizes jeweils mehrfach vorkommen, wobei diese ellipsenförmige Bereiche ausbilden: Abgesehen von einigen Ausreißern enthält dann jeder ellipsenförmige Bereich nur Einträge mit einem einheitlichen Index, sowie den Index 0 an den nicht benutzten Positionen. Das Index-Bild kann dann leicht ausgewertet werden, um die Parameter der einzelnen Ellipsen zu bestimmen. Im Übrigen ist es nicht notwendig, das Index- Bild vollständig zu speichern. Sobald sich in einem Teilabschnitt des Index-Bilds die Daten nicht mehr ändern, kann dieser Teil bereits ausgewertet und der Speicher anschließend wieder freigegeben werden. Dies führt auch zu einer geringeren zeitlichen Latenz, sodass Zwischenergebnisse früher bereitgestellt werden können. Alternatively, instead of storing a set of points in the sense of a list, an index image, equivalent to an index matrix, can be created. It serves the same purpose, which is to form the parameters of all ellipses, but it stores the information in a different way. The index image ideally has the same size as the signature image and is set up to store indices, specifically the indices assigned to the centers of symmetry 112A, 112B found. A special index value, e.g. B. 0, is provided to indicate that there is no entry yet. If, when running through the further processing step, a symmetrical pair of points or pair of signatures is found that contributes to an i-th index, then the index i is entered at the two associated locations of the respective signatures. An index image is thus obtained at the end of the run, in which all the indices assigned to the centers of symmetry 112A, 112B occur multiple times, these forming elliptical areas: apart from a few outliers, each elliptical area then only contains entries a uniform index, as well as the index 0 at the unused positions. The index image can then be easily evaluated to determine the parameters of each ellipse. Otherwise, it is not necessary to save the entire index picture. As soon as the data no longer changes in a section of the index picture, this section can already be evaluated and the memory can then be released again. This also leads to lower temporal latency, so that intermediate results can be provided earlier.
Mit den bekannten Ellipsenparametern kann dann die zweidimensionale Anordnung der detektierten Symmetriezentren, siehe Fig. 14, so entzerrt werden, dass diese anschließend auf dem hier lediglich beispielhaft zumindest annähernd quadratischen Raster des Musters 610 liegen. With the known ellipse parameters, the two-dimensional arrangement of the detected centers of symmetry, see FIG. 14, can then be corrected in such a way that they subsequently lie on the grid of the pattern 610, which is at least approximately square here only as an example.
Fig. 16 zeigt eine schematische Darstellung des Musters 610 aus Fig. 15 nach einer perspektivischen Entzerrung gemäß einem Ausführungsbeispiel. Anders ausgedrückt zeigt Fig. 16 zur Veranschaulichung das Muster 610 aus Fig. 15, nachdem es normal bzw. senkrecht zur Richtung der gefundenen Ellipse bzw. des hervorgehobenen elliptisch verzerrten Bereichs HOB um das Verhältnis der beiden Hauptachsenlängen gestreckt wurde. Somit kann das korrekte Raster 1311 auf einfache Weise gefunden werden. Die Ellipse wird im Vergleich mit Fig. 15 also so entzerrt, dass die originale Kreisform des Bereichs 110B wiederhergestellt wird. Anschließend ist es einfach, das Raster 1311, auf dem die Symmetriezentren 112 A und 112 B liegen, zu ermitteln, bzw. die Nachbarschaftsbeziehungen zwischen den Symmetriezentren 112A und 112B fehlerfrei zu ermitteln. Die Fig. 16 dient hier nur der Veranschaulichung. In der Praxis ist es nicht notwendig, ein Warping des Bildes vorzunehmen. Da die Informationen über die Lagen der Symmetriezentren 112A und 112B bereits in verdichteter Form vorliegen, ist es sinnvoll, nur mit diesen Daten weiterzuarbeiten und ihre Koordinaten zu transformieren, wobei die Transformationsvorschrift aus den ermittelten Ellipsenparametern gebildet wird, und zwar so, dass die Ellipsen zu Kreisen werden. FIG. 16 shows a schematic representation of the pattern 610 from FIG. 15 after a perspective rectification according to an embodiment. In other words, for the sake of illustration, FIG. 16 shows the pattern 610 from FIG. 15 after it has been stretched normal or perpendicular to the direction of the found ellipse or the highlighted elliptically distorted area HOB by the ratio of the two main axis lengths. Thus the correct grid 1311 can be found in a simple manner. The ellipse is thus rectified in comparison with FIG. 15 in such a way that the original circular shape of the region 110B is restored. It is then easy to determine the grid 1311 on which the centers of symmetry 112A and 112B lie, or to determine the neighboring relationships between the centers of symmetry 112A and 112B without errors. Fig. 16 is for illustrative purposes only. In practice, it is not necessary to warp the image. Since the information about the positions of the symmetry centers 112A and 112B is already available in a condensed form, it makes sense to continue working only with this data and to transform its coordinates, with the transformation rule being formed from the determined ellipse parameters in such a way that the ellipses become circles.
Im Falle von Kamerabildern, die mit Telebrennweite aufgenommen sind, kann pro Teilabschnitt eine globale Transformation ausreichend sein, um das Raster 1311 zu ermitteln. Im Falle von Kamerabildern, die mit einem Weitwinkelobjektiv (z. B. Fischaugenobjektiv) aufgenommen sind, kann zumindest in Teilbereichen mit lokalen Transformationen gearbeitet werden. Somit kann die vorstehend genannte Transformationsvorschrift global und/oder lokal angewendet werden. Bei der globalen Variante werden alle Projektionszentren mit derselben, gemeinsamen Transformationsvorschrift transformiert. Das ist in vielen Fällen sinnvoll und ausreichend. Die gemeinsame Transformationsvorschrift kann aus der gemeinsamen Betrachtung aller Ellipsen gebildet werden. Wenn die Symmetriezentren 112A und 112 B räumlich auf mehreren Flächen liegen, können die Ellipsen gemäß ihrer Parameter in Gruppen eingeteilt werden. Die zu einer Fläche gehörenden Ellipsen weisen dabei sehr ähnliche Parameter auf - insbesondere wenn die Fläche eben ist. Pro Gruppe kann dann eine globale Transformationsvorschrift ermittelt und angewandt werden. Dieses Vorgehen ist bei Telebrennweite angemessen. Die lokale Transformation ist dann sinnvoll, wenn die Mehrzahl der kreisförmigen Bereiche durch die Abbildung der Kamera in unterschiedlich geformte oder unterschiedlich orientierte Ellipsen abgebildet wird. Das ist insbesondere bei weitwinkligen Kameras oder stark verzerrenden Objektiven der Fall. In the case of camera images that are recorded with a telephoto focal length, one global transformation per subsection may be sufficient to create the raster 1311 to determine. In the case of camera images recorded with a wide-angle lens (e.g. fish-eye lens), local transformations can be used at least in some areas. Thus, the transformation rule mentioned above can be applied globally and/or locally. In the global variant, all projection centers are transformed using the same, common transformation rule. This is useful and sufficient in many cases. The common transformation rule can be formed from the joint consideration of all ellipses. If the symmetry centers 112A and 112B lie spatially on several surfaces, the ellipses can be classified into groups according to their parameters. The ellipses belonging to a surface have very similar parameters - especially if the surface is flat. A global transformation rule can then be determined and applied for each group. This procedure is appropriate for telephoto lenses. The local transformation makes sense when the majority of the circular areas are imaged in differently shaped or differently oriented ellipses by the imaging of the camera. This is especially the case with wide-angle cameras or lenses with high distortion.
Nach Anwendung der Transformation befinden sich die Symmetriezentrumspositionen, die zur selben Fläche gehören, zumindest annähernd auf einem gemeinsamen Raster 1311. Die nächste Aufgabe besteht darin, die Symmetriezentren 112A und 112B den Rasterpositionen zuzuordnen. Dies kann z. B. iterativ in kleinen Schritten durchgeführt werden. Beispielsweise werden für ein Symmetriezentrum 112A, 112B bis zu vier nächste Nachbarn gesucht, die ungefähr gleichen Abstand haben, siehe hierzu auch die Markierungen aus Fig. 13. Von den Nachbarn hangelt man sich weiter zu den weiteren Nachbarn, bis alle erfassten Symmetriezentren 112 A und 112 B, die zu einem Muster 610 gehören, einem gemeinsamen Raster 1311 zugeordnet sind oder davon ausgeschlossen werden können. Trifft man bei dieser Suche nämlich auf Symmetriezentren, die hinsichtlich der Abstände nicht zum gerade betrachteten Raster 1311 passen, werden diese nicht aufgenommen, da es sich wahrscheinlich um Ausreißer handelt oder um Symmetriezentren, die zu anderen Flächen gehören. Diese iterative Suche kann für die anderen Flächen wiederholt werden, sodass am Ende, abgesehen von den Ausreißern, jedes Symmetriezentrum 112A, 112B einer Fläche zugeordnet ist. Für die Flächen kann dann eine Identifizierung der Muster 610 durchgeführt werden, vorzugsweise anhand der mit den Symmetriezentren 112A und 112B verbundenen binären Codierung, die jeweils im Vorzeichen des Extremums enthalten ist. After applying the transformation, the symmetry center positions belonging to the same face are at least approximately on a common grid 1311. The next task is to associate the symmetry centers 112A and 112B with the grid positions. This can e.g. B. be carried out iteratively in small steps. For example, for a center of symmetry 112A, 112B, up to four nearest neighbors are searched that have approximately the same distance, see also the markings from Fig. 13. From the neighbors you work your way to the other neighbors until all centers of symmetry 112 A and 112 A and 112 B, which belong to a pattern 610, are assigned to a common grid 1311 or can be excluded from it. If one encounters centers of symmetry during this search that do not match the grid 1311 just considered in terms of distances, these are not recorded since they are probably outliers or centers of symmetry that belong to other areas. This iterative search can be repeated for the other faces, so that in the end, apart from the outliers, each Center of symmetry 112A, 112B is associated with a surface. The patterns 610 can then be identified for the surfaces, preferably using the binary coding associated with the centers of symmetry 112A and 112B, which is contained in the sign of the extremum in each case.
Fig. 17 zeigt eine schematische Darstellung eines Ausführungsbeispiels eines Musters 1710 mit hierarchischer Symmetrie. Das Muster 1710 entspricht oder ähnelt einem Muster aus den vorstehend beschriebenen Figuren. Genauer gesagt weist das Muster 1710 eine zweistufige Hierarchie aus lediglich beispielhaft vier vordefinierten punktsymmetrischen Bereichen 110A und HOB auf. Gemäß dem hier dargestellten Ausführungsbeispiel weist das Muster 1710 lediglich beispielhaft zwei vordefinierte ungerade punktsymmetrische Bereiche 110A und zwei vordefinierte gerade punktsymmetrische Bereiche 110B auf. Das Muster 1710 insgesamt ist hierbei ungerade punktsymmetrisch aufgebaut. Auf einer ersten Hierarchiestufe stehen die in sich gerade punktsymmetrischen Bereiche HOB und die in sich ungerade punktsymmetrischen Bereiche 110A. Auf einer zweiten Hierarchiestufe steht die Gesamtanordnung des ungerade punktsymmetrischen Musters 610B. Das Symmetriezentrum 112 der zweiten Hierarchiestufe ist mit dem gevierteilten Kreis gekennzeichnet. 17 shows a schematic representation of an embodiment of a pattern 1710 with hierarchical symmetry. The pattern 1710 corresponds or resembles a pattern from the figures described above. More specifically, pattern 1710 has a two-level hierarchy of four predefined point-symmetrical regions 110A and HOB, by way of example only. According to the exemplary embodiment illustrated here, the pattern 1710 has two predefined odd point-symmetrical regions 110A and two predefined even point-symmetrical regions 110B, merely by way of example. The pattern 1710 as a whole has an odd point-symmetrical structure. On a first hierarchical level are the even point-symmetrical areas HOB and the odd point-symmetrical areas 110A. The overall arrangement of the odd point-symmetrical pattern 610B is on a second hierarchical level. The center of symmetry 112 of the second hierarchical level is marked with the quartered circle.
Fig. 18 zeigt eine schematische Darstellung eines Ausführungsbeispiels eines Musters 1810 mit hierarchischer Symmetrie. Das Muster 1810 in Fig. 18 ähnelt hierbei dem Muster aus Fig. 17. Genauer gesagt zeigt Fig. 18 ein weiteres Beispiel für eine zweistufige Hierarchie aus vordefinierten punktsymmetrischen Bereichen HOB. In der ersten Hierarchiestufe seien die vordefinierten punktsymmetrischen Bereiche HOB jeweils in sich gerade punktsymmetrisch. In der zweiten Hierarchiestufe liegt auf Ebene des Musters 1810 eine ungerade Punktsymmetrie vor, mit dem Symmetriezentrum 112 in der Mitte eines zur Veranschaulichung gezeigten gesechstelten Sechsecks. Die ungerade Symmetrie äußert sich hier in einer Invertierung der vordefinierten punktsymmetrischen Bereiche HOB, z. B. dunkles Symbol auf hellem Grund spiegelt sich in helles Symbol auf dunklem Grund. Fig. 19 zeigt eine schematische Darstellung eines Ausführungsbeispiels eines Musters 610 mit hierarchischer Symmetrie. Das Muster 610 ist hierbei aus den Mustern 1710 und 1810 aus Fig. 17 und Fig. 18 bzw. deren invertierter und/oder punktgespiegelter Form aufgebaut. Das Muster 610 weist eine dreistufige Hierarchie aus lediglich beispielhaft zwei Mustern 1710 aus Fig. 17 und zwei Mustern 1810 aus Fig. 18 auf. Die Muster 1710 und 1810 sind ungerade und somit invertiert punktgespiegelt am Symmetriezentrum 112 des Musters 610 in der Mitte eines zur Veranschaulichung gezeigten gesechstelten Sechsecks. Beispielsweise ist das unten rechts in Fig. 19 gezeigte Muster 1710 eine invertierte Form des Musters 1710 oben links. Dieses hierarchische Prinzip kann beliebig fortgesetzt, also auch eine vierte und fünfte Stufe konstruiert werden, und so weiter. 18 shows a schematic representation of an embodiment of a pattern 1810 with hierarchical symmetry. The pattern 1810 in FIG. 18 is similar to the pattern from FIG. 17. More precisely, FIG. 18 shows a further example for a two-level hierarchy of predefined point-symmetric regions HOB. In the first hierarchical level, the predefined point-symmetrical areas HOB are each point-symmetrical. In the second hierarchy level, there is odd point symmetry at the level of pattern 1810, with center of symmetry 112 at the center of a six-point hexagon shown for illustrative purposes. The odd symmetry manifests itself here in an inversion of the predefined point-symmetrical areas HOB, e.g. B. A dark symbol on a light background is reflected in a light symbol on a dark background. 19 shows a schematic representation of an embodiment of a pattern 610 with hierarchical symmetry. In this case, the pattern 610 is constructed from the patterns 1710 and 1810 from FIGS. 17 and 18 or their inverted and/or point-mirrored form. The pattern 610 has a three-level hierarchy of two patterns 1710 from FIG. 17 and two patterns 1810 from FIG. 18, by way of example only. Patterns 1710 and 1810 are odd and thus inverted mirrored at the center of symmetry 112 of pattern 610 at the center of a sixteenth hexagon shown for illustrative purposes. For example, pattern 1710 shown in the lower right of Figure 19 is an inverted form of pattern 1710 in the upper left. This hierarchical principle can be continued at will, i.e. a fourth and fifth level can be constructed, and so on.
Unter Bezugnahme auf Fig. 17, Fig. 18 und Fig. 19 wird nachfolgend weiter auf Muster mit hierarchischer Symmetrie eingegangen. Die symmetrischen Muster 610, 1710, 1810 können mehrstufig aufgebaut werden, so dass es beispielsweise in einer ersten Hierarchiestufe kleinere in sich symmetrische Bereiche gibt, deren gemeinsame Betrachtung eine Symmetrie auf der nächsthöheren Hierarchiestufe ergibt. In Fig. 17 und Fig. 18 ist jeweils beispielhaft gezeigt, wie ein zweistufiges hierarchisches Muster 1710 bzw. 1810 konstruiert sein kann. Darauf aufbauend wird in Fig. 19 ein dreistufiges hierarchisches Muster 610 aufgebaut. In dem Beispiel aus Fig. 19 sind also drei Hierarchiestufen enthalten. Die dritte Hierarchiestufe ist über die gesamte Fläche des Musters 610 ausgedehnt (gestrichelt eingerahmter Bereich) und umfasst das Symmetriezentrum 112. In der zweiten Hierarchiestufe sind es die vier Muster 1710 und 1810 (jeweils mit durchgezogener Linie eingerahmt) mit jeweils einem Symmetriezentrum in der Mitte (hier nicht explizit bezeichnet). In der ersten Hierarchiestufe sind es gemäß dem hier dargestellten Ausführungsbeispiel folglich 16 vordefinierte punktsymmetrische Bereiche mit jeweils einem Symmetriezentrum. Dabei ist die Symmetrie der dritten Hierarchiestufe bereits aus größerer Entfernung sichtbar. Während einer Annäherung werden auch die vier Symmetrien der zweiten Hierarchiestufe sichtbar. In kürzerer Distanz, bzw. wenn die erfasste Auflösung des Musters 610 ausreicht, werden auch die Symmetrien der ersten Hierarchiestufe sichtbar. Somit kann beispielsweise eine visuelle Steuerung (visual servoing) z. B. eines Roboters z. B. in Richtung des Musters 610 oder in eine andere beliebige Richtung über einen großen Distanzbereich ermöglicht werden. Es ist im Allgemeinen nicht nötig, gröbere bzw. höhere Hierarchiestufen zu erfassen, wenn bereits feinere bzw. niedrigere Hierarchiestufen erfasst werden können. Es ist weiterhin auch nicht nötig, alle Symmetrien der jeweiligen Hierarchiestufe gleichzeitig erfassen zu können, beispielsweise wenn es bei sehr kurzer Distanz gar nicht mehr möglich ist, das gesamte Muster 610 im Kamerabild zu erfassen. Es ist offensichtlich, dass gerade und ungerade Symmetrien teilweise frei gewählt und kombiniert werden dürfen. In dieser Festlegung kann auch Zusatzinformation enthalten sein, insbesondere je ein Bit für die Wahl zwischen ungerader und gerader Symmetrie, wobei eine solche Zusatzinformation auf diese Weise an ein erfassendes System übermittelt werden kann. „Teilweise frei“ bedeutet hier, dass sich der restliche Teil der Symmetrieformen auf der jeweiligen Hierarchiestufe aus der nächsthöheren Hierarchiestufe zwangsläufig ergibt. Mit anderen Worten können z. B. in Fig. 18 für die obere Reihe die Muster „X“ und „O“ frei gewählt werden. Die zweite Reihe ergibt sich dann zwangläufig, und zwar hier mit Invertierung, weil auf der nächsten Hierarchiestufe eine negative Punktsymmetrie gewählt ist. Patterns with hierarchical symmetry are discussed further below with reference to FIGS. 17, 18 and 19. FIG. The symmetrical patterns 610, 1710, 1810 can be constructed in multiple stages, so that there are smaller intrinsically symmetrical areas in a first hierarchical stage, for example, which when viewed together result in symmetry at the next higher hierarchical stage. FIG. 17 and FIG. 18 each show an example of how a two-stage hierarchical pattern 1710 or 1810 can be constructed. Based on this, a three-level hierarchical pattern 610 is constructed in FIG. The example from FIG. 19 therefore contains three hierarchical levels. The third hierarchical level extends over the entire surface of the pattern 610 (area framed by dashed lines) and includes the center of symmetry 112. In the second hierarchical level, there are the four patterns 1710 and 1810 (each framed by a solid line), each with a center of symmetry in the middle ( not explicitly mentioned here). In the first hierarchical level, there are consequently 16 predefined point-symmetrical regions, each with a center of symmetry, according to the exemplary embodiment illustrated here. The symmetry of the third hierarchical level is already visible from a greater distance. During an approach, the four symmetries of the second hierarchical level also become visible. At a shorter distance, or if the recorded resolution of the pattern 610 is sufficient, the symmetries of the first hierarchical level also become visible. Thus, for example, a visual control (visual servoing) z. B. a robot z. B. towards the pattern 610 or in any other direction over a large range of distances. It is generally not necessary to record coarser or higher hierarchical levels if finer or lower hierarchical levels can already be recorded. It is also not necessary to be able to capture all symmetries of the respective hierarchical level at the same time, for example if it is no longer possible to capture the entire pattern 610 in the camera image at a very short distance. It is obvious that even and odd symmetries can be freely chosen and combined. Additional information can also be contained in this definition, in particular one bit each for the choice between odd and even symmetry, with such additional information being able to be transmitted in this way to a detecting system. "Partially free" means here that the remaining part of the symmetry forms on the respective hierarchical level inevitably result from the next higher hierarchical level. In other words, z. B. in Fig. 18 for the top row, the patterns "X" and "O" can be freely selected. The second row is then inevitable, here with inversion, because a negative point symmetry is selected on the next hierarchical level.
Fig. 20 zeigt schematische Darstellungen von Mustern 610 gemäß Ausführungsbeispielen. In einer ersten Teildarstellung A ist in Fig. 20 ein Muster 610 gezeigt, bei dem es sich beispielhaft um eines der Muster aus Fig. 8 handelt. Die erste Teildarstellung A von Fig. 20 ist ein Beispiel für eine implizite Zusatzinformation, hier lediglich beispielhaft 8 • 8 = 64 bit, die sich anhand der Symmetrieart bzw. des damit assoziierten Vorzeichens der Punktsymmetrie der vordefinierten punktsymmetrischen Bereiche 110A und HOB des Musters 610 ergibt. In einer zweiten Teildarstellung B ist in Fig. 20 ein Muster 610 gezeigt, dass aus lediglich beispielhaft vier vordefinierten punktsymmetrischen Bereichen 110A und 110B aufgebaut ist, hier beispielsweise einem vordefinierten ungerade punktsymmetrischen Bereich 110A und drei vordefinierten gerade punktsymmetrischen Bereichen HOB auf einem quadratischen Raster. Ferner ist in dem Muster 610 hierbei eine Codematrix 2010 für explizite Zusatzinformation angeordnet. Lediglich beispielhaft ist in der Codematrix 2010 die implizite Zusatzinformation aus der ersten Teildarstellung A auf explizite Weise enthalten. Der vordefinierte Bereich 110A mit ungerader Punktsymmetrie kennzeichnet bzw. markiert hier die Anfangszeile der 8 • 8 Matrix, damit eine Auslesereihenfolge eindeutig festgelegt ist. 20 shows schematic representations of patterns 610 according to exemplary embodiments. In a first partial depiction A, FIG. 20 shows a pattern 610 which is, by way of example, one of the patterns from FIG. 8 . The first partial representation A of FIG. 20 is an example of implicit additional information, here just an example of 8 • 8 = 64 bits, which results from the type of symmetry or the associated sign of the point symmetry of the predefined point-symmetrical regions 110A and HOB of the pattern 610 . In a second partial representation B, a pattern 610 is shown in FIG. 20, which is made up of four predefined point-symmetrical areas 110A and 110B, for example, here, for example, a predefined odd point-symmetrical area 110A and three predefined even point-symmetrical areas HOB on a square grid. Furthermore, a code matrix 2010 for explicit additional information is arranged in the pattern 610 here. The implicit additional information from the first partial representation A is explicitly contained in the code matrix 2010 purely by way of example. The predefined region 110A indicates odd point symmetry or marks the beginning line of the 8 • 8 matrix so that a readout order is clearly defined.
Nachfolgend wird unter Bezugnahme auf Fig. 20 noch weiter auf eine Übermittlung impliziter oder expliziter Zusatzinformation eingegangen. A transmission of implicit or explicit additional information is discussed in more detail below with reference to FIG. 20 .
Es kann sinnvoll oder notwendig sein, anhand des Musters 610 Zusatzinformationen an einen Empfänger, beispielsweise an einen Rechner, autonomen Roboter etc., zu übermitteln. Die Zusatzinformation kann mehr oder weniger umfangreich sein. Einige veranschaulichen Beispiele für Zusatzinformationen umfassen Haltepunkt, Ladung aufnehmen, Position am Ort 52°07’01.9"N 9°53’57.4"E mit Blickrichtung Südwest, Biege nach links ab, Höchstgeschwindigkeit 20 km/h, Ladestation für Rasenmäher etc. Für die Übermittlung mittels des bildgebenden Sensors bzw. der Kamera existieren verschiedene Möglichkeiten. Insbesondere lassen sich implizit und explizit enthaltene Zusatzinformationen unterscheiden, siehe hierzu die beiden Beispiele in Fig. 20, bei denen 64 bit an Zusatzinformation einmal implizit und einmal explizit bereitgestellt sind. Implizite Zusatzinformation bedeutet, dass diese in den symmetrischen Mustern 610 selbst auf irgendeine Weise mit enthalten ist, während explizite Zusatzinformation im Allgemeinen gesondert von diesen Mustern 610 gestaltet und erfasst wird. It may be useful or necessary to use the pattern 610 to transmit additional information to a recipient, for example to a computer, autonomous robot, etc. The additional information can be more or less extensive. Some illustrative examples of additional information include stopping point, picking up charge, position at location 52°07'01.9"N 9°53'57.4"E facing southwest, turn left, speed limit 20 km/h, charging station for lawn mower, etc. For the There are various options for transmission by means of the imaging sensor or the camera. In particular, a distinction can be made between implicitly and explicitly contained additional information, see the two examples in FIG. 20, in which 64 bits of additional information are provided once implicitly and once explicitly. Implicit overhead means that it is somehow included in the symmetric patterns 610 themselves, while explicit overhead is generally designed and captured separately from those patterns 610.
Eine Möglichkeit zur Übermittlung impliziter Zusatzinformation ist anhand der ersten Teildarstellung A von Fig. 20 illustriert: implizite Zusatzinformation als Binärcode. Da bei der Konstruktion des Musters 610 für jeden symmetrischen Bereich 110A und HOB die Wahl zwischen ungerader und gerader Punktsymmetrie getroffen wird, kann somit jeweils eine binäre Zusatzinformation (entsprechend 1 Bit) übermittelt werden. Lässt man zusätzlich auch Muster zu, die gleichzeitig ungerade und gerade punktsymmetrisch sind, so wird aus der binären Zusatzinformation eine ternäre Zusatzinformation, d.h. drei Fälle statt zwei. One possibility for transmitting implicit additional information is illustrated using the first partial illustration A of FIG. 20: implicit additional information as binary code. Since the choice between odd and even point symmetry is made when constructing the pattern 610 for each symmetrical region 110A and HOB, additional binary information (corresponding to 1 bit) can thus be transmitted in each case. If you also allow patterns that are odd and even with point symmetry at the same time, the binary additional information becomes ternary additional information, i.e. three cases instead of two.
Eine weitere Möglichkeit zur Übermittlung von Zusatzinformation ergibt sich durch die Verwendung ungleichmäßiger Abstände zwischen den Symmetriezentren der Bereiche 110A und 110B, d.h. implizite Zusatzinformation anhand der Anordnung. Anders als bei der in Fig. 20 dargestellten Anordnung, wo die Symmetriezentren auf einem quadratischen Raster liegen, wären diese dann unregelmäßig angeordnet, wobei die Zusatzinformation oder ein Teil davon in dieser Anordnung codiert ist. Beispiel: Lässt man zu, dass das jeweilige Symmetriezentrum um eine feste Distanz nach links/rechts und oben/unten verschoben sein darf, so ergeben sich 9 mögliche Positionen, womit Iog2(9) = 3,17 bit an Zusatzinformation pro Symmetriezentrum codierbar sind. Schräge Perspektiven zwischen bildgebendem Sensor und Muster 610 stellen bei keiner der genannten Möglichkeiten ein Problem dar. Beispielsweise kann ein Teil der Symmetriezentren (beispielsweise die äußersten vier in den Ecken) dazu verwendet werden, ein Koordinatensystem bzw. das regelmäßige Basisraster zu definieren. Die zur Codierung verwendeten Abweichungen oder Binär-/Ternärcodes beziehen sich dann auf dieses Basisraster. A further possibility for the transmission of additional information results from the use of non-uniform distances between the centers of symmetry of the areas 110A and 110B, ie implicit additional information based on the arrangement. Unlike the arrangement shown in FIG. 20, where the centers of symmetry lie on a square grid, they would then be arranged irregularly, with the additional information or part of it being encoded in this arrangement. Example: If the respective center of symmetry is allowed to be shifted by a fixed distance to the left/right and up/down, there are 9 possible positions, with which Iog2(9) = 3.17 bits of additional information per center of symmetry can be encoded. Diagonal perspectives between the imaging sensor and the pattern 610 do not pose a problem with any of the options mentioned. For example, some of the centers of symmetry (for example the outermost four in the corners) can be used to define a coordinate system or the regular basic grid. The deviations or binary/ternary codes used for coding then relate to this basic grid.
Die symmetrischen Bereiche 110A und HOB für implizite Zusatzinformation sollten nicht zu klein sein, damit sich in der Abstimmungsmatrix ausreichend markante Extrema ausbilden. Soll eine größere Menge an Zusatzinformation (insbesondere statische, ortsgebundene) an den Empfänger (z. B. einen mobilen Roboter) übermittelt werden, kann es vorteilhaft sein, diese explizit zu codieren. The symmetrical areas 110A and HOB for implicit additional information should not be too small so that sufficiently prominent extremes form in the matching matrix. If a large amount of additional information (in particular static, location-based) is to be transmitted to the recipient (e.g. a mobile robot), it can be advantageous to encode it explicitly.
In der zweiten Teildarstellung B von Fig. 20 ist gezeigt, wie insbesondere statische, ortsgebundene Zusatzinformation explizit an den Empfänger (z. B. einen mobilen Roboter) übermittelt werden kann: Es kann beispielsweise vereinbart sein, dass sich in einem durch die Symmetriezentren definierten Koordinatensystem an bestimmten Koordinaten weitere Informationen befinden, die z. B. binär (schwarz/weiß) oder in weiteren Abstufungen (Graustufen) oder in Farben codiert sind. Das Vorgehen ist dann zweischrittig: In einem ersten Schritt wird anhand ungerader und gerader Symmetrien ein Feld gefunden, zum Beispiel die Codematrix 2010, in dem weitere Informationen codiert sind. In einem zweiten Schritt wird das Feld und somit die darin vorhandene Information ausgelesen. Schräge Perspektiven zwischen bildgebendem Sensor und Muster 610 stellen dabei kein Problem dar, denn für das Auslesen der expliziten Zusatzinformation ist es weder erforderlich, dass die Basisvektoren des gefundenen Koordinatensystems senkrecht zueinander stehen, noch dass sie gleichlang sind. Optional kann das Bild auch so entzerrt werden, dass anschließend ein kartesisches Koordinatensystem vorliegt. Optional kann in dem Feld mit dem Muster 610 auch ein Display installiert sein, das zusätzlich zu zeitlich statischer Information auch zeitlich veränderliche Information übermitteln kann und/oder das über die zeitliche Veränderung Information übermittelt. The second partial illustration B of Fig. 20 shows how static, location-based additional information in particular can be explicitly transmitted to the recipient (e.g. a mobile robot): It can be agreed, for example, that in a coordinate system defined by the centers of symmetry at certain coordinates there is more information that z. B. are encoded in binary (black/white) or in further gradations (gray levels) or in colors. The procedure then consists of two steps: In a first step, a field is found using odd and even symmetries, for example the code matrix 2010, in which further information is encoded. In a second step, the field and thus the information contained therein is read out. Diagonal perspectives between the imaging sensor and the pattern 610 do not pose a problem, because the readout of the explicit additional information does not require that the base vectors of the coordinate system found are perpendicular to one another, nor that they are of the same length. Optionally, the image can also be corrected in such a way that then a Cartesian coordinate system is available. Optionally, a display can also be installed in the field with the pattern 610, which in addition to information that is static over time can also transmit information that changes over time and/or that transmits information about the change over time.
Es kann auch eine hochaufgelöste Zusatzinformation im Muster 610 selbst enthalten sein, mit impliziter Fehlererkennung. Somit besteht eine weitere Möglichkeit der Übermittlung von (insbesondere statischer, ortsgebundener) Zusatzinformation besteht über das Muster 610 selbst: Das heißt, die Zusatzinformation ist in der Abfolge der schwarz-weißen oder farbigen oder graustufigen Musters 610 selbst enthalten. Mit der vorgenannten Klassifizierung wäre diese Zusatzinformation zugleich implizit und explizit. Weil das Muster 610 oder zumindest Teile davon Symmetrien aufweist, ist die Zusatzinformation automatisch redundant enthalten, typischerweise jeweils doppelt. Dies gilt sowohl bei ungerader als auch bei gerader Punktsymmetrie. Diese Tatsache kann zur Fehlerkorrektur bzw. Fehlerdetektion ausgenutzt werden. Ist beispielsweise ein Muster 610 verschmutzt, etwa durch Vogelkot, so ist es mit hoher Sicherheit möglich, den dadurch in der Zusatzinformation entstandenen Fehler zu detektieren, denn an der zugehörigen symmetrischen Position liegt derselbe Fehler höchstwahrscheinlich nicht vor. High-resolution additional information can also be contained in the pattern 610 itself, with implicit error detection. There is thus a further possibility of transmitting (in particular static, location-based) additional information via the pattern 610 itself: This means that the additional information is contained in the sequence of the black-and-white or colored or greyscale pattern 610 itself. With the aforementioned classification, this additional information would be implicit and explicit at the same time. Because the pattern 610 or at least parts of it has symmetries, the additional information is automatically contained redundantly, typically twice in each case. This applies to both odd and even point symmetry. This fact can be used for error correction or error detection. If, for example, a pattern 610 is soiled, for example by bird droppings, then it is possible with a high degree of certainty to detect the error that has arisen as a result in the additional information, because the same error is most likely not present at the associated symmetrical position.
Fig. 21 zeigt eine schematische Darstellung einer Anwendungssituation für die Steuervorrichtung aus Fig. 1 und/oder das Verfahren zum Steuern aus Fig. 4. Bei der Anwendungssituation handelt es sich hierbei lediglich beispielhaft um ein Andockmanöver eines als eine bewegliche Gangway 2160 ausgeführten Roboters eines Versorgungsschiffs 2165 an einer Plattform 2170 einer Offshore- Windkraftanlage 2175. An der Gangway 2160 und/oder dem Versorgungsschiff 2165 ist zumindest eine Kamera 102 angeordnet. Im Bereich der Plattform 2170 ist an der Offshore-Windkraftanlage 2175 mindestens ein vordefinierter punktsymmetrischer Bereich 110 und/oder mindestens ein Muster 610 aus zumindest einem vordefinierten punktsymmetrischen Bereich 110 angeordnet. Der zumindest eine vordefinierte punktsymmetrische Bereich 110 entspricht oder ähnelt einem der vorstehend beschriebenen vordefinierten punktsymmetrischen Bereiche aus einer der vorhergehend beschriebenen Figuren. Das Muster 610 entspricht oder ähnelt einem der vorstehend beschriebenen Muster aus einer der vorhergehend beschriebenen Figuren. 21 shows a schematic representation of an application situation for the control device from FIG. 1 and/or the method for controlling from FIG 2165 on a platform 2170 of an offshore wind turbine 2175. At least one camera 102 is arranged on the gangway 2160 and/or the supply ship 2165. At least one predefined point-symmetrical area 110 and/or at least one pattern 610 from at least one predefined point-symmetrical area 110 is arranged on the offshore wind turbine 2175 in the area of the platform 2170 . The at least one predefined point-symmetrical region 110 corresponds to or resembles one of the predefined point-symmetrical regions described above from one of the figures described above. The pattern 610 corresponds to or resembles one of the above-described patterns from one of the previously described figures.
Anders ausgedrückt zeigt Fig. 21 eine Situation, in der das Versorgungsschiff 2165 mit beweglicher Gangway 2160, die wie durch Pfeile veranschaulicht durch Heben, Schwenken, Nicken und/oder Teleskopieren bewegbar ist, an der Plattform 2170 des Offshore-Windkraftwerks bzw. der Offs h o re -Windkraftan läge 2175 andocken soll. Dazu sind an der Plattform 2170 die beschriebenen Bereiche 110 und/oder Muster 610 angebracht, während an der Gangway 2160 und am Versorgungsschiff 2165 Kameras 102 installiert sind, die diese Bereiche 110 bzw. Muster 610 beobachten. Unter Verwendung der Steuervorrichtung aus Fig. 1 und/oder des Verfahrens zum Steuern aus Fig. 4 oder ähnlichen wird laufend die relative Position und Orientierung zwischen Plattform 2170 und Gangway 2160 ermittelt und diese so ausgeregelt, dass zuverlässig und sanft an- und abgedockt und in der Zwischenzeit die Position gehalten werden kann. In other words, Fig. 21 shows a situation in which the supply ship 2165 with a movable gangway 2160, which can be moved by lifting, pivoting, pitching and/or telescoping, as illustrated by arrows, on the platform 2170 of the offshore wind power plant or the Offs h o re wind power plant 2175 should dock. For this purpose, the described areas 110 and/or patterns 610 are attached to the platform 2170, while cameras 102 are installed on the gangway 2160 and on the supply ship 2165, which monitor these areas 110 or patterns 610. Using the control device from Fig. 1 and/or the method for controlling from Fig. 4 or similar, the relative position and orientation between platform 2170 and gangway 2160 is continuously determined and this is adjusted in such a way that docking and undocking can be carried out reliably and gently and in meanwhile the position can be held.
Somit ergibt sich eine Verbesserungsmöglichkeit von visueller Robotersteuerung bzw. Visual Servoing mit punktsymmetrischen (versteckten) Bereichen 110 bzw. Mustern 610. Es erfolgt dabei eine Steuerung einer mechanischen Aktuatorik, hier der Gangway 2160, auf Basis der Detektion der symmetrischen Bereiche 110 bzw. Muster 610 in Bildern von Kameras 102 oder anderen bildgebenden Sensoren, wobei die Ansteuerung der Aktuatorik zu einer relativen Bewegung zwischen Muster 610 und Kamera 102 bzw. Sensor führt. Bezogen auf den in Fig. 21 dargestellten und erläuterten Anwendungsfall des Andruckmanövers auf See besteht eine Herausforderung darin, dass das Versorgungsschiff 2165 von Wellengang und Wind bewegt wird, während die Plattform 2170, die auch schwimmend sein kann, ebenfalls von Wellen und Wind bewegt wird, jedoch mit anderer Dynamik. Trotzdem soll ein sicherer Übergang von Service- Personal zwischen dem Versorgungsschiff 2165 und der Plattform 2170 erreicht werden, und zwar bei möglichst jedem Wetter. This results in an opportunity to improve visual robot control or visual servoing with point-symmetrical (hidden) areas 110 or patterns 610. A mechanical actuator system, here the gangway 2160, is controlled on the basis of the detection of the symmetrical areas 110 or patterns 610 in images from cameras 102 or other imaging sensors, the actuation of the actuators leading to a relative movement between pattern 610 and camera 102 or sensor. In relation to the application of the pressure maneuver at sea shown and explained in FIG. 21, there is a challenge in that the supply ship 2165 is moved by waves and wind, while the platform 2170, which can also be floating, is also moved by waves and wind, but with a different dynamic. Nevertheless, a safe transfer of service personnel between the supply ship 2165 and the platform 2170 should be achieved, in all weather conditions if possible.
Die beschriebenen Bereiche 110/oder Muster 610 werden auf der Seite des Windkraftwerks bzw. der Offs ho re -Windkraftan läge 2175 angebracht, und zwar in direkter Nähe der Andockstelle bzw. Plattform 2170 und darüber. Die Muster 610 sind passiv, benötigen also keinen elektrischen Anschluss und keine Ansteuerung. Das nötige Licht für die Operation bei Nacht kommt vom Versorgungsschiff 2165. Die mindestens eine Kamera 102 und zugehörige Bildverarbeitung befindet sich auf der Schiff-Seite. Beispielsweise ist die Kamera 102 auf der Gangway 2160 montiert und daher mit dieser mitbewegt. Sie kann aber auch weiter weg von der Andockstelle montiert sein, z. B. auf dem hinteren Teil einer Teleskopmechanik, denn z. B. der Ausfahrweg des Teleskops ist ja bekannt und kann bei der Berechnung von relativen Bewegungen berücksichtigt werden. Aus praktischen Gründen werden beispielsweise mehrere Kameras 102 verwendet, die an verschiedenen Orten schiffsseitig montiert sind, sodass es immer mindestens eine Kamera 102 gibt, die günstige Sichtbedingungen (unverdeckte Sicht, günstige Entfernung, günstiger Blickwinkel, keine Blendung) auf das oder die Muster 610 hat. Aus den gleichen Gründen werden beispielsweise mehrere Muster 610 verwendet, die so gestaltet sein können, dass sie voneinander unterscheidbar sind, wie es beispielsweise unter Bezugnahme auf Fig. 7 und Fig. 8 erläutert ist. Mit mehreren Mustern 610 kann eine Triangulation ermöglicht werden, was die Bestimmung der relativen Orientierung erleichtert bzw. genauer macht. The described areas 110/or patterns 610 are attached on the side of the wind power plant or off-shore wind power plant 2175, in the direct vicinity of the docking point or platform 2170 and above it. The Sample 610 are passive, meaning they don't require an electrical connection or anything control. The necessary light for the night operation comes from the support ship 2165. The at least one camera 102 and associated image processing is located on the ship's side. For example, the camera 102 is mounted on the gangway 2160 and therefore moves with it. However, it can also be mounted further away from the docking point, e.g. B. on the rear part of a telescopic mechanism, because z. B. the extension path of the telescope is known and can be taken into account when calculating relative movements. For practical reasons, several cameras 102 are used, for example, which are mounted at different locations on the ship, so that there is always at least one camera 102 that has favorable viewing conditions (unobscured view, favorable distance, favorable viewing angle, no glare) of the pattern or patterns 610 . For the same reasons, several patterns 610 are used, for example, which can be designed in such a way that they are distinguishable from one another, as explained, for example, with reference to FIGS. 7 and 8 . A triangulation can be made possible with a plurality of patterns 610, which makes the determination of the relative orientation easier or more precise.
Da während eines solchen An- bzw. Abdockvorgangs ein Abstand zwischen Kamera 102 und Muster 610 in großen Bereichen variieren kann, werden beispielsweise Muster 610 mit hierarchischer Symmetrie verwendet, wie beispielsweise unter Bezugnahme auf die Figuren 17 bis 19 erläutert. Diese umfassen sowohl wenige großflächige Punktsymmetrien, die aus großer Distanz und bei Nebel, Regen- oder Schneefall noch detektierbar sind, als auch viele kleinflächige Punktsymmetrien, die für eine präzise Operation bei geringer Distanz dienen. Since the distance between camera 102 and pattern 610 can vary over large areas during such a docking or undocking process, patterns 610 with hierarchical symmetry are used, for example, as explained, for example, with reference to FIGS. These include both a few large-area point symmetries that can still be detected from a great distance and in fog, rain or snow, as well as many small-area point symmetries that are used for precise operation at short distances.
Im allgemeinen Fall weist die relative Bewegung zwischen einer Kamera und einem Muster sechs Freiheitsgrade auf, und zwar drei Freiheitsgrade der Rotation sowie drei Freiheitsgrade der Translation. Die Bewegung mit diesen Freiheitsgraden führt zu einer Veränderung des Bildinhalts, und zwar führt die relative Rotation - man stelle sich dazu vor, dass die Kamera um sich selbst, um ihr Projektionszentrum, rotiert - zu einer entfernungsunabhängigen Verschiebung und Rotation des Bildinhalts und führt die relative Translation zu einer entfernungsabhängigen Veränderung des Bildinhalts, insbesondere Größenänderung der abgebildeten Objekte und Änderung der Perspektive. In the general case, the relative motion between a camera and a sample has six degrees of freedom, namely three degrees of rotational freedom and three degrees of translational freedom. The movement with these degrees of freedom leads to a change in the image content, namely the relative rotation - imagine that the camera rotates around itself, around its projection center - leads to a distance-independent displacement and rotation of the image content and leads to the relative Translation to a distance-dependent change in image content, in particular change in size of the objects shown and change in perspective.
Es sei angenommen, dass die Anordnung der Symmetrien in dem beobachteten Muster 610 bekannt ist, beispielsweise anhand eines Referenzmusters. Beispielsweise kann ein Muster 610 wie in Fig. 7 bzw. Fig. 8 dargestellt verwendet werden. Dann wäre beispielsweise bereits bekannt, dass 8><8 Punktsymmetrien vorliegen, die auf einem quadratischen Gitter mit bekanntem Abstand liegen. Optional wäre auch die Abfolge von ungeraden und geraden Punktsymmetrien des Referenzmusters bekannt. Alternativ kann diese Abfolge auch aus der Beobachtung ermittelt werden und ggf. dann durch einen Datenbank-Vergleich festgestellt werden, welches Referenzmuster vorliegt. It is assumed that the arrangement of the symmetries in the observed pattern 610 is known, for example from a reference pattern. For example, a pattern 610 as shown in FIG. 7 or FIG. 8 can be used. Then it would already be known, for example, that there are 8×8 point symmetries lying on a square grid with a known distance. Optionally, the sequence of odd and even point symmetries of the reference pattern would also be known. Alternatively, this sequence can also be determined from the observation and, if necessary, it can then be determined by a database comparison which reference pattern is present.
Aus jeder Beobachtung des Musters 610, also mit jedem neuen Kamerabild, können die gesuchten sechs Freiheitsgrade ermittelt werden. Dazu werden zunächst die Symmetriezentren der Bereiche 110 des Musters 110 bestimmt. Dann werden diese auf das Referenzmuster registriert, sodass damit für jedes beobachtete Symmetriezentrum die Zuordnung zum korrespondierenden Referenz-Symmetriezentrum bekannt ist. Dabei ist es unproblematisch, wenn ein signifikanter Anteil, z. B. deutlich mehr als die Hälfte, der Symmetriezentren nicht beobachtet werden kann, z. B. wegen Verdeckung, denn die Anordnung der Symmetrien im jeweiligen Muster 610 weist ein genügendes Maß an Redundanz auf, sodass die Registrierung und sogar die eindeutige Identifizierung möglich bleiben. Ist also für hinreichend viele Symmetriezentren die Zuordnung bekannt, können daraus die sechs Freiheitsgrade ermittelt werden. Bei bekannter Geometrie des jeweils starren Teils der Anordnung können die ermittelten sechs Freiheitsgrade, zwischen Kamera 102 und Muster 610, in andere Bezüge transformiert werden, beispielsweise für den Bezug zwischen Andockstelle der Gangway 2160 und Andockstelle der Plattform 2170, oder zwischen einem optionalen zweiten Sensor und dem Muster 610. The six degrees of freedom sought can be determined from each observation of pattern 610, ie with each new camera image. For this purpose, the centers of symmetry of the regions 110 of the pattern 110 are first determined. Then these are registered on the reference pattern, so that for each observed center of symmetry the assignment to the corresponding reference center of symmetry is known. It is not a problem if a significant proportion, e.g. B. significantly more than half, the symmetry centers can not be observed, z. B. because of occlusion, because the arrangement of the symmetries in the respective pattern 610 has a sufficient degree of redundancy, so that the registration and even the unique identification remain possible. If the assignment is known for a sufficient number of symmetry centers, the six degrees of freedom can be determined from this. If the geometry of the respective rigid part of the arrangement is known, the six degrees of freedom determined between camera 102 and pattern 610 can be transformed into other references, for example for the reference between the docking point of the gangway 2160 and the docking point of the platform 2170, or between an optional second sensor and the pattern 610.
Optional kann auch ein Stereo- oder Multikamerasystem verwendet werden, sodass jeweils mehrere Bilder von demselben Muster 610 aus unterschiedlichen Perspektiven aufgenommen und gemeinsam ausgewertet werden können. Ein Stereo- oder Multikamerasystem bietet den Vorteil, dass Entfernungen und Oberflächenorientierungen des Musters 610 per Triangulation ermittelt werden können, was die gewünschte Bestimmung der sechs Freiheitsgrade genauer, einfacher und/oder schneller machen kann. Optionally, a stereo or multi-camera system can also be used, so that multiple images of the same pattern 610 can be recorded from different perspectives and evaluated together. A stereo or multi-camera system offers the advantage that distances and Surface orientations of the pattern 610 can be determined via triangulation, which can make the desired determination of the six degrees of freedom more accurate, easier and/or faster.
Gemäß Ausführungsbeispielen ist es möglich, schnell und präzise die relative Anordnung und bei Bedarf die relative Orientierung zwischen Kamera 102 bzw. bildgebendem Sensor und dem Muster 610 zu bestimmen. Dies kann genutzt werden, um eine mechanische Aktuatorik anzusteuern, die diese relative Anordnung bzw. Orientierung verändert. Zum Beispiel die Hydraulik zum Steuern der Gangway 2160 mit allen benötigten Freiheitsgraden. Insbesondere kann dies in eine Regelschleife eingebettet werden. According to exemplary embodiments, it is possible to quickly and precisely determine the relative arrangement and, if necessary, the relative orientation between camera 102 or imaging sensor and pattern 610 . This can be used to control a mechanical actuator that changes this relative arrangement or orientation. For example, the hydraulics for controlling the gangway 2160 with all the necessary degrees of freedom. In particular, this can be embedded in a control loop.
Das genannte Ausführungsbeispiel von Fig. 21 stellt nur eine von vielen denkbaren Anwendungen dar. Im Allgemeinen kann sich die Kamera 102 auf dem von der Aktuatorik mitbewegten Teil befinden und das Muster 610 auf dem nichtbewegten Teil - oder umgekehrt. Ebenso können auch beide Seiten bewegt sein, wie es auch bei dem schwimmenden Windkraftwerk und dem Versorgungsschiff der Fall ist. Damit können verschiedene Aktionen geregelt durchgeführt werden, beispielsweise gezieltes Annähern an einen bestimmten Punkt, Ausrichten an der vorgesehenen Orientierung, und sanftes Andocken, die Umkehrung davon, also Abdocken und gerichtetes und sicheres Entfernen, Parallelbewegung eines Roboters zu einer Oberfläche, Bewegung, relativ zu einem oder mehreren Mustern 610, entlang einer vorgesehenen Bahn mit vorgesehener ortsabhängiger Geschwindigkeit und Orientierung, Einfangen eines mit Muster 610 versehenen Objekts durch einen Roboter, während sich das Objekt bewegt, etc. 21 represents only one of many conceivable applications. In general, the camera 102 can be located on the part moved by the actuator and the pattern 610 on the non-moving part—or vice versa. Likewise, both sides can be moved, as is the case with the floating wind power plant and the supply ship. This allows various actions to be carried out in a controlled manner, for example deliberately approaching a certain point, aligning to the intended orientation, and gentle docking, the reverse of this, i.e. undocking and directed and safe removal, parallel movement of a robot to a surface, movement relative to a or multiple patterns 610, along an intended trajectory with intended location-dependent speed and orientation, capturing an object provided with pattern 610 by a robot while the object is moving, etc.
Ein weiteres Anwendungsbeispiel ist ein visuelles Andocken eines Kontaktpunkts, z. B. eines elektrischen Kontakts an einen Gegenkontakt oder eines Druckanschlusses oder Tankanschlusses für Gase, Flüssigkeiten, usw. an ein Gegenstück. Beispielsweise für ein Aufladen oder Auftanken von Boden-, Luft-, Wasserfahrzeugen, Robotern oder Drohnen. Da sich das kontaktlose Laden für Elektro- und Elektrohybridfahrzeuge noch nicht durchsetzen konnte und wegen seiner Verlustleistung vielleicht auch nicht durchsetzen wird, bleibt das Aufladen über elektrische Kontakte weiterhin interessant und wichtig. Das manuelle Anstecken (Plug-In) von Steckern bleibt ebenfalls unbeliebt, da umständlich, zeitaufwändig, schmutzige oder kalte Hände, Stolperfallen, Diebstahlgefahr für das Kabel, Gefahr eines Stromschlags bei beschädigtem Kabel. Eine alternative Möglichkeit besteht über einen Kontakt am Boden in Verbindung mit einem System ähnlich jenem aus Fig. 21, wobei es beliebig ist, auf welcher Seite sich die Aktuatorik für die Kontaktierung befindet, d.h. entweder am Boden oder am Fahrzeug, und auf welcher jeweiligen Seite sich Kamera bzw. bildgebender Sensor und Muster 610 bzw. zumindest ein symmetrischer Bereich 110 befinden. In einem Anwendungsfall wie diesem kann ein einziger punktsymmetrischer Bereich 110 bereits ausreichend sein. Beispielsweise ist dann der zu suchende Kontaktpunkt in das Symmetriezentrum des Bereichs 110 zu platzieren, denn dieses stellt dann den einzigen ausgezeichneten Ort dar. Für weitere Anwendungen könnte beispielsweise hinter dem Symmetriezentrum etwas versteckt werden, das nur der Roboter finden soll, jedoch nicht der Mensch. Oder das Symmetriezentrum könnte den Ort markieren, auf dem eine Flugdrohne landen soll, ohne dass dieser ausgezeichnete Punkt für den Menschen erkennbar ist. Another application example is a visual docking of a contact point, e.g. B. an electrical contact to a mating contact or a pressure connection or tank connection for gases, liquids, etc. to a counterpart. For example, for charging or refueling of ground, air, water vehicles, robots or drones. Since contactless charging for electric and electric hybrid vehicles has not yet been able to establish itself and may not become established due to the power loss, charging via electrical contacts remains interesting and important. That plugging in plugs manually also remains unpopular because it is cumbersome, time-consuming, dirty or cold hands, tripping hazards, risk of the cable being stolen, risk of electric shock if the cable is damaged. An alternative possibility is via a contact on the ground in connection with a system similar to that from FIG. 21, whereby it is arbitrary on which side the actuators for the contact are located, ie either on the ground or on the vehicle, and on which side camera or imaging sensor and pattern 610 or at least one symmetrical area 110 are located. In an application such as this, a single point-symmetrical region 110 can already be sufficient. For example, the contact point to be sought is then to be placed in the center of symmetry of area 110, because this then represents the only designated location. For further applications, something could be hidden behind the center of symmetry, for example, which only the robot should find, but not the human being. Or the center of symmetry could mark the place where a flying drone should land, without this marked point being recognizable to humans.
Ein weiteres Anwendungsbeispiel besteht in einer Navigation in Gebäuden und Anlagen mit Hilfe versteckter Symmetrien unter Verwendung des zumindest einen Bereichs 110 und/oder Musters 610. Hierbei kann eine visuelle Orientierung und Navigation unter Ausnutzung bzw. Verwendung versteckter Symmetrien in Gestalt von Mustern 610 realisiert werden, insbesondere in Gebäuden und Anlagen, unter Tage, aber auch unter freiem Himmel. Dies ermöglicht es Maschinen, insbesondere mobilen Robotern, sowie auch Menschen, die mit Hilfsmitteln wie einem Smartphone mit Kamera ausgestattet sind, sich zu lokalisieren und selbständig zu navigieren. Another application example is navigation in buildings and systems with the help of hidden symmetries using the at least one area 110 and/or pattern 610. Visual orientation and navigation can be implemented here by exploiting or using hidden symmetries in the form of patterns 610. especially in buildings and systems, underground, but also in the open air. This enables machines, especially mobile robots, as well as people equipped with tools such as a smartphone with a camera, to locate themselves and navigate independently.
Besteht Sichtkontakt zum Satelliten, ist ein GPS-basiertes System für viele Anwendungen der Lokalisierung und Navigation meist ausreichend. An vielen Orten entfällt diese Möglichkeit jedoch, z. B. innerhalb von Gebäuden, in Parkhäusern, in Tunneln, im Bergbau oder unter Wasser. Insbesondere in großen, einheitlich gestalteten Gebäuden mit vielen Stockwerken kann eine Orientierung und Navigation für Mensch und Maschine sehr schwierig sein. Alle heute bekannten SLAM-Systeme (SLAM = Simultaneous Localization And Mapping), die sich bei der Bildung und Nutzung ihrer Karten nur auf die in der Umgebung ohnehin vorhandenen Landmarken stützen können, arbeiten dort unter Umständen unzuverlässig und/oder unpräzise. Ihre Nutzung bleibt daher bisher auf wenige einfache Use-Cases und Demonstratoren beschränkt. In der Praxis wird in praktisch allen Anwendungen, bei denen Zuverlässigkeit, hohe Verfügbarkeit und Genauigkeit gefragt ist, mit technischen Markern gearbeitet. Hierfür existieren vielfältige Möglichkeiten, beispielsweise Beacons, unterschiedliche Arten von Tags, z. B. radiofrequente, elektromagnetische oder akustomagnetische, gepulste Leuchten, sowie viele Arten von passiven Markern, z. B. April Tag Marker, ArUco Marker, AR Tag Marker, QR-Codes, usw. All diese Marker sind auffällig. Einige von ihnen sind auch aufwändig zu installieren, wie z. B. Beacons, die in den Boden einzulassen sind, oder instand zu halten. If there is visual contact with the satellite, a GPS-based system is usually sufficient for many localization and navigation applications. In many places, however, this option is not available, e.g. B. inside buildings, in parking garages, in tunnels, in mining or under water. Especially in large, uniformly designed buildings with many floors, orientation and navigation can be very difficult for people and machines. All currently known SLAM systems (SLAM = Simultaneous Localization And Mapping), which when creating and using their maps can only be based on the landmarks that are already present in the area, may work unreliably and/or imprecisely there. Their use has therefore so far been limited to a few simple use cases and demonstrators. In practice, technical markers are used in practically all applications where reliability, high availability and accuracy are required. There are many possibilities for this, for example beacons, different types of tags, e.g. B. radio frequency, electromagnetic or acoustomagnetic, pulsed lights, as well as many types of passive markers, e.g. B. April Tag Markers, ArUco Markers, AR Tag Markers, QR Codes, etc. All of these markers are eye-catching. Some of them are also difficult to install, such as B. beacons to be embedded in the ground, or to maintain.
Muster 610 gemäß Ausführungsbeispielen bieten eine Nicht-Wahrnehmbarkeit, d. h. die Muster 610 werden nicht als Marker wahrgenommen. Sie sind so gestaltet, dass sie für den Menschen besonders schwierig, aber für eine Maschine mit dem Verfahren zum Bereitstellen aus Fig. 3 besonders leicht wahrnehmbar sind. Zudem sind sie passiv, benötigen also keine elektrische Energie, keine Vernetzung und keine Instandhaltung. Mit den vorstehend bereits beschriebenen Möglichkeiten der Ausführung der Bereiche 110 und Muster 610 hinsichtlich Material und symmetrischen Muster-Inhalten ergeben sich vielfältige Optionen, um die nützlichen Muster 610 auch ansprechend schön oder zumindest unauffällig zu gestalten und dafür zu sorgen, dass sie sich in eine Umgebung bestmöglich einfügen. Diese Möglichkeiten können beispielsweise von Innenarchitekten, Raumausstattern, Planern von Krankenhäusern, Büros, Hotels, Flughäfen, Bahnhöfen, usw. genutzt werden. Patterns 610 according to embodiments provide non-perceptibility, i. H. the patterns 610 are not perceived as markers. They are designed to be particularly difficult for humans to perceive, but particularly easy for a machine to perceive using the method of providing shown in FIG. In addition, they are passive, meaning they require no electrical energy, no networking and no maintenance. With the options already described above for the execution of the areas 110 and pattern 610 in terms of material and symmetrical pattern content, there are a variety of options for making the useful pattern 610 attractively beautiful or at least inconspicuous and to ensure that they blend into an environment insert as best as possible. These possibilities can be used, for example, by interior designers, decorators, planners of hospitals, offices, hotels, airports, train stations, etc.
Auch eine nachträgliche Ausrüstung beispielsweise eines mehrstöckigen Gebäudes mit Mustern 610 zur Vorbereitung des Einsatzes von mobilen Robotern kann vorgenommen werden, ohne dass ein solcher Eingriff ein Aussehen der Flure und Räume verändern oder gar beeinträchtigen würde. Dazu können beispielsweise vorhandene Elemente der Wand- oder Deckenverkleidung modifiziert oder ersetzt werden, beispielsweise durch Elemente gleicher Größe und Farbe, jedoch mit z. B. reliefartig eingelassenen, gefrästen, geprägten, gebohrten, gestanzten oder gedruckten, gelaserten oder geätzten Mustern 610. Beispielsweise auch durch das Ersetzen von Akustik- Deckenplatten, bei denen das verwendete Lochmuster lediglich durch ein Lochmuster mit Symmetrieeigenschaften ersetzt wird. Hieraus können auch neue Dienstleistungen und Geschäftsmodelle und ein Expertentum für die Ausstattung von Räumen, Gebäuden und Anlagen mit solchen Mustern 610 ermöglicht werden. Auch in Anwendungsbereichen, wo der Vorteil des Versteckens irrelevant sein mag, wie z. B. in Warenlagern, in Tunneln, im Bergbau, unter Wasser, auf Offshore- Plattformen oder dergleichen, spricht trotzdem die bereits beschriebene Überlegenheit von Mustern 610 aus Bereichen 110 mit Zufallscharakter im Sinne der robusten Detektierbarkeit und Genauigkeit für ihre Verwendung. In diesem Zusammenhang können auf vorteilhafte Weise auch hierarchische Muster 610 verwendet werden, die den unter Bezugnahme auf die Figuren 17 bis 19 beschriebenen hierarchischen Mustern entsprechen oder ähneln. Retrofitting, for example, a multi-storey building with samples 610 in preparation for the use of mobile robots can also be carried out without such an intervention changing the appearance of the corridors and rooms or even impairing it. For this example, existing elements of the wall or ceiling paneling can be modified or replaced, for example by elements of the same size and color, but with z. B. relief embedded, milled, embossed, drilled, punched or printed, lasered or etched patterns 610. For example, by replacing acoustic ceiling tiles, where the hole pattern used is simply replaced by a hole pattern with symmetrical properties. From this, new services and business models and expertise in equipping rooms, buildings and systems with such patterns 610 can also be made possible. Even in applications where the benefit of hiding may be irrelevant, such as B. in warehouses, in tunnels, in mining, under water, on offshore platforms or the like, the already described superiority of patterns 610 from areas 110 with a random character in terms of robust detectability and accuracy speaks for their use. In this context, hierarchical patterns 610 corresponding or similar to the hierarchical patterns described with reference to FIGS. 17 to 19 can also be advantageously used.
Wird eine Vielzahl von Mustern 610 benötigt, z. B. in einem großen Gebäude wie einem Krankenhaus, kann es vorteilhaft sein, die Muster 610 unterscheidbar zu gestalten oder mit Zusatzinformation auszustatten, wie es insbesondere auch unter Bezugnahme auf Fig. 20 erläutert ist. Sollen großflächige Bereiche oder lange Räume mit nur wenigen Mustern 610 abgedeckt werden, sollten diese jeweils in einem großen Entfernungsbereich detektierbar sein. Hierfür ist unter Bezugnahme auf die Figuren 17 bis 19 eine Lösung mit hierarchischen Mustern 610 vorgeschlagen, die großflächige Punktsymmetrien für die Detektion aus großer Distanz aufweisen sowie kleinflächige Punktsymmetrien für die präzise Bestimmung der Pose zwischen Roboter und Muster 610 bei kleinen Distanzen. If a large number of patterns 610 are required, e.g. B. in a large building such as a hospital, it can be advantageous to make the patterns 610 distinguishable or to provide them with additional information, as is also explained in particular with reference to FIG. If large areas or long rooms are to be covered with only a few patterns 610, these should each be detectable over a large distance. A solution with hierarchical patterns 610 is proposed for this with reference to FIGS.
Fig. 22 zeigt eine schematische Darstellung verschiedener Darstellungsmedien 600 mit vordefinierten punktsymmetrischen Bereichen 110 gemäß Ausführungsbeispielen. Von den vordefinierten punktsymmetrischen Bereichen 110 sind auch die Symmetriezentren 112 eingezeichnet. Auf, an oder in jedem Darstellungsmedium 600 ist zumindest ein vordefinierter punktsymmetrischer Bereich 110 erzeugt. Bei den Darstellungsmedien 600 handelt es sich hierbei um Landmarkenelemente. In Fig. 22 sind als Beispiele für Landmarkenelemente nützliche oder dekorative Gegenstände für den Garten gezeigt. In den Flächen der Landmarkenelemente sind jeweils Punktsymmetrien versteckt, die der Mensch nicht wahrnimmt, die jedoch als Landmarken beispielsweise einen Mähroboter bei der Lokalisation und Navigation unterstützen. Somit handelt es sich bei den Darstellungsmedien 600 um Gegenstände mit versteckten Symmetrien bzw. vordefinierten punktsymmetrischen Bereichen 110 für Garten und Haus zur Unterstützung von mobilen Robotern. Konkrete Beispiele der Darstellungsmedien 600 sind Pflanzkübel, Blumenkübel, Gefäße, Stützen, Begrenzungen, Steine, Bodenplatten, Wandplatten, Gartenleuchten, Regentonnen oder dekorative Elemente. FIG. 22 shows a schematic representation of various display media 600 with predefined point-symmetrical regions 110 according to exemplary embodiments. The centers of symmetry 112 of the predefined point-symmetrical regions 110 are also drawn in. At least one predefined point-symmetrical area 110 is generated on, on or in each display medium 600 . The display media 600 are landmark elements. In Fig. 22 useful or decorative objects for the garden are shown as examples of landmark elements. Point symmetries are hidden in the surfaces of the landmark elements Humans do not perceive, but as landmarks, for example, support a robotic lawnmower in localization and navigation. The display media 600 are therefore objects with hidden symmetries or predefined point-symmetrical areas 110 for the garden and house to support mobile robots. Concrete examples of the display media 600 are planters, flower pots, vessels, supports, borders, stones, floor panels, wall panels, garden lights, water butts or decorative elements.
Somit kann eine vorteilhafte Verwendung von symmetrisch gestalteten Objekten in Garten und Haus als Darstellungsmedien 600 für die Unterstützung einer Selbstlokalisation und Navigation von mobilen Robotern erfolgen, wobei diese Objekte in dem Sinne unauffällig sind, dass man ihnen ihre Funktion nicht ansieht. Optional können auch eventuell vorhandene, in der Regel nicht mobile, Überwachungskameras mit einbezogen werden, wobei eine Unterstützung zwischen Roboter und Überwachungskamera in beide Richtungen erfolgen kann. Besonders die Selbstlokalisation und Navigation von autonomen Rasenmähern als Robotern kann hierbei gemäß Ausführungsbeispielen verbessert bzw. unterstützt werden. Thus, symmetrically designed objects in the garden and house can be advantageously used as display media 600 to support self-localization and navigation of mobile robots, these objects being unobtrusive in the sense that their function is not apparent. Optionally, any existing, usually non-mobile surveillance cameras can also be included, with support being able to take place in both directions between the robot and the surveillance camera. In particular, the self-localization and navigation of autonomous lawn mowers as robots can be improved or supported according to exemplary embodiments.
Herkömmlicherweise wird zum Beispiel ein Einfassungsdraht und ggf. ein Führungsdraht verwendet, die im Rasen manuell verlegt werden und die anfällig gegen Beschädigungen sein können, z. B. bei Bodenarbeiten. Außerdem orientiert sich ein Mähroboter eventuell so stark bzw. häufig am Bodendraht, dass dies unschöne Spuren im Rasen hinterlassen kann. Alternative herkömmliche Lösungen können aus unterschiedlichen Gründen ebenfalls unbefriedigend sein. Eine GPS-Lokalisierung in Kombination mit Rasenflächenerkennung kann ungenau sein, insbesondere kann die Unterscheidung von Rasenflächen und Beeten sowie die Einhaltung der Grenze zum Nachbarn unzuverlässig sein. Herkömmliche Lösungen mit batteriebetriebenen Funkbaken, die an mehreren Stellen in die Beete gesteckt werden sollen, bedürfen beispielsweise der Wartung und dürfen nicht verschoben oder umgestoßen werden. Es ist davon auszugehen, dass diese Lösung nicht ohne Weiteres für einen mehrjährigen störungsfreien Betrieb geeignet ist. Gemäß einem Ausführungsbeispiel ist vorgesehen, dass Elemente wie die Landmarkenelemente bzw. Darstellungsmedien 600 aus Fig. 22 im Garten aufgestellt werden, die zwei Funktionen haben, nämlich eine erste Funktion als nicht wahrnehmbare Landmarke und eine zweite Funktion, z. B. als Pflanzkübel, Blumenkübel, Gefäß, Stütze, Begrenzung, Stein, Bodenplatte, Wandplatte, Gartenleuchte, Regentonne oder als dekoratives Element. Für deren Gestaltung hinsichtlich Material, Oberfläche, Textur, Struktur, Farbe existieren vielfältige Möglichkeiten. Auch eine Wandgestaltung am Haus oder an einer Gartenhütte kommt in Frage sowie eine Gestaltung von Geländern, Zäunen oder Sichtschutzelementen mit punktsymmetrischen Bereichen 110. Die Landmarkenelemente bzw. Darstellungsmedien 600 sollten möglichst standfest oder schwer oder im Boden oder am Gebäude oder am Zaun verankert sein, damit ein versehentliches Verschieben unwahrscheinlich ist. Der vorzugsweise mit Kamera oder anderer bildgebender Sensorik ausgestattete Roboter sollte nach Möglichkeit mindestens jeweils ein Landmarkenelement im Blick haben. Besser ist es, wenn er zwei oder mehr Elemente im Blick hat, dann ist auch Triangulation möglich, so dass die Entfernung und die relative Lage des Roboters zu den Landmarkenelementen bzw. Darstellungsmedien 600 genauer bestimmbar werden. Alternativ oder zusätzlich zur Verwendung von vielen Landmarkenelementen bzw. Darstellungsmedien 600 kann der Roboter auch mehrere Sensoren aufweisen, z. B. zwei Kameras oder eine Kamera und einen Laserscanner, um stets eine präzise Entfernungsmessung per Stereoskopie oder Lichtlaufzeitmessung zum jeweiligen Landmarkenelement und ggf. anderen Punkten der Szene zu gewährleisten. Conventionally, for example, a border wire and possibly a guide wire are used, which are manually laid in the turf and which can be susceptible to damage, e.g. B. when working on the ground. In addition, a robotic lawnmower may orientate itself so strongly or frequently on the ground wire that this can leave unsightly marks in the lawn. Alternative conventional solutions may also be unsatisfactory for a variety of reasons. A GPS localization in combination with lawn area detection can be inaccurate, in particular the distinction between lawns and beds as well as adhering to the border to the neighbor can be unreliable. For example, conventional solutions with battery-operated radio beacons, which are to be placed in several places in the beds, require maintenance and must not be moved or knocked over. It can be assumed that this solution is not readily suitable for several years of trouble-free operation. According to one exemplary embodiment, it is provided that elements such as the landmark elements or display media 600 from FIG. B. as a planter, flower pot, vessel, support, border, stone, base plate, wall plate, garden light, rain barrel or as a decorative element. There are many options for designing them in terms of material, surface, texture, structure and colour. A wall design on the house or on a garden shed is also an option, as well as the design of railings, fences or privacy protection elements with point-symmetrical areas 110. The landmark elements or display media 600 should be as stable or heavy as possible or anchored in the ground or on the building or on the fence so that accidental displacement is unlikely. The robot, which is preferably equipped with a camera or other imaging sensors, should have at least one landmark element in view if possible. It is better if he has two or more elements in view, then triangulation is also possible, so that the distance and the position of the robot relative to the landmark elements or display media 600 can be determined more precisely. As an alternative or in addition to the use of many landmark elements or display media 600, the robot can also have several sensors, e.g. B. two cameras or a camera and a laser scanner to always ensure a precise distance measurement by stereoscopy or time-of-flight measurement to the respective landmark element and possibly other points of the scene.
Die Bereiche 110 oder Muster der Landmarkenelemente bzw. Darstellungsmedien 600 können codiert, siehe auch Fig. 8, oder mit Zusatzinformationen versehen sein, siehe auch Fig. 20, um sie für den Roboter leicht unterscheidbar zu machen. Sollen großflächige Bereiche oder lange Strecken mit nur wenigen Landmarkenelementen bzw. Darstellungsmedien 600 abgedeckt werden, sollten diese jeweils in einem großen Entfernungsbereich detektierbar sein. Hierfür können die unter Bezugnahme auf die Figuren 17 bis 19 vorgestellten hierarchischen Muster verwendet werden, die großflächige Punktsymmetrien für die Detektion aus großer Distanz sowie kleinflächige Punktsymmetrien für die präzise Bestimmung der Pose zwischen Roboter und Landmarkenelement bzw. Darstellungsmedium 600 bei kleinen Distanzen aufweisen. The areas 110 or patterns of the landmark elements or representation media 600 can be encoded, see also FIG. 8, or provided with additional information, see also FIG. 20, in order to make them easily distinguishable for the robot. If large areas or long stretches are to be covered with only a few landmark elements or display media 600, these should each be detectable over a large distance. For this purpose, the hierarchical patterns presented with reference to FIGS. 17 to 19 can be used, the large-area point symmetries for detection from a great distance and small-area ones Have point symmetries for the precise determination of the pose between the robot and landmark element or display medium 600 at small distances.
Eine praktische Anwendung gemäß Ausführungsbeispielen könnte wie folgt zusammengefasst werden: Der Anwender kauft sich zu seinem Rasenmähroboter drei kompatible Landmarkenelemente bzw. A practical application based on exemplary embodiments could be summarized as follows: The user buys three compatible landmark elements or
Darstellungsmedien 600, beispielsweise einen Pflanzkübel, einen Deko-Stein und eine selbstklebende Dekorfolie für die Regentonne, und platziert diese an unterschiedlichen Stellen in seinem Garten. Man kann mit drei Landmarkenelementen bzw. Darstellungsmedien 600 zusätzlich zu einer Ladestation auskommen und eine optimale Platzierung derselben beispielsweise auf einer Website erfahren, wo man wahlweise Fotos von seinem Garten hochladen, seinen Garten bzw. die zu mähenden Fläche skizzieren und/oder seinen Garten auf einer Landkarte markieren kann. Je größer und verwinkelter der Garten ist, desto mehr Landmarkenelemente bzw. Darstellungsmedien 600 werden benötigt. Display media 600, for example a planter, a decorative stone and a self-adhesive decorative film for the rain barrel, and places them in different places in his garden. You can get by with three landmark elements or display media 600 in addition to a charging station and find out an optimal placement of the same, for example on a website, where you can optionally upload photos of your garden, sketch your garden or the area to be mowed and/or your garden on a can mark map. The larger and more angled the garden is, the more landmark elements or display media 600 are required.
Nachfolgend führt der Anwender eine manuell gesteuerte Teach-In-Fahrt mit dem Roboter durch. Diesen steuert er wahlweise mit Smartphone, Tablet, Fernsteuerung, Spielekonsolen-Controller, Gestensteuerung oder akustisch durch Zuruf von Kommandos. Die Teach-In-Fahrt dient dazu, dem Roboter die Begrenzungen der zu mähenden Flächen zu zeigen und wie er von einem Gartenabschnitt zum nächsten kommt. Hindernisse erkennt der Roboter automatisch, sie müssen also bei der Teach-In-Fahrt nicht besonders berücksichtigt werden. Die obligatorische Ladestation ist ebenfalls mit punktsymmetrischen Bereichen 110 versehen und dient beispielsweise immer als Landmarkenelement. Während der Teach-In-Fahrt erfasst der Roboter die vom jeweiligen Ort sichtbaren Landmarkenelemente bzw. Darstellungsmedien 600, an denen er sich später orientieren wird. The user then carries out a manually controlled teach-in run with the robot. He controls this either with a smartphone, tablet, remote control, game console controller, gesture control or acoustically by shouting commands. The teach-in drive is used to show the robot the boundaries of the areas to be mowed and how to get from one section of the garden to the next. The robot automatically recognizes obstacles, so they do not have to be taken into account during the teach-in drive. The obligatory charging station is also provided with point-symmetrical areas 110 and always serves as a landmark element, for example. During the teach-in run, the robot detects the landmark elements or display media 600 that are visible from the respective location and by which it will later orient itself.
Nachfolgend kann der Roboter autonom durch den Garten fahren und Bahnen mähen. Dabei orientiert er sich an den bekannten Landmarkenelementen bzw. Darstellungsmedien 600 mit den Bereichen 110 oder Mustern. Zeitweise fehlende bzw. verdeckte Sicht zu den Landmarkenelementen bzw. Darstellungsmedien 600 überbrückt der Roboter optional per Odometrie, Trägheitsnavigation und/oder GPS. Stellt sich während der Teach-In-Fahrt oder während des Mähbetriebs heraus, dass zu wenige Landmarkenelemente bzw. Darstellungsmedien 600 vorhanden sind, so gibt der Roboter (z. B. via Smartphone App) eine Empfehlung ab, wie viele Elemente hinzugefügt und wo diese aufgestellt werden sollten. Wird eine Landmarke bzw. ein Darstellungsmedium 600 mit der Zeit durch Blattwuchs verdeckt, so gibt der Roboter einen entsprechenden Hinweis und fordert auf, die verdeckte Sicht zu befreien. Wurde ein Landmarkenelement bzw. ein Darstellungsmedium 600 versehentlich erheblich verschoben oder verdreht, so erkennt der Roboter, dass die relativen Bezüge zwischen den Landmarkenelementen bzw. Darstellungsmedien 600 verändert sind und fordert den Anwender zu einem Update-Teach-In für den betreffenden Teil des Gartens auf. The robot can then drive autonomously through the garden and mow lanes. In doing so, it is based on the known landmark elements or display media 600 with the areas 110 or patterns. Temporarily missing or covered view of the landmark elements or The robot optionally bridges display media 600 using odometry, inertial navigation and/or GPS. If it turns out during the teach-in drive or during mowing operation that there are too few landmark elements or display media 600, the robot (e.g. via smartphone app) makes a recommendation as to how many elements should be added and where should be set up. If a landmark or a display medium 600 is covered over time by leaf growth, the robot gives a corresponding indication and requests that the covered view be cleared. If a landmark element or a display medium 600 was inadvertently moved or rotated significantly, the robot recognizes that the relative relationships between the landmark elements or display media 600 have changed and prompts the user for an update teach-in for the relevant part of the garden .
Sind auf dem Grundstück auch Überwachungskameras vorhanden, so können diese optional in das System einbezogen werden: Das Verfahren zur Detektion der Bereiche 110 der Landmarkenelemente bzw. Darstellungsmedien 600 läuft auch auf den Überwachungskameras. Die normalerweise festen Positionen der Landmarkenelemente bzw. Darstellungsmedien 600 werden von den Überwachungskameras erfasst. Die Positionen werden gespeichert. Ab und zu, z. B. einmal minütlich, werden die Positionen neu erfasst und mit den gespeicherten Positionen verglichen. Wurde eine Landmarkenposition verändert, z. B. versehentlich, so meldet das mit dem Roboter vernetzte Überwachungskamerasystem die Veränderung der Position an den Roboter. Ein Update-Teach-In kann dann ggf. entfallen. Das Überwachungskamerasystem kann auch die Information bereitstellen, dass nichts verändert wurde und der Mähbetrieb normal stattfinden kann. Umgekehrt können die Überwachungskameras auch vom Vorhandensein der Anordnung von Landmarkenelementen bzw. Darstellungsmedien 600 profitieren: Der Roboter baut während seiner Fahrt eine 2- oder 3-dimensionale digitale Karte seiner Umgebung auf. In dieser Karte haben die Landmarkenelemente bzw. Darstellungsmedien 600 feste Positionen. Die jeweilige Überwachungskamera findet einen Teil der Landmarkenelemente bzw. Darstellungsmedien 600 und kann sich anhand der vom Roboter aufgebauten Karte relativ darin verorten, also selbst lokalisieren. Dies setzt eine Vernetzung von Roboter und Kamera voraus. Bei nicht vorhandener Vernetzung kann sich die Überwachungskamera immerhin bezüglich der Landmarkenelemente bzw. Darstellungsmedien 600 verorten. If surveillance cameras are also present on the property, these can optionally be included in the system: The method for detecting the areas 110 of the landmark elements or display media 600 also runs on the surveillance cameras. The normally fixed positions of the landmark elements or display media 600 are recorded by the surveillance cameras. The positions are saved. Now and then, e.g. B. once a minute, the positions are re-recorded and compared with the stored positions. If a landmark position was changed, e.g. B. accidentally, the surveillance camera system networked with the robot reports the change in position to the robot. An update teach-in can then possibly be omitted. The surveillance camera system can also provide the information that nothing has changed and mowing operation can take place normally. Conversely, the surveillance cameras can also benefit from the presence of the arrangement of landmark elements or display media 600: the robot creates a 2- or 3-dimensional digital map of its surroundings while it is driving. The landmark elements or display media 600 have fixed positions in this map. The respective surveillance camera finds part of the landmark elements or display media 600 and can locate itself relatively therein using the map constructed by the robot, ie localize itself. This requires networking of robot and camera. If there is no network, the surveillance camera can still locate itself with respect to the landmark elements or display media 600 .
Die Vernetzung kann noch weitergehen: Die vom Roboter gebildete Karte wird auf einen Server zurückgeladen, wo vorher die Planung durchgeführt wurde. Planung und Ist-Zustand können miteinander abgeglichen werden. Der Anwender erhält ein digitales Abbild seines Gartens, in dem er noch genauer auf die Steuerung des Roboters Einfluss nehmen kann. Optional werden bei diesem digitalen Abbild auch Kamerabilder der Roboter- Kamera verwendet, sodass der Anwender sich auch im Nachhinein den Zustand seines Gartens, z. B. über die Jahreszeiten, im Detail in einer Virtual Reality Ansicht ansehen kann. Hersteller können so auf freiwilliger Basis im Gegenzug Daten über alle Gärten der freiwillig teilnehmenden Anwender erhalten und diese Informationen für eine Weiterentwicklung seiner Mähroboter und Landmarkenelemente bzw. Darstellungsmedien 600 nutzen. Die hier für den Garten veranschaulichte Anwendung und Betriebsweise lässt sich auch auf das Innere eines Hauses übertragen, insbesondere für Staubsaugroboter, Bodenputzroboter, Fensterputzroboter, fliegende Überwachungsdrohnen und nichtmobile Überwachungskameras. Networking can go even further: the map created by the robot is uploaded back to a server where the planning was previously carried out. Planning and actual status can be compared with each other. The user receives a digital image of his garden, in which he can influence the control of the robot even more precisely. Optionally, camera images from the robot camera can also be used with this digital image, so that the user can also check the condition of his garden afterwards, e.g. B. about the seasons, in detail in a virtual reality view. In return, manufacturers can voluntarily receive data about all the gardens of the voluntarily participating users and use this information for a further development of their robotic lawnmowers and landmark elements or display media 600 . The application and mode of operation illustrated here for the garden can also be transferred to the interior of a house, in particular for vacuum cleaning robots, floor cleaning robots, window cleaning robots, flying surveillance drones and non-mobile surveillance cameras.
Fig. 23 zeigt ein Kamerabild eines Förderbands als Darstellungsmedium 600 mit einem Ausführungsbeispiel eines Musters 610 aus vordefinierten punktsymmetrischen Bereichen und von auf dem Förderband abgelegten Objekten 2300. Somit ist hierbei ein Förderband mit einem Muster 610 ähnlich oder entsprechend einer der vorstehend beschriebenen Muster versehen. Das Muster 610 ist aus vordefinierten punktsymmetrischen Bereichen mit ungerader und gerader Symmetrie aufgebaut. Von den vordefinierten punktsymmetrischen Bereichen sind in Fig. 23 die Symmetriezentren 112 A und 112 B gezeigt. Anders ausgedrückt zeigt Fig. 23 ein Kamerabild mit einer Momentaufnahme des Förderbands in einer Ansicht von oben. Auf dem Band sind Objekte 2300 beispielsweise in Gestalt verschiedener Leuchtmittel mit GU10 Sockel abgelegt. Selbst wenn die Objekte 2300 mehr als die Hälfte des Bandes verdecken, bleibt ein für die Funktion ausreichend großer Teil des Musters 610 sichtbar. Bei der Auswertung des Bildes wurden die eingezeichneten Punktsymmetriezentren 112A und 112B gefunden. Anhand einer Codierung des Musters 610 ist die Ermittlung von absoluten Positionen auf dem Förderband in einem Bandkoordinatensystem eindeutig möglich. Fig. 23 shows a camera image of a conveyor belt as a display medium 600 with an embodiment of a pattern 610 of predefined point-symmetrical areas and objects 2300 placed on the conveyor belt. Thus, a conveyor belt is provided with a pattern 610 similar to or corresponding to one of the patterns described above. The pattern 610 is made up of predefined point-symmetric regions with odd and even symmetry. The centers of symmetry 112A and 112B of the predefined point-symmetrical regions are shown in FIG. In other words, FIG. 23 shows a camera image with a snapshot of the conveyor belt in a view from above. Objects 2300 are stored on the belt, for example in the form of various lamps with a GU10 base. Even if the objects 2300 occlude more than half of the band, a large enough portion of the pattern 610 remains visible for the function. When evaluating the image, the drawn-in point symmetry centers 112A and 112B were found. Based on an encoding of the pattern 610 is the Absolute positions on the conveyor belt can be clearly determined in a belt coordinate system.
Fig. 24 zeigt das Kamerabild aus Fig. 23 nach einer Verarbeitung unter Verwendung des Verfahrens zum Bereitstellen aus Fig. 3. Somit sind in Fig. 24 aufgrund der teilweisen Verdeckung des Musters 610 erkannte Umrisse der auf dem Förderband befindlichen Objekte 2300 für das Kamerabild aus Fig. 23 gezeigt. Hier wurde, nach Ermittlung des im Kamerabild enthaltenen Koordinatenbereichs des Förderbands das entsprechende bekannte Referenzmuster pixelweise mit dem Kamerabild verglichen. Dort wo Kamerabild und Referenzmuster voneinander abweichen, liegt eine Verdeckung vor. Diese Bereiche sind Fig. 24 mittels Aufhellung gekennzeichnet. Somit können die genauen Umrisse der Objekte 2300 sowie deren Position detektiert werden. 24 shows the camera image of FIG. 23 after processing using the method of providing of FIG. 3. Thus, in FIG. 24, due to the partial occlusion of the pattern 610, detected outlines of the objects 2300 located on the conveyor belt are out of the camera image 23 shown. Here, after determining the coordinate range of the conveyor belt contained in the camera image, the corresponding known reference pattern was compared pixel by pixel with the camera image. Wherever the camera image and reference pattern deviate from each other, there is occlusion. These areas are marked in FIG. 24 by means of brightening. Thus, the exact outlines of the objects 2300 and their position can be detected.
Unter Bezugnahme auf Fig. 23 und Fig. 24 sei angemerkt, dass eine Verwendung der Muster 610 mit enthaltenen Symmetrien für ein bewegtes Band, insbesondere ein Förderband, realisiert werden kann, wobei das Muster 610 auf der Außen- oder Innenseite des Bands aufgebracht ist und mit mindestens einem bildgebenden Sensor, z. B. einer Kamera, beobachtet wird, insbesondere während das Band in Benutzung und in Bewegung ist. Ist beispielsweise eine Oberfläche eines Förderbands für industrielle Produktion mit einem geeigneten Muster 610 versehen, so ergeben sich mögliche Vorteile hieraus für die Beobachtung und Steuerung von Prozessen, die zumindest teilweise durch Roboter ausgeführt werden. Durch die Symmetriezentren 112A und 112B entstehen auf dem Förderband ausgezeichnete Orte, die auch unter mechanischer Dehnung des Bands oder bei unpräzisem Lauf des Bands (z. B. Seitenversatz) oder bei Schwingung des Bands eindeutig bleiben. Diese ausgezeichneten Orte können ein flexibles Koordinatensystem definieren, das fest mit dem Band verbunden ist. With reference to Fig. 23 and Fig. 24 it is noted that a use of the patterns 610 with included symmetries can be realized for a moving belt, in particular a conveyor belt, with the pattern 610 applied to the outside or inside of the belt and with at least one imaging sensor, e.g. a camera, particularly while the belt is in use and in motion. For example, if a surface of a conveyor belt for industrial production is provided with a suitable pattern 610, then there are possible advantages for the observation and control of processes that are carried out at least in part by robots. The centers of symmetry 112A and 112B create distinct locations on the conveyor belt, which remain unambiguous even under mechanical stretching of the belt or if the belt runs imprecisely (e.g. laterally offset) or if the belt vibrates. These distinguished locations can define a flexible coordinate system that is firmly attached to the band.
Durch Kenntnis und Ausnutzung der relativen Anordnung der Symmetriezentren 112A und 112B zueinander, insbesondere unter Einbeziehung der ungeraden und geraden Symmetrien, kann anhand der Auswertung des Kamerabildes, das einen Ausschnitt des Förderbands enthält, die absolute Koordinate jeder im Kamerabild sichtbaren Stelle des Bandes im Band- Koordinatensystem ermittelt werden. Dies kann beispielsweise genutzt werden, um ein Objekt 2300 an wohldefinierter Position auf dem Förderband abzulegen, das an anderer Stelle von dort wieder abgenommen werden kann, ohne dass es notwendig ist, das Objekt 2300 detektieren oder erkennen zu müssen. Dazu stellt die mit entsprechender Kamera inklusive Auswertung ausgestattete, ablegende Stelle beispielsweise die Koordinate(n) digital bereit, wo das Objekt 2300 abgelegt wurde. Weitere Zusatzinformationen können mitgeliefert werden, z. B. um welchen Objekttyp es sich handelt, wie das Objekt 2300 auf dem Band orientiert ist, welche Seite unten ist, wo es gegriffen werden kann, usw. An der nächsten abgreifenden Stelle, die ebenfalls mit Kamera inklusive Auswertung ausgestattet ist, stehen die digital übertragenen Daten rechtzeitig bereit. By knowing and using the relative arrangement of the centers of symmetry 112A and 112B to one another, in particular taking into account the odd and even symmetries, the absolute coordinates of each point of the belt visible in the camera image in the belt Coordinate system determined will. This can be used, for example, to deposit an object 2300 at a well-defined position on the conveyor belt, which can be removed from there again at a different location without it being necessary to detect or recognize the object 2300 . For this purpose, the depositing location, which is equipped with a corresponding camera including evaluation, digitally provides the coordinate(s) where the object 2300 was deposited. Further additional information can be supplied, e.g. B. what type of object it is, how the object 2300 is oriented on the belt, which side is down, where it can be grabbed, etc. At the next pick-up point, which is also equipped with a camera including evaluation, are the digital transmitted data ready in time.
Durch Beobachtung des Bandes mit der Kamera und (fortlaufende) Auswertung ist die Bandkoordinate und Bandgeschwindigkeit am Ort des Abgreifens ständig bekannt. Im Normalfall liegt das Objekt 2300 zu diesem Zeitpunkt noch exakt an der Bandkoordinate, wo es vorher abgelegt worden ist. Somit kann die Abgreifmechanik rechtzeitig bereitstehen bzw. ein Roboter zuverlässig gesteuert werden, um das Objekt 2300 zielgenau und ohne Ruck vom Band abzugreifen. Dabei ist es nicht nötig, das Objekt 2300 selbst im Kamerabild zu identifizieren oder zu vermessen. Alleine die Kenntnis der digital übertragenen Daten über Typ, Ausrichtung und Lage auf dem Bandkoordinatensystem reicht aus, um die Funktion des zuverlässigen Abgreifens zu realisieren. Fig. 23 veranschaulicht das ausgewertete Bild einer Kamera, die das Förderband, auf dem sich Objekte 2300 befinden, von oben beobachtet. Wie zu sehen ist, werden trotz teilweiser Verdeckung eine mehr als ausreichend große Anzahl von Symmetriezentren 112A und 112B gefunden, um den jeweiligen Ort auf dem Bandkoordinatensystem zu ermitteln. By observing the tape with the camera and (continuous) evaluation, the tape coordinates and tape speed at the point of tapping are constantly known. Normally, at this point in time, the object 2300 is still exactly at the belt coordinates where it was previously placed. In this way, the pick-up mechanism can be ready in good time or a robot can be reliably controlled in order to pick up the object 2300 from the conveyor accurately and without jerks. It is not necessary to identify or measure the object 2300 itself in the camera image. Just knowing the digitally transmitted data about the type, alignment and position on the strip coordinate system is sufficient to implement the reliable tapping function. FIG. 23 illustrates the evaluated image of a camera that observes the conveyor belt on which objects 2300 are located from above. As can be seen, despite partial occlusion, a more than sufficient number of symmetry centers 112A and 112B are found to determine their respective location on the tape coordinate system.
In einer einfachen Ausgestaltung benötigt die Auswerteeinheit bzw. Bestimmungsvorrichtung aus Fig. 1 nur sehr wenige Informationen über das auf dem Band aufgebrachte Muster 610, nämlich an welchen Koordinaten sich die Symmetriezentren 112A und 112B befinden sowie deren Vorzeichen, also ob es sich jeweils um eine ungerade (negatives Vorzeichen) oder gerade (positives Vorzeichen) Punktsymmetrie handelt. In einer weiteren Ausgestaltung wird der Auswerteeinheit bzw. Bestimmungsvorrichtung aus Fig. 1 zusätzlich das vollständige Referenzmuster zur Verfügung gestellt, z. B. in Form einer Bild- Datei, auch Referenzbild genannt, um damit Vergleiche durchzuführen. Alternativ kann das Referenzmuster auch als Rechenvorschrift zur Verfügung gestellt werden, z. B. in Form der Parameter eines Quasi-Zufallszahlen-Generators, der bei gleicher Initialisierung immer die gleiche Zahlenfolge liefert, und der hier mehrfach aufgerufen wurde, um eine Referenzmuster zu erstellen, das Anteile in mehreren Ortsfrequenzbereichen aufweist, damit es gleichzeitig für kurze, mittlere und weite Distanzen geeignet ist. So kann das Referenzbild (oder ein Teil davon) bei Bedarf ausgerechnet werden und beansprucht bei Nichtgebrauch wenig Speicherplatz. In a simple embodiment, the evaluation unit or determination device from FIG. 1 requires only very little information about the pattern 610 applied to the tape, namely at which coordinates the centers of symmetry 112A and 112B are located and their sign, i.e. whether it is an odd number in each case (negative sign) or even (positive sign) point symmetry. In a further embodiment, the evaluation unit or determination device from Fig. 1 is additionally complete reference samples provided, e.g. B. in the form of an image file, also known as a reference image, in order to carry out comparisons. Alternatively, the reference pattern can also be made available as a calculation rule, e.g. B. in the form of the parameters of a quasi-random number generator, which always delivers the same sequence of numbers with the same initialization, and which was called up several times here to create a reference pattern that has shares in several spatial frequency ranges, so that it can be used simultaneously for short, medium and is suitable for long distances. In this way, the reference image (or a part of it) can be calculated if required and takes up little storage space when not in use.
Mit der Kenntnis des Referenzbilds ist es dann möglich, das Kamerabild, z. B. pixelweise, mit einem entsprechenden Abschnitt des Referenzbilds zu vergleichen. Die dafür erforderliche Skalierungsanpassung und Rotation, sodass die beiden Bilder hinsichtlich Auflösung und Ausrichtung zueinander passen, sei hier vorausgesetzt. Dieser zusätzliche Schritt des Bildvergleichs wird erst ermöglicht bzw. erheblich vereinfacht, weil zuvor die Position im Bandkoordinatensystem bereits, anhand des Musters 610 mit codierten Punktsymmetrien, bestimmt worden ist. Eine dann noch verbleibende Restunsicherheit bezüglich der Position ist sehr gering. Mit anderen Worten sind die beiden zu vergleichenden Bilder bis auf eine kleine örtliche Restunsicherheit bereits sehr gut aufeinander registriert. With knowledge of the reference image, it is then possible to use the camera image, e.g. B. pixel by pixel to compare with a corresponding section of the reference image. The necessary scaling adjustment and rotation, so that the two images match in terms of resolution and alignment, is a prerequisite here. This additional step of the image comparison is only made possible or considerably simplified because the position in the tape coordinate system has already been determined beforehand using the pattern 610 with coded point symmetries. Any remaining uncertainty regarding the position is very small. In other words, the two images to be compared are already registered very well with one another, apart from a small residual local uncertainty.
Nachfolgend kann eine hochpräzise Auswertung erfolgen, anhand des genauen Vergleichs von Kamerabild und Referenzbild, z. B. um die lokale Verzerrung des Bands aufgrund von aktuellen Lasten oder Alterung oder schlechter Bandführung zu ermitteln. Bei einem leeren und sauberen Förderband sollte dann eine vollflächige nahezu perfekte Übereinstimmung zwischen Kamerabild oder Kamerabildausschnitt und entsprechendem Referenzbildabschnitt feststellbar sein. Befinden sich jedoch Objekte 2300 auf dem Förderband, die das Muster 610 lokal verdecken, ist die Übereinstimmung zwischen Kamerabild und Referenzbild an diesen Stellen bzw. Pixeln nicht mehr gegeben. Aus dieser Information können Masken der Objekte 2300 auf dem Förderband erzeugt werden bzw. die genauen Umrisse der Objekte 2300 hergeleitet werden. Siehe hierzu Fig. 24. Weitere Vorteile werden nachfolgend nicht erschöpfend aufgeführt. Es können weitere Sensoren und zugehörige Verarbeitungsschritte eingespart werden, wie z. B. Lichtschranken, Laserscanner, Time-of-Flight-Sensoren, Ultraschallsensoren, Entfernungsmesser, mechanische Schalter sowie dedizierte Kamera-basierte Algorithmen, die herkömmlicherweise zur Präsenzdetektion, Lokalisation, Vermessung, Klassifikation oder Lageerkennung verwendet werden. Neben den bereits erwähnten Möglichkeiten, anhand der gefundenen Symmetriezentren 112 A und 112 B eine absolute Position im Bandkoordinatensystem zu ermitteln und aus der zeitlichen Ableitung der Position die Geschwindigkeit zu ermitteln, besteht auch die Möglichkeit, eine Dehnung bzw. Stauchung des Bands zu ermitteln, insbesondere die Dehnung in Längsrichtung. Diese kann z. B. hervorgerufen werden durch Alterung oder Überlastung des Bands, durch schwergängige Laufrollen oder andere Teile der Mechanik, durch Lasten auf dem Band, durch schlecht synchronisierte Antriebseinheiten. Die Ermittlung der Dehnung kann helfen, ungünstige Einflüsse frühzeitig zu detektieren. Wenn das Band seitlich von seiner Soll-Lage abweicht, kann dies ebenfalls rechtzeitig detektiert werden, ohne dass die Kamera dafür den ggf. verdeckten Rand zu beobachten braucht. Eine solche seitliche Abweichung könnte sich ansonsten eventuell negativ auswirken, z. B. auf die Lebensdauer. Längs- oder Querschwingungen des Bands können detektiert werden. Längsschwingungen würden sich als kleine periodische Abweichungen der ermittelten Längsgeschwindigkeit bemerkbar machen. Sie können durch defekte oder schwergängige Lager hervorgerufen sein und zum Verrutschen von Objekten auf dem Förderband führen. A high-precision evaluation can then be carried out based on the exact comparison of camera image and reference image, e.g. B. to determine the local distortion of the belt due to current loads or aging or poor belt tracking. With an empty and clean conveyor belt, it should then be possible to determine an almost perfect match between the camera image or camera image section and the corresponding reference image section over the entire surface. However, if there are objects 2300 on the conveyor belt that locally cover the pattern 610, the correspondence between the camera image and the reference image is no longer given at these locations or pixels. Masks of the objects 2300 on the conveyor belt can be generated from this information or the precise outlines of the objects 2300 can be derived. See Fig. 24. Further advantages are listed below in a non-exhaustive manner. Additional sensors and associated processing steps can be saved, e.g. B. light barriers, laser scanners, time-of-flight sensors, ultrasonic sensors, rangefinders, mechanical switches and dedicated camera-based algorithms that are conventionally used for presence detection, localization, surveying, classification or position detection. In addition to the possibilities already mentioned of determining an absolute position in the belt coordinate system based on the found centers of symmetry 112 A and 112 B and determining the speed from the time derivative of the position, there is also the possibility of determining an expansion or compression of the belt, in particular the stretching in the longitudinal direction. This can e.g. B. be caused by aging or overloading of the belt, by stiff rollers or other mechanical parts, by loads on the belt, by poorly synchronized drive units. Determining the strain can help to detect unfavorable influences at an early stage. If the strip deviates laterally from its target position, this can also be detected in good time without the camera having to monitor the edge that may be covered. Such a lateral deviation could otherwise possibly have a negative effect, e.g. B. on the lifespan. Longitudinal or transverse vibrations of the strip can be detected. Longitudinal vibrations would make themselves felt as small periodic deviations in the determined longitudinal speed. They can be caused by defective or sluggish bearings and can lead to objects slipping on the conveyor belt.
Eine nachträgliche Ausrüstung durch Integration in bestehende Systeme ist relativ einfach möglich. Es muss nur das Band ausgetauscht werden, durch ein Band mit dem Muster 610. Bestehende Kameras, die auf das Band schauen, können ggf. weiterverwendet werden. Die Software oder Embedded Hardware zur Auswertung ihrer Bilder kann ersetzt oder ergänzt werden mit dem Algorithmus zur Detektion der Symmetriezentren und ihrer weiteren Verarbeitung bzw. einem Ausführungsbeispiel eines der vorstehend genannten Verfahren. Das Band kann aus unterschiedlichen Materialien bzw. Bauteilen gefertigt sein, beispielsweise ein Gummiband oder gummiertes Gewebeband oder Kunststoff- Gliederband oder Metallgliederband. Das Muster 610 kann auf der Oberseite des Bands angebracht werden oder auf der Unterseite. Mit Oberseite ist die Seite gemeint, die mit den transportierten Objekten 2300 oder Gütern in Kontakt kommt, während die Unterseite eher mit der Transporttechnik, Transportrollen, usw. in Kontakt kommt. Die Anbringung des Musters 610 auf der Unterseite kannRetrofitting through integration into existing systems is relatively easy. Only the tape needs to be replaced, with a pattern 610 tape. Existing cameras looking at the tape can continue to be used if necessary. The software or embedded hardware for evaluating your images can be replaced or supplemented with the algorithm for detecting the centers of symmetry and their further processing or an exemplary embodiment of one of the methods mentioned above. The band can be made of different materials or components, for example a rubber band or rubberized fabric band or plastic Link strap or metal link strap. The pattern 610 can be applied to the top of the tape or to the bottom. The upper side means the side that comes into contact with the transported objects 2300 or goods, while the lower side is more likely to come into contact with the transport equipment, transport rollers, and so on. Attaching pattern 610 to the bottom can
Vorteile bieten, weil es nicht von den transportierten Objekten 2300 verdeckt werden kann und weil Muster 610 und Kamera z. B. in staubiger Umgebung besser vor Verschmutzung geschützt werden können. Das Muster auf der Oberseite kann den Vorteil bieten, eine höhere Genauigkeit zu ermöglichen, auch weil die Objekte 2300 auf der Oberseite platziert werden und gemeinsam mit dem Muster 610 im selben Kamerabild sichtbar sind. Offer advantages because it cannot be covered by the transported objects 2300 and because patterns 610 and camera z. B. can be better protected against contamination in a dusty environment. The pattern on the top can offer the advantage of enabling higher accuracy, also because the objects 2300 are placed on the top and are visible together with the pattern 610 in the same camera image.
Umfasst ein Ausführungsbeispiel eine „und/oder“-Verknüpfung zwischen einem ersten Merkmal und einem zweiten Merkmal, so ist dies so zu lesen, dass das Ausführungsbeispiel gemäß einer Ausführungsform sowohl das erste Merkmal als auch das zweite Merkmal und gemäß einer weiteren Ausführungsform entweder nur das erste Merkmal oder nur das zweite Merkmal aufweist. If an embodiment includes an "and/or" link between a first feature and a second feature, this should be read in such a way that the embodiment according to one embodiment includes both the first feature and the second feature and according to a further embodiment either only that having the first feature or only the second feature.

Claims

- 72 - - 72 -
Ansprüche Expectations
1. Verfahren (300) zum Bereitstellen von Navigationsdaten (135) zum Steuern eines Roboters (2160), wobei das Verfahren (300) folgende Schritte aufweist: 1. Method (300) for providing navigation data (135) for controlling a robot (2160), the method (300) having the following steps:
Einlesen (324) von mittels einer Kamera (102) bereitgestellten Bilddaten (105) von einer Schnittstelle (122) zu der Kamera (102), wobei die Bilddaten (105) ein Kamerabild von zumindest einem vordefinierten gerade und/oder ungerade punktsymmetrischen Bereich (110; 110A, HOB) in einer Umgebung der Kamera (102) repräsentieren; Reading in (324) image data (105) provided by a camera (102) from an interface (122) to the camera (102), the image data (105) being a camera image of at least one predefined even and/or odd point-symmetrical region (110 ; 110A, HOB) in an environment of the camera (102);
Bestimmen (326) zumindest eines Symmetriezentrums (112; 112A, 112B) des zumindest einen gerade und/oder ungerade punktsymmetrischen Bereichs (110; 110A, 110B) unter Verwendung der Bilddaten (105) und einer Bestimmungsvorschrift (128); determining (326) at least one center of symmetry (112; 112A, 112B) of the at least one even and/or odd point-symmetrical region (110; 110A, 110B) using the image data (105) and a determination rule (128);
Durchführen (330) eines Vergleichs einer Position des zumindest einen Symmetriezentrums (112; 112A, 112B) in dem Kamerabild mit einer vordefinierten Position zumindest eines Referenz-Symmetriezentrums in einem Referenzbild (115) relativ zu einem Bezugskoordinatensystem, um eine Positionsabweichung (131) zwischen dem Symmetriezentrum (112; 112A, 112B) und dem Referenz-Symmetriezentrum zu bestimmen; und/oder Carrying out (330) a comparison of a position of the at least one center of symmetry (112; 112A, 112B) in the camera image with a predefined position of at least one reference center of symmetry in a reference image (115) relative to a reference coordinate system in order to calculate a position deviation (131) between the to determine the center of symmetry (112; 112A, 112B) and the reference center of symmetry; and or
Ermitteln (332) von Verschiebungsinformationen (133) für zumindest eine Teilmenge von Pixeln des Kamerabildes relativ zu korrespondierenden Pixeln des Referenzbildes (115) unter Verwendung der Positionsabweichung (131), wobei die Navigationsdaten (135) unter Verwendung der Positionsabweichung (131) und/oder der Verschiebungsinformationen (133) bereitgestellt werden. - 73 - Verfahren (300) gemäß Anspruch 1, bei dem die im Schritt (326) des Bestimmens verwendete Bestimmungsvorschrift (128) ausgebildet ist, um zu bewirken, dass eine Signatur (s) für eine Mehrzahl von Pixeln zumindest eines Ausschnitts des Kamerabilds erzeugt wird, um eine Mehrzahl von Signaturen (s) zu erhalten, wobei jede der Signaturen (s) unter Verwendung eines Deskriptors mit einer Mehrzahl von unterschiedlichen Filtern erzeugt wird, wobei jedes Filter zumindest eine Symmetrieart aufweist, wobei jede der Signaturen (s) für jedes Filter des Deskriptors ein Vorzeichen aufweist, dass für die Signatur (s) zumindest eine Spiegelsignatur (SPG, SPU) für zumindest eine Symmetrieart der Filter ermittelt wird, dass ein die Signatur (s) aufweisendes Pixel auf ein Vorliegen zumindest eines weiteren Pixels mit einer der zumindest einen Spiegelsignatur (SPG, SPU) entsprechenden Signatur (s) in einem Suchbereich (1104) in einer Umgebung um das Pixel überprüft wird, um bei Vorliegen zumindest eines weiteren Pixels Pixelkoordinaten zumindest eines symmetrischen Signaturpaars aus dem Pixel und einem weiteren Pixel zu ermitteln, und dass die Pixelkoordinaten des zumindest einen symmetrischen Signaturpaars ausgewertet werden, um das zumindest eine Symmetriezentrum (112; 112A, 112B) zu identifizieren, und/oder wobei zumindest ein Reflektor (RPG, RPU) auf die Vorzeichen einer der Signaturen (s) angewendet wird, um die zumindest eine Spiegelsignatur (SPG, SPU) ZU ermitteln, wobei jeder Reflektor (RPG, RPU) für eine Symmetrieart spezifische und von den Filtern des Deskriptors abhängige Vorschriften zur Modifikation der Vorzeichen aufweist, wobei der Suchbereich (1104) von zumindest einem der angewendeten Reflektoren (RPG, RPU) abhängig ist. Verfahren (300) gemäß Anspruch 2, bei dem im Schritt (326) des Bestimmens für jedes bereits bestimmte Symmetriezentrum (112; 112A, 112B) unter Verwendung der Pixelkoordinaten jedes symmetrischen Signaturpaars, das zum korrekten Identifizieren des Symmetriezentrums - 74 - Determining (332) displacement information (133) for at least a subset of pixels of the camera image relative to corresponding pixels of the reference image (115) using the positional deviation (131), wherein the navigation data (135) using the positional deviation (131) and/or the displacement information (133) are provided. - 73 - Method (300) according to Claim 1, in which the determination rule (128) used in the step (326) of determining is designed to cause a signature (s) to be generated for a plurality of pixels of at least one section of the camera image is to obtain a plurality of signatures (s), each of the signatures (s) being generated using a descriptor with a plurality of different filters, each filter having at least one symmetry type, each of the signatures (s) for each filter of the descriptor has a sign, that for the signature (s) at least one mirror signature (SPG, SPU) is determined for at least one type of symmetry of the filter, that a pixel having the signature (s) indicates the presence of at least one other pixel with one of the at least one signature (s) corresponding to a mirror signature (SPG, SPU) in a search area (1104) in an environment around the pixel is checked in order, if at least ei of a further pixel to determine the pixel coordinates of at least one symmetrical pair of signatures from the pixel and a further pixel, and that the pixel coordinates of the at least one symmetrical pair of signatures are evaluated in order to determine the at least one center of symmetry (112; 112A, 112B) and/or wherein at least one reflector (RPG, RPU) is applied to the signs of one of the signatures (s) in order to determine the at least one mirror signature (SPG, SPU), each reflector (RPG, RPU) for a type of symmetry specific and dependent on the filters of the descriptor for modifying the signs, the search range (1104) being dependent on at least one of the reflectors used (RPG, RPU). The method (300) of claim 2, wherein in the step (326) of determining, for each already determined center of symmetry (112; 112A, 112B) using the pixel coordinates of each symmetric signature pair, it is necessary to correctly identify the center of symmetry - 74 -
(112; 112A, 112B) beigetragen hat, eine Transformationsvorschrift zum Transformieren von Pixelkoordinaten des Symmetriezentrums (112; 112A, 112B) und/ oder des zumindest einen gerade und/oder ungerade punktsymmetrischen Bereichs (110; 110A, HOB) bestimmt wird, wobei die Transformationsvorschrift auf die Pixelkoordinaten des Symmetriezentrums (112; 112A, 112B) und/ oder des zumindest einen gerade und/oder ungerade punktsymmetrischen Bereichs (110; 110A, 110B) angewendet wird, um eine verzerrte Perspektive des Kamerabilds zu entzerren. Verfahren (300) gemäß einem der vorangegangenen Ansprüche, bei dem im Schritt (326) des Bestimmens eine Symmetrieart des zumindest einen Symmetriezentrums (112; 112A, 112B) bestimmt wird, wobei die Symmetrieart eine gerade Punktsymmetrie und/oder eine ungerade Punktsymmetrie repräsentiert, und/oder wobei im Schritt (330) des Durchführens ein Vergleich der Symmetrieart des zumindest einen Symmetriezentrums (112; 112A, 112B) in dem Kamerabild mit einer vordefinierten Symmetrieart zumindest eines Referenz- Symmetriezentrums in einem Referenzbild (115) durchgeführt wird, um eine Übereinstimmung zwischen dem zumindest einen Symmetriezentrum (112; 112A, 112B) und dem zumindest einen Referenz-Symmetriezentrum zu prüfen. Verfahren (300) gemäß Anspruch 4, bei dem die im Schritt (324) des Einlesens eingelesenen Bilddaten (105) ein Kamerabild von zumindest einem Muster (610; 1710, 1810) aus einer Mehrzahl von vordefinierten gerade und/oder ungerade punktsymmetrischen Bereichen (HO; 110A, HOB) repräsentiert, wobei im Schritt (326) des Bestimmens eine geometrische Anordnung von Symmetriezentren (112; 112A, 112 B) des zumindest einen Musters (610; 1710, 1810) bestimmt wird, eine geometrische Abfolge von Symmetriearten der Symmetriezentren (112; 112A, 112 B) bestimmt wird und/oder unter Verwendung der Abfolge das Muster (610; 1710, 1810) aus mehreren vordefinierten Mustern bestimmt wird, wobei die Anordnung und/oder die Abfolge einen Identifikationscode des Musters (610; 1710, 1810) repräsentiert. - 75 - Verfahren (300) gemäß Anspruch 5, bei dem im Schritt (326) des Bestimmens unter Verwendung der Anordnung der Symmetriezentren (112; 112A, 112B) des zumindest einen Musters (610; 1710, 1810) und/oder der Abfolge von Symmetriearten der Symmetriezentren (112; 112A, 112B) eine implizite Zusatzinformation des zumindest einen Musters (610; 1710, 1810) oder eine Auslesevorschrift zum Auslesen einer expliziten Zusatzinformation in dem Kamerabild bestimmt wird, wobei die Anordnung und/oder die Abfolge die Zusatzinformation in codierter Form repräsentiert, wobei die Zusatzinformation auf das Steuern des Roboters (2160) bezogen ist. Verfahren (300) gemäß einem der Ansprüche 5 bis 6, bei dem im Schritt (330) des Durchführens abhängig von der bestimmten Anordnung, der bestimmten Abfolge und/oder des bestimmten Musters (610; 1710, 1810) das Referenzbild (115) aus mehreren gespeicherten Referenzbildern ausgewählt wird oder unter Verwendung einer gespeicherten Erzeugungsvorschrift erzeugt wird. Verfahren (300) gemäß einem der Ansprüche 5 bis 7, bei dem der Schritt (326) des Bestimmens und/oder der Schritt (330) des Durchführens unabhängig von der Symmetrieart der Symmetriezentren (112; 112A, 112B) für alle Symmetriezentren (112; 112A, 112B) gemeinsam ausgeführt wird oder abhängig von der Symmetrieart der Symmetriezentren (112; 112A, 112 B) für die Symmetriezentren (112; 112A, 112B) derselben Symmetrieart gesondert ausgeführt wird. Verfahren (400) zum Steuern eines Roboters (2160), wobei das Verfahren (400) folgende Schritte aufweist: (112; 112A, 112B), a transformation rule for transforming pixel coordinates of the center of symmetry (112; 112A, 112B) and/or the at least one even and/or odd point-symmetrical region (110; 110A, HOB) is determined, wherein the transformation rule is applied to the pixel coordinates of the center of symmetry (112; 112A, 112B) and/or the at least one even and/or odd point-symmetrical area (110; 110A, 110B) in order to correct a distorted perspective of the camera image. Method (300) according to one of the preceding claims, in which in the step (326) of determining a type of symmetry of the at least one center of symmetry (112; 112A, 112B) is determined, the type of symmetry representing an even point symmetry and/or an odd point symmetry, and /or wherein in the step (330) of performing a comparison of the type of symmetry of the at least one center of symmetry (112; 112A, 112B) in the camera image is performed with a predefined type of symmetry of at least one reference center of symmetry in a reference image (115) in order to determine a match between the at least one center of symmetry (112; 112A, 112B) and the at least one reference center of symmetry. Method (300) according to Claim 4, in which the image data (105) read in in step (324) of reading in is a camera image of at least one pattern (610; 1710, 1810) from a plurality of predefined even and/or odd point-symmetrical regions (HO ; 110A, HOB), wherein in the step (326) of determining a geometric arrangement of symmetry centers (112; 112A, 112 B) of the at least one pattern (610; 1710, 1810) is determined, a geometric sequence of symmetry types of the symmetry centers ( 112; 112A, 112 B) is determined and/or the pattern (610; 1710, 1810) is determined from a plurality of predefined patterns using the sequence, the arrangement and/or the sequence having an identification code for the pattern (610; 1710, 1810 ) represented. - 75 - Method (300) according to claim 5, wherein in the step (326) of determining using the arrangement of the centers of symmetry (112; 112A, 112B) of the at least one pattern (610; 1710, 1810) and/or the sequence of Types of symmetry of the centers of symmetry (112; 112A, 112B), implicit additional information of the at least one pattern (610; 1710, 1810) or a reading rule for reading out explicit additional information in the camera image, the arrangement and/or the sequence of the additional information being encoded Form represented, wherein the additional information on controlling the robot (2160) is related. Method (300) according to one of Claims 5 to 6, in which in the step (330) of carrying out the reference image (115) from a plurality of stored reference images is selected or is generated using a stored generation rule. Method (300) according to one of Claims 5 to 7, in which the step (326) of determining and/or the step (330) of performing independently of the type of symmetry of the symmetry centers (112; 112A, 112B) for all symmetry centers (112; 112A, 112B) is carried out jointly or is carried out separately for the centers of symmetry (112; 112A, 112B) of the same type of symmetry depending on the type of symmetry of the centers of symmetry (112; 112A, 112B). Method (400) for controlling a robot (2160), the method (400) having the following steps:
Auswerten (444) von nach dem Verfahren (300) gemäß einem der vorangegangenen Ansprüche bereitgestellten Navigationsdaten (135), um ein von den Navigationsdaten (135) abhängiges Steuersignal (145) zu erzeugen; und - 76 - Evaluation (444) of navigation data (135) provided by the method (300) according to one of the preceding claims in order to generate a control signal (145) dependent on the navigation data (135); and - 76 -
Ausgeben des Steuersignals (145) an eine Schnittstelle (148) zu dem Roboter (2160), um den Roboter (2160) zu steuern. Verfahren (500) zum Herstellen zumindest eines vordefinierten gerade und/oder ungerade punktsymmetrischen Bereichs (110; 110A, HOB) zur Verwendung durch ein Verfahren (300; 400) gemäß einem der vorangegangenen Ansprüche, wobei das Verfahren (500) folgende Schritte aufweist: Outputting the control signal (145) to an interface (148) to the robot (2160) to control the robot (2160). Method (500) for producing at least one predefined even and/or odd point-symmetrical region (110; 110A, HOB) for use by a method (300; 400) according to one of the preceding claims, the method (500) having the following steps:
Generieren (502) von Entwurfsdaten (204), die eine grafische Darstellung des zumindest einen vordefinierten gerade und/oder ungerade punktsymmetrischen Bereichs (110; 110A, 110B) repräsentieren; und generating (502) design data (204) representing a graphical representation of the at least one predefined even and/or odd point symmetric region (110; 110A, 110B); and
Erzeugen (506) des zumindest einen vordefinierten gerade und/oder ungerade punktsymmetrischen Bereichs (HO; 110A, HOB) unter Verwendung der Entwurfsdaten (204) auf, an oder in einem Darstellungsmedium (600), um den zumindest einen vordefinierten gerade und/oder ungerade punktsymmetrischen Bereich (HO; 110A, HOB) herzustellen. Verfahren (500) gemäß Anspruch 10, bei dem im Schritt (502) des Generierens Entwurfsdaten (204) generiert werden, die eine grafische Darstellung des zumindest einen vordefinierten gerade und/oder ungerade punktsymmetrischen Bereichs (HO; 110A, HOB) als ein Kreis, eine Ellipse, ein Quadrat, ein Rechteck, ein Fünfeck, ein Sechseck, ein Polygon oder ein Kreisring repräsentieren, wobei der zumindest eine vordefinierte gerade und/oder ungerade punktsymmetrische Bereich (110; 110A, HOB) ein regelmäßiges oder quasi-zufälliges Inhaltsmuster aufweist, und/oder wobei eine erste Hälfte einer Fläche des zumindest einen vordefinierten gerade und/oder ungerade punktsymmetrischen Bereichs (HO; 110A, HOB) beliebig vorgegeben wird und eine zweite Hälfte der Fläche durch Punktspiegelung und/oder Invertierung von Grauwerten und/oder Farbwerten konstruiert wird, und/oder wobei im Schritt (506) des Erzeugens der zumindest eine vordefinierte gerade - 77 - und/oder ungerade punktsymmetrische Bereich (110; 110A, HOB) durch einen additiven Fertigungsprozess, Trennen, Beschichten, Umformen, Urformen oder optisches Anzeigen erzeugt wird, und/oder wobei das Darstellungsmedium (600) Glas, Stein, Keramik, Kunststoff, Gummi, Metall, Beton, Gips, Papier, Pappe, Lebensmittel oder eine optische Anzeigeeinrichtung aufweist. Verfahren (500) gemäß einem der Ansprüche 10 bis 11, bei dem im Schritt (502) des Generierens Entwurfsdaten (204) generiert werden, die eine grafische Darstellung zumindest eines Musters (610; 1710, 1810) aus einer Mehrzahl von vordefinierten gerade und/oder ungerade punktsymmetrischen Bereichen (110; 110A, 110B) repräsentieren, wobei zumindest eine Teilmenge punktsymmetrischen Bereiche (HO; 110A, HOB) an einem regelmäßigen oder unregelmäßigen Raster (1311) ausgerichtet sind, direkt aneinander angrenzen und/oder teilweise von mindestens einem benachbarten gerade und/oder ungerade punktsymmetrischen Bereich (HO; 110A, HOB) durch einen Zwischenraum getrennt sind, hinsichtlich ihrer Abmessungen und/oder ihrer Inhaltsmuster identisch zueinander oder unterschiedlich voneinander sind und/oder in einer gemeinsamen Ebene oder in unterschiedlichen Ebenen angeordnet sind, und/oder wobei im Schritt (502) des Generierens Entwurfsdaten (204) generiert werden, die eine grafische Darstellung zumindest eines Musters (610; 1710, 1810) mit hierarchischer Symmetrie repräsentieren. Vorrichtung (120; 140; 200), die eingerichtet ist, um die Schritte eines Verfahrens (300; 400; 500) gemäß einem der vorangegangenen Ansprüche in entsprechenden Einheiten (124, 126, 130, 132; 144, 146; 202, 206) auszuführen und/oder anzusteuern. Computerprogramm, das dazu eingerichtet ist, die Schritte eines Verfahrens (300; 400; 500) gemäß einem der Ansprüche 1 bis 12 auszuführen und/oder anzusteuern. Generating (506) the at least one predefined even and/or odd point-symmetrical region (HO; 110A, HOB) using the design data (204) on, on or in a presentation medium (600) around the at least one predefined even and/or odd produce a point-symmetric region (HO; 110A, HOB). Method (500) according to Claim 10, in which, in the step (502) of generating, design data (204) are generated which represent a graphical representation of the at least one predefined even and/or odd point-symmetrical region (HO; 110A, HOB) as a circle, represent an ellipse, a square, a rectangle, a pentagon, a hexagon, a polygon or an annulus, wherein the at least one predefined even and/or odd point-symmetrical area (110; 110A, HOB) has a regular or quasi-random content pattern, and/or wherein a first half of an area of the at least one predefined even and/or odd point-symmetrical area (HO; 110A, HOB) is specified arbitrarily and a second half of the area is constructed by point reflection and/or inversion of gray values and/or color values , and/or wherein in the step (506) of generating the at least one predefined straight line - 77 - and/or odd point-symmetrical areas (110; 110A, HOB) are generated by an additive manufacturing process, cutting, coating, forming, archetypes or optical displays, and/or wherein the display medium (600) is glass, stone, ceramics, plastic , rubber, metal, concrete, plaster, paper, cardboard, food or a visual display device. Method (500) according to one of Claims 10 to 11, in which, in the step (502) of generating, design data (204) are generated which contain a graphical representation of at least one pattern (610; 1710, 1810) from a plurality of predefined straight and/or or represent odd point-symmetrical areas (110; 110A, 110B), with at least a subset of point-symmetrical areas (HO; 110A, HOB) being aligned on a regular or irregular grid (1311), directly adjoining one another and/or partly of at least one neighboring straight and/or odd point symmetric regions (HO; 110A, HOB) are separated by a space, are identical to or different from each other in terms of their dimensions and/or their content patterns and/or are arranged in a common plane or in different planes, and/or wherein in the step (502) of generating design data (204) are generated, the at least one graphical representation t of a pattern (610; 1710, 1810) with hierarchical symmetry. Device (120; 140; 200) arranged to carry out the steps of a method (300; 400; 500) according to one of the preceding claims in corresponding units (124, 126, 130, 132; 144, 146; 202, 206) execute and/or control. Computer program set up to execute and/or control the steps of a method (300; 400; 500) according to one of Claims 1 to 12.
15. Maschinenlesbares Speichermedium, auf dem das Computerprogramm nach Anspruch 14 gespeichert ist. 15. Machine-readable storage medium on which the computer program according to claim 14 is stored.
PCT/EP2021/078611 2020-11-12 2021-10-15 Method for providing navigation data in order to control a robot, method for controlling a robot, method for producing at least one predefined point-symmetric region, and device WO2022100960A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202180090220.6A CN116710975A (en) 2020-11-12 2021-10-15 Method for providing navigation data for controlling a robot, method and device for manufacturing at least one predefined point-symmetrical area

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE102020214249.1A DE102020214249A1 (en) 2020-11-12 2020-11-12 Method for providing navigation data for controlling a robot, method for controlling a robot, method for producing at least one predefined point-symmetrical area and device
DE102020214249.1 2020-11-12

Publications (1)

Publication Number Publication Date
WO2022100960A1 true WO2022100960A1 (en) 2022-05-19

Family

ID=78212127

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/EP2021/078611 WO2022100960A1 (en) 2020-11-12 2021-10-15 Method for providing navigation data in order to control a robot, method for controlling a robot, method for producing at least one predefined point-symmetric region, and device

Country Status (3)

Country Link
CN (1) CN116710975A (en)
DE (1) DE102020214249A1 (en)
WO (1) WO2022100960A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115781765A (en) * 2023-02-02 2023-03-14 科大讯飞股份有限公司 Fault diagnosis method and device for robot, storage medium and equipment

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040156541A1 (en) * 2003-02-07 2004-08-12 Jeon Kyong-Hui Location mark detecting method for robot cleaner and robot cleaner using the method
US20190220033A1 (en) * 2018-01-17 2019-07-18 Lg Electronics Inc. Moving robot and controlling method for the moving robot
DE102020202160A1 (en) 2020-02-19 2021-08-19 Robert Bosch Gesellschaft mit beschränkter Haftung Method for determining a symmetry property in image data, method for controlling a function and device

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2778525B2 (en) 1995-05-31 1998-07-23 日本電気株式会社 Polygon figure shaping device
JP4572947B2 (en) 2008-03-31 2010-11-04 ブラザー工業株式会社 Image generating apparatus and printing apparatus
JP5364528B2 (en) 2009-10-05 2013-12-11 株式会社日立ハイテクノロジーズ Pattern matching method, pattern matching program, electronic computer, electronic device inspection device
JP5491162B2 (en) 2009-12-24 2014-05-14 浜松ホトニクス株式会社 Image pattern matching apparatus and method
JP2012254518A (en) 2011-05-16 2012-12-27 Seiko Epson Corp Robot control system, robot system and program
JP5623473B2 (en) 2012-08-01 2014-11-12 キヤノン株式会社 Image processing apparatus, image processing method, and program.
CN108271407B (en) 2015-06-09 2020-07-31 三菱电机株式会社 Image generation device, image generation method, and pattern light generation device
US10386847B1 (en) 2016-02-19 2019-08-20 AI Incorporated System and method for guiding heading of a mobile robotic device

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040156541A1 (en) * 2003-02-07 2004-08-12 Jeon Kyong-Hui Location mark detecting method for robot cleaner and robot cleaner using the method
US20190220033A1 (en) * 2018-01-17 2019-07-18 Lg Electronics Inc. Moving robot and controlling method for the moving robot
DE102020202160A1 (en) 2020-02-19 2021-08-19 Robert Bosch Gesellschaft mit beschränkter Haftung Method for determining a symmetry property in image data, method for controlling a function and device

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
DOTENCO SERGIU ET AL: "Autonomous Approach and Landing for a Low-Cost Quadrotor Using Monocular Cameras", 19 March 2015, ADVANCES IN BIOMETRICS : INTERNATIONAL CONFERENCE, ICB 2007, SEOUL, KOREA, AUGUST 27 - 29, 2007 ; PROCEEDINGS; [LECTURE NOTES IN COMPUTER SCIENCE; LECT.NOTES COMPUTER], SPRINGER, BERLIN, HEIDELBERG, PAGE(S) 209 - 222, ISBN: 978-3-540-74549-5, XP047339441 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115781765A (en) * 2023-02-02 2023-03-14 科大讯飞股份有限公司 Fault diagnosis method and device for robot, storage medium and equipment

Also Published As

Publication number Publication date
DE102020214249A1 (en) 2022-05-12
CN116710975A (en) 2023-09-05

Similar Documents

Publication Publication Date Title
DE112020004810B4 (en) Systems and methods for recording surface normals with polarization
DE112017002154B4 (en) Mobile robot and control method for a mobile robot
DE112018001050T5 (en) SYSTEM AND METHOD FOR VIRTUALLY ENHANCED VISUAL SIMULTANEOUS LOCALIZATION AND CARTOGRAPHY
DE112010004767T5 (en) Point cloud data processing device, point cloud data processing method and point cloud data processing program
EP2821750A1 (en) Method of determining position for a measuring device and corresponding measuring device
DE112019000383T5 (en) Odometry system and method for tracking traffic lights
DE102007045835A1 (en) Method and device for displaying a virtual object in a real environment
DE102007045834A1 (en) Method and device for displaying a virtual object in a real environment
DE112016006213T5 (en) System and method for fusing outputs from sensors having different resolutions
WO2014079477A1 (en) Method for the automatic creation of two- or three-dimensional building models
DE102021201369A1 (en) Method and system for determining an occlusion or covering within a camera field of view
WO2022100960A1 (en) Method for providing navigation data in order to control a robot, method for controlling a robot, method for producing at least one predefined point-symmetric region, and device
CN106526580A (en) Road sign, apparatus, and method for determining robot position
DE102018132921A1 (en) Method for operating a field device of automation technology in an augmented reality / mixed reality environment
DE10112732C2 (en) Method for determining the position of measurement images of an object relative to the object
WO2022100959A1 (en) Method for providing calibration data for calibrating a camera, method for calibrating a camera, method for producing at least one predefined point-symmetric region, and device
DE102011115354A1 (en) Method for absolute position determination for navigating trailer on base of e.g. factory, involves moving vehicle at maximum speed based on calculated rotational position
EP3711392B1 (en) Method and device for position determination
WO2022100988A1 (en) Method for providing monitoring data for detecting a movable object, method for detecting a movable object, method for producing at least one predefined point-symmetric region, and vehicle
WO2022100961A1 (en) Providing deformation data for a deformation analysis
EP3534293A1 (en) Method and apparatus for determining the position of objects
DE102020111659A1 (en) Method, system and computer program product for determining the pose of a mobile unit
Brady Three-dimensional measurements of animal paths using handheld unconstrained GoPro cameras and VSLAM software
DE102017220634B4 (en) Arrangement and procedure
Hao An Autonomous Navigation Algorithm for Monocular Visual Recognition

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 21793923

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

WWE Wipo information: entry into national phase

Ref document number: 202180090220.6

Country of ref document: CN

122 Ep: pct application non-entry in european phase

Ref document number: 21793923

Country of ref document: EP

Kind code of ref document: A1