Patent ID: 12243001

DESCRIPTION

The present invention is directed to, in one general aspect, a system to accurately measure the dimensions, weight, area and volume of freight units to be shipped, and to provide dynamic recommendations on how to adjust the shipping parameters (e.g., dimensions) of the freight units to positively affect the packaging, shipping, and other costs associated with shipping the freight units. The dynamic recommendations could be provided as marginal suggestions. For example, the system may recommend increasing the weight of a freight unit by x pounds, while only increasing the volume of the freight unit by y amount or less, to save z dollars. The z dollars of savings could be calculated based on a rate calculator that uses carrier-specific pricing rules to determine the cost of shipping. Because different carriers might use different pricing rules to determine the total price of transporting or shipping a shipment, the system may also determine when and how much cost to ship the shipment could be reduced by selecting a different carrier for that particular shipment. In this way, the dynamic recommendations of the system may comprise recommended adjustments to the shipping parameters of the shipment and/or freight units in the shipment. The adjusted shipping configuration (e.g., increasing the density of one or more freight units in the shipment) could correspond to a cheaper cost for shipping as calculated based on the applicable carrier specific pricing rule. Such rules may be broadly classified as density-based or class-based rules. The adjustment may also result in a transition in shipping cost/pricing rules, such as the change in shipping parameters resulting in changing the rules to deem the shipment as subject to density-based rules rather than class-based rules. Preferably, the system should determine the adjustment prior to loading the shipment onto a carrier vehicle, so that the user may realize the savings of the adjustment. Carrier vehicles may be box cars, trucks, ships, trains, airplanes, or some other suitable carrier vehicle as desired.

The dimensionalizer system may comprise a measurement system and computer system. More specifically, the system could use an arrangement of sensing devices, which may constitute a measurement system for determining shipping parameters of a shipment. As used herein, a shipment comprises one or more freight units, in which each freight unit comprises one or more goods. The goods could be positioned on top of one or more pallets, if desired. The shipment parameters include dimensional parameters such as weight, height, width, and depth for the freight units. The sensing devices may include one or more lidar depth cameras, rangefinders, and a scale, or some combination or subcombination thereof. The scale could be co-located at the freight site where the shipment is located, or the scale could be located remotely. The range sensors may be various suitable rangefinders such as optical and acoustic rangefinders. Optical rangefinders might include diode lasers, laser emitting diodes (LEDs), lasers, or some other suitable optical energy device. Acoustic rangefinders may be ultrasound range sensors or some other suitable acoustic range device. The rangefinders may be used for improving the determination of the physical characteristics/parameters (shipping parameters) of the freight units as described below.

In particular, the sensing devices can be used to calculate the dimensions of the freight units in the shipment in order to provide real-time feedback on freight to optimize shipments. The sensing devices may obtain calibrated and aligned measurements to determine the shipping parameters, as discussed in more detail below. Thus, the sensing devices operate as part of the measurement system of the dimensionalizer system. The real-time feedback may be received and handled by a computer system in communication with the measurement system. This computer system might comprise a client component (e.g., client computer device such as a mobile smartphone) and a host component (e.g., host computer system). The feedback may comprise adjustments in the shipping parameters of a shipment that may beneficially reduce the cost of transporting/shipping the shipment. For example, the system may determine that changing, such as increasing, the density of the freight units in the shipment could reduce the overall shipping cost of shipping the shipment. To elaborate further, after computing the density of the freight units in the shipment, the computer system use applicable shipment/freight carrier specific pricing rules to determine the estimated shipping cost. The applicable rules could correspond to one or more different carriers, which in turn could be determined based on a client profile in a database of the dimensionalizer system. For instance, the client profile may specify the carriers that the client is willing to use to ship shipments.

Accordingly, when the adjustment comprises a recommendation to increase the density of the freight units, the host computer system could determine that an increase in one or more of weight, height, width and depth (or a change in some other shipping parameter, such as the type of product in the freight unit) to increase the density of one or more freight units is desirable and thus transmit this recommendation to the client computer device. The client computer device could display this adjustment or recommendation such that the client understands the existing recommended adjustments to shipping parameters, freight units, and shipments. As discussed above, if desirable, the freight units may comprise one or more pallets having one or more products/goods thereon. The multiple sensors of the measurement system may work in conjunction to determine multiple physical parameters of the freight unit, including the density, weight, height, length, width, area, pounds per cubic foot (PCF), product class and sub-classes. Collectively, these and other suitable parameters may be referenced as shipment parameters of the freight unit and/or shipment associated with the freight unit. Before the lidar depth cameras and rangefinders initially begin acquiring data to measure and determine the shipping parameters, automated automatic registration, alignment, and calibration may occur. Such registration, alignment, and calibration can also occur throughout the measuring process. Each of the lidar depth cameras, rangefinders and scales may be coupled to a processor (e.g., microprocessor, controller, field programmable gate array, digital signal processor) for processing the acquired data, to determine the shipping parameters, for example. In turn, the processor may be coupled to a memory device (e.g., RAM, ROM) for storing the acquired data.

The system may also include mobile devices (such as laptops, tablets, smartphones, body-wearable devices) for providing a freight management system with a corresponding user interface. In this connection, the client computer device may be a mobile device with a corresponding user interface. For example, the user interface could be provided by a display of the client computer device in order to display an annotated visualization of freight units, in which the annotated visualization indicates a confidence level of the determined shipping parameters. The annotated visualization could be displayed based on images and data captured by a lidar depth camera. The images and data could be calibrated, refined, and registered using the rangefinders. In general, the data used to populate the corresponding user interface may be received from the processor coupled to the sensing devices. The provided freight management system (FMS) may be remote from the sensing devices in various embodiments. That is, the computer system communicatively coupled to the measurement system may be remote from the freight site of the shipment. Thus, the sensing devices can be located at the same location as the freight unit to be measured. The processor coupled to the sensing devices may transmit acquired data and measure shipping parameters of the shipment to the remote FMS, which may be part of the computer system or host computer system. To this end, the processor may constitute or be part of a local work station provided at the freight unit/shipment site to communicate with the FMS. The local work station may act as a local hub for communicating with the remote FMS via a suitable application programming interface (API). In other words, the local work station can route requests between the sensing devices and the remote FMS, which may be part of the computer system or host computer system.

The measurement, data, and determined shipping parameters are useful for storage and tracking of the freight units/shipment. Additionally, the remote FMS may be able to provide real-time recommendations regarding the freight unit configuration. In particular, the remote FMS may recommend different freight types (e.g., different classes of products) and standard inventory to be included in freight units as well as other adjustments to determined shipping parameters, in order to optimize the shipment of the freight units. For example, the remote FMS could recommend changing the density (which could be the total density of the shipment or individual density of a subset of freight units and can be measurable in pounds per square foot (PSF)), or reducing the number of freight units in a shipment from 4 pallets to 3 pallets for example, and/or adding sand (or some other dense, cheap material) to one or more freight units in the shipment in order to increase the corresponding density, which may reduce the overall shipping cost under the corresponding density-based rules used to determine shipping rate. In some situations, the recommended adjustment may be sufficient to trigger a different pricing rule. That is, the recommended adjustment might cause the corresponding carrier to switch from a class-based to a density-based pricing rule. Preferably, under the applicable pricing rule, the total shipping cost of shipping the shipment after the adjustment is lower than prior to the adjustment.

In sum, the dimensionalizer system comprises a layered technology framework that captures freight weight, dimensions, and other shipping parameters accurately. In this way, human error or manual intervention can be minimized and freight can be appropriately classified (e.g., under applicable shipping carrier classifications) so as to avoid unexpected freight charges. This precise and accurate information (e.g., capturing the images and dimensions of the freight units in the shipment) may be transmitted to the FMS, which can make recommendations on cost effective shipping alternatives for the corresponding class of freight. Dynamic recommendations may be provided based on freight site profiles. The freight site profiles could specify various preferences of the client seeking to ship the shipment. For example, the preferences could include: two different products/goods should generally be included in the same freight unit or shipment, a shipment should generally include x number of freight units, one or more particular carriers are preferred carriers with preferable client specific pricing rules, or other suitable preferences. The client/freight site profiles may be stored as database profiles in a database of the dimensionalizer system. The database may be maintained by one or more of the processor, local work station, or computer system. Specific on-site client shipment/freight unit information such as particular shipment type and additional shipment bandwidth, including both supply and distribution needs, may be incorporated so that customized dynamic adjustments or recommendations are generated according to the relevant database profile. Information from the dimensionalizer system can be used for real-time recommendations to optimize the shipping decision making process, including maximizing efficiency and minimizing cost. In this way, the computer system can provide live feedback and recommendations on the shipment.

The combination of multiple sensing devices/platforms and equipment in the measurement system may be beneficial for achieving greater accuracy. That is, the combination of lidar depth cameras, rangefinders (e.g., laser diode and ultrasound), and scales obtains accurate measurements. Additionally or alternatively, the sensing devices monitor equipment operation and status states. For example, the sensing devices, in conjunction with the computer system, can determine when the shipping parameters are determined, when the freight units of the shipment are loaded into the carrier vehicle, and an error status of system components. Freight units can have a class according to a freight classification such as the National Motor Freight Classification (NMFC) or some other shipping carrier specific classification, which may include density-based classes. Accurately determining the NMFC of products and/or freight units is critical to proper classification and pricing of a shipment. If freight falls under a density-based NMFC, it is critical that the freight is accurately measured and weighted. The measurements from the multiple sensing devices can ensure accurate pricing is obtained by applying the appropriate sub-class within the NMFC. As a result, real-time decisions can be made on shipment capacity, options, shipment configuration, and pricing. This real-time support may be provided prior to shipping the shipment. The dimensionalizer system may avoid manual calculation of dimensional weight, which can be time consuming and error prone. Errors in calculated dimensions could cause additional carrier charges if reclassification occurs.

Therefore, the present invention relates to the use of sensing devices and a computer system to accurately measure the dimensions, weight, area, volume, and other shipping parameters of freight units and associated shipments in order to provide dynamic recommendations. Such recommendations include how to effectively maximize the amount of packaging in a shipment as well as minimizing the shipping and other costs associated with transporting the shipment of freight units.

FIG.1is a top view100of the sensing devices in the measurement system used to determine the dimensional and other shipping parameters of a freight unit in a shipment, according to various embodiments of the present invention. The system may also comprise a scale to measure the weight of a freight unit, as described in further detail below. This scale could be at the same or remote location relative to the freight unit. As shown inFIG.1, the sensing devices may include a plurality of depth cameras102A-102E and range sensors. The range sensors may comprise suitable rangefinders such as optical and/or acoustic rangefinders. The optical rangefinder104could be a laser diode rangefinder while the acoustic rangefinder could be an ultrasound rangefinder106. The depth cameras102A-102E are designed to capture both video and photos of the freight units being measured. Upon determining the measurements and shipping parameters, the system may annotate the photos of the freight units with the measurements and shipping parameters. The client computer device may display this as an annotated visualization on its display and the annotated visualization could indicate a confidence level of the measurements and shipping parameters. AlthoughFIG.1depicts only optical rangefinder104and one acoustic rangefinder106, more than one optical rangefinder104and more than one acoustic rangefinder106could be included as sensing devices. The sensing devices can be mounted on an overhead frame604, such as shown inFIG.6. The overhead frame604may function as a mounting mechanism for the sensing devices of the measurement system.

The overhead mounting frame604is supported by multiple (e.g., 4) vertical support beams608A-608D. The plurality of overhead support beams may define a space underneath. In this space, one or multiple freight units of a shipment may reside for measurement. If the space is sufficiently large, a carrier vehicle may be positioned within the space if desired as well. Also, the scale could be placed at the bottom portion of the space (ground surface) so that the freight unit(s) resides on top of the scale for measuring when the system is active. The overhead frame604may include a central bar606on which the central depth camera102E, optical rangefinder104and ultrasound rangefinder106are mounted. As such, the sensing devices may be organized in a “pavilion” configuration. The sensing devices may be aligned on the innermost section of the overhead frame604. Based on this overhead frame604, each of the devices may be aligned overhead of the ground surface on which the freight unit602is placed. For example, the sensing devices may be at a suitable height relative to the ground surface, such as 9-11 feet.

In one embodiment, the sensing devices are all at the same height level. The freight unit602to be measured is placed on the ground surface under the central depth camera102E and within the field of view of the surrounding cameras102A-D. In this way, each of the lidar depth cameras102A-102E may be downward facing or pointing cameras and mounted on a support beam608A-608D such that the freight unit602is within the field of view of each camera102A-102E. The scale could be located in the same location where the freight unit602is placed under the overhead camera102E, or the scale could be located remotely from the frame604. The freight unit602may be weighed before or after the other dimensions and shipping parameters of the freight unit602are measured/determined. The overhead frame604may be shaped as a cube or any other suitable shape. The various sensing devices should be arranged on the frame604so that they do not block each other's view of the freight unit602.

A freight unit602may be loaded on a scale (not shown inFIG.6) beneath overhead depth cameras102A-102E, optical rangefinder104and ultrasound rangefinder106and in the space defined underneath the support beams608A-608D. As shown inFIG.1, the depth cameras102A-102E are mounted in the center and on each side of the overhead frame604. The five depth cameras102A-102E are used to measure, photograph, and take videos of the freight units/shipment. The side depth cameras102A-102D may be positioned at 90 degrees intervals around the freight unit602. In this way, the center depth camera102E may be located directly overhead of the scale while the side depth cameras102A-102D may each be located on a different side of the scale. Also, the side depth cameras102A-102D may each be an equal distance apart from the center depth camera102E. The optical rangefinder104and ultrasound rangefinder106may be mounted on overhead frame604adjacent to the central overhead camera102E to measure the height of the freight unit602. All measurements from the sensing devices are obtained and used in conjunction to determine a more accurate measurement. The optical rangefinder104and ultrasound rangefinder106may be used to monitor the status and accuracy of the cameras102A-102E and the state of the processes. Weight can be obtained from the scale and transmitted via serial communications to the local work station706(seeFIG.7) of the dimensionalizer system. The local work station706is communicatively coupled to the scale (e.g., via an application programming interface) and may initiate a request to the scale for the weight. The local work station706acts as a local communication server between the local devices (e.g., measurement system, client computer device) and the remote systems (e.g., host computer system).

According to some non-limiting aspects, one or more of the depth cameras102A-102E can include a LIDAR (Light Detection and Ranging) camera, which can include both an RGB camera and a LIDAR sensor to collectively visualize environments, such as the spatial volume of a subject freight, in three dimensions. For example, according to some non-limiting aspects, one or more of the side depth cameras102A-102D can include an Intel® RealSense™ camera, such as an Intel® RealSense™ L515 lidar depth camera, or any comparable product. According to some non-limiting aspects, the LIDAR cameras102A-102D can include an infrared laser and a Micro-Electro-Mechanical System (MEMS) scanning mirror to scan the light the from the laser across the FOV of the LIDAR camera. The LIDAR camera also comprises a photodiode to sense the light that is reflected back to the photodiode. The LIDAR cameras can also include a red, green, and blue imager, a controller, and/or a vison circuit (e.g., an ASIC). For example, the MEMS gyro mirror can be configured to scan the laser over a predetermined field-of-view (FOV). The vision circuit can be configured to process data from the reflected laser, as captured by the photodiode, and can generate a point cloud representing the accurate distance of points in the scene in the FOV of the camera. The dimensionalizer system can subsequently aggregate the point clouds generating by the multiple LIDAR cameras102A-102D around the scene to generate 360-degree 3D model of the scene, including the freight unit602. This 3D model can be used to determine the dimensions and volume for the freight unit, which are important in determining the shipping costs as explained herein.

FIG.10is an exploded view of a lidar camera102according to various embodiments. The RGB camera and an inertial measurement unit (IMU) can be mounted to a front circuit board16behind a front cover15. The IR laser and MEMS scanning mirror can be counted to a second circuit board18. An ASIC board20can include the vision circuit (e.g., ASIC). The assembled components can fit into a base22.

The LIDAR cameras102A-D can be implemented by the system to generate depth video streams, which are similar to color video streams, except that each pixel has a value representing the distance away from the LIDAR cameras102A-D instead of color information. Thus, the depth cameras102A-E can collectively provide the dimensionalizer system with an accurate 3D representation of the subject freight. The LIDAR cameras102A-102D can include one or multiple channels (e.g., 2 to 16 channels), or lasers, for greater resolution. For example, according to some non-limiting aspects, each LIDAR camera102A-102D can include eight channels, although this number can be increased for applications that require sensing at a higher resolution.

Additionally, each of the LIDAR cameras102A-102D should be configured to sense objects within a desired FOV. For example, the FOV of each LIDAR camera102A-102D describes the angular extent of a given scene that is imaged by the LIDAR camera102A-102D, as determined by the MEMS gyro mirrors or any other scanning mechanism for the laser. A camera's FOV can be measured horizontally, vertically, or diagonally. According to the non-limiting aspect ofFIG.1, each of the side LIDAR cameras102A-102D can include at least a 90 degree FOV. As such, each LIDAR camera102A-102D can be implemented to generate a separate point cloud for its respective perspective of the freight unit, which separate point clouds, spaced, for example, at 90 degree intervals around the freight unit, can be combined or merged to generate a 360 degree three-dimensional model of a pallet within the spatial volume of a subject freight. According to other non-limiting aspects, the one or more side depth cameras102A-102D can be used in conjunction with corresponding LIDAR cameras, which can be used to supplement the sensing performed by the one or more side depth cameras102A-102D, themselves. Thus, the lidar-based 3D model can be combined with the camera images to generate an improved three-dimensional model.

The local work station706may comprise two components, including a TCP connection and a listening TCP server. The TCP connection establishes and enables a shared pointer. The TCP connection can be kept alive via shared pointer. Initialization of the communication between local devices (e.g., mobile computer device) and remote systems (e.g., FMS) to a client may be achieved via a port. A socket can be created and used to initiate an asynchronous accept operation to wait for a new connection. Subsequently, a block of data may be sent to the client, which the client receives asynchronously. The TCP server is programmed to keep the TCP connection alive via shared pointer. In addition, the TCP server can initialize an acceptor to listen on a TCP port. Thus, the asynchronous accept operation is initiated, the client request is then serviced, and the system prepares for the next operation. The data may be served to the client via asynchronous operations that provide the arguments in the handler parameter list and prepares the data for the client such as the client computer device.

The dimensionalizer system may comprise numerous major hardware and software components such as: a weighing component, a dimensioning component, applications running on a mobile device (e.g., a tablet and mobile phone), a freight unit image processing component, an Application Programming Interface (API), a registration component, and a database profile component. The weighing component may obtain the weight electronically via serial port from a standard scale704(e.g., a National Type Evaluation Program (NTEP) scale), which is shown inFIG.7. The dimensioning component comprises the multiple sensing devices (e.g., depth cameras and rangefinders), which are used to calculate the dimensions of the freight unit602, including height, length and width. The dimensioning component could also be referred to as the measurement system. In particular, the measurements obtained from depth cameras102A-102E may be refined with the range data from the optical rangefinder104, and further refined with the range data from ultrasound rangefinder106to obtain more accurate measurements. When no freight units602are located on the scale, a calibration function of the system may be triggered. That is, the scale704can be zeroed or normalized so that the weighing component may obtain accurate weight measurements.

The mobile device applications may be used to capture bill of lading (BOL) and freight information from a subject freight unit602, such as by controlling a code reading component of the corresponding client mobile device. As discussed above, the client computer device is not limited to mobile devices. A subject freight unit602may have a QR code, bar code, or some other suitable optical machine readable code storing freight characteristics and other freight information such as freight unit class and identifying information. Accordingly, the mobile device may comprise a QR or bar code reader, etc. to read this information. Also, the mobile device could capture this information via manual entry. The client mobile/computer device may execute an application to capture BOL information using a means such as one of the approaches discussed above. Upon capture of the BOL information, the client computer device may trigger the measurement system to determine the shipping parameters of the shipment, such as by transmitting a signal to activate the sensing devices. The function of the client device is described in more detail below with reference toFIG.2. The freight unit image processing component is described in more detail below with reference toFIG.4. The API may be used to create a BOL or update an exiting BOL. Also, the API is usable to transmit the measurements and/or shipping parameters, including length, width, height, and weight, to the remote FMS710. The API could also transmit the images or other visualizations of the freight unit602(e.g., shown inFIG.4) to the FMS, which may be advantageous for insurance claims. The registration component registers, aligns, and calibrates the output of the sensing devices, as discussed in further detail with reference toFIG.7.

The database profile component stores client/freight site profiles, which may specify information such as corresponding freight site characteristics, shipping and client preferences, freight metrics, and other information for dynamically determining recommended adjustments by the computer system. Each profile in the database may describe client product inventory and freight metrics. The inventory information and freight metrics are received and analyzed by the FMS when the corresponding bar code (or other identifying data) of the freight unit is scanned (or otherwise input). Freight metrics may include product class, sub-classes, and applicable pricing rule information for the goods/products that comprise the freight unit602. Freight metrics may also include estimates or preferential ranges of shipping parameter values such as density, weight, height, length, width, area, and pounds per cubic foot. The FMS or dimensionalizer system can use the scanned data from the client profiles in the database to make real-time cost savings recommendations on the shipment. In particular, present and historical information can be used to calculate the costs of shipment and lost savings (e.g., opportunity cost) based on the freight class. This prospective recommendation provides real-time recommendation based on the current shipment and previous shipments. The computer system may determine adjustments to shipping parameters to provide a dynamic profile of client options for freight shipment. The dynamically determined adjustments/recommendations can change over time to track the real-time status of the efficiency and costs of the distribution and shipment.

FIG.2shows a mobile computing device200that may be used in the dimensioning process, according to various embodiments of the present invention. The mobile computing device200may be a mobile phone (e.g., an iPhone or Android device), tablet (e.g., iPad), or some other suitable handheld computing device, including a laptop computer. The mobile computing device200is an example of a client computer device of the system, as discussed above. More than one mobile computer device200can be provided when appropriate or desired. The mobile computing device may send a trigger to the sensing devices708to start the dimensioning process. The process includes taking photos from the top and four side angles of the freight unit702by the depth cameras102A-102E. Simultaneously, the optical rangefinder104and ultrasound rangefinder106may take measurements (e.g., of distance) for determining shipping parameters such as length, width and height of the freight unit602(seeFIG.6) while, before, or after the weight of the freight unit602is measured using the NTEP scale704. As shown inFIG.2, the dimensioning process performed by the system may be triggered by a user selecting the dimensionalize icon202of a user interface provided by the display of the mobile computing device200. This interface could be rendered according to a mobile app executed by the mobile computing device200. The dimensionalize icon202can be a graphical user interface (GUI) button.

Selecting the dimensionalize icon202may also result in determining and displaying the dimensioning status and completion/error statuses. Statuses could include an indication that the determination of a shipping parameter is complete or that a depth camera102A is malfunctioning, for example. The mobile computing device200can be used to trigger the operation of all sensing devices, interfaces, and communication (internal and external) of the dimensionalizer system. To start the performance of the dimensioning process, the user should input identifying information such as BOL number or the name of a shipment. To this end, the display of the mobile computing device200may include a select BOL input field204and a shipment name input field206. The user could type in the relevant BOL number at the select BOL input field204and shipment name at the shipment name input field206. Additionally or alternatively, the user could provide the identifying BOL number and/or shipment name by drop down menu or some other suitable user-interface selection/input means. Alternatively, as discussed above, the system may commence the dimensioning process upon capturing, by the client computer device, BOL information via an optical or other code such as QR code or bar code. Freight unit specific parameters such as BOL or freight name could also be obtained by the code.

Moreover, the mobile computing device200could use voice control to verbally receive the user's input information. Each display also can have a stackable toggle button208indicating whether the freight unit is stackable. Whether the freight unit is stackable may alter the determination, by the computer system, of the recommended adjustment to the shipping parameters. For example, when a freight unit is nonstackable, this may act as an additional constraint against an otherwise more desirable reconfiguration of the freight units in the shipment carrier vehicle. The mobile computing device200communicates to the local work station706, e.g. wirelessly (e.g., a WiFi network). Furthermore, the work station706can be in communication with the sensing devices708, the scale704and/or the FMS710via the API. That is, the work station706may communicate with the host computer device and client computer device via the API. Other parameters associated with an identifying BOL number or shipment name may be freight specific parameters or how the freight can be transported (e.g., maximum density of freight unit as measured in pounds per cubic feet (PCF), maximum area, whether the freight unit is stackable).

The shipping parameters such as density (e.g. PCF) and area may be calculated based on the received measurements from the sensing devices. The local work station706, mobile computing device200, and/or host computer system may determine shipping parameters such as the dimensions and density of the freight unit based on the measurements from the sensing devices. In addition, the local work station706could be programmed to combine point cloud threads from the depth cameras102A-102E in order to determine a composite point cloud for the freight units in a shipment. The composite point cloud can combine the individual point cloud threads based on the measurements from the rangefinders (e.g., rangefinders could be used to calibrate and align the depth cameras102A-102E so as to determine which point clouds from which depth camera should be used for each particular angle or portion of the 3D model). In this way, the computer system may determine the height, width, and depth of the freight units in the shipment based on the composite point cloud.

FIG.3shows a screenshot300of a mobile computing device200with a display including a dimensionalize icon208, select BOL input field204and a shipment name input field206; two sample selected BOLs302a,302b, and a product information screen304, according to various embodiments of the present invention. The screenshot300illustrates shipment name information and freight product information for shipment, which comprises one or more freight units602. The mobile computing device200on the left portion of the screenshot300is a similar screen as that described inFIG.2. In the screenshot300, the display of the mobile computing device200has a drag-and-drop select BOL input field204menu GUI icon and a shipment name textual input field206GUI icon. Accordingly, the mobile computing device200user may choose an associated BOL of a subject shipment based on using either of the GUI icons204,206. In this connection, the sample selected BOL302ahas data fields indicating a BOL number is 123456789, shipper is ABC company, consignee is 123 company, and date is Jan. 1, 2018. This selected BOL302amay when the user drags down the select BOL menu214to find the desired BOL number.

Similarly, when the user types in the desired shipment name, the mobile computing device200and/or host computer system may retrieve the corresponding shipment information and cause the mobile computing device200to display sample selected BOL302b, which indicates shipper is ABC company, consignee is 123 company, and date is Jan. 1, 2018. The sample selected BOLs302a,302bcould function as shipping labels for the shipment. Also, instead of the user inputting or selecting such shipment information, the shipment information could be prepopulated into data fields of the app executed by the mobile computing device200. The user can also touch the dimensionalize icon208to cause the system to determine shipping parameters, such as freight unit dimensions and weight. Alternatively, the user can use a voice control functionality of the mobile computing device200to start the dimensioning process. The BOLs and shipping labels might be transmitted to and/or stored by host computer system via the API from the mobile computing device200when the user is inputting the shipment information. Alternatively, the shipment information could be retrieved from the host computer system via the API. The API may support the interface to the FMS via API RESTful calls to create or update a BOL. The product information screen304may be the screen that appears when Product Information512banner (shown inFIG.5) is expanded. In the product information screen304, the user may input initial shipping parameter and other freight/product information such as stackable nature, dimensions, product type, class, etc.

FIG.4shows a visualization400of a freight unit602generated by the freight unit image processing component according to various embodiments of the present invention. The visualization400may be generated by the work station706based on the images of the freight unit602captured by the depth cameras102A-102E. In the example ofFIG.4, the visualization400is the image of the freight unit602captured by the overhead depth camera102E. This visualization can be annotated to show determined shipping parameters such as the length and width of the freight unit602, as shown inFIG.4. Annotated freight parameters also include height, weight, PCF and area of the freight unit602. Also, the annotated visualization could indicate a confidence level (not shown) of the determined shipping parameters. The visualization400may be transmitted by the work station706to, and displayed on, the mobile computing device200to graphically illustrate the freight unit602being measured. When the visualization400is annotated, details of various shipping parameters are depicted. The measured length, width, height, and weight can be used to calculate the density as measured in PCF and area of the freight unit602. As shown inFIG.4, the freight unit/shipping parameters may be displayed on the top right corner402of the visualization400. The shipping parameter measurements, photos, and video of the freight unit602are captured by the sensing devices and transmitted. The captured data can be transmitted to the mobile computing device and be stored, such as in the database profile component. The stored video could be used to optimize workflow efficiency recommendations. The photos of the freight unit302may also be used for insurance claims as supporting documentation of the condition of the freight unit602before shipping.

Moreover, the visualization400may show the weighted value and confidence value of the measurements by the sensing devices. As discussed above, the photos are captured from the depth cameras102A-102E. The dimensionalizer system may be programmed to capture one video file of the freight unit and five photos (from top central camera102E and from each of the four sides corresponding to depth cameras102A-102D). That is, the depth cameras102A-102E may be programmed to capture both video and photos and to apply measurements to the photos, such as for annotation. One of the images, such as the overhead camera image, or an aggregation of several images, may be obtained and annotated with the measured freight dimensions and/or shipping parameters, as shown inFIG.4. This information can be critical for processing insurance claims. Thus, the freight unit image processing component supports the visual display of the visualization400on the display of the mobile computing device200.

FIG.5illustrates the GUI500for creating or updating a BOL, according to various embodiments of the present invention. The BOL GUI500may be displayed by the mobile computing device200and the data captured by it transmitted to the work station706, which communicates with the remote FMS710and/or mobile computing device200via the API (e.g., API RESTful calls) to create or update a BOL. Communication to the API can be established via an API key, with authentication. This call passes a video, images, and the parameters associated with the freight/BOL to the Transportation Management System (TMS)712shown inFIG.6. In various embodiments, the GUI500can be a web page served by a web server702to a customer or client such as on the mobile computing device200display, so that the client user can input parameter values for shipping a freight unit602, view shipping rates for various shipping carriers as computed by the FMS, select a desired carrier based on displayed rates, and perform other desired functions relevant to shipping the shipment. The web server702may be in communication with the remote FMS710. The web page could be displayed by the mobile computing device200or any other suitable mobile, desktop, or other client computer device that can access the web server702via the Internet or other suitable network. As shown inFIG.5, the BOL entry screen has multiple banners including Load Entry502, General Information504, Shipper Information506, Consignee information508, 3rd Party Billing Information510, Product Information512, Carrier Selection514, Special Information516, and Upload Files518.

The banners may be collapsible and expandable according to the user's preferences. Under the Load Entry502banner, history information, BOL identification number and the status of the loaded BOL may be displayed in a text field. Additionally or alternatively, this information may be selectable via a GUI user input means such as a text box, drop down menu, or other GUI icon for the user to input the corresponding data. The other banners General Information504, Shipper Information506, Consignee information508, 3rd Party Billing Information510, and Product Information512are expandable but shown as collapsed inFIG.5. Carrier Selection514includes a least cost carrier (LCC) option and a manual option. Files such as the videos or photos described with reference to the visualization400inFIG.4could be uploaded via drag and drop, for example, in the image upload component520under the Upload Files518banner. Different orientations of the visualization400are selectable and other suitable videos and photos can also be uploaded. The BOL GUI500may be rendered on the display of the mobile computing device200. More details regarding the BOL GUI500can be found in U.S. Pat. No. 9,747,578, issued Aug. 29, 2017 (hereinafter, “the '578 Patent”), which is hereby incorporated by reference in its entirety.

FIG.6is a schematic600that shows the sensing devices mounted on an overhead mounting frame604, according to various embodiments of the present invention. As discussed above, the overhead depth cameras102A-102E, the optical rangefinder104and the acoustic rangefinder106(e.g., ultrasound rangefinder106) may be aligned about the overhead frame604. That is, all of the sensing device may be at the same height level. Additionally, the rangefinders and overhead downward-point central camera102E may all be mounted on the central bar606. Specifically, the rangefinders may be adjacent to the central camera102E such as the optical rangefinder104on one side of the central camera102E and the acoustic rangefinder106on the other side of the central camera102E, as shown inFIG.6. The overhead depth cameras102A-102E, capture photos and/or videos of a subject freight unit602placed under and within the field of view of the cameras. Each of the overhead depth cameras102A-102E may function by using point cloud library (PCL) threads (e.g., Intel® RealSense™) such that each depth camera102A-102E generates a point cloud thread, for a total of five threads across the five cameras102A-102E. The five threads may be joined together by threaded pipeline of the work station706.

To obtain the PCL threads, point clouds may be obtained from each depth camera102A-102E. The points of the point clouds are converted to PCL to obtain the width, height, position of the vertices, and the texture coordinates. The threaded pipeline is used for multithreading each PCL thread. The overhead depth cameras102A-102E and/or the work station706may then perform post filtering, point cloud transformation, and PCL point cloud filtering on the images collected by the cameras102A-102E. Based on this processing, the overhead depth cameras102A-102E and/or work station706can generate a transformed, filtered point cloud. The transformed point cloud may be a composite point cloud generated based on determining which points of the individual point clouds should be included in the composite, for example. This process may be facilitated by using the range data from the rangefinders to calibrate the cameras and determine which camera should be the source of which portions of the composite point cloud. The stream depth of the color and depth can be aligned via autoexposure.

The post processing may be initialized to reduce the depth frame density, perform edge-preserving spatial smoothing, reduce temporal noise and perform depth to disparity transformation to improve spatial and temporal filtering. The color frame may be aligned to depth frame. Also, the color frame can be mapped to the relevant point cloud. In general, filtering includes removing unwanted objects in the view of the sensors. At the end of this processing, a video and multiple photos may be generated and saved for end of processing API transmission. The point cloud transformation may be processed to the center depth camera102E. In particular, steps may include: the point cloud is stored into a grid to down-sample based on the leaf size, points are cropped within a box, rotation and translation is performed based on depth quality, and the red green blue (RGB) color frame format is transformed to hue saturation value (HSV) format. The points can be filtered according to the color information for a known predetermined exclusion filtering threshold. Subsequently, statistical outliers may be determined by calculating the average distance of each point from other points (MeanK). In this way, points outside the standard deviation threshold are removed.

The image from the center camera102E can be used to project 3D points to 2D by removing depth information and normal projection and by using camera intrinsics projected from the central camera102E. The obtained weight for the freight unit602from the scale704can be applied to the 2D image. The work station706may combine the point clouds from all five cameras102A-102E to generate a composite point cloud for the freight unit602, from which the dimensions and other shipping parameters of the freight unit602are determined. In this way, the initial length, width, height information for the freight units602from the center camera can be obtained. Subsequently, the dimensionalizer system may confirm all information from edge cameras102A-102D to validate and correct center measurements. The edge camera data can be used to confirm the central camera102E measurements. Then, the information from the optical and ultrasound rangefinders104,106can be applied, respectively, for further validation.

The downward facing overhead depth cameras102A-102E may determine the maximum number of similar iterations to control the processing multiple times. Transformation validation may be used to check the percentage of overlapping surfaces of multiple point clouds. The coordinates of the number of overlapping regions may be assessed to determine if the surfaces of the point cloud are consistent. Coarse alignment may be performed via descriptor matching. That is, using 3D keypoints, aligned points may be extracted from multiple clouds by matching associated descriptors. The three dimensional (3D) image can be analyzed to find the corners of the freight unit602in the images. Specifically, correspondence rejector surface normals are used to reject points where normals exceed a predetermined threshold. Furthermore, points are also rejected if they are erroneous points that seem similar such that they are duplicative, for example, or if they seem to be points beyond boundary points. Correspondences can be based on points on the surface boundaries. Termination criteria (when iterations stop using default convergence criteria) can be defined as one or more of the following: a maximum number of iterations set, an absolute transformation threshold, and termination when current estimated transformation exceeds all set thresholds. Keypoint descriptors may include: spin image descriptor, best point feature histogram descriptor, shape context 3D descriptor, unique shape context, shot estimation, ransac (random sample consensus) algorithm used to filter outliers for bad descriptor correspondences.

Based on the point clouds and the processing described above, the height, other dimensions and/or other shipping parameters of the freight unit602may be initially determined by the overhead depth cameras102A-102E. The processing described above may be used to achieve a coarse alignment and calibration of the multiple depth cameras102A-102E. As described in further detail below, the optical rangefinder104(which may measure height of the freight unit but not at the resolution of the depth cameras102A-102E) may be used for more precise alignment, calibration, and registration of the depth cameras102A-102E. That is, the optical rangefinder104may double check the height determined by the depth cameras102A-102E via LIDAR with pulsed LED and/or laser light. The ultrasound rangefinder106may be used for a similar function as the optical rangefinder104, but perform the function based on sonar. An automatic registration, alignment, and calibration of the cameras102A-102E, the optical rangefinder104, and ultrasound rangefinder106may occur at startup of the dimensionalizer system. This may be performed by the registration component. Alignment of the depth cameras102A-102E, optical rangefinder104, and ultrasound rangefinder106advantageously may improve the accuracy of the corresponding measurements. Furthermore, the computer system may receive a signal from the mobile computer device200to trigger measurement by the sensing devices of the measurement system.

The registration component may be used to recognize and test the alignment of all components. The registration component also can assign the area of most confidence and weighted values for confidence when applying the measurements. This determines the scope of view for each component. In this way, the sensing devices are automatically aligned to accurately measure the freight. The registration process by the registration component can also be used to reduce error margins. For example, in a panoramic view, the overlap between individual overhead depth cameras102A-102E should be hidden. The specific sides and angles measured by the depth cameras102A-102E can be considered in conjunction so that the registration component determines which camera is the correct or appropriate camera for a particular side or angle. The LIDAR and sonar range data outputs from the optical rangefinder104and ultrasound rangefinder106, respectively, may be used in this determination.

The optical rangefinder104, as shown inFIG.6, may use LIDAR to measure distances and other dimensions of the subject freight unit602. Preferably, between one to four optical rangefinder104are provided, but other numbers of optical rangefinder104are also possible. The optical rangefinder104can obtain numerous range data/measurements. The range data of the optical rangefinder104can be used to confirm and refine the results provided from the depth cameras102A-102E. Also, the optical rangefinder104can determine the 3D spatial volume of the subject freight unit602and assign a confidence level to the information obtained or determined. Furthermore, the ultrasound rangefinder106, as shown inFIG.7, may use sonar to measure distances and other dimensions of the subject freight unit602. Preferably, between one to four ultrasound rangefinders106are provided, but other numbers of ultrasound rangefinders106are also possible. These measurements/range data of the ultrasound rangefinders106are used to confirm and refine the results provided by the depth cameras102A-102E and optical rangefinder104. The ultrasound rangefinders106can determine the spatial volume of the freight unit602and assign a confidence level to the information obtained. As discussed above, confidence levels or values can be used in the annotated visualization400. The volume and measurement data and the confidence level can be used in conjunction to obtain more accurate measurements of the freight unit602.

The dimensionalizer system can be self-monitoring. For example, if there is a defect or deficiency with an optical rangefinder104, the dimensionalizer system may self diagnose this issue. Accordingly, the dimensionalizer system may activate or insert standby/backup equipment and/or identify what component of the malfunctioning optical rangefinder104needs to be replaced. In this way, the dimensionalizer system advantageously is programmed to address such issues without manual intervention. Moreover, the dimensionalizer system may monitor the status of all local devices and perform system checks when the system is in an idle mode. The remote monitoring of the dimensionalizer system also can include triggering a calibration function. The ultrasound rangefinder106may be used to detect when nothing is on the scale704so that the calibration function can be triggered. For example, when the ultrasound device106detects nothing is positioned on the scale704, the calibration function can be triggered to verify whether the depth cameras102A-102E are aligned properly (e.g., if the camera angle has changed). The periodicity of this calibration verification can be some appropriate interval such as every five minutes, every half hour, or some other suitable time period. The self-monitoring dimensionalizer system can also constantly check whether communications between various components of the system are still operating properly.

The real-time freight decision support system database may perform self-checks during idle time when nothing is on the scale704. The self-checks can be performed according to periodic intervals as described above. The ultrasound rangefinder106is able to determine when nothing is present on the scale704as well as receive confirmation from the scale704before processing that the weight is at zero. For example, the self-checks can be camera distance checks. Specifically, the system may verify that the distance from the floor and camera angles have not changed in relation to prior checks and/or the initial setup check. The self-checks can also include verifying that communications between various components of the system is operational and that the sensing devices are mounted at the appropriate location. Also, the self-checks can include automatic calibration.

FIG.7is a diagram of the dimensionalizer system700according to various embodiments of the present invention. As shown inFIG.7, the mobile computing device200and the scale704(weighing component) are both communicatively coupled to the local work station706. The local work station706may execute software for communicating and transmitting information to a remote component of the system such as remote freight management system (FMS)710. In this way, the local work station706is a local hub for the dimensionalizer system. Communication between the local work station706and remote FMS710occurs via an API coordinated by the local work station706. The local work station706may receive all outputs from the sensing devices and calculate measurements based on the outputs while considering confidence levels and weighted values. The local work station706may transmit a variety of outbound information, which may include: (1) parameters, triggers, and status from the mobile computing device200; (2) weight from the scale704; and (3) measurements, confidence level, and weighed value from the sensing devices708. Also, the local work station706can provide live feedback and shipment optimization recommendations from the remote FMS. As discussed above, the sensing devices708comprise overhead depth cameras102A-102E, optical rangefinder104and ultrasound rangefinder106. The remote FMS710may obtain freight information from the transportation management system (TMS) database712, which may enable the FMS710to store and track the freight.

The real-time freight decision support system714supports the remote FMS710in making real-time recommendations on the optimization of shipments based on freight type and standard inventory. The recommendations may be based on local optimization or global optimization. Local optimization refers to optimization of a particular freight unit or shipping container while global optimization refers to optimization of a shipper's total or aggregate product to be shipped. In global optimization, the total number of freight units in a shipment may be considered to lower the cost of shipping the shipment. For example, the computer system may recommend changing the number of freight units in a shipment while considering the remaining number of freight units to be shipped in other shipments so that total cost of shipment may be reduced. Accordingly, the computer system could recommend moving some number of freight units from one shipment in a first carrier vehicle to another shipment in a second carrier vehicle so that the combined or total cost of shipping is reduced. More specifically, the computer system might recommend changing the content of particular freight units so that more of the freight units in a particular shipment become density-based or product-class based or so that a particular carrier vehicle or entire total shipment receive treatment under a certain carrier classification for calculating shipping costs. Whether a freight unit or shipment should be adjusted to become density-based or product-class based may depend on the associated treatment under the applicable carrier pricing rules and whether this treatment would result in reduced shipping costs. In this connection, the computer system may consider that various types of density classes are cheaper than other different density classes and similarly, various types of product classes are cheaper than other different product classes. The recommended adjustments may be provided in real-time to the mobile computing device200.

The mobile computing device200formats the API response by passing all parameters associated with a new or existing BOL, which may be input by the user as described above. The parameters may include an indicator for stackable or unstackable freight (impacts the PCF), PRO number, PO number, BOL number, any reference number or user defined name to freight, status, warehouse, direction (e.g., outbound/prepaid), custom dates, units, products, pieces, type (e.g., Pallet), class, length, width, height, weight, group, nmfc, sub_nmfc, hasmat indicator, un_num. The mobile computing device200may accept the BOL from manual data entry or via scanning of a bar code or QR code. The FMS710, TMS712and/or real-time freight decision support system714can be part of the computer system, such as part of the host computer system. Communication to the API is established via an API key, with authentication. This call passes a video, images, and the parameters associated with the freight/BOL to the TMS712. Real-time feedback/recommendations for shipping optimization can be sent back to the local system from the Freight Decision Support System714. Results may be stored in the remote freight management system710for prospective and retrospective analysis and reporting.

As described above, the weight of the freight unit can be obtained from the scale704. The local work station706communicates with the scale704to obtain information via serial communications. The serial communication parameters can be initially set before the local work station706connects to the scale704. A trigger may be sent to the scale704to obtain all information from the scale704so that weight is parsed from the response. A device container of the system may handle the camera registration and rangefinder pipelines to control enablement of the cameras. Pipelines can be established for each device operation to support multithreading processes. Thus, measurements are obtained from all sensing devices. Based on confidence level and weighted values, the measurements are applied to achieve more accurate measurements of all sides and angles. The merging of measurements consists of all multithreaded processed measurements. Measurements may be cached until all measurements are available. In general, measurements are obtained from depth cameras102A-102E. Optical range data are applied to the results, and then ultrasound range data are applied for a final refinement of the measurements. Thus, all measurement and range data in conjunction with associated confidence level may be used to obtain accurate shipping parameters of the shipment.FIG.8shows a simplified view800of the sensing devices, according to various embodiments of the present invention. As can be seen inFIG.8, the central camera102E is mounted adjacent to the rangefinders, including optical rangefinder104and acoustic rangefinder106. The central camera102E could be downward facing and overhead relative to the freight unit602and scale704underneath the freight unit602. The side cameras102A-102D may be on a different side of the scale704and/or freight unit602.

A setting component can be predefined to obtain environmentally specific configurations via a configuration file. This information may include camera names converted to placement (e.g., cardinal orientations such as Center, North, South, East, West), optical rangefinder device name(s), ultrasound rangefinder name(s), authentication parameters, interface API parameters, camera, optical and ultrasound rangefinder height (which can be used to confirm measurements accuracy and check for alignment), minimum and maximum constraints, and system thresholds. Tolerance, and then thresholds can be used to determine what information is needed with each camera. That is, tolerance thresholds are employable by the system to determine which individual point cloud thread from the individual depth cameras102A-102E should be used in the determination of the shipping parameters. For each dimension: (1) if the change is within a specific threshold, that transformation variance is ignored; or (2) if it is greater than the threshold, it is accepted and applied. The bounding box may then be updated with the additional information. The bounding box can be used to find length and width information. Orientation may be aligned in order to determine which side is length and width, respectively. All variances may be weighted and applied accordingly.

Registration with the cameras may be achieved as multiple images are captured from each camera102A-102E with a designated calibration and alignment and light projected from the base below the cameras102A-102E. To this end, optical sources can be placed underneath the cameras102A-102E, around the location of the scale704(if provided).FIG.9shows a diagram900of a plurality of optical sources902A-902I (e.g., laser, LED, laser diode or other suitable optical source) for use in camera alignment/registration, according to various embodiments of the present invention. The optical sources902A-902I may be located on the ground around the scale704(assuming that the scale704is at the center of the sensor structure600so that the freight unit602is weighed at the same time that its dimensions are captured) such that the output from the optical sources902A-902I is projected upwards from the ground below the depth cameras102A-102E. In the registration process, filters can be applied for multiple purposes including: transformation; reducing the depth frame density, applying edge-preserving spatial smoothing, reducing temporal noise, applying disparity transformation, applying camera cloud rotation as required, and computing cloud resolution. Also, a fast bilateral filter could be applied. In this way, calibration and alignment of the depth cameras102A-102E by the dimensionalizer system can be attained using the optical sources902A-902I.

The registration process can also utilize targets placed in the view of all cameras102A-102E. The registration application may return a transform for each of the cameras102A-102D relative to the center102E. The local work station706can directly initiate the registration to a local device such as the mobile computing device200, although other suitable devices are also possibly used. Alternatively, a VNC (virtual network computing) application is employable. The system can automatically trigger the registration upon startup (as a selectable option) or on demand by the client.

In one embodiment, a recommendation engine of the (computer) system may employ a rate calculator such as described in the aforementioned and incorporated '578 Patent. In particular, the dimensions and weight of the freight unit(s) in a shipment, as determined by the dimensionalizer system described herein, may be input to the rate calculator of the computer system. Also, the goods in the shipment, along with the origination and destination locations for the shipment, all of which may be known from the QR code or other identifying indicia for the freight unit(s), are also input to the rate calculator computer system. Using this data, the rate calculator can calculate the rate for shipping the freight unit(s) with various carriers, using the carrier-specific shipping rules for the various carriers, as described in the '578 Patent. The recommendation engine can then make recommendations on how to adjust the shipping parameters of the freight unit and/or shipment in view of the determinations of the rate calculator. For example, if the rate calculator determines that the freight unit is priced based on density (as opposed to product), and the freight unit is close to being in a cheaper, high-density class, the recommendation engine can recommend that density of the freight unit be changed to move it into the cheaper, high-density class. For example, the recommendation engine may suggest that adding x pounds, without adding more than y cubic inches to the volume of the freight unit, will save z dollars in shipping costs for the freight unit. The shipper may then add a material to the freight unit that meets (or exceeds) the suggestions. For example, the shipper could add a dense, preferably cheap material, such as sand, to the freight unit to positively affect the overall density of the freight unit (e.g., increase the density) so that the freight unit gets classified to a less expensive shipping class.

For a shipment that has multiple freight units, the recommendation engine could also make recommendations on how to adjust the freight units to positively affect (decrease) the shipping costs. For example, if some of the freight units in the shipment are density-based and some are product class-based, the recommendation engine could make recommendations on how to change the goods in the freight units to make more of them density-based or more of them product-class based, depending on which is less expensive given the carrier's rules. Also, for freight units that are density-based, the recommendation engine could make recommendations on how to distribute the goods across the freight units so that more of the freight units are moved into less expensive density classes. Still further, the recommendation engine can recommend changing (e.g., reducing, adding) the number of freight units to advantageously affect (i.e., reduce) the shipping costs. In this way, the dynamic profile of each client can indicate the relative efficiency and costs of various configurations of freight units in real-time, e.g., at the time of shipping. Feedback generated based on this dynamic profile may be transmitted and stored by the dimensionalizer system. The recommendations may be provided to the mobile computing device200or to another Internet-connected computer connected to the web server702.

In various implementations, the present invention is directed to a system comprising: a measurement system for determining shipping parameters of a shipment and a computer system that is in communication with the measurement system. The shipment comprises one or more freight units; each of the one or more freight units comprises one or more goods; the shipping parameters comprise a weight, height, width, and depth for each of the one or more freight units; and the measurement system comprises a lidar camera, a scale, and a rangefinder. Range data from the rangefinder are used to calibrate the lidar camera. The computer system comprises a client computer device; and a host computer system that is in communication with the client computer device. The computer system is configured to: compute a density for each of the one or more freight units in the shipment based on the shipping parameters; compute a shipping cost for shipping the shipment with a freight carrier based on carrier-specific pricing rules for the freight carrier, wherein computing the shipping cost for the freight carrier comprises determining, based on the carrier-specific pricing rules for the freight carrier, whether the freight carrier would designate the shipment as density-based or class-based for purposes of determining the shipping cost; determine, by the host computer system, an adjustment to the shipping parameters for the shipment that reduces the shipping cost by changing the density of the one or more freight units, wherein the adjustment comprises an increase in weight, height, width and/or depth of the one or more freight units; and transmit, by the host computer system to the client computer device, data about the adjustment prior to loading the shipment onto a carrier vehicle.

The one or more goods may be positioned on a pallet. The adjustment to the shipping parameters for the shipment that reduces the shipping cost may comprise increasing the density of the one or more freight units. The measurement system may further comprise an overhead mounting frame that comprises a plurality of overhead beams; the scale can be located under the plurality of overhead beams; and the lidar camera of the measurement system can comprise four or more downward-pointing lidar cameras, wherein each of the four or more downward-pointing lidar cameras is mounted on one of the plurality of overhead beams, such that when the one or more freight units is on the scale, the one or more freight units is within a field of view of each of the four or more downward-pointing lidar cameras. The four or more downward-pointing lidar cameras may comprise an overhead downward-pointing lidar camera and four side downward-pointing lidar cameras; the overhead downward-pointing lidar camera can be located directly overhead the scale such that overhead downward-pointing lidar camera is directly overhead the one or more freight units when the one or more freight units are on the scale; and each of the four side downward-pointing lidar cameras can each located on a different side of the scale.

The overhead downward-pointing lidar camera and the four side downward-pointing lidar cameras may be at a same height level. The client computer device may execute an application to capture bill of lading information of the shipment to trigger the measurement system to determine the shipping parameters of the shipment. The client computer device may comprise a display to display an annotated visualization of the one or more freight units, wherein the annotated visualization is captured by the lidar camera, and wherein the annotated visualization indicates a confidence level of the determined shipping parameters. The rangefinder may comprise a plurality of rangefinders, and each of the plurality of rangefinders may be a rangefinder selected from the group consisting of an optical rangefinder and an acoustic rangefinder. The plurality of rangefinders may be mounted on one of the plurality of overhead beams overhead mounting frame, such that each of the plurality of rangefinders is adjacent to the overhead downward-pointing camera. The system may comprise a work station located at a site of the overhead mounting frame, wherein the work station communicates with the host computer device and the client computer device via an application programming interface (API). The workstation may combine point cloud threads from the four or more downward-pointing lidar cameras to determine a composite point cloud for the one or more freight units; and the computer system can determine the height, width, and depth based on the composite point cloud.

In other implementations, the present invention is directed to a method comprising: determining, with a measurement system, shipping parameters for a shipment that comprises one or more freight unit; computing, by a computer system that comprises a host computer system and a client computer device, a density for each of the one or more freight units in the shipment based on the shipping parameters; computing, by the computer system, a shipping cost for shipping the shipment with a freight carrier based on carrier-specific pricing rules for the freight carrier; determining, by the computer system, an adjustment to the shipping parameters for the shipment that reduces the shipping cost by changing the density of the one or more freight units; and transmitting, by the computer system to the client computer device, data about the adjustment prior to loading the shipment onto a carrier vehicle. Each of the one or more freight units comprises one or more goods; the shipping parameters comprise a weight, height, width, and depth for each of the one or more freight units; and the measurement system comprises a lidar camera, a scale, and a rangefinder. Range data from the rangefinder are used to calibrate the lidar camera. Computing the shipping cost for the freight carrier comprises determining, based on the carrier-specific pricing rules for the freight carrier, whether the freight carrier would designate the shipment as density-based or class-based for purposes of determining the shipping cost. The determined adjustment comprises an increase in weight, height, width and/or depth of the one or more freight units.

A system may comprise the measurement system and computer system and may further comprise a light source to project light towards the lidar camera to calibrate and align the lidar camera. The lidar camera may comprise five lidar cameras that each generates a point cloud thread. The host computer system may use a tolerance threshold to determine the point cloud thread used for determining the shipping parameters. A signal may be received, by the computer system, from the client computer device, to trigger measurement by the measurement system. The one or more goods may be positioned on a pallet. Changing the density of the one or more freight units by the host computer system may comprise increasing the density of the one or more freight units. The host computer system may receive a freight metric based on a database profile corresponding to the shipment. The host computer system may change the density of the one or more freight units, based on the received freight metric.

The examples presented herein are intended to illustrate potential and specific implementations of the present invention. It can be appreciated that the examples are intended primarily for purposes of illustration of the invention for those skilled in the art. No particular aspect or aspects of the examples are necessarily intended to limit the scope of the present invention. Further, it is to be understood that the figures and descriptions of the present invention have been simplified to illustrate elements that are relevant for a clear understanding of the present invention, while eliminating, for purposes of clarity, other elements. While various embodiments have been described herein, it should be apparent that various modifications, alterations, and adaptations to those embodiments may occur to persons skilled in the art with attainment of at least some of the advantages. The disclosed embodiments are therefore intended to include all such modifications, alterations, and adaptations without departing from the scope of the embodiments as set forth herein.

In summary, numerous benefits have been described which result from employing the inventions described herein. The foregoing description of the embodiments has been presented for purposes of illustration and description. It is not intended to be exhaustive or limiting to the precise form disclosed. Modifications or variations are possible in light of the above teachings. The one or more embodiments were chosen and described in order to illustrate principles and practical application to thereby enable one of ordinary skill in the art to utilize the various embodiments and with various modifications as are suited to the particular use contemplated. It is intended that the claims submitted herewith define the overall scope.