System and method for cartridge sizing
By integrating image capture equipment and deep learning technology, a scanner system has been developed that enables efficient and accurate dimensioning and barcode decoding of irregularly shaped objects. This solves the integration and cost issues in existing technologies and provides a multifunctional solution for integrating dimension and barcode information.
Patent Information
- Application Number
- CN202410996389.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-07-24
- Publication Date
- 2026-01-27
AI Technical Summary
Existing dimensioning systems are inadequate in terms of compact integration and dimensioning of irregularly shaped objects, and conventional methods are complex and costly, with a lack of integration between barcode scanning and dimensioning.
A system is employed that includes a scanner, an image capture device, sensors, and a processor. Through image processing and deep learning technologies, it enables multi-corner detection and size calculation of objects, and seamlessly integrates 2D imaging and 3D dimension annotation within a single system, while also supporting barcode decoding.
It enables efficient and accurate dimensioning and barcode decoding of irregularly shaped objects, reduces system complexity and cost, and provides a multifunctional solution for integrating dimension and barcode information.
Smart Images

Figure CN121409093A_ABST
Abstract
Description
Technical Field
[0001] This disclosure generally relates to dimensioning techniques and automation, and more specifically, to systems and methods for dimensioning boxes. Background Technology
[0002] In the dynamic landscape of parcel delivery, warehouse management, and logistics, accurate dimensioning estimation is a crucial element enabling efficient spatial planning and resource allocation. Conventional dimensioning systems such as LiDAR (Light Detection and Ranging) and Time-of-Flight (TOF) optical systems offer valuable capabilities. However, conventional dimensioning systems fall short in achieving compact integration, hindering widespread adoption. Furthermore, conventional methods for dimensioning irregularly shaped objects require expensive setups, such as specialized laser units and rotating supports, further complicating these methods. Moreover, the lack of integration between barcode scanning and conventional dimensioning methods necessitates the use of separate systems for dimensioning and barcode scanning, increasing complexity and cost inefficiency.
[0003] The inventors have identified numerous areas of improvement in the prior art and processes, which are the subject of the embodiments described herein. Many of these deficiencies, challenges, and problems have been addressed through applied effort, ingenuity, and innovation by developing solutions included in the embodiments of this disclosure, some examples of which are described in detail herein. Summary of the Invention
[0004] The following provides an overview of some exemplary embodiments to provide a basic understanding of some aspects of this disclosure. This overview is not an extensive summary and is neither intended to identify key or important elements nor to depict a scope of such elements. It will also be appreciated that, in addition to the embodiments outlined herein, the scope of this disclosure covers many potential embodiments, some of which will be further described in the detailed description presented later.
[0005] In an example embodiment, a system for box dimensioning is disclosed. The system includes a scanner. The scanner is configured to capture one or more images of at least one object using at least one image capturing device, and to create one or more color image maps of the at least one object based on the one or more images to obtain pixel information. Further, one or more sensors are operatively coupled to the at least one image capturing device. The one or more sensors are configured to determine depth and distance information for each pixel of the one or more color image maps, based at least on the pixel information. The system further includes at least one system processor operatively coupled to the scanner, and at least one memory storing instructions that, when executed by the at least one system processor, cause the system to: determine, for at least one of the one or more color images, at least based on distance information for each pixel, a plurality of pixel coordinates for each of a plurality of corners of the at least one object; determine, for at least one of the one or more color images, at least based on the plurality of pixel coordinates, a plurality of corner points for each of the plurality of corners of the at least one object; map each of the plurality of corner points to a corresponding predefined distance of the at least one object for at least one of the one or more color images; and determine a plurality of dimensions of the at least one object, at least based on the mapping of each corner point to the corresponding predefined distance and the determined depth information.
[0006] In some embodiments, the at least one system processor is further configured to mask the one or more color images and determine distance information of each pixel from the focal plane based at least on the masked one or more color images.
[0007] In some embodiments, the at least one memory stores instructions that, when executed by the at least one system processor, further cause the system to use a sparse depth map to map a plurality of determined corner points to corresponding predefined distances of the at least one object. In some embodiments, the plurality of corner points includes at least one of length coordinates, width coordinates, and height coordinates.
[0008] In some embodiments, the at least one memory storage instruction, when executed by the at least one system processor, further causes the system to convert the one or more color image images into one or more grayscale images, and decode one or more values of one or more one-dimensional barcodes or one or more two-dimensional barcodes associated with the at least one object based on the one or more grayscale images. The at least one memory storage instruction, when executed by the at least one system processor, further causes the system to aggregate the one or more one-dimensional barcodes and one or more two-dimensional barcodes of the at least one object, along with the decoded one or more values of multiple sizes, and display the aggregated one or more values on a display device.
[0009] In some embodiments, the at least one memory stores instructions that, when executed by the at least one system processor, further instruct the system to determine multiple angles by using depth information received from the one or more sensors or by using a deep learning protocol. Further, the deep learning protocol corresponds to a corner detection technique based on a convolutional neural network (CNN), which takes the one or more color images as input and outputs regions corresponding to the multiple angles.
[0010] In some embodiments, the at least one memory stores instructions that, when executed by the at least one system processor, further cause the system to perform image segmentation on the one or more images to determine multiple edges from multiple corners. Image segmentation is performed by: drawing multiple imaginary lines on the one or more images to connect each of the multiple corners; discarding one or more intersecting imaginary lines from the multiple imaginary lines; and connecting the multiple corners in a counter-clockwise or clockwise direction to determine the multiple edges.
[0011] In some embodiments, the one or more sensors include at least a CMOS sensor. The CMOS sensor includes at least one integrated circuit configured to determine depth information using object size annotations on a three-dimensional image.
[0012] In some embodiments, an adjustable lens is communicatively coupled to the at least one image capturing device. The adjustable lens is configured to fine-tune a plurality of parameters of the image capturing device. In some embodiments, the plurality of parameters includes exposure, analog gain and / or confidence threshold, and at least one of a plurality of correction measures. The plurality of correction measures includes illumination conditions, background contrast, reflection reduction, and repositioning of the at least one image capturing device.
[0013] In another example embodiment, a method is disclosed. The method includes capturing one or more images of at least one object using at least one image capture device of a scanner. Further, the method includes creating one or more color image images of the at least one object based on the one or more images to obtain pixel information. Further, the method includes determining depth and distance information for each pixel of the one or more color image images, at least based on the pixel information, using one or more sensors operatively coupled to the at least one image capture device. Further, the method includes determining, for at least one of the one or more color image images, multiple pixel coordinates for each of a plurality of corners of the at least one object, at least based on the distance information for each pixel. Further, the method includes determining, for at least one of the one or more color image images, multiple corner points for each of the multiple corners of the at least one object, at least based on the multiple pixel coordinates. Further, the method includes mapping each of the multiple corner points to a corresponding predefined distance of the at least one object for at least one of the one or more color image images. Thereafter, the method includes determining multiple dimensions of the at least one object, at least based on the mapping of each corner point to the corresponding predefined distance and the determined depth information.
[0014] The above overview is provided merely for the purpose of summarizing some exemplary embodiments to provide a basic understanding of some aspects of this disclosure. Therefore, it will be appreciated that the above embodiments are merely examples and should not be construed as limiting the scope or spirit of this disclosure in any way. It will be appreciated that, in addition to the embodiments outlined herein, the scope of this disclosure covers many potential embodiments, some of which will be further described below. Attached Figure Description
[0015] Specific exemplary embodiments of this disclosure have been described in general terms, and reference is made below to the accompanying drawings, which are not necessarily drawn to scale, and wherein:
[0016] Figure 1 The illustration shows a block diagram of a system for box size labeling according to an exemplary embodiment of the present disclosure;
[0017] Figure 2 The illustration shows a flowchart illustrating a method for decoding one or more one-dimensional barcodes, one or more two-dimensional barcodes, and a combination of one or more values of multiple dimensions for at least one object, according to an example embodiment of the present disclosure;
[0018] Figure 3 The illustration shows a flowchart illustrating a method for decoding one or more one-dimensional barcodes and one or more values of the one or more two-dimensional barcodes for the at least one object, according to an example embodiment of the present disclosure;
[0019] Figure 4 The illustration shows a flowchart of a method for decoding one or more values of a plurality of dimensions of at least one object according to an exemplary embodiment of the present disclosure;
[0020] Figure 5A The illustration shows a flowchart illustrating a method for box size labeling according to an exemplary embodiment of the present disclosure;
[0021] Figure 5B The illustration shows one or more images captured according to an exemplary embodiment of this disclosure;
[0022] Figure 5C The illustration shows a flowchart illustrating a method for box dimensioning of a regular-shaped object according to an exemplary embodiment of the present disclosure;
[0023] Figure 5D The illustration shows a flowchart illustrating a method for box dimensioning of irregularly shaped objects according to an exemplary embodiment of the present disclosure;
[0024] Figure 6 The illustration shows at least one object having a plurality of corner points according to an exemplary embodiment of the present disclosure;
[0025] Figure 7 The illustration shows a plurality of objects similar to at least one object having multiple corners, according to an exemplary embodiment of the present disclosure;
[0026] Figure 8 The illustration shows a flowchart illustrating a method for detecting multiple edges of the at least one object according to an exemplary embodiment of the present disclosure;
[0027] Figure 9 The illustration shows at least one object having a plurality of imaginary lines connecting all the plurality of corner points, according to an exemplary embodiment of the present disclosure;
[0028] Figure 10 The illustration depicts at least one object having an outer boundary according to an exemplary embodiment of the present disclosure;
[0029] Figure 11A The illustration shows at least one object selected from a plurality of corner points of a formed outer boundary according to an exemplary embodiment of the present disclosure, traversing in a clockwise direction to connect with at least three subsequent corner points from the plurality of corner points;
[0030] Figure 11B The illustration shows at least one object selected from a plurality of corner points of a formed outer boundary according to an exemplary embodiment of the present disclosure, traversed in a counterclockwise direction, thereby connecting with at least three subsequent corner points from the plurality of corner points;
[0031] Figure 12 The illustration shows a plurality of edges selected in the at least one object according to an exemplary embodiment of the present disclosure;
[0032] Figure 13A The illustration shows a flowchart of a method for dimensioning an architecture of a system according to an exemplary embodiment of the present disclosure;
[0033] Figure 13B The illustration shows a dimension network of a dimension annotation architecture according to an exemplary embodiment of the present disclosure;
[0034] Figure 13C The illustration depicts an exemplary scenario of a dimensioning architecture according to an example embodiment of this disclosure;
[0035] Figure 14A The illustration shows the left and right limits in one or more images of the at least one object according to an exemplary embodiment of this disclosure;
[0036] Figure 14B The illustration shows one or more top values of the left and right limits of at least one object according to an exemplary embodiment of this disclosure;
[0037] Figure 14C The illustration shows one or more bottom values of the left and right limits of at least one object according to an exemplary embodiment of this disclosure;
[0038] Figure 15A The illustration shows the determination of the real-world length of at least one object according to an exemplary embodiment of this disclosure;
[0039] Figure 15B The illustration shows the determination of the real-world height of at least one object according to an exemplary embodiment of this disclosure;
[0040] Figure 15C The illustration shows the determination of the real-world width of at least one object according to an exemplary embodiment of this disclosure;
[0041] Figure 16 The illustration shows a scanner of a system according to an example embodiment of the present disclosure;
[0042] Figure 17A The illustration shows an adjustable lens with a variable aperture size according to an exemplary embodiment of the present disclosure;
[0043] Figure 17B An adjustable lens with a variable focal length is illustrated according to an exemplary embodiment of the present disclosure;
[0044] Figure 18 The illustration shows a user interface (UI) for taking multiple corrective actions based on an example embodiment of this disclosure;
[0045] Figure 19A The illustration shows one or more underexposed images of the at least one object having missing depth information according to an example embodiment of the present disclosure;
[0046] Figure 19B The illustration shows correctly formed edges from a plurality of sides and correctly formed angles from a plurality of angles of at least one object according to an exemplary embodiment of the present disclosure;
[0047] Figure 19C The illustration shows one or more underexposed images of at least one additional object having missing depth information, according to an example embodiment of the present disclosure;
[0048] Figure 19D The illustration shows one or more correctly formed sides and one or more correctly formed corners of at least one other object according to an exemplary embodiment of this disclosure;
[0049] Figure 20 The illustration shows simulation results of determining multiple dimensions of at least one object according to an exemplary embodiment of the present disclosure;
[0050] Figure 21 The illustration shows another simulation result illustrating the determination of multiple dimensions of at least one object according to an exemplary embodiment of the present disclosure;
[0051] Figure 22 The illustration shows another simulation result demonstrating the determination of multiple dimensions of at least one object according to an exemplary embodiment of the present disclosure; and
[0052] Figure 23 The illustration shows a flowchart of a method for box size labeling according to an exemplary embodiment of the present disclosure. Detailed Implementation
[0053] Some embodiments will now be described more fully below with reference to the accompanying drawings, which illustrate some, but not all, of the embodiments of this disclosure. In fact, various embodiments may be embodied in many different forms and should not be construed as limited to the embodiments set forth herein; rather, these embodiments are provided so that this disclosure will satisfy applicable legal requirements.
[0054] The components illustrated in the figures represent components that may or may not be present in the various embodiments of this disclosure described herein, such that embodiments may include fewer or more components than those shown in the figures without departing from the scope of this disclosure. For visibility of underlying components, some components may be omitted from one or more figures or shown with dashed lines.
[0055] As used herein, the term “comprising” means including but not limited to, and should be interpreted in the manner typically used in the patent context. The use of broader terms such as including, comprising, and having should be understood as support for narrower terms such as consisting of, essentially consisting of, and substantially consisting of.
[0056] The phrases “in various embodiments,” “in one embodiment,” “according to one embodiment,” “in some embodiments,” and the like generally mean that a particular feature, structure, or characteristic following the phrase may be included in at least one embodiment of this disclosure, and may be included in more than one embodiment of this disclosure (importantly, such phrases do not necessarily refer to the same embodiment).
[0057] The terms “example” or “exemplary” are used in this document to mean “serving as an example, instance, or illustration.” Any implementation described as “exemplary” in this document is not necessarily to be construed as superior to or advantageous over other implementations.
[0058] If the specification states that a component or feature "may," "can," "could," "should," "will," "preferably," "possibly," "typically," "optionally," "for example," "often," or "might" (or other such language) be included or have the characteristic, then the particular component or feature is not required to be included or have the said characteristic. Such a component or feature may be optionally included in some embodiments, or it may be excluded.
[0059] This disclosure provides various embodiments of systems and methods for combining two-dimensional (2D) imaging and three-dimensional (3D) dimensioning of at least one object using five-dimensional (5D) technology. Embodiments can be configured to capture one or more images of the at least one object. Embodiments can be configured to create one or more color images of the one or more images to obtain pixel information of the at least one object. Embodiments can be configured to convert the one or more images into one or more grayscale images. Embodiments can be configured to perform multiple metric measurements on the one or more grayscale images using the obtained pixel information. Embodiments can be configured to detect depth information of the at least one object based at least on the performed metric measurements. Embodiments can be configured to analyze the generated depth information to generate multiple representations and measurements of the at least one object. Embodiments can be configured to interpret the multiple representations and measurements to perform 2D scanning and 3D dimensioning of the at least one object. Embodiments can be configured to provide information about at least one object volume, size, and decoded barcode values of the at least one object.
[0060] In some embodiments, the system utilizes 5D technology to seamlessly integrate 2D imaging and 3D dimensioning capabilities within a single system. The 2D imaging and 3D dimensioning process involves several steps, such as combining the one or more image captures, barcode decoding, depth estimation, dimension calculation, and calibration, to provide comprehensive information about one or more scanned objects (typically boxes). Through parallel processing, depth estimation, the at least one object dimensioning algorithm, and calibration, the system provides accurate and comprehensive information about the one or more scanned objects. The final output of the 2D imaging and 3D dimensioning includes details such as the volume of the at least one object, the dimensions of the at least one object, and the decoded barcode value, thus providing a versatile solution for various applications requiring both 2D imaging and 3D dimension data. The 2D imaging and 3D dimensioning process using the system is initiated by capturing one or more images of the at least one object (such as a box), which includes one or more 2D images like barcodes.
[0061] Figure 1 The illustration shows a block diagram of a system 100 for box size marking according to an exemplary embodiment of the present disclosure. System 100 may include a scanner 102, at least one system processor 104, at least one memory 106, and at least one user device 108.
[0062] In some embodiments, scanner 102 may include at least one image capture device 110 having at least one image capture device processor 112. In some embodiments, the at least one image capture device 110 using the at least one image capture device processor 112 may be configured to capture one or more images of at least one object (not shown). In some embodiments, the at least one image capture device 110 using the at least one image capture device processor 112 may be configured to capture visual information in the form of the one or more images. The visual information may refer to data obtained by capturing the one or more images. The visual information may include at least one object present in the one or more images. Thus, in this case, the visual information may be the one or more images conveying details about the at least one object. Using the at least one image capture device processor 112, the primary function of the at least one image capture device 110 may be configured to capture the one or more images of the at least one object placed in the field of view (FOV) of the at least one image capture device 110. The at least one image capture device 110 may capture one or more images of the at least one object by focusing on relevant features (such as a one-dimensional barcode or a two-dimensional barcode). Furthermore, the at least one image capturing device 110 can capture the one or more images in the red, green, and blue (RGB) spectrum. In an alternative embodiment, the at least one image capturing device 110 can be configured to use the at least one system processor 104 to capture one or more images of at least one object.
[0063] Furthermore, using the at least one image capture device processor 112, the at least one image capture device 110 can be configured to create one or more color image maps of the at least one object. The one or more color image maps can be created based on the one or more images. The at least one image capture device 110 using the at least one image capture device processor 112 can be configured to create one or more color image maps to obtain pixel information of the at least one object. In some embodiments, the at least one image capture device processor 112 can be provided with one or more instructions to manipulate and enhance the one or more images. The at least one image capture device processor 112 can apply one or more algorithms and techniques to modify or analyze the one or more images for various purposes, including improving visual quality, extracting information, or enabling computer vision capabilities.
[0064] The at least one image capture device 110 operates on the principle of capturing light and converting the light into one or more images via the at least one image capture device processor 112. In some embodiments, the basic components of the at least one image capture device 110 may include a lens, shutter, aperture, image sensor, screen, at least one image capture device processor 112, memory, and flash. Examples of the at least one image capture device 110 in some embodiments may include at least one of a point-and-shoot camera, a digital SLR camera (DSLR), a mirrorless camera, and any other image capture device known in the art, each specifically designed for user needs and preferences.
[0065] Further, the scanner 102 may include one or more sensors 114 having at least one sensor processor 116. The one or more sensors 114 may be operatively coupled to the at least one image capture device 110. In some embodiments, the one or more sensors 114 using the at least one sensor processor 116 may be configured to determine depth information for each pixel of the one or more color images. Further, the one or more sensors 114 using the at least one sensor processor 116 may be configured to determine distance information for each pixel of the one or more color images. The one or more sensors 114 may be configured to determine depth and distance information based at least on pixel information. In some embodiments, the one or more sensors 114 using the at least one sensor processor 116 may be configured to detect and measure physical properties or changes in the environment and convert the detected information into signals or data that can be interpreted, displayed, or used to control the system 100. In some embodiments, the one or more sensors 114 using the at least one sensor processor 116 may be configured to capture various aspects of the at least one object being analyzed, thereby contributing to both the 2D imaging and 3D dimensioning processes.
[0066] In some embodiments, the one or more sensors 114 using the at least one sensor processor 116 can be configured to detect specific physical phenomena or properties, such as temperature, pressure, light, sound, motion, proximity, humidity, or chemical composition. In alternative embodiments, the one or more sensors 114 can use at least one system processor 104 to determine depth information. In one example, the one or more sensors 114 can utilize a transducer to convert the determined depth and distance information into electrical signals. This conversion can allow for easier processing and transmission of the determined depth and distance information. Depending on the type of the one or more sensors 114, the electrical signals as output signals from the one or more sensors 114 can take one or more forms, including electrical voltage, current, resistance, frequency, or digital data.
[0067] In some embodiments, the one or more sensors 114 can be characterized by the accuracy of how closely the measured values reflecting the determined depth and distance information correspond to the actual values of the depth and distance information, and the precision of the repeatability of the readings of the one or more sensors 114. In one example, the one or more sensors 114 may include at least a complementary metal-oxide-semiconductor (CMOS) sensor, which includes at least one integrated circuit configured to determine depth information using object size annotations in a three-dimensional image. The object size annotations may correspond to the spatial dimensions of an object within the three-dimensional image. By analyzing the captured image, these sensors utilize advanced algorithms to accurately measure distances between various points in the scene, thereby enabling the determination of the length, width, and height of objects. In another example, the one or more sensors 114 may include at least one of a temperature sensor, a pressure sensor, a motion sensor, a light sensor, a proximity sensor, and other sensors known in the art designed to determine depth and distance information.
[0068] In another embodiment, the at least one image capturing device 110 may be configured to capture and store the one or more images digitally via one or more sensors 114, or chemically via a photosensitive material (such as photographic film) mounted within the at least one image capturing device 110. Further, the one or more sensors 114 may include image sensors. The image sensors can convert light into digital data for capturing and storing the one or more images. Further, the at least one image capturing device 110 may capture and record visual information of the at least one object via the one or more sensors 114.
[0069] In some embodiments, system 100 may include at least one system processor 104. The at least one system processor 104 may be operatively coupled to scanner 102 and at least one memory 106. Further, the at least one memory 106 stores instructions that, when executed by the at least one system processor, cause system 100 to determine multiple pixel coordinates for each of a plurality of corners of at least one of the one or more color images of the at least one object. The at least one system processor 104 may be configured to determine the plurality of pixel coordinates based at least on distance information for each pixel. The at least one system processor 104 may be configured to determine the plurality of corners using depth information received from the one or more sensors 114 or using a deep learning protocol. The deep learning protocol may correspond to a corner detection technique based on a convolutional neural network (CNN), which takes the one or more color images as input and outputs regions corresponding to the plurality of corners. Further, the at least one system processor 104 may be configured to determine multiple corner points for each of the plurality of corners of the at least one object, based at least on the plurality of pixel coordinates, for at least one of the one or more color images. The multiple corner points may include at least one of length coordinates, width coordinates, and height coordinates.
[0070] Further, for at least one of the one or more color image images, the at least one system processor 104 can map each of the plurality of corner points to a corresponding predefined distance of the at least one object. The at least one system processor 104 can be configured to map the determined plurality of corner points to the corresponding predefined distance of the at least one object using a sparse depth map. The sparse depth map can refer to a representation of the mapped plurality of corner points to the corresponding predefined distance. The sparse depth map can focus on key reference points, such as the plurality of corner points, and map them to the corresponding predefined distance. Subsequently, the at least one system processor 104 can determine multiple dimensions of the at least one object. The at least one system processor 104 can determine the multiple dimensions based at least on the mapping of each corner point and the determined depth information. In one example, the multiple dimensions can correspond to the length, width, and height of the at least one object.
[0071] In some embodiments, the at least one system processor 104 may include appropriate logic, circuitry, and / or interfaces operable to execute one or more instructions stored in the at least one memory 106 to perform a predetermined operation. In one embodiment, the at least one system processor 104 may include the at least one memory 106 storing one or more instructions that, when executed by the at least one system processor 104, cause the at least one system processor 104 to execute the one or more instructions. In another embodiment, the at least one system processor 104 may be configured to decode and execute any instructions received from one or more other electronic devices or servers. The at least one system processor 104 may be configured to execute one or more computer-readable program instructions, such as program instructions that perform any of the functions described herein. Further, the processor may be implemented using one or more processor technologies known in the art. Examples of processors include, but are not limited to, one or more general-purpose processors (e.g., or Advanced Micro (AMD) microprocessors) and / or one or more dedicated processors (e.g., digital signal processors or Xilinx microprocessors) (SOC) Field Programmable Gate Array (FPGA) processor.
[0072] Further, the at least one memory 106 may be communicatively coupled to at least one system processor 104. Further, the at least one memory 106 may be configured to store a set of instructions and data executed by the at least one system processor 104. Further, the at least one memory 106 may include one or more instructions executable by the at least one system processor 104 to perform specific operations. The at least one memory 106 may include one or more instructions for determining, for at least one of one or more color images, the pixel coordinates of each of a plurality of corners of the at least one object based at least on distance information per pixel. The at least one memory 106 may include one or more instructions for determining, for at least one of one or more color images, the corner points of each of a plurality of corners of the at least one object based at least on the determined pixel coordinates. The at least one memory 106 may include one or more instructions for mapping each of a plurality of corner points to a corresponding predefined distance of the at least one object for at least one of one or more color images.
[0073] The at least one memory 106 may include one or more instructions for determining multiple dimensions of the at least one object based at least on the mapping and the determined depth information. It will be apparent to those skilled in the art that the one or more instructions stored in the at least one memory 106 enable the system hardware to perform predetermined operations. Some known memory implementations include, but are not limited to, fixed (hard disk) drives, magnetic tape, floppy disks, optical disks, compact disc read-only memory (CD-ROM) and magneto-optical disks, semiconductor memories such as ROM, random access memory (RAM), programmable read-only memory (PROM), erasable PROM (EPROM), electrically erasable PROM (EEPROM), flash memory, magnetic cards or optical cards, or other types of media / machine-readable media suitable for storing electronic instructions.
[0074] System 100 may further include at least one user device 108, which may be configured to receive 2D imaging output and 3D measurements or 3D dimensions of the at least one object. The 2D imaging output may include decoded values of one or more one-dimensional barcodes and one or more two-dimensional barcodes of the at least one object. The 3D measurements or 3D dimensions may include decoded values of multiple dimensions of the at least one object. The at least one user device 108 may be wired or wirelessly coupled to the at least one system processor 104. In an alternative embodiment, the at least one user device 108 may be decoupled from and remotely connected to system 100, and may communicate with system 100. In some embodiments, the at least one user device 108 may include one or more wired or wireless devices operatively coupled to system 100, including desktop or laptop computers, tablets, smartphones, or other handheld computing devices known in the art.
[0075] Further, system 100 may include input / output circuitry (not shown) that enables the one or more users to communicate or interface with system 100 via the at least one user equipment 108. The at least one user equipment 108 may include N number of user equipments (not shown). In some example embodiments, the at least one user equipment 108 may include a control room computer system or other portable electronic devices. It can be noted that the input / output circuitry may act as a medium for transmitting input from the at least one user equipment 108 to system 100 and from system 100. In some embodiments, input / output circuitry may refer to hardware and software components that facilitate information exchange between the one or more users and system 100. Input / output circuitry may include various input devices, such as keyboards, barcode scanners, GUIs for users to provide data, and various output devices, such as displays, printers for users to receive data. In another example, input / output circuitry may include various output circuitry, such as indicators, to indicate correct and incorrect measurement or placement of the at least one object. In one example, system 100 may include a graphical user interface (GUI) (not shown), which may be installed as input circuitry in the at least one user device 108 to allow a user to input data via the at least one user device 108.
[0076] In some embodiments, system 100 may include communication circuitry (not shown). The communication circuitry may allow system 100 to exchange data or information with other systems. Further, the communication circuitry may include network interfaces, protocols, and software modules responsible for sending and receiving data or information. In some embodiments, the communication circuitry may include an Ethernet port, a Wi-Fi adapter, or a communication protocol like HTTP or MQTT for connecting to other systems. The communication circuitry may further include components such as communication modules (e.g., Wi-Fi, Ethernet, cellular), transceivers, antennas, and protocols for exchanging data with other systems or network devices (e.g., TCP / IP, MQTT, SNMP). The communication circuitry may allow the system to stay up-to-date and accurately determine the values of one or more one-dimensional barcodes, one or more two-dimensional barcodes, and multiple dimensions of the at least one object.
[0077] It will be apparent to those skilled in the art that the components of system 100 mentioned above have been provided for illustrative purposes only without departing from the scope of this disclosure.
[0078] Figure 2The illustration shows a flowchart of a method 200 for decoding one or more one-dimensional barcodes, one or more two-dimensional barcodes, and a combination of one or more values of multiple dimensions for at least one object, according to an example embodiment of the present disclosure.
[0079] At operation 202, the at least one system processor 104 may be configured to receive the one or more color image images from the at least one image capturing device 110. Further, the at least one system processor 104 may be configured to mask the one or more color image images. Further, the at least one system processor 104 may be configured to mask the one or more color image images using a specialized mask (SM). The SM may be configured to estimate both depth information and distance information about the masked one or more color images. The SM may be facilitated by a time-of-flight (TOF) or stereo camera or structured light camera sensor. The at least one system processor 104 may be configured to determine the distance information of each pixel from the focal plane based at least on the masked one or more color images.
[0080] At operation 204, the at least one system processor 104 may be configured to determine multiple pixel coordinates for each of a plurality of corners of the at least one object to decode one or more values of the plurality of dimensions. The at least one system processor 104 may be configured to determine the plurality of pixel coordinates based at least on distance information for each pixel. The at least one system processor 104 may be configured to detect the plurality of corners by using depth information received from the one or more sensors 114 or by using a deep learning protocol.
[0081] Simultaneously with operation 204, at operation 206, the at least one system processor 104 may be configured to convert the one or more color image images into one or more grayscale images to decode one or more values of one or more one-dimensional barcodes and one or more two-dimensional barcodes of the at least one object in the one or more grayscale images. At operation 208, the at least one system processor 104 may be configured to aggregate the one or more one-dimensional barcodes and the one or more two-dimensional barcodes, as well as the decoded one or more values of the plurality of sizes. At operation 210, the at least one system processor 104 may be configured to display the one or more one-dimensional barcodes and the one or more two-dimensional barcodes of the at least one object and the decoded one or more values on the at least one user device 108.
[0082] refer to Figure 1The at least one system processor 104 can be configured to determine multiple corner points of each of a plurality of corners of the at least one object based at least on a plurality of determined pixel coordinates. The plurality of corner points may include at least one of length coordinates, width coordinates, and height coordinates. Further, the at least one system processor 104 can map each corner point from the plurality of corner points to a corresponding predefined distance of the at least one object. Thereafter, the at least one system processor 104 can determine multiple dimensions of the at least one object based at least on the mapping and the determined depth information. In some embodiments, the at least one system processor 104 can be configured to aggregate one or more one-dimensional barcodes and one or more two-dimensional barcodes of the at least one object, along with decoded values of multiple dimensions.
[0083] At operation 212, the at least one system processor 104 may be configured to display multiple sizes of the at least one object on the at least one user device 108. In one example embodiment, the at least one system processor 104 may be configured to aggregate one or more one-dimensional barcodes and one or more two-dimensional barcodes of the at least one object, along with decoded values of multiple sizes, for display on a user's display device.
[0084] Figure 3 The illustration shows a flowchart of a method 300 for decoding one or more one-dimensional barcodes and one or more two-dimensional barcodes of at least one object, according to an example embodiment of the present disclosure.
[0085] At operation 302, the at least one system processor 104 may be configured to receive the one or more color images from the at least one image capturing device 110. Further, the at least one system processor 104 may be configured to mask the one or more color images. The at least one system processor 104 may be configured to determine the distance of each pixel from the focal plane, at least based on the masked one or more color images.
[0086] At operation 304, the at least one system processor 104 may be configured to convert the one or more color images into one or more grayscale images. In some embodiments, the at least one system processor 104 may include a main decoder image processing module that converts the one or more color images into one or more grayscale images. Further, the one or more grayscale images may be fed into a decoder (not shown) in which one-dimensional and two-dimensional barcode decoding techniques are applied.
[0087] At operation 306, the at least one system processor 104 may be configured to decode one or more values of one or more one-dimensional barcodes and one or more two-dimensional barcodes of the at least one object in the one or more grayscale images. The decoded values can ensure the extraction of meaningful information from the one or more one-dimensional barcodes and one or more two-dimensional barcodes present on the at least one object, thereby contributing to a comprehensive understanding of the identity and attributes associated with the at least one object. At operation 308, the at least one system processor 104 may be configured to display the decoded one or more values of the one or more one-dimensional barcodes and one or more two-dimensional barcodes of the at least one object on the at least one user device 108.
[0088] Figure 4 The illustration shows a flowchart of a method 400 for decoding one or more values of a plurality of dimensions of at least one object according to an example embodiment of the present disclosure.
[0089] At operation 402, the at least one system processor 104 may be configured to receive the one or more color image images from the at least one image capture device 110. At operation 404, the at least one system processor 104 may be configured to mask the one or more color image images. The at least one system processor 104 may be configured to mask the one or more color image images using a third-party library in the SM. In some embodiments, the third-party library may include a set of instructions for estimating a depth map. The depth map may be estimated using a TOF or stereo vision sensor. The at least one system processor 104 may be configured to determine the distance of each pixel from the focal plane based at least on the masked one or more color images.
[0090] Simultaneously with operation 404, at operation 406, the at least one system processor 104 may be configured to determine, for at least one of one or more color image images, multiple pixel coordinates for each of multiple corners of the at least one object. The at least one system processor 104 may be configured to determine the multiple pixel coordinates based at least on distance information for each pixel. The at least one system processor 104 may be configured to detect the multiple corners using depth information received from the one or more sensors 114 or using a deep learning protocol.
[0091] At operation 408, the at least one system processor 104 may be configured to determine, for at least one of the one or more color image images, multiple corner points of each of a plurality of corners of the at least one object, based at least on determined multiple pixel coordinates. The multiple corner points may include at least one of length coordinates, width coordinates, and height coordinates. In some embodiments, multiple parameters may be used to fine-tune the at least one image capture device 110. The multiple parameters may include exposure, analog gain and / or confidence thresholds, and at least one of multiple correction measures, as described in more detail later in conjunction with FIG. 11. At operation 410, the at least one system processor 104 may be configured to map each of the multiple corner points to a corresponding predefined distance of the at least one object, for at least one of the one or more color image images.
[0092] At operation 412, the at least one system processor 104 may be configured to determine multiple dimensions of the at least one object based at least on the mapping and the determined depth information. At operation 414, the at least one system processor 104 may be configured to display the multiple dimensions of the at least one object on the at least one user device 108. In one example embodiment, the at least one system processor 104 may be configured to aggregate one or more one-dimensional barcodes and one or more two-dimensional barcodes of the at least one object, along with one or more decoded values of the multiple dimensions, for display on a user's display device. The display device may correspond to the at least one user device 108, or any other computing device with a display known in the art.
[0093] Figure 5A The illustration shows a flowchart of a method 500 for box size labeling according to an exemplary embodiment of the present disclosure.
[0094] At operation 502, the at least one image capture device 110 can be configured to capture one or more images of the at least one object using the at least one image capture device processor 112. At operation 504, the at least one system processor 104 can be configured to receive the one or more color image images for obtaining pixel information. Further, the at least one system processor 104 can be configured to mask the one or more color image images. At operation 506, the one or more sensors 114 using the at least one sensor processor 116 can be configured to determine depth and distance information for each pixel of the one or more images associated with the at least one object.
[0095] Simultaneously with operation 506, at operation 508, the at least one system processor 104 may be configured to convert the one or more color images into one or more grayscale images. At operation 510, the at least one system processor 104 may be configured to decode one or more one-dimensional barcodes, one or more two-dimensional barcodes, and one or more values of multiple dimensions of the at least one object, based at least on the one or more grayscale images and depth information. At operation 512, the at least one system processor 104 may be configured to display the one or more one-dimensional barcodes, one or more two-dimensional barcodes, and multiple dimensions of the at least one object on the at least one user device 108.
[0096] Figure 5B The illustration shows one or more images captured in one or more color images and one or more grayscale images according to an exemplary embodiment of the present disclosure.
[0097] In an alternative embodiment, the at least one image capturing device 110 may be configured to capture one or more grayscale images of at least one object, as illustrated by 514. Further, the at least one image capturing device 110, using the at least one image capturing device processor 112, may be configured to create one or more color image maps of the at least one object for obtaining pixel information, as illustrated by 516. In some embodiments, the one or more color image maps may provide information about the visual characteristics of the at least one object. The one or more color image maps may correspond to a reference file having binary data. The reference file may allow the detection of multiple edges of the at least one object, as well as the manual assignment of multiple corners. Thereafter, the one or more sensors 114 may be configured to determine depth information for each pixel of one or more images associated with the at least one object. As illustrated by 518, depth information images may be used to provide depth information. The depth information may provide distances between the planes of the one or more sensors 114 and multiple edges of the at least one object.
[0098] Figure 5C The illustration shows a flowchart of a method 520 for box dimensioning of a regular-shaped object according to an exemplary embodiment of the present disclosure.
[0099] At operation 522, the at least one image capturing device 110 can be configured to capture one or more images of at least one object. The at least one object may correspond to an object of regular shape. The object of regular shape may have uniformity and symmetry in its structure. At operation 524, the at least one image capturing device 110 can be configured to create one or more color image files of the at least one object to obtain pixel information. At operation 526, the at least one system processor 104 can be configured to identify the center of the one or more color image files. The at least one system processor 104 can be configured to identify the center of the one or more color image files based on the obtained pixel information.
[0100] At operation 528, the at least one system processor 104 may be configured to identify multiple edges of the at least one object in rows and columns of the one or more color image images. The one or more color image images may facilitate image segmentation, thereby highlighting only one or more pixels associated with the face of the at least one object. Each of the one or more pixels in the one or more color image images may correspond to a specific location on the face of the at least one object.
[0101] At operation 530, the at least one system processor 104 may be configured to calculate the face center of the at least one object based on the identified multiple edges. At operation 532, the at least one system processor 104 may be configured to identify multiple corners based at least on the calculated face centers. The one or more color image can allow differentiation of the one or more pixels to analyze the vertical and horizontal distances between the one or more pixels. Depth information determined by the embedded one or more sensors 114 may be crucial for converting the distance from each pixel of the one or more pixels into multiple dimensions. The captured depth information can be extracted and utilized in a calibration table. The calibration table may include at least information regarding associating the resolution of each pixel from the one or more pixels with the depth information of each pixel.
[0102] At operation 534, the at least one system processor 104 can be configured to determine the resolution of each of one or more pixels of depth information based at least on the identified multiple angles, enabling accurate conversion of pixel distances into multiple dimensions. Using information from a calibration table, system 100 can convert the distance of each pixel from the one or more pixels obtained from the one or more color image into accurate multiple dimensions. Method 520 can allow for accurate estimation of the size of the at least one object in both vertical and horizontal dimensions. In some embodiments, to estimate the width of the at least one object, rows can be multiplied by the resolution of each of the one or more pixels, and to estimate the height of the at least one object, columns can be multiplied by the resolution of each of the one or more pixels.
[0103] Figure 5D The illustration shows a flowchart of a method 536 for box dimensioning of irregularly shaped objects according to an exemplary embodiment of the present disclosure.
[0104] At operation 538, the at least one image capturing device 110 may be configured to capture one or more images of at least one object. The at least one object may correspond to an irregularly shaped object. In one example, an irregularly shaped object may lack uniformity and symmetry in the structure of the at least one object. In another example, an irregularly shaped object may have very little uniformity and symmetry in the structure of the at least one object. At operation 540, the at least one image capturing device 110 may be configured to create one or more color image maps of the at least one object to obtain pixel information. The one or more color image maps can be used as a visual representation, thereby aiding the segmentation process. During segmentation, only one or more pixels associated with the at least one object may be retained, thereby effectively isolating the at least one object of interest. Each of the one or more pixels within the segmented one or more color image maps can provide information about vertical and horizontal distances, which is then transformed into a size estimate, contributing to 2D imaging aspects. In some embodiments, to convert pixel distances into accurate multiple dimensions, system 100 may rely on the extraction of depth information obtained from one or more sensors 114. Depth information can improve the accuracy of determining multiple dimensions. In some embodiments, a key component in achieving accurate multiple dimensions may include a calibration table. The calibration table can be used as a reference, thus enabling the conversion of distance information to multiple dimensions for each depth setting.
[0105] At operation 542, the at least one system processor 104 may be configured to extract diameter information of the at least one object from the one or more pixels in the one or more color image. Extraction may involve identifying one or more boundaries of the at least one object, and determining the distance of each of the one or more pixels across the diameter. At operation 544, the at least one system processor 104 may be configured to generate at least one three-dimensional array named voxels (V) using the extracted diameter information. In V, the generated V may represent the spatial distribution of the at least one object in a mesh-like structure, where each V corresponds to a small volumetric unit.
[0106] At operation 546, the at least one system processor 104 can be configured to implement V to construct a three-dimensional representation of the at least one object. V can allow for detailed and volumetric depiction of the structure of the at least one object, thereby capturing both the external and internal features of the at least one object. Simultaneously, at operation 548, the at least one system processor 104 can be configured to use the one or more sensors 114 to capture a depth information image. The depth information image can provide information about the distance of each of the one or more pixels from the one or more sensors 114. Depth information can be crucial for accurate multiple dimensions.
[0107] At operation 550, the at least one system processor 104 may be configured to analyze the depth information image to calculate the average distance to the surface of the at least one object, at least based on the implemented V. At operation 552, the at least one system processor 104 may be configured to use a calibration table to correlate pixel distances in the analyzed depth information image with real-world measurements. Figure 5C As described herein, the calibration table can ensure that the plurality of dimensions can accurately represent the physical dimensions of the at least one object.
[0108] At operation 554, the at least one system processor 104 can be configured to perform calculations, at least based on a calibration table, to estimate the surface area and volume of the at least one object. Furthermore, for users seeking to generate a detailed 3D model of the at least one object, system 100 can support this capability by allowing the capture of one or more images from different angles using the at least one image capture device 110. The iterative method used to capture the one or more images can provide a comprehensive dataset, thereby enhancing the fidelity and completeness of the resulting 3D model.
[0109] Figure 6 The illustration shows at least one object 600 having a plurality of corners according to an exemplary embodiment of the present disclosure.
[0110] As described above, the at least one system processor 104 can be configured to determine multiple pixel coordinates of each of the multiple corners of the at least one object based at least on distance information for each pixel. The at least one system processor 104 can be configured to detect the multiple corners of the at least one object 600 by using depth information received from one or more sensors 114 or by using a deep learning protocol. In some embodiments, the at least one object 600 may correspond to a box. The at least one object 600 may correspond to a three-dimensional geometry, typically having at least six rectangular faces, twelve straight edges, and eight corners / vertices. The multiple corners of the at least one object 600 may be points where multiple edges intersect, thus forming a noticeable intersection in space. Each of the multiple corners of the at least one object 600 may be characterized by spatial coordinates representing a specific point in three-dimensional space. The multiple corners play a crucial role in defining the shape and size of the at least one object 600. It will be apparent to those skilled in the art that the multiple corners of the at least one object 600 are the points where the multiple edges intersect, thereby creating the multiple corners that give shape to the at least one object 600. The number of the plurality of corners on the at least one object 600 may be fixed and depends on the geometry of the at least one object 600. Accurate identification and characterization of the plurality of corners are essential for determining the plurality of dimensions. The one or more algorithms may analyze the one or more captured images, or utilize depth information from the one or more sensors 114, to accurately detect and locate the plurality of corners. Understanding the plurality of corners allows for the calculation of the 3D dimensions of the at least one object, such as length, width, and height, thereby contributing to accurate volume estimation and comprehensive dimensional information.
[0111] In one example embodiment, the at least one object 600 may include six corners. The six corners may correspond to corners 602, 604, 606, 608, 610, and 612. Corners 602, 604, 606, and 608 are multiple corners of one face of the at least one object. Corners 606, 608, 610, and 612 are multiple corners of another face of the at least one object.
[0112] Figure 7 The illustration shows a plurality of objects 700 similar to at least one object 600 having a plurality of corners, according to an exemplary embodiment of the present disclosure.
[0113] As described above, the at least one system processor 104 can be configured to detect multiple corners in the at least one object 600 by using depth information received from one or more sensors 114 or by using a deep learning protocol. Similarly, the at least one system processor 104 can be configured to detect multiple corners in the plurality of objects 700. Further, the plurality of objects 700 may include at least one object 702, at least one object 704, at least one object 706, at least one object 708, at least one object 710, at least one object 712, and at least one object 714. In one example, the at least one object 702 may include four corners. In another example, the at least one object 704 and the at least one object 706 may include six corners. In yet another example, the at least one object 708, the at least one object 710, the at least one object 712, and the at least one object 714 may include seven corners, wherein at least one corner of each of the at least one object 708, the at least one object 710, the at least one object 712, and the at least one object 714 is a central corner having one or more different perspectives.
[0114] In some embodiments, a deep learning protocol may be utilized in several steps, beginning with the detection of at least one object 600 on one or more captured images to identify the at least one object 600. Subsequently, image segmentation on one or more images may be performed on the detected at least one object 600 to identify multiple corners of the at least one object 600 using depth information obtained from one or more sensors 114. In some embodiments, the deep learning protocol may be initiated by detecting multiple corners of the at least one object 600. In any given location of the at least one object 600 and the at least one image capturing device 110, the deep learning protocol may ensure that at least four to seven corners of the at least one object 600 are visible. The presence of fewer than six corners in the detection of the at least one object 600 may result in the immediate discarding of the one or more images. In one example, an ideal scenario could be the detection of exactly six corners, where the center corner is optional.
[0115] Figure 8 The illustration shows a flowchart of a method 800 for detecting a plurality of edges of at least one object 600 according to an example embodiment of the present disclosure.
[0116] The at least one system processor 104 may be configured to select one or more captured images of the at least one object 600 where multiple corners of the at least one object 600 are visible. Further, the at least one system processor 104 may be configured to perform image segmentation. Thereafter, the at least one system processor 104 may be configured to determine multiple edges from the multiple corners, at least based on the performed image segmentation. At operation 802, the at least one system processor 104 may be configured to draw multiple imaginary lines connecting each of the multiple corners on the one or more images. At operation 804, the at least one system processor 104 may be configured to discard one or more intersecting imaginary lines from the multiple imaginary lines. In some embodiments, discarding one or more intersecting imaginary lines from the multiple imaginary lines may leave multiple imaginary lines to form the outer boundary of the at least one object. At operation 806, the at least one system processor 104 may be configured to connect the multiple corners in a counter-clockwise or clockwise direction to determine the multiple edges.
[0117] Figure 9 The illustration shows at least one object 600 having a plurality of imaginary lines connecting all the multiple corner points, according to an exemplary embodiment of the present disclosure. Figure 10 The illustration shows at least one object 600 having an outer boundary 1000 according to an exemplary embodiment of the present disclosure.
[0118] In some embodiments, the at least one system processor 104 may be configured to perform image segmentation on the one or more images. Further, the at least one system processor 104 may be configured to perform image segmentation to determine multiple edges from multiple corners. The at least one system processor 104 may be configured to draw multiple imaginary lines connecting each of the multiple corners on the at least one object 600 in the one or more images, as shown by... Figure 9 As illustrated in 902, the plurality of imaginary lines can be drawn by connecting each of the visible plurality of corners of the at least one object 600. Further, the at least one system processor 104 can be configured to discard one or more intersecting imaginary lines from the plurality of imaginary lines to form an outer boundary 1000, as shown in the figure. Figure 10 As illustrated in the figure. In some embodiments, one or more intersecting imaginary lines connecting multiple visible corners may be discarded. These one or more intersecting imaginary lines may be discarded to ensure that only the outer boundary 1000 remains within the FOV used to determine multiple dimensions.
[0119] In some embodiments, from the outer boundary 1000, the at least one system processor 104 can select any one of the plurality of corners. Further, the at least one system processor 104 can be configured to connect the plurality of corners in a counter-clockwise or clockwise direction to determine a plurality of sides. The connection step can confirm the plurality of sides of the at least one object 600, thereby defining boundaries for accurately determining a plurality of dimensions. Using the plurality of sides, the at least one system processor 104 can further calculate distances corresponding to the length, width, and height of the at least one object 600. The calculated distances can enable an accurate estimation of the volume of the at least one object 600, thereby providing comprehensive dimensional information. The at least one system processor 104 can not only identify the plurality of corners and the plurality of sides, but also refine the data by carefully eliminating one or more intersecting imaginary lines, ultimately leading to accurate measurements and volume estimations for improved accuracy in various applications.
[0120] Figure 11A The illustration shows at least one object selected from a plurality of corner points of a formed outer boundary according to an exemplary embodiment of the present disclosure, traversed in a clockwise direction, thereby connecting to at least the next three corner points from the plurality of corner points.
[0121] In some embodiments, the at least one system processor 104 may be configured to connect a plurality of corners in a clockwise direction, as illustrated by 1102. Traversing clockwise to connect the plurality of corners to at least three subsequent corners of the plurality of corners can describe a process for establishing sequential connections between the plurality of corners of the at least one object 600. Image segmentation for selecting multiple edges can begin by selecting one of the plurality of corners of the at least one object 600. The plurality of corners can serve as starting points for the sequential connections. The at least one system processor 104 can determine the direction of traversal from the plurality of corners. The determined direction can be clockwise. The determined direction can be maintained throughout the process of connecting the plurality of corners of the at least one object 600. Following the determined direction, the at least one system processor 104 can sequentially connect the plurality of corners to at least three subsequent corners of the plurality of corners. The connection of the plurality of corners may involve drawing multiple imaginary lines as straight lines or linking each of the plurality of corners clockwise to multiple edges of the subsequent plurality of corners. As a result, a series of connected edges can be formed, effectively outlining a portion of the outer boundary 1000. In some embodiments, the multiple corners connected in a clockwise manner can help define the multiple edges of the at least one object 600 and contribute to confirming the overall shape of the at least one object 600. The multiple corners connected in a clockwise order can help confirm the multiple edges of the at least one object 600. By connecting the multiple corners, the at least one system processor 104 can ensure that the multiple edges are part of the structure of the at least one object, thereby contributing to determining accurate multiple dimensions.
[0122] Figure 11B The illustration depicts at least one object selected from a plurality of corner points of a formed outer boundary according to an exemplary embodiment of the present disclosure, traversing in a counterclockwise direction, thereby connecting to at least the next three corner points of the plurality of corner points.
[0123] In some embodiments, the at least one system processor 104 may be configured to connect the plurality of corners in a counter-clockwise direction, as illustrated by 1104. Traversing counter-clockwise to connect the plurality of corners to at least three subsequent corners can describe a process for establishing sequential connections between the plurality of corners of the at least one object 600. Image segmentation for selecting the plurality of edges can begin by selecting one of the plurality of corners of the at least one object 600. The plurality of corners can serve as starting points for the sequential connections. The at least one system processor 104 can determine the direction of traversal from the plurality of corners. The determined direction can be counter-clockwise. The determined direction can be maintained throughout the process of connecting the plurality of corners of the at least one object 600. Following the determined direction, the at least one system processor 104 can sequentially connect the plurality of corners to at least three subsequent corners. The connection of the plurality of corners may involve drawing a plurality of imaginary lines as straight lines or linking each of the plurality of corners counter-clockwise to a plurality of edges of the next plurality of corners. As a result, a series of connected edges can be formed, effectively outlining a portion of the outer boundary 1000. In some embodiments, the multiple corners connected counterclockwise can help define the multiple edges of the at least one object 600 and contribute to confirming the overall shape of the at least one object 600. The multiple corners connected in a counterclockwise order can help confirm the multiple edges of the at least one object 600. By connecting the multiple corners, the at least one system processor 104 can ensure that the multiple edges are part of the structure of the at least one object, thereby contributing to determining accurate multiple dimensions.
[0124] Using the plurality of edges, the at least one system processor 104 can further calculate distances corresponding to length, width, and height. The calculated distances enable an accurate estimation of the volume of the at least one object 600, thereby providing comprehensive dimensional information.
[0125] Figure 12 The illustration shows a plurality of edges selected in the at least one object 600 according to an exemplary embodiment of the present disclosure.
[0126] As described above, the at least one system processor 104 can be configured in a series of steps designed to identify multiple corners and multiple edges of the at least one object 600. In some embodiments, the at least one system processor 104 may include a prerequisite that at least four to at least seven of the multiple corners of the at least one object 600 should be visible in any given location of the at least one object 600. In one case, if the number of multiple corners falls below six, one or more images may be discarded immediately. In another case, if at least six or seven of the multiple corners are detected, the at least one system processor 104 may filter the multiple corners for improved accuracy in image segmentation.
[0127] In another scenario where at least six or seven corners are detected, the at least one system processor 104 may discard each corner with the highest depth value from the plurality of corners. For example, corner 1202, labeled “G”, with the highest depth value, may be discarded. Subsequently, all plurality of imaginary lines originating from the plurality of corners with the lowest depth values may be considered. For example, an imaginary line originating from G with the lowest depth value may be discarded. In some embodiments, a plurality of imaginary lines may be considered. In one example embodiment, the plurality of imaginary lines may include imaginary line 1204 labeled “BA”, imaginary line 1206 labeled “BD”, imaginary line 1208 labeled “BC”, imaginary line 1210 labeled “BE”, and imaginary line 1212 labeled “BF”, which become focal points.
[0128] In some embodiments, two different scenarios may arise during the analysis of the plurality of imaginary lines. These two scenarios may include a face-angle scenario and an edge scenario. In the face-angle scenario, if the selected plurality of imaginary lines are identified as face-angles, such as BD, which inherently have only one of a plurality of perpendicular edges, such as BF, then the at least one processor may select BF as one of the plurality of edges of the at least one object 600. Further, BF may be selected, and at least two line segments perpendicular to BF (such as BA and BC) may be identified as the other two of the plurality of edges of the at least one object 600.
[0129] In the case of edges, if the selected plurality of imaginary lines are identified as multiple edges, such as BF, then each of the plurality of edges has at least three vertical line segments, such as BA, BD, and BC associated with BF. The at least one system processor 104 may discard the longest vertical imaginary line among BA, BD, and BC, i.e., BD, thereby leaving BA and BD as edges among the plurality of edges from the at least one object 600. In some embodiments, when identifying multiple edges, the at least one system processor 104 may calculate distances, encompassing length, width, and height. Comprehensive data enables accurate estimation of the volume of the at least one object 600, thereby ensuring that the dimensioning process is not only fast but also highly accurate.
[0130] Figure 13A A flowchart illustrating a method 1300 for dimensioning a system 100 according to an exemplary embodiment of the present disclosure is shown. Figure 13B The illustration shows a dimension network 1314 of a dimension annotation architecture according to an exemplary embodiment of the present disclosure.
[0131] At operation 1302, the at least one image capturing device 110 may be configured to capture one or more images of the at least one object 600. As described above, the at least one image capturing device 110 may be configured to create one or more color image files of the at least one object 600 for obtaining pixel information. The created one or more color image files may be necessary for image segmentation of the one or more images, displaying only one or more pixels associated with the face boundaries of the at least one object 600. Each of the one or more pixels in the one or more created color image files may represent vertical and horizontal distances, aiding in the size estimation of the at least one object 600. At operation 1304, the at least one system processor 104 may be configured to convert the one or more color image files into one or more grayscale images 1316.
[0132] At operation 1306, the at least one system processor 104 may be configured to determine multiple corner points of the at least one object from the one or more grayscale images using a size network 1314 for at least one of the one or more color image images. The size network 1314 may correspond to a deep learning protocol. In some embodiments, the size network 1314 may be designed to detect multiple corner points from one or more grayscale images 1316. The size network 1314 may be deployed as a deep learning network with convolutional layers, pooling layers, and normalization layers. The one or more grayscale images 1316 may be processed by a convolutional neural network (CNN) backbone 1318 with one or more weights. In one example, the one or more weights may correspond to trained weights from a custom dataset. Further, one or more features extracted from the CNN backbone 1318 may be directed to two branches. In one example, the two branches may correspond to a CNN network. Further, the two branches may include at least one object detection branch 1320 with a bounding box network 1322 and multiple corner detection branches 1324 with a fully connected network 1326. The at least one object detection branch 1320 can identify at least one object 600 of interest and estimate multiple pixel coordinates of the at least one object 600, as shown by... Figure 13B As illustrated in 1328, the plurality of angle detection branches 1324 can calibrate a plurality of angles of the at least one object 600 to provide a plurality of corner points including at least one of the length coordinates, width coordinates, and height coordinates of the at least one object 600, as shown by [illustration]. Figure 13B As illustrated in 1330.
[0133] Simultaneously with operation 1304, at operation 1308, one or more sensors 114 may be configured to determine depth information for each pixel of one or more images associated with the at least one object 600. At operation 1310, the at least one system processor 104 may be configured to map each corner point and depth information from the plurality of corner points for at least one of the one or more color image images to determine multiple dimensions, such as those obtained by... Figure 13B As illustrated in Figure 1332, the at least one system processor 104 can associate the value of each of the plurality of corner points in the one or more images with depth information. Using the depth information, the at least one system processor 104 can determine the actual location of the at least one object 600 in the real world. In some embodiments, such as Figure 5CAs described herein, a calibration table can be employed to obtain the resolution of one or more pixels for each depth information, thereby facilitating the conversion of the value of each corner point into multiple dimensions in millimeters (mm). At operation 1312, the at least one system processor 104 can be configured to determine the volume of the at least one object 600 based at least on the multiple dimensions.
[0134] Figure 13C An exemplary scenario 1334 of a dimensioning architecture according to an example embodiment of this disclosure is illustrated.
[0135] In some embodiments, the value (X1, Y1) can be considered as one or more pixel coordinates. The value (X1, Y1) can be detected as an angle by the at least one system processor 104. The at least one system processor 104 can then consider the corresponding depth information of the detected value (X1, Y1) and determine the corresponding value (Z1) of the real-world value. The corresponding value (Z1) can be a projection value on the XY plane of the exemplary scene 1334. Further, the at least one system processor 104 can have the value (X1, Y1, Z1). Subsequently, the at least one system processor 104 can convert the value (X1, Y1, Z1) into the value (X2, Y2, Z2). The value (X2, Y2, Z2) can correspond to an actual point in the real world relative to the at least one image capture device 110. In one example embodiment, the value (Y2) can be a projection value on the XZ plane of the exemplary scene 1334. The at least one system processor 104 can be configured to use the formula d = ((X2 - X1)). 2 +(Y2-Y1) 2 +(Z2-Z1) 2 ) 1 / 2 The distance “d” of the at least one real-world point is determined based on the value (X1, Y1, Z1) to the value (X2, Y2, Z2).
[0136] Figure 14A The illustration shows the left and right limits in one or more images of the at least one object 600 according to an exemplary embodiment of the present disclosure.
[0137] In some embodiments, the left limit and right limit can be defined using one or more input variables and one or more output variables, such as:
[0138] void imagecorners(unsigned char*imagein, float*depth, double*H_Ave, double*L_Ave,
[0139] double*W_Ave, int W, int H).
[0140] The one or more input variables may include an "unsigned char*imagein" corresponding to a pointer to a color depth image unit, a "float*depth" corresponding to a pointer to floating-point data of depth image information, and "int W, int H" corresponding to the width and height images. The one or more output variables may include a "double*H_Ave" corresponding to the package height, a "double*L_Ave" corresponding to the package length, and a "double*W_Ave" corresponding to the package width.
[0141] In some embodiments, an exemplary scenario 1400 may be illustrated. In exemplary scenario 1400, via the at least one system, processor 104 may be configured to count one or more pixels from the center to the edge in a leftward direction. Further, the at least one system processor 104 may be configured to count one or more pixels from the center to the edge in a rightward direction.
[0142] Exemplary scenario 1400 may illustrate an algorithm based on a manual strategy. The algorithm may be executed by the at least one system processor 104 to find horizontal limit edges in the at least one object 600. The manual strategy may be based on an algorithm that evaluates one or more pixels in the same row or column, and further, stops only when a pixel with a value associated with a color image is found. The algorithm may include a step of finding a first pixel with a value from the center of the image in coordinate X. Coordinate X may be defined by width / 2, labeled “WC”. Further, the algorithm may include a step of finding a first pixel with a value associated with one or more color image images in the same horizontal row. Further, moving to the left, the algorithm may include a step of saving the left limit labeled XL. Subsequently, moving to the right, the algorithm may include a step of saving the first right limit labeled XR. In an example embodiment, the limit after XR may be named “XBackR”.
[0143] Figure 14B The illustration shows one or more top values of the left and right limits of the at least one object 600 according to an exemplary embodiment of the present disclosure.
[0144] In some embodiments, an exemplary scenario 1402 may be illustrated. In exemplary scenario 1402, the at least one system processor 104 may be configured to determine one or more top values of one or more pixels counted from the center to the edge in a leftward direction. Further, the at least one system processor 104 may be configured to determine one or more top values of one or more pixels counted from the center to the edge in a rightward direction. The one or more top values may be configured to store one or more pixel coordinates and depth information of the at least one object 600.
[0145] In some embodiments, exemplary scenario 1402 may illustrate that the algorithm may include a step of finding the top coordinate or one or more top values after obtaining XL, XR, and XBackR. The algorithm may include a step of finding the upper limit in the same column from XL, XR, and XBackR.
[0146] Figure 14C The illustration shows one or more bottom values of the left and right limits of the at least one object 600 according to an exemplary embodiment of the present disclosure.
[0147] In some embodiments, an exemplary scenario 1404 may be illustrated. In exemplary scenario 1404, the at least one system processor 104 may be configured to determine one or more bottom values of one or more pixels counted from the center to the edge in a leftward direction. Further, the at least one system processor 104 may be configured to determine one or more top values of one or more pixels counted from the center to the edge in a rightward direction. The one or more top values may be configured to store one or more pixel coordinates and depth information of the at least one object 600.
[0148] In some embodiments, exemplary scenario 1404 may illustrate that the algorithm may include a step of obtaining bottom coordinates or one or more bottom values for manually finding edges. The algorithm may include a step of finding the upper limit in the same column from XL, XR, and XBackR.
[0149] Figure 15A The illustration shows the determination of the real-world length of at least one object 600 according to an exemplary embodiment of this disclosure.
[0150] In some embodiments, multiple coordinates can be defined using one or more instructions executed by the at least one system processor 104. The multiple coordinates may include one or more real-world pixel coordinates and a "Z" coordinate. The depth of the real-world "Z" coordinate may be in centimeters (cm). The one or more pixel coordinates may correspond to "xL,y_TopLeft", "xR,y_TopRight", "xBackR,y_TopBackR", "xL,y_BotLeft", "xR,y_BotRight", and "xBackR,y_BotBackR". The real-world "Z" coordinates may correspond to "Z_TopLeft", "Z_TopRight", "Z_TopBackR", "Z_BotLeft", "Z_BotRight", and "Z_BotBackR".
[0151] In some embodiments, an exemplary scenario 1500 may be illustrated. In exemplary scenario 1500, an algorithm may enable the at least one system processor 104 to determine the real-world length of the at least one object 600. The real-world length may correspond to a length distance indicated by "L". The at least one system processor 104 may use the algorithm to find coordinate values from the one or more color images. The values may include "Z_TopLeft, Z_TopRight, Z_Botleft, Z_BotRight", which may be used as input Z, and real-world X_distance and Y_distance may be further generated for each of the values.
[0152] Figure 15B The illustration shows the determination of the real-world height of at least one object according to an exemplary embodiment of this disclosure.
[0153] In some embodiments, an exemplary scenario 1502 may be illustrated. In exemplary scenario 1502, the at least one system processor 104 may be configured to determine the real-world height of the at least one object 600. The real-world height may correspond to a height distance indicated by "Y". The real-world height may be in cm.
[0154] Figure 15C The illustration shows the determination of the real-world width of at least one object according to an exemplary embodiment of this disclosure.
[0155] In some embodiments, an exemplary scenario 1504 may be illustrated. In exemplary scenario 1504, the at least one system processor 104 may be configured to determine the real-world width of the at least one object 600. The real-world width may be in centimeters.
[0156] Figure 16 The illustration shows a scanner 102 of a system 100 according to an exemplary embodiment of the present disclosure.
[0157] In some embodiments, scanner 102 may use at least one image capture device 110 and one or more sensors 114 to present a novel method of integrated 3D dimensioning and 2D barcode scanning. In one example embodiment, the one or more sensors 114 may correspond to a CMOS sensor with a diffraction structure layer. The diffraction structure may induce a Talbot effect based at least on the distance of the at least one object 600 from scanner 102. The Talbot effect enables the CMOS sensor to capture depth information associated with the at least one object. In some embodiments, scanner 102 may demonstrate the ability to simultaneously scan one or more one-dimensional barcodes, one or more two-dimensional barcodes, and multiple sizes of the at least one object 600 in a single capture. Scanner 102 may employ a fixed-focus lens for capturing one or more images with depth information. However, to address limitations in FOV depth at variable working distances, scanner 102 may incorporate an adjustable lens for improved accuracy.
[0158] In some embodiments, an adjustable lens may be communicatively coupled to the at least one image capture device 110. Further, the adjustable lens may be configured to fine-tune multiple parameters of the at least one image capture device 110. The adjustable lens may include a voice coil motor. The voice coil motor may be configured to adjust the distance between multiple lens elements of the at least one image capture device 110 and to vary the F-number. In some embodiments, the multiple parameters may include exposure, analog gain and / or confidence threshold, and at least one of multiple correction measures. The multiple correction measures may include illumination conditions, background contrast, reflection reduction, and repositioning of the at least one image capture device 110.
[0159] In some embodiments, exposure can determine the amount of light reaching the one or more sensors 114. In one example, the one or more sensors 114 may correspond to an image sensor. Exposure may be affected by factors such as shutter speed, lens F-number, and scene illumination. In 3D dimensioning, adjusting exposure helps optimize the balance between capturing enough light for accurate depth measurement and preventing overexposure. In some embodiments, analog gain can refer to the amplification of the signal from the one or more sensors 114. Increasing analog gain can enhance the brightness or sensitivity of the one or more images. Analog gain can be calibrated to fine-tune the response of the one or more sensors 114 to light, thereby ensuring that depth information is captured with optimal sensitivity and accuracy. In some embodiments, a confidence threshold can represent the minimum level of required certainty at which depth information is considered acceptable. The confidence threshold can be calibrated to filter out unreliable or noisy depth information, thereby ensuring that only confident and accurate measurements contribute to the determination of the plurality of dimensions.
[0160] In some embodiments, depending on the focal length of the adjustable lens, the adjustable lens system can be adapted to vary the working distance from 1 meter (m) to 3 meters. Adaptability can be achieved through the design of the adjustable lens, involving multiple lens elements and a voice coil motor for adjusting the focus of the adjustable lens. The design of the adjustable lens can facilitate real-world adjustment of the F-number. The F-number can be a key parameter managing the aperture size of the multiple lens elements. In applications where both high-accuracy 3D dimensioning and a wide barcode reading range are essential, a trade-off may need to be made between the F-number required for accurate 3D measurement and the F-number required for a wide barcode reading range. In one example embodiment, the F-number can vary between 1.5 and 6, thus providing flexibility in capturing one or more images tailored to the needs of the at least one image capture device 110.
[0161] Furthermore, to determine the plurality of dimensions, the plurality of lens elements may require small F-numbers, such as between 1 and 2, thereby allowing for accurate depth information. For an effective barcode reading range, a larger F-number of approximately 5-6 may be preferred, as a larger F-number facilitates capturing one or more images with a wider FOV depth. In some embodiments, the adjustable lens can dynamically change the F-numbers of the plurality of lens elements in the real world. An adjustable lens may be crucial for adapting to different operational requirements without requiring manual adjustment or alteration of the plurality of lens elements. The adjustable lens can operate within milliseconds, thereby enabling rapid and precise adjustments to the at least one image capture device 110.
[0162] Figure 17AAn adjustable lens 1700 with a variable aperture size is illustrated according to an exemplary embodiment of the present disclosure.
[0163] The plurality of lens elements may include lens 1702, lens 1704, and lens 1706. In one example embodiment, a voice coil motor 1708 may be employed to adjust the aperture size of the plurality of lens elements, thereby enabling dynamic tuning of the F-number between 1.5 and 6. The voice coil motor 1708 may tune lenses 1702, 1704, and 1706 to adjust the aperture size. In the real world, tuning may allow scanner 102 to capture one or more images with an F-number of 1.5 for determining the plurality of sizes, and to capture one or more images with an F-number of 6 for decoding the values of one or more one-dimensional barcodes and one or more two-dimensional barcodes, wherein the tuning time is in the millisecond range. This rapid tuning capability allows scanner 102 to capture sequences of one or more one-dimensional barcodes, one or more two-dimensional barcodes, and one or more images of multiple sizes within seconds.
[0164] Figure 17B An adjustable lens 1700 with a variable focal length is illustrated according to an exemplary embodiment of the present disclosure.
[0165] In one example embodiment, a voice coil motor 1708 can be employed to adjust the focal length of the plurality of lens elements. The voice coil motor 1708 can tune lenses 1702, 1704, and 1706 to adjust the focal length. Further, the focal length of the plurality of lens elements can be tuned between two values while maintaining a fixed aperture size. A shorter focal length can correspond to an F-number of 1.5 optimized for determining the plurality of sizes. Further, a longer focal length can correspond to an F-number of 6, which is ideal for decoding the values of the one or more one-dimensional barcodes and the one or more two-dimensional barcodes. The voice coil motor 1708 can adjust the distance between the plurality of lens elements to provide two different focal lengths for the plurality of lens elements, accommodating both the one or more one-dimensional barcodes, the one or more two-dimensional barcodes, and the plurality of sizes.
[0166] Figure 18 The illustration shows a user interface (UI) 1800 for taking multiple corrective actions based on an example embodiment of the present disclosure.
[0167] As described above, the adjustable lens 1700 can be configured to fine-tune multiple parameters of the at least one image capturing device 110. In some embodiments, the multiple parameters may include exposure, analog gain and / or confidence threshold, and at least one of the multiple correction measures. The adjustable lens can adjust the multiple parameters until satisfactory depth information is achieved, typically multiple angles of the at least one object 600.
[0168] In some embodiments, even after fine-tuning multiple parameters, the at least one image capture device 110 may still fail to produce satisfactory results. As a result, the system 100 may provide feedback to one or more users of the at least one user device. This feedback may prompt the one or more users to take multiple corrective measures. These corrective measures may include adjusting lighting conditions, background contrast, reducing reflections, and repositioning the at least one image capture device 110, improving illuminance, enhancing contrast differences, and reducing reflections. In some embodiments, fine-tuning the lighting conditions around the at least one object 600 can significantly affect the accuracy of depth information. The one or more users may be advised to experiment with different lighting conditions to find an arrangement that enhances the performance of the at least one image capture device 110.
[0169] In some embodiments, repositioning of the at least one image capture device 110 can help achieve better depth information. Repositioning the at least one image capture device 110 can allow the one or more users to find optimal settings that minimize the impact of environmental factors on depth information. In some embodiments, the one or more users may be prompted to improve illumination by turning on the flash of the at least one image capture device 110 or using an additional lighting source. Improved illumination can positively affect the scanner 102's ability to accurately detect multiple angles and calculate depth information. In some embodiments, increasing background contrast can aid in multiple angle detection. The one or more users can receive guidance on adjusting background contrast to enhance contrast, thereby facilitating more accurate depth information. In some embodiments, to address issues related to reflective surfaces, the one or more users may be advised to take measures to reduce reflection. Reflection reduction may involve changing the positioning of the at least one object 600, using an anti-reflective coating, or modifying illumination settings.
[0170] Furthermore, UI 1800 can provide feedback to one or more users on the at least one user device. In one example, the feedback can instruct one or more users regarding lighting conditions as “Low lighting conditions!”. Further, the feedback may include a message such as “Please place the subject under better lighting conditions.” In one embodiment, UI 1800 can prompt the one or more users to accept corrective measures by selecting a “Yes” button on UI 1800, as illustrated in 1802, or to reject corrective measures by selecting a “No” button, as illustrated in 1804.
[0171] Figure 19A The illustration shows one or more underexposed images of the at least one object having missing depth information according to an example embodiment of the present disclosure.
[0172] As described above, the at least one image capturing device 110 can be configured to capture the one or more images. In some embodiments, the at least one image capturing device 110 can capture one or more underexposed images. In some embodiments, exemplary scenarios involving the one or more underexposed images can be depicted, as illustrated by 1902. The one or more underexposed images can be one or more images captured under insufficient light exposure, resulting in one or more darker or dim images, and demonstrating the effect of underexposure on the quality of the one or more images. The one or more underexposed images may include missing depth information. Further, the one or more underexposed images may include multiple missing corners and multiple missing edges.
[0173] Missing depth information can indicate that, due to underexposure, the depth information of the at least one object 600 is not clearly visible or identifiable in one or more captured images. Furthermore, missing depth information can indicate that, due to insufficient lighting during the capture of one or more images, the depth information associated with multiple edges of the at least one object 600 is not accurately represented.
[0174] Figure 19B The illustration shows correctly formed edges from the at least one object and correctly formed angles from the plurality of angles according to an exemplary embodiment of the present disclosure.
[0175] In some embodiments, exemplary scenarios involving correctly formed edges and correctly formed angles can be depicted, as illustrated by 1904. In some embodiments, correctly formed edges can indicate that, after calibration, multiple edges of the at least one object 600 are clearly and accurately defined in the one or more images. The calibration can refer to the adjustment or fine-tuning of multiple parameters of the at least one image capturing device 110. Further, correctly formed angles can indicate that the calibration process has successfully resolved the one or more underexposed images, where multiple angles are missing or poorly defined. Calibration can involve fine-tuning multiple parameters affecting the detection and representation of the multiple angles, resulting in more accurate and well-defined multiple angles in the one or more images.
[0176] Figure 19C The illustration shows one or more underexposed images of at least one additional object with missing depth information according to an example embodiment of the present disclosure.
[0177] In some embodiments, an exemplary scene involving the one or more underexposed images may be depicted, as illustrated by 1906. The one or more underexposed images may be one or more images captured under insufficient light exposure, resulting in one or more darker or more muted images, and demonstrating the effect of underexposure on the quality of the one or more images. The one or more underexposed images may include missing depth information. Further, the one or more underexposed images may include multiple missing corners and multiple missing edges.
[0178] Missing depth information can indicate that, due to underexposure, the depth information of the at least one object 600 is not clearly visible or identifiable in one or more captured images. Furthermore, missing depth information can indicate that, due to insufficient lighting during the capture of one or more images, the depth information associated with multiple edges of the at least one object 600 is not accurately represented.
[0179] Figure 19D The illustration shows one or more correctly formed edges and one or more correctly formed corners of at least one other object according to an exemplary embodiment of this disclosure.
[0180] In some embodiments, exemplary scenarios involving correctly formed edges and correctly formed angles can be depicted, as illustrated by 1908. In some embodiments, correctly formed edges can indicate that, after calibration, multiple edges of the at least one object 600 are clearly and accurately defined in one or more images. Calibration can refer to the adjustment or fine-tuning of multiple parameters of the at least one image capturing device 110. Further, correctly formed angles can indicate that the calibration process has successfully resolved the one or more underexposed images where multiple angles are missing or poorly defined. Calibration can involve fine-tuning multiple parameters affecting the detection and representation of the multiple angles, resulting in more accurate and well-defined multiple angles in the one or more images.
[0181] Figure 20 The illustration shows a simulation result 2000 of determining a plurality of dimensions of at least one object 2002 according to an exemplary embodiment of the present disclosure.
[0182] The simulation results 2000 can provide information about each step of the simulation performed using system 100. In some embodiments, the simulation results 2000 can be depicted as involving the use of the at least one object 2002. In some embodiments, the at least one object 2002 can correspond to a calibration cube with dimensions of 8 cm * 8 cm * 8 cm. The calibration cube can be used as at least one object 2002 with known dimensions and properties. The 8 * 8 * 8 cm calibration cube can be used to evaluate and calibrate system 100. The simulation results 2000 can involve capturing one or more images of the calibration cube using the at least one image capturing device 110, and the known dimensions of the calibration cube can allow for comparison with measurements from system 100. The simulation results can help verify the accuracy and reliability of system 100, thereby ensuring that system 100 can provide accurate spatial information for the at least one object 2002 in the real world. The simulation results of the calibration cube can be used as a quality assurance and calibration procedure to enhance the performance of system 100 in accurately determining multiple dimensions. In some embodiments, the dimensions of the calibration cube are defined as 8.864561 cm in height, 7.936051 cm in length, and 8.472580 cm in width.
[0183] Figure 21 Another simulation result 2100 is illustrated, showing the determination of a plurality of dimensions of at least one object 2102 according to an exemplary embodiment of the present disclosure.
[0184] The simulation result 2100 can provide information about each step of the simulation performed using system 100. In some embodiments, the simulation result 2100 can be depicted as involving the use of at least one object 2102. In some embodiments, the at least one object 2102 can correspond to a calibration cube with dimensions of 10cm x 10cm x 10cm. The simulation result 2100 can involve capturing one or more images of the calibration cube using the at least one image capturing device 110, and the known dimensions of the calibration cube can allow for comparison with measurements by system 100. The simulation result 2100 using the 10cm x 10cm x 10cm calibration cube can indicate that system 100 measures multiple dimensions as 10.083667cm high, 9.682665cm long, and 9.869965cm wide.
[0185] Figure 22 The illustration shows another simulation result 2200 illustrating the determination of multiple dimensions of at least one object 2202 according to an exemplary embodiment of the present disclosure.
[0186] The simulation result 2200 can provide information about each step of the simulation performed using system 100. In some embodiments, the simulation result 2200 can be depicted as involving the use of the at least one object 2202. In some embodiments, the at least one object 2202 can correspond to a calibration cube with dimensions of 6cm * 5cm * 7.5cm. The simulation result 2200 can involve capturing one or more images of the calibration cube using the at least one image capturing device 110, and the known dimensions of the calibration cube can allow for comparison with measurements by system 100. The simulation result 2200 using a 6cm * 5cm * 7.5cm calibration cube can indicate that system 100 measures multiple dimensions as 6.088020cm high, 8.137855cm long, and 5.574166cm wide.
[0187] Figure 23 The illustration shows a flowchart of a method 2300 for marking box dimensions according to an exemplary embodiment of the present disclosure.
[0188] At operation 2302, at least one image capturing device 110 of scanner 102 may be configured to capture one or more images of at least one object 600. In some embodiments, an adjustable lens 1700 may be communicatively coupled to the at least one image capturing device 110. The adjustable lens 1700 may be configured to fine-tune multiple parameters of the image capturing device. In some embodiments, the multiple parameters may include exposure, analog gain and / or confidence threshold, and at least one of multiple correction measures. Further, the multiple correction measures may include lighting conditions, background contrast, reflection reduction, and repositioning of the at least one image capturing device 110.
[0189] At operation 2304, the at least one image capturing device 110 may be configured to create one or more color images of the at least one object 600 based on the one or more images to obtain pixel information. In some embodiments, the one or more color images may provide visual characteristics of the at least one object 600. The pixel information may then be further utilized for various purposes, such as image segmentation, analysis, or measurement of multiple dimensions. In some embodiments, the at least one system processor 104 may be configured to convert the one or more color images into one or more grayscale images. The one or more grayscale images may be configured to decode one or more values of one or more one-dimensional barcodes and one or more two-dimensional barcodes of the at least one object 600 in the one or more grayscale images. Further, the at least one system processor 104 may be configured to aggregate the one or more one-dimensional barcodes and one or more two-dimensional barcodes of the at least one object 600, along with the decoded one or more values of multiple dimensions, for display on a user's display device.
[0190] At operation 2306, one or more sensors 114 operatively coupled to the at least one image capturing device 110 may be configured to determine depth and distance information for each pixel of the one or more color images, based at least on pixel information. At operation 2308, the at least one system processor 104 may be configured to determine, for at least one of the one or more color images, multiple pixel coordinates for each of multiple corners of the at least one object 600, based at least on the distance information for each pixel. In some embodiments, the at least one system processor 104 may be configured to determine the multiple corners using depth information received from the one or more sensors 114 or using a deep learning protocol.
[0191] At operation 2310, the at least one system processor 104 may be configured to determine, for at least one of one or more color image images, multiple corner points for each of multiple corners of the at least one object 600, based at least on the determined multiple pixel coordinates. In some embodiments, the multiple corner points may include at least one of length coordinates, width coordinates, and height coordinates. In some embodiments, the at least one system processor 104 may be configured to map the determined multiple corner points to corresponding predefined distances of the at least one object 600 using a sparse depth map.
[0192] At operation 2312, the at least one system processor 104 may be configured to map each of the plurality of corner points to a corresponding predefined distance of the at least one object 600 for at least one of one or more color image images. In some embodiments, the at least one system processor 104 may be configured to map the determined plurality of corner points to the corresponding predefined distances of the at least one object 600 using a sparse depth map. At operation 2314, the at least one system processor 104 may be configured to determine a plurality of dimensions of the at least one object 600 based at least on the mapping of each corner point and the determined depth information. Thereafter, at operation 2316, the at least one system processor 104 may be configured to provide the plurality of dimensions to the at least one user equipment.
[0193] In some embodiments, method 2300 may further include masking the one or more color images via the at least one system processor 104. Method 2300 may further include determining the distance of each pixel from the focal plane via the at least one system processor 104, at least based on the masked one or more images.
[0194] This disclosure efficiently performs tasks that typically require separate equipment by integrating a scanner equipped with at least one image capture device and one or more sensors. In some embodiments, utilizing the captured one or more images for both 2D barcode decoding and 3D dimensioning simplifies the process and reduces the need for additional equipment, thereby enhancing convenience and cost-effectiveness. Furthermore, the 3D dimensioning functionality facilitated by one or more sensors enables accurate measurement of the dimensions of at least one object in terms of length, width, and height. In some embodiments, accurate measurements can be smoothly determined by the system and methods by optimally calculating multiple angles and mapping said angles to real-world distances. Further, incorporating an adjustable lens system to calibrate the at least one image capture device refines accuracy to ensure reliable results. Moreover, by seamlessly integrating barcode decoding with 3D dimensioning, the system can provide comprehensive information about the scanned at least one object, improving workflow efficiency. The system's versatility in seamlessly transitioning between 2D imaging, 3D dimensioning, and 3D modeling makes it a powerful and adaptable tool for applications ranging from logistics to manufacturing, where accurate spatial information is paramount. The integration of 5D technology into scanners represents a significant advancement in capturing comprehensive data on a wide range of objects in real-world scenes. In summary, this disclosure can facilitate data collection and measurement processes and provide unparalleled versatility and accuracy within a single system.
[0195] Benefiting from the teachings presented in the foregoing description and the associated drawings, those skilled in the art to which this disclosure pertains will conceive of many modifications and other embodiments of the disclosure set forth herein. Therefore, it should be understood that this disclosure is not limited to the specific embodiments disclosed, and that modifications and other embodiments are intended to be included within the scope of the appended claims. Furthermore, although the foregoing description and associated drawings have described exemplary embodiments in the context of specific example combinations of elements and / or functions, it should be appreciated that different combinations of elements and / or functions may be provided by alternative embodiments without departing from the scope of the appended claims. In this regard, for example, combinations of elements and / or functions different from those explicitly described above are also contemplated, as may be set forth in some of the appended claims. Although specific terminology is used herein, it is used only in a general and descriptive sense and not for limiting purposes.
Claims
1. A system comprising: The scanner is configured as follows: Capture one or more images of at least one object using at least one image capture device; and Based on the one or more images, create one or more color image images of the at least one object to obtain pixel information; One or more of the sensors are operatively coupled to the at least one image capturing device and are configured to determine depth and distance information for each pixel of the one or more color images based at least on the pixel information; At least one system processor operatively coupled to the scanner, and at least one memory storing instructions, which, when executed by the at least one system processor, cause the system to: For at least one of the one or more color images, based at least on distance information for each pixel, determine multiple pixel coordinates for each of multiple corners of the at least one object; For at least one of the one or more color image images, based at least on the plurality of pixel coordinates, determine multiple corner points for each of the plurality of corners of the at least one object; For at least one of the one or more color images, map each of the plurality of corner points to a corresponding predefined distance of the at least one object; and Multiple dimensions of the at least one object are determined based at least on the mapping of each corner point to the corresponding predefined distance and the determined depth information.
2. The system of claim 1, wherein the at least one system processor is further configured to: Masking the one or more color images; and Based on at least one or more masked color images, determine the distance information of each pixel from the focal plane.
3. The system of claim 1, wherein the at least one memory stores instructions that, when executed by the at least one system processor, further cause the system to use a sparse depth map to map a plurality of determined corner points to corresponding predefined distances of the at least one object, and wherein the plurality of corner points includes at least one of length coordinates, width coordinates, and height coordinates.
4. The system of claim 1, wherein the at least one memory stores instructions, which, when executed by the at least one system processor, further cause the system to: Convert the one or more color images into one or more grayscale images; and Based on the one or more grayscale images, decode one or more values of one or more one-dimensional barcodes or one or more two-dimensional barcodes associated with the at least one object.
5. The system of claim 4, wherein the at least one memory stores instructions, which, when executed by the at least one system processor, further cause the system to: Aggregating one or more one-dimensional barcodes and one or more two-dimensional barcodes of the at least one object, along with one or more decoded values of multiple sizes; and Display one or more aggregated values on a display device.
6. The system of claim 1, wherein the at least one memory stores instructions, which, when executed by the at least one system processor, further cause the system to: The plurality of corners are determined by using depth information received from the one or more sensors or by using a deep learning protocol, wherein the deep learning protocol corresponds to a corner detection technique based on a convolutional neural network (CNN), which takes the one or more color images as input and outputs regions corresponding to the plurality of corners.
7. The system of claim 1, wherein the at least one memory stores instructions, which, when executed by the at least one system processor, further cause the system to: Image segmentation is performed on the one or more images to determine multiple edges from the multiple corners.
8. The system of claim 7, wherein the image segmentation is performed by means of the following: Draw multiple imaginary lines on the one or more images to connect each of the multiple angles; Discard one or more intersecting imaginary lines from the plurality of imaginary lines; and The plurality of corners are connected in a counterclockwise or clockwise direction to determine the plurality of sides.
9. The system of claim 1, wherein the one or more sensors include at least one CMOS sensor, and wherein the CMOS sensor includes at least one integrated circuit, the at least one integrated circuit being configured to determine depth information by using object size annotations of a three-dimensional image.
10. The system of claim 1, wherein an adjustable lens is communicatively coupled to the at least one image capturing device, the adjustable lens being configured to fine-tune a plurality of parameters of the image capturing device, wherein the plurality of parameters includes exposure, analog gain and / or confidence threshold, and at least one of a plurality of correction measures, wherein the plurality of correction measures includes illumination conditions, background contrast, reflection reduction, and repositioning of the at least one image capturing device.
11. A method comprising: Capture one or more images of at least one object using at least one image capture device of a scanner; Based on the one or more images, create one or more color image images of the at least one object to obtain pixel information; Using one or more sensors operatively coupled to the at least one image capture device, the depth and distance information of each pixel of the one or more color images are determined, based at least on the pixel information; For at least one of the one or more color images, based at least on distance information for each pixel, determine multiple pixel coordinates for each of multiple corners of the at least one object; For at least one of the one or more color image images, based at least on the plurality of pixel coordinates, determine multiple corner points for each of the plurality of corners of the at least one object; For at least one of the one or more color images, map each of the plurality of corner points to a corresponding predefined distance of the at least one object; and Multiple dimensions of the at least one object are determined based at least on the mapping of each corner point to the corresponding predefined distance and the determined depth information.
12. The method of claim 11, further comprising: Mask the one or more color images; and The distance information of each pixel from the focal plane is determined based on at least one or more images that are masked.
13. The method of claim 11, further comprising using a sparse depth map to map the determined plurality of corner points to corresponding predefined distances of the at least one object, wherein the plurality of corner points includes at least one of length coordinates, width coordinates, and height coordinates.
14. The method of claim 11, further comprising: Convert the one or more color images into one or more grayscale images; and Based on the one or more grayscale images, decode one or more values of one or more one-dimensional barcodes or one or more two-dimensional barcodes associated with the at least one object.
15. The method of claim 14, further comprising: Aggregate one or more one-dimensional barcodes and one or more two-dimensional barcodes of the at least one object, as well as one or more decoded values of multiple sizes; and Display one or more aggregated values on a display device.
16. The method of claim 11, further comprising determining the plurality of angles by using depth information received from the one or more sensors or by using a deep learning protocol, wherein the deep learning protocol corresponds to a corner detection technique based on a convolutional neural network (CNN), the corner detection technique taking the one or more color images as input and outputting regions corresponding to the plurality of angles.
17. The method of claim 11, further comprising performing image segmentation on the one or more images to determine a plurality of edges from the plurality of corners.
18. The method of claim 17, wherein the image segmentation is performed by means of the following: Draw multiple imaginary lines on the one or more images to connect each of the multiple angles; Discard one or more intersecting imaginary lines from the plurality of imaginary lines; and The plurality of corners are connected in a counterclockwise or clockwise direction to determine the plurality of sides.
19. The method of claim 11, wherein the one or more sensors include at least one CMOS sensor, and wherein the CMOS sensor includes at least one integrated circuit configured to determine depth information by using object size annotations of a three-dimensional image.
20. The method of claim 11, further comprising an adjustable lens communicatively coupled to the at least one image capturing device, the adjustable lens being configured to fine-tune a plurality of parameters of the image capturing device, wherein the plurality of parameters include exposure, analog gain and / or confidence threshold, and at least one of a plurality of correction measures, wherein the plurality of correction measures include illumination conditions, background contrast, reflection reduction, and repositioning of the at least one image capturing device.