Detection device, method and system for the visual detection of objects
The detection device addresses integration challenges by converting object data to a flexible, reduced bit depth using a graphical user interface, enabling efficient data transmission and integration with communication systems.
Patent Information
- Application Number
- DE102021131946
- Authority / Receiving Office
- DE · DE
- Patent Type
- Patents
- Current Assignee / Owner
- Priority Date
- 2020-12-10
- Filing Date
- 2021-12-03
- Publication Date
- 2025-12-31
- Estimated Expiration
- 2041-12-03
AI Technical Summary
Existing communication systems for integrating detection devices like cameras or scanners face challenges due to low standardized data transmission rates and the need to accommodate various communication protocols, especially when dealing with complex devices that generate large amounts of data, leading to cumbersome or impossible integration.
A detection device with a data processing unit that converts detected objects into object data of a first bit depth, allowing flexible adaptation via a graphical user interface to reduce data to a second bit depth suitable for communication systems, using operator blocks and graphical user interface to define program sequences for data processing and output.
Enables efficient, flexible, and targeted data reduction, allowing seamless integration with communication systems, particularly those with 8-bit architecture, ensuring rapid and robust data transmission without loss of information.
Smart Images

Figure 00000000_0001_ABST 
Figure 00000000_0000_ABST
Abstract
Description
[0001] The invention relates to a detection device for the visual detection of objects according to claim 1, a method for adjusting a detection device according to claim 6, and a system for the visual detection of objects according to claim 11.
[0002] EP 3 495 987 A1 discloses embodiments relating to local tone mapping for reading symbols. A local pixel neighborhood metric is determined for at least one raw pixel in an area of interest, which is identified on one or more raw pixels near the at least one raw pixel. A local mapping function is determined for the at least one raw pixel, which maps the value of the raw pixel to a mapped pixel value with a mapped bit depth that is smaller than the bit depth associated with the raw image. The local mapping function is based on a value of at least one other raw pixel near the at least one raw pixel within the local pixel neighborhood metric, and at least one parameter determined based on the raw image. A mapped image is generated for the area of interest by applying the local mapping function to the raw image.US Patent 2010 / 0058289 A1 discloses a method for generating a hardware description for a programmable hardware element based on a graphical program that includes several computational models.
[0003] Various well-known communication systems for connecting detection and / or control devices (such as sensors and / or actuators), for example in an automation system, often have comparatively low standardized data transmission rates.
[0004] Especially with complex devices, such as cameras, large amounts of data can be generated. Furthermore, various devices often need to be connected to a wide range of communication protocols. For example, scanned barcodes or similar data can have different lengths. This can cause problems during data transmission and slow down or delay workflows. Therefore, integrating such devices into these communication systems is often very cumbersome or sometimes even impossible. Consequently, the integration of devices like cameras or scanners into a communication system, such as an automation system, is generally considered to be in need of improvement.
[0005] The invention is therefore based on the objective of enabling the most flexible and targeted adaptation or use possible of a detection device and the data read in, which correspond to the objects detected by the detection device, in a communication system.
[0006] This problem is solved according to the invention by the items according to claims 1, 6 and 11.
[0007] In particular, the task is solved by a detection device for the visual detection of objects, comprising a data processing unit designed to convert the objects detected by the detection device into object data of a first bit depth, wherein the object data comprises several object data fields, and
[0008] wherein the detection device is in particular designed as a barcode reader, and / or the object in particular comprises a barcode or QR code, and the object data preferably includes at least information encoded in the barcode or QR code, and wherein the detection device further comprises the following: at least one interface designed to communicate with a computing unit in such a way that the data processing unit can be configured via the computing unit, wherein the data processing unit is configurable via a graphical user interface on a display device of the computing unit, the user interface has a data input area and a data output area, wherein the data input area has at least one path output area, and the at least one path output area each represents one of the object data fields, and wherein the data output area has at least one path input area; and the computing unit comprises at least one user interface, and the computing unit is configured to receive commands from the user interface, wherein at least one path output area can be connected via a connection command input of the user interface to a first path input area of the data output area by means of at least one connection path, such that a program sequence is defined and visualized on the display device by means of the at least one connection path. wherein the data processing unit is further configured to store the program sequence created by the computing unit and to execute a program defined by the program sequence, wherein the program includes at least one processing step and at least one assignment step to create output object data, wherein the processing step comprises processing those object data fields of the corresponding path output areas that were connected to the first operator block by a first operator function of the first operator block, and wherein the assignment step assigns a result of the processing step to the first path input area that was connected to the first operator block; wherein the data processing unit is configured to output the output object data, in particular as electrical signals, wherein the output object data comprises a plurality of output data fields, and each output data field corresponds to a path input area of the data output area, such that the output object data has a second bit depth, wherein the second bit depth corresponds to the number of path input areas and wherein the second bit depth is smaller than the first bit depth, preferably by a multiple of the first bit depth.
[0009] A key aspect of the invention is to design a data acquisition device in such a way that complex, high-density data captured or read by the device can be condensed or reduced using a graphical user interface. This allows the user to flexibly adapt the data to a suitable output format for the communication system—for example, to a few bytes with a high transmission rate. Advantageously, the data output of the data acquisition device, configurable via the graphical user interface, should (after configuration) run internally on the data acquisition device or on the data processing unit. This enables flexible, simple, and targeted adaptation of the data acquisition device to a connected communication system.
[0010] In one embodiment, the bit depth of the output object data is at least 8 bits.
[0011] Communication systems with an 8-bit architecture are widespread. This allows for largely problem-free integration with such communication systems. Alternatively, a different bit depth can also be easily implemented to enable integration with appropriately configured communication systems.
[0012] In one embodiment, the data output area has eight path input areas.
[0013] This graphically illustrates to the user, in an easily understandable way, how many output data fields are available and thus ultimately how the bit depth of the output object data is determined. Alternatively, the number of path input areas corresponds to the bit depth of a communication system to be connected. This makes connecting to the communication system easy.
[0014] In one embodiment, the operator blocks and / or the corresponding operator functions are configured to generate binary results and / or the operator blocks each contain object instances of an object class, such as an AND operator and / or an OR operator.
[0015] This allows for a rapid, robust, and simple reduction of object data fields. Simultaneously, the use of one or more (chained) operator blocks enables the introduction of user-defined logic that can be adapted to the specific application scenario in which the data acquisition device is used. This allows for flexible and targeted customization of the data acquisition device with regard to the object data conversion it performs and the optional preprocessing or evaluation of this object data for a connected communication system.
[0016] In one embodiment, the data processing unit is configured to divide a data transmission with a bit depth greater than 8 bits between an evaluation unit and the data processing unit into several transmission cycles using a buffer.
[0017] This ensures that no (relevant) information from the object data is lost despite efficient data reduction. Furthermore, data transmission of large amounts of data can be guaranteed quickly and easily, even when connecting to communication systems that operate with a small bit depth.
[0018] In one embodiment, the data processing unit can be configured to perform data transmission between the evaluation unit and the data processing unit with a bandwidth smaller than that specified by a transmission medium and / or a transmission standard. For example, it is conceivable that the object data fields are reduced to a single bit by at least two cascaded operator blocks, which is output as object data and indicates whether the captured object was captured with sufficient quality.
[0019] In one embodiment, the output of the output object data can include outputting the output object data with the second bit depth as electrical signals to a connected communication system and / or the evaluation unit.
[0020] In one embodiment, the detected object can be a barcode or QR code that encodes information, such as a string of characters. Converting the detected object into object data can involve processing electrical signals captured by the detection device, allowing the encoded information to be read. Alternatively, or in addition, the detection device can capture attributes of the detected object, which can then be provided as object data.
[0021] The output object data, or at least one object data field, can in one embodiment comprise at least one geometric attribute of the captured object. For example, in one embodiment, the object data and / or the at least one object data field could specify the height, width, length, contour, angle of rotation, and / or roundness of the captured object. Each attribute can be specified by an object data field in one embodiment.
[0022] In one embodiment, the created program sequence includes a threshold comparison where a comparison operator determines whether the detected geometric attributes of the detected object lie within a target range. If one, a plurality, and / or all of the geometric attributes lie within the target range, then a "1" (1 bit) can be output as the output object data. If there is a deviation from the target range, then a "0" (1 bit) can be output as the output object data.
[0023] The problem according to the invention is further solved by a method for adjusting a detection device, in particular designed as a barcode reader, by means of a computing unit, wherein the method comprises the following steps: - Displaying object data on a graphical user interface on a display device of the computing unit, wherein the object data is obtained by visually capturing an object with a capture device, wherein the object data comprises several object data fields, wherein the object preferably comprises a barcode or QR code, and wherein the object data particularly comprises at least information encoded in the barcode or QR code, where the object data has a first bit depth; the user interface has a data input area and a data output area, wherein the data input area has at least one path output area, and each of the path output areas represents one of the object data fields, and wherein the data output area has at least one path input area; further showing the following steps: - Selecting a first operator block from a variety of operator blocks and displaying the first operator block on the user interface; - Connecting at least one path output area to the first operator block and connecting the first operator block to a first path input area, each by means of a connection path via a connection command input of a user interface of the computing unit, such that a program sequence is defined by the connection paths and visualized on the display device; - Storing the program defined by the program flow on the data processing unit, wherein the program includes at least one processing step and at least one assignment step, wherein the processing step comprises processing those object data fields of the corresponding path output areas that are connected to the first operator block by a first operator function of the first operator block, and wherein the assignment step assigns a result of the processing step to the first path input area that is connected to the first operator block; - Output of the output object data by the data processing unit, in particular as electrical signals, wherein the output object data comprises a plurality of output data fields, and each output data field corresponds to a path input area of the data output area, such that the output object data has a second bit depth, wherein the second bit depth corresponds to the number of path input areas and wherein the second bit depth is smaller than the first bit depth, preferably by a multiple of the first bit depth, and each output data field corresponds to one of the path input areas of the data output area, so that one bit depth of the output object data corresponds to the number of path input areas.
[0024] This results in the same advantages as those already described in connection with the device.
[0025] The method can be implemented using the described device and / or the system described below.
[0026] It should be noted that the features and advantages described in connection with the detection device according to the invention also apply to the method according to the invention for adjusting the detection device. Features of the detection device, in particular those relating to adjusting the detection device by means of a computing unit, are transferable to the method according to the invention. Likewise, features of the method according to the invention are transferable to the detection device according to the invention by configuring the detection device in such a way that it is suitable for carrying out the corresponding method features.
[0027] In one embodiment of the method, the bit depth of the output object data is at least 8 bits.
[0028] In one embodiment of the method, the data output area has at least eight path input areas.
[0029] In one embodiment of the method, the operator blocks and / or the corresponding operator functions generate binary results and / or the operator blocks each contain object instances of an object class, such as an AND operator and / or an OR operator.
[0030] In one embodiment of the method, data transmission of data with a bit depth greater than 8 bits between an evaluation unit and the data processing unit is divided into several transmission cycles using a buffer.
[0031] In one embodiment, data transmission between the evaluation unit and the data processing unit can be performed with a bandwidth smaller than that specified by a transmission medium and / or a transmission standard. For example, it is conceivable that the object data fields are reduced to a single bit by at least two cascaded operator blocks, which is output as object data and indicates whether the captured object was captured with sufficient quality.
[0032] In one embodiment, the output of the output object data can include outputting the output object data with the second bit depth as electrical signals to a connected communication system and / or the evaluation unit.
[0033] In one embodiment, the detected object can be a barcode or QR code that encodes information, such as a string of characters. Converting the detected object into object data can involve processing electrical signals captured by the detection device, allowing the encoded information to be read. Alternatively, or in addition, the detection device can capture attributes of the detected object, which can then be provided as object data.
[0034] The output object data, or at least one object data field, can in one embodiment comprise at least one geometric attribute of the captured object. For example, in one embodiment, the object data and / or the at least one object data field could specify the height, width, length, contour, angle of rotation, and / or roundness of the captured object. Each attribute can be specified by an object data field in one embodiment.
[0035] In one embodiment, the created program sequence includes a threshold comparison where a comparison operator determines whether the detected geometric attributes of the detected object lie within a target range. If one, a plurality, and / or all of the geometric attributes lie within the target range, then a "1" (1 bit) can be output as the output object data. If there is a deviation from the target range, then a "0" (1 bit) can be output as the output object data.
[0036] The problem according to the invention is also solved by a system for the visual detection of objects, wherein the system comprises the following: - at least one detection device, in particular a detection device according to the embodiments described above, - at least one computing unit that is designed to communicate with a respective data processing unit of the respective acquisition device via at least one interface, the computing unit is designed to adapt a bit depth of output object data from the acquisition device.
[0037] This results in the same advantages as already described in connection with the device and / or the method. The system is designed for the visual detection of objects, but is equally suitable for adjusting the detection device to adapt it for use with a communication system.
[0038] It should be noted that the features and advantages described in connection with the detection device according to the invention also apply to the system according to the invention, and vice versa. Likewise, features of the method according to the invention can be transferred to the system according to the invention by configuring the system such that corresponding components are suitable for carrying out the method features.
[0039] In one embodiment of the system, the bit depth of the output object data is at least 8 bits.
[0040] In one embodiment, the system comprises an evaluation unit designed to communicate with a data processing unit of the acquisition device via a connection.
[0041] In one embodiment, the evaluation device can be configured to receive the output object data from the acquisition device, in particular as electrical signals.
[0042] This enables communication between the acquisition device and an evaluation device, where the output object data generated by the acquisition device can be further processed.
[0043] In one embodiment of the system, the connection between the evaluation unit and the acquisition unit is designed for data transmission with a bit depth of at least 8 bits.
[0044] In one embodiment of the system, the data processing unit is designed to divide a data transmission of the connection with a bit depth of greater than 8 bits between the evaluation unit and the data processing unit into several transmission cycles by means of a buffer.
[0045] In particular, the problem according to the invention is also solved by a computer-readable storage medium containing instructions to cause a processor to execute a method for setting a detection device in accordance with the above explanations by executing the instructions.
[0046] This results in the same advantages as those already described in connection with the device and / or the method and / or the system.
[0047] Further advantageous embodiments are described in the dependent claims.
[0048] The invention will below be described with regard to further features and advantages using exemplary embodiments, which are explained in more detail with reference to the accompanying figures.
[0049] This shows: Fig.1a a schematic representation of a detection device for the visual detection of objects according to an embodiment of the present invention in communicative connection with a computing unit for adjusting the detection device; Fig. 1b a schematic representation of a detection device for the visual detection of objects according to an embodiment of the present invention; Fig. 2 a schematic representation of a graphical user interface for setting a detection device according to an embodiment of the present invention; Fig. 3 a program sequence for setting up a detection device according to an embodiment of the present invention.
[0050] In the following description, the same reference numbers are used for identical and equivalent parts.
[0051] Fig.Figure 1a schematically represents a detection device 10 for the visual detection of objects 20 according to an embodiment of the present invention.
[0052] The data acquisition device 10 has at least one interface 12 to establish a communicative connection with a computing unit 30. "Communicating" here means that the data acquisition device 10 and / or a data processing unit 11 of the data acquisition device 10 can exchange data and / or commands with the computing unit 30.
[0053] At least one program sequence can be stored on the data processing unit 11. This program sequence can be generated or programmed, for example, via the computing unit 30 and stored on the acquisition device 10 or on its data processing unit 11. The data processing unit 11 can store the (at least one) program sequence created by the computing unit 30 and execute a program defined by the program sequence.
[0054] The detection device 10 is designed for the visual detection of objects 20. The detection device 10 can, for example, be designed as a camera or as a barcode reader. In the embodiment shown below. Fig.Figure 1a shows a barcode or QR code as object 20. The scanning device 10 visually detects object 20, for example, by capturing a (digital) image of object 20. Using suitable evaluation algorithms, the scanning device 10 processes the (digital) image to generate object data 21 that corresponds to object 20. If object 20 is represented by a barcode or QR code, for example, the scanning device can generate object data 21 that includes the information encoded in the barcode or QR code, e.g., as a string, integer, or bit pattern. The image data of the (digital) image of object 20 can also be generated as object data in a suitable format. The algorithms required for processing the (digital) image can, for example, be stored and executed in the data processing unit 11.
[0055] The computing unit 30 comprises or is connected to a display device 31 and a user interface 32. The user interface 32 can, for example, include a keyboard and / or a mouse. The display device 31 can be configured as a display. It is also conceivable that the display device 31 includes the (or an additional) user interface 32. For this purpose, the display device 31 can be configured as a touchscreen.
[0056] The acquisition device 10 is configured to visually (optically) capture the object 20 and convert (digitize) it into object data 21. The object data 21 has a first bit depth. The data processing unit 11 is configured to process the object data 21 according to a defined program sequence and output it as output object data 22. The program sequence can, as described above, preferably be generated by the computing unit 30 and / or stored on the data processing unit 11. The output object data 22 has a second bit depth that is smaller than the first bit depth, preferably by a multiple of the first bit depth.
[0057] The processing unit 30 can be configured to adapt the second bit depth of the output object data 22 of the acquisition device 10 to a suitable data output format for output to a (not shown) communication system with which the acquisition device 10 is to communicate after a configuration process. After the acquisition device 10 has been configured, the communication system can be connected, for example, via interface 12 or another interface.
[0058] In the embodiment according to Fig. Figure 1b shows a detection device 10 that detects an object 20 and converts it into object data 21, as described in the embodiment shown in Figure 1b. Fig. 1a was described.
[0059] The acquisition device 10 or the data processing unit 11 of the acquisition device 10 is designed to process the object data 21 as described and to output it as output object data 22.
[0060] In the embodiment according to Fig. 1b The data acquisition device 10 communicates with an evaluation unit 40 via an IO connection. The IO connection can, for example, be a connection based on the "IO-Link" standard. The data acquisition device 10 and / or the evaluation unit 40 can be part of a communication system.
[0061] The configuration of the detection device 10, as previously described in the embodiment according to Fig.As described in 1a, the connection can be specifically tailored to the IO connection or a connection standard, in particular by adapting the bit depth of the output object data 22 to the IO connection. For this purpose, the acquisition device 10 can be configured to be adapted accordingly with the help of the processing unit 30, as described in more detail below.
[0062] The evaluation unit 40 may, for example, be a server or the like, on which the (object) data recorded and generated by the acquisition unit 10 (and possibly other acquisition units) is evaluated and / or further processed and / or made available to other units.
[0063] The evaluation unit 40 can, for example, be configured to compare a barcode captured by the detection unit 10, which is provided as output object data 22, with an enterprise resource planning (ERP) system. This allows the system to determine whether specific products or intermediate products are present at the right time and place in a production process. The detection unit 10 can, for instance, be positioned on a conveyor belt and capture the products or items transported on the belt, or the barcodes or QR codes attached to them. The evaluation unit 40 can thus be used to reduce scrap and / or improve the quality of production.
[0064] In Fig. Figure 2 shows a schematic representation of a graphical user interface 33 for setting up a data acquisition device 10. The graphical user interface 33 can be accessed on the [unclear text] Fig.The display unit 31 shown in 1a can be displayed. The setting of the detection device 10 can be made by connecting the detection device to a computing unit 30 assigned to the display unit, as previously described in connection with the embodiment shown in section 1a. Fig. 1a was described.
[0065] The objects 20 detected by the detection device 10 are converted into object data 21 of a first bit depth. The object data 21 comprise several object data fields, for example, object data fields 21a, 21b, 21c, 21d, 21e, 21f.
[0066] These object data fields 21a, 21b, 21c, 21d, 21e, and 21f can contain object-specific content. For example, in the case of a barcode or QR code as object 20, object data field 21a can contain the code content. Object data field 21b can contain a reference value indicating whether a code was correctly determined from object 20. Furthermore, object data field 21c can contain, for example, the X-center (in a defined coordinate system) and / or object data field 21d the Y-center (in a defined coordinate system) of object 20 (for example, the barcode or QR code 20). Additionally, object data field 21e can contain, for example, raw data (unprocessed data).
[0067] The user interface 33 has a data input area 34 and a data output area 35. The data input area 34 has at least one path output area 341. In the present embodiment, the data input area has six path output areas 341. The path output areas 341 each represent an object data field 21a, 21b, 21c, 21d, 21e, 21f. The data output area 35 comprises a plurality of output data fields 22a, 22b, 22c, 22d, 22e, 22f, 22g, 22h. Each output data field 22a, 22b, 22c, 22d, 22e, 22f, 22g, 22h corresponds to a path input area 351 of the data output area 35.
[0068] The graphical user interface 33 can be used to set or configure the processing of the data output by the path output area 341 according to the object data fields 21a, 21b, 21c, 21d, 21e, 21f, which is to be carried out by the acquisition device 10. In particular, the graphical user interface 33 makes it possible to define a program sequence that can be stored on the acquisition device 10 in order to configure the acquisition device 10 to carry out the desired processing of the object data 21.
[0069] For this purpose, a user can connect a path output area 341 to, for example, a first operator block 36 via a connection path 37 using a connection command input from the user interface 32. The connection path 37 establishes a data connection between the operator blocks and the data from the object data field, which is to be implemented on the acquisition device. A connection path 37 thus signals the data flow in a program sequence for execution in the data processing unit 11 of the acquisition device 10.
[0070] A user can load an operator block 36 onto the user interface 33 by "drag and drop", for example from a library that can be displayed on the graphical user interface 33, in order to set the processing steps to be carried out by the data processing unit 11.
[0071] Various configurations are possible for the operator blocks. For example, the user can load numeric operator blocks onto the user interface 33. A numeric value can be entered into a numeric operator block. A numeric operator block can also be connected via a connection path 37 to a path input area 351 and / or to an operator block 36 for a calculation / operation.
[0072] The user can freely move the loaded operator blocks 36 on the user interface 33 or delete them from it.
[0073] An operator block 36 can have at least one input. In the Fig. In the embodiment shown in Figure 2, the operator block 36 has, for example, two inputs on the left side. Furthermore, an operator block 36 has at least one (binary) output. In the embodiment shown in Figure 2, the operator block 36 has, for example, two inputs on the left side. Fig.In the example shown, operator block 36 has an output on the right-hand side. The inputs and / or outputs of operator blocks 36 can be connected by the user to inputs and / or outputs of other operator blocks, path output areas 341 and / or path input areas 351 via connection paths 37.
[0074] Each operator block 36 contains a corresponding operator function. The connection paths 37, which the user connects to the inputs or outputs of operator block 36, represent data connections via which inputs for the operator function or outputs of operator block 36 are transmitted in the program flow. In the Fig.In the embodiment shown in Figure 2, the operator block 36 is connected, for example, in such a way that it receives the outputs of the object data fields 21b, 21c as inputs for the operator function and outputs the result of the operator function, which is output from the operator block 36, to an output data field 22c of the data output area 35.
[0075] The operator blocks 36 and / or the corresponding operator functions are configured to process the inputs received via the inputs in order to output the results of the assigned operator function via the outputs. Preferably, the outputs of operator blocks are formed by binary data. For example, the operator blocks 36 can each contain object instances of an object class, such as an AND operator and / or an OR operator. Comparison operators ("comparators") such as "greater than" or "less than," where the inputs of the operator block are compared with each other, are also conceivable.
[0076] The user can, for example, drag the connection paths 37 on the graphical user interface 33 using a cursor 320. The user can remove connection paths 37 that have been mistakenly placed by means of a suitable user input.
[0077] The connection paths 37 can signal, by means of a special color scheme or a temporary optical effect on the user interface 33, that a connection to an operator block 36 and / or to a path input area 351 may not be possible - for example in a case where (erroneously) incompatible data types are to be connected.
[0078] In this way, a user can define a program flow on the graphical user interface 33 using the components described above, by connecting path input areas 341, operator blocks 36 and path output areas 351 by means of connection paths 37.
[0079] The data processing unit 11 of the acquisition device 10 is configured to store the program sequence created using the graphical user interface 33 and to execute a program defined by this program sequence. Preferably, the program comprises at least one processing step and at least one assignment step to create the output object data 22.
[0080] The processing step here comprises processing those object data fields 21a, 21b, 21c, the corresponding path output areas 341, which the user connects via connection paths 37 on the graphical user interface 33. The processing of the data includes in the Fig. In example 2, the object data fields 21b and 21c are processed by a first operator function assigned to the first operator block 36. The processing step can also simply involve forwarding object data fields 21a. In the example shown in Fig.In the embodiment shown in Figure 2, the output of the object data field 21a is output to the output data field 22b.
[0081] The assignment step represents an assignment of results from the processing step to the path input area 351 that was connected to the first operator block 36 via a connection path 37.
[0082] The output object data 22, which the acquisition device 10 is ultimately to output, comprises a multitude of output data fields 22a, 22b, 22c, 22d, 22e, 22f, 22g, 22h. Each output data field 22a, 22b, 22c, 22d, 22e, 22f, 22g, 22h corresponds to a path input area 351 of the data output area 35.
[0083] The described configuration of the graphical user interface 33 ensures that the second bit depth corresponds to the number of path input areas 351 and that the second bit depth of the output object data 22 is smaller than the first bit depth of the object data 20.
[0084] The 33 program sequences that can be generated using the graphical user interface are not limited to the one in Fig. The example shown is limited. Besides reducing the bit depth of the output object data, creating a program flow can also solve other tasks. For example, it is conceivable to incorporate further logic steps using the program flow.
[0085] This will be demonstrated using the in Fig. The configuration shown in Figure 3 illustrates how a program flow is created using the graphical user interface 33.
[0086] For this embodiment, it is assumed that the object 20 to be detected by the detection device represents a QR code.
[0087] The acquisition device 10 acquires the object 20 and converts it into object data 20, as described above.
[0088] In the Fig.In the illustrated example 3, the object data includes the following object data fields: 21a Code content 21b Code found? (binary yes / no) 21c X-center of the QR code 21d Y-center of the QR code 21e Orientation (angle / tilt of the QR code)
[0089] Of course, it is conceivable that the object data 20 contains further data as object data fields. For example, the size of the QR code could be described, e.g., its spatial dimensions, i.e., length and / or width. It is also conceivable that the object data 20 encodes the quality of the read data. Furthermore, in Fig.Three different operator blocks 36a, 36b, 36c, and 36d are shown, corresponding to the different operator functions to be used in the program flow to be created. Operator block 36a (matching operator) is configured to check the code content from the object data field 21a. For this purpose, a string block C1 can be defined using the graphical user interface 33, in which a string can be stored. Operator block 36a has two inputs, inp and M. The string block C1 is connected to input M via a connection path 37. This corresponds to the instruction to read the string that can be stored in string block C1 into operator block 36a as input. According to the in Fig.In configuration 3, the code content captured by the detection device 10 is read from the object data field 21a via the input inp of operator block 36a. If the string and the code content match, operator block 36a can output a comparison result regarding the agreement of the inputs via the binary output Ü, for example a 1 if there is a match ("yes") and a 0 if there is no match ("no").
[0090] Furthermore, various comparison operator blocks 36b are shown. Each comparison operator block 36b has two inputs a, b and two outputs: a binary output for the case a. <b sowie einen binären ausgang für den fall a>b. A positive comparison result can be represented by a 1, a negative comparison result by a 0.
[0091] Furthermore, in the Fig. The example shown in Figure 3 demonstrates that 33 numeric operator blocks C2, C3, C4 can be inserted into the program flow via the graphical user interface. A numeric value, for example a (constant) numeric value, can be assigned to a numeric operator block C2, C3, C4, which is to be used for the program flow.
[0092] Furthermore, in Fig. Three logic operator blocks are shown: "OR" operator blocks 36c and one "AND" operator block 36d. The number of inputs and outputs of operator blocks 36c and 36d can vary depending on the application.
[0093] All described operator blocks, as well as path output areas 341 and path input areas 351, can be connected via connection paths 37, so that a program flow is defined.
[0094] With the in Fig. In the example shown, a program flow can be defined using the various operators to determine whether object 20 was found (correctly), whether object 20 detected by the detection device 10 is located at an expected position, and whether the code content of object 20 matches an expected code content.
[0095] At the same time, it is ensured that the program flow is defined in such a way that the result of the program flow, including all object data 20 or the data from object data fields 21a, 21b, 21c, 21d, is reduced to 3 (or 8) bits, since the data output area 35 has eight path input areas 351, three of which are occupied (i.e., connected via connection paths 37). The output data fields 22a, 22b, 22c can each output either "0" or "1", while the remaining (unoccupied) output data fields output a "0".
[0096] Additionally, a trigger (not shown) can be integrated into the program flow via the graphical user interface 33. This trigger can initiate image capture by the scanning device, particularly when the program is executed by the scanning device.
[0097] It should be noted here that all the parts described above, considered individually and in any combination, especially the details shown in the drawings, are claimed as essential to the invention. Modifications to this are familiar to those skilled in the art. Reference symbol list: 10 Recording device 11 Data processing unit 12 Interface 20 objects 30 computing units 31 Display device 32 User interface 33 graphical user interface 40 Evaluation unit I / O connection 21 Object data 22 Output object data 34 Data input area 341 Path exit area 35 Data output area 351 Path entrance area 36 Operator block 36a Operator block (matching operator) 36b Comparison operator block 36c OR operator block 36d AND operator block 37 Connection path C1 String operator block C2, C3, C4 numeric operator block 21a - 21f Object data fields 22a - 22h Output data fields
Claims
[1] A detection device for the visual detection of objects, comprising a data processing unit (11) configured to convert the objects (20) detected by the detection device (10) into object data (21) of a first bit depth, wherein the object data (21) comprise several object data fields (21a, 21b, ...), and wherein the detection device (10) is configured as a barcode reader, and / or the object (20) comprises a barcode or QR code, and the object data (21) comprise at least information encoded in the barcode or QR code, and wherein the detection device further comprises: at least one interface (12) designed to communicate with a computing unit (30) such that the data processing unit (11) is configurable via the computing unit (30), wherein the data processing unit (11) is configurable via a graphical user interface (33) on a display device (31) of the computing unit (30), wherein the user interface (33) has a data input area (34) and a data output area (35), wherein the data input area (34) has at least one path output area (341), and the at least one path output area (341) represents one of the object data fields (21a, 21b, ...), and wherein the data output area (35) has at least one path input area (351); and the computing unit (30) comprises at least one user interface (32), and the computing unit (30) is configured to receive commands from the user interface (32), wherein at least one path output area (341) can be connected via a connection command input of the user interface (32) via a first operator block (36) to a first path input area (351) of the data output area (35) by means of at least one connection path (37), such that a program sequence is defined by the at least one connection path (37) and visualized on the display device (31), wherein the data processing unit (11) is further configured to store the program sequence created by means of the computing unit (30) and to execute a program defined by the program sequence, wherein the program includes at least one processing step and at least one assignment step to create output object data (22), wherein the processing step includes processing those object data fields (21a, 21b, ...) of the corresponding path output areas (341) that were connected to the first operator block (36) by a first operator function of the first operator block (36), and wherein the assignment step assigns a result of the processing step to the first path input area (351) that has been connected to the first operator block (36); wherein the data processing unit (11) is configured to output the output object data (22) as electrical signals, wherein the output object data comprise a plurality of output data fields (22a, 22b, ...), and each output data field (22a, 22b, ...) corresponds to a path input area (351) of the data output area (35), such that the output object data (22) have a second bit depth, wherein the second bit depth corresponds to the number of path input areas (351) and wherein the second bit depth is smaller than the first bit depth, preferably by a multiple smaller than the first bit depth. [2] Detection device according to claim 1, characterized by , that the bit depth of the output object data (22) is at least 8 bits. [3] Detection device according to claim 1 or 2, characterized by , that the data output area (35) has eight path input areas (351). [4] Detection device according to any of the preceding claims, characterized by , that the operator blocks (36) and / or the corresponding operator functions are designed to produce binary results and / or the operator blocks (36) each contain object instances of an object class, such as an AND operator and / or an OR operator. [5] Detection device according to any of the preceding claims, characterized by , that the data processing unit (11) is designed to divide a data transmission, with a bit depth of greater than 8 bits, between an evaluation unit (40) and the data processing unit (11) into several transmission cycles by means of a buffer. [6] Method for adjusting a scanning device designed as a barcode reader, in particular according to one of the preceding claims, by means of a computing unit, wherein the method comprises the following steps: - Displaying object data (21) on a graphical user interface (33) on a display device (31) of the computing unit (30), wherein the object data (21) are obtained by visually capturing an object (20) with a capture device (10), wherein the object data (21) comprise several object data fields (21a, 21b, ...), wherein the object (20) comprises a barcode or QR code, and the object data (21) comprise at least information encoded in the barcode or QR code, where the object data (21) have a first bit depth; wherein the user interface (33) has a data input area (34) and a data output area (35), wherein the data input area (34) has at least one path output area (341), and each of the path output areas (341) represents one of the object data fields (21a, 21b, ...), and wherein the data output area (35) has at least one path input area (351); further showing the following steps: - Selecting a first operator block (36) from a variety of operator blocks and displaying the first operator block on the user interface (33); - Connecting at least one path output area (341) to the first operator block (36) and connecting the first operator block (36) to a first path input area (351) each by means of a connection path (37) via a connection command input of a user interface (32) of the computing unit (30), such that a program sequence is defined by the connection paths (37) and visualized on the display device (31); - Storing the program defined by the program flow on the data processing unit (11), wherein the program includes at least one processing step and at least one assignment step, wherein the processing step comprises processing those object data fields (21a, 21b, ...) of the corresponding path output areas (341) that are connected to the first operator block (36) by a first operator function of the first operator block (36), and wherein the assignment step assigns a result of the processing step to the first path input area (351) which is connected to the first operator block (36); - Output of the output object data (22) by the data processing unit (11) as electrical signals, wherein the output object data (22) comprise a plurality of output data fields (22a, 22b, ...), and each output data field (22a, 22b, ...) corresponds to a path input area (351) of the data output area (35), such that the output object data (22) has a second bit depth, wherein the second bit depth corresponds to the number of path input areas (351) and wherein the second bit depth is smaller than the first bit depth, preferably by a multiple smaller than the first bit depth, and each output data field (22a, 22b, ...) corresponds to one of the path input areas (351) of the data output area (35), such that one bit depth of the output object data (22) corresponds to the number of path input areas (351). [7] Method for adjusting a detection device according to claim 6, characterized by, that the bit depth of the output object data (22) is at least 8 bits. [8] Method for adjusting a detection device according to claim 6 or 7, characterized by , that the data output area (35) has at least eight path input areas (351). [9] Method for adjusting a detection device according to any one of claims 6 to 8, characterized by , that the operator blocks (36) and / or the corresponding operator functions produce binary results and / or the operator blocks (36) each contain object instances of an object class, such as an AND operator and / or an OR operator. [10] Method for adjusting a detection device according to any one of claims 6 to 9, characterized by , that a data transfer of data with a bit depth greater than 8 bits, between an evaluation unit (40) and the data processing unit (11), is divided into several transmission cycles using a buffer. [11] System for the visual detection of objects, wherein the system comprises: - at least one detection device (10), according to one of claims 1-5, - at least one computing unit (30) which is designed to communicate via at least one interface (12) with a respective data processing unit (11) of the respective acquisition device (10), wherein the computing unit (30) is configured to adapt a bit depth of output object data (22) of the acquisition device (10). [12] System for the visual detection of objects according to claim 11, characterized by , that the bit depth of the output object data (22) is at least 8 bits. [13] System for the visual detection of objects according to one of claims 11 or 12, characterized by an evaluation unit (40) which is designed to communicate via a connection (IO) with a data processing unit (11) of the acquisition unit (11). [14] System for the visual detection of objects according to any one of claims 11 to 13, in particular according to claim 13, characterized by , that the connection (IO) between the evaluation unit (40) and the acquisition unit (11) is designed for data transmission with a bit depth of at least 8 bits. [15] System for the visual detection of objects according to any one of claims 11 to 14, characterized by , that the data processing unit (11) is designed to divide a data transmission of the connection (IO), with a bit depth of greater than 8 bits, between the evaluation unit (40) and the data processing unit (11), into several transmission cycles by means of a buffer. [16] Computer-readable storage medium containing instructions to cause a processor to execute a method for setting a detection device according to any one of claims 6 to 10 by executing the instructions.
Citation Information
Patent Citations
Local tone mapping for symbol reading
EP3495987A1
Generating a Hardware Description for a Programmable Hardware Element Based on a Graphical Program Including Multiple Models of Computation
US20100058289A1