# Patent

## Title
Dimensioning system with guided alignment

## Abstract

A dimensioning system including a computing device running an alignment software program is disclosed. The alignment software uses range information from a range sensor in order to generate alignment messages. The alignment messages may help a user define a frame of reference and align the dimensioning system's range sensor for improved dimensioning performance.

## Background
FIELD OF THE INVENTION
The present invention relates to the field of dimensioning systems, and more specifically, to a system and method for aligning a package dimensioning system.
BACKGROUND
Generally speaking freight carriers calculate shipping costs based on package size and weight (i.e., volumetric weight). This helps prevent lightweight packages that require a large amount of space from becoming unprofitable for the freight carriers.
When printing a shipping label for a package, a freight carrier employee is required to enter the package's size and weight into a software application that uses this information to calculate the cost of shipping. Typically, freight carrier employees derive this information through hand measurements (e.g., with a tape measure) and may weigh the package on a scale. Hand measurements are prone to error, particularly when packages have an irregular shape. These errors may lead to dissatisfaction and/or financial loss. For example, when a shipping company determines, after shipping costs are negotiated, that a package is larger and/or heavier than reported by the customer, additional costs may assessed. In addition, retailers that pass the shipping costs along to customers typically assume the extra shipping costs associated with these errors. As a result, automated dimensioning systems have been developed to bring more accuracy to package volume calculation.
One such automated dimensioning system uses a light projector to project a light pattern (e.g., point cloud) onto objects (e.g., packages) within a field of view. A range camera, physically offset from the light projector, creates a range image from the light pattern reflected from the packages. Software running on a computing device compares the light pattern in the range image to some reference (e.g., a reference image taken during calibration). Through this comparison, the dimensions of a package may be derived.
In order to dimension a specified size range (e.g., a range of package sizes) accurately, the dimensioning system may require a user to position (i.e., align) the range sensor into a particular pose (i.e., height and orientation). This positioning typically takes place during the installation of the dimensioning system. During positioning the pose is computed relative to a reference (i.e., ground) plane that is typically defined prior to positioning. The process of selecting the reference plane and positioning the range sensor is not easily handled by a typical user, but poorly installed range sensors may result in dimensioning errors or the inability to dimension. Therefore, a need exists for a method to assist the user with the selection of a reference plane and the positioning of a range sensor to ensure good performance of the dimensioning system.
SUMMARY
Accordingly, in one aspect, the present invention embraces a package dimensioning system including a range sensor for capturing a series of range images of the range sensor's field of view. The system also includes an adjustable range-sensor support to physically support and position the range sensor in a target pose. A computing device, communicatively coupled to the range sensor, is capable of executing an adjustment software program, which provides adjustment messages to facilitate the adjustment of the range sensor. The adjustment software program configures the computing device to receive the series of range images, process the series of range images to produce the adjustment messages, and transmit the adjustment messages to a display. The display is communicatively coupled to the computing device and displays the series of range images and the adjustment messages.
In another aspect, the present invention embraces a computer implemented method for generating adjustment messages to facilitate the positioning of a range sensor for dimensioning. The method includes the step of recording range images onto a computer-readable storage medium. The method also includes the step of reading the range images from the computer-readable storage medium. In addition, the method includes processing the range images to derive a result. The method further includes the step of generating adjustment messages based on the result.
The foregoing illustrative summary, as well as other exemplary objectives and/or advantages of the invention, and the manner in which the same are accomplished, are further explained within the following detailed description and its accompanying figure (i.e., fig.) set.



BRIEF DESCRIPTION OF THE DRAWINGS
FIG. 1 schematically depicts an exemplary range sensor's stereo arrangement of a pattern projector of a range camera for capturing range information as a pixel displacement.
FIG. 2 graphically depicts an exemplary dimensioning system including a platform and an object for dimensioning.
FIG. 3 schematically depicts an exemplary dimensioning system.
FIG. 4 schematically depicts a flowchart of an exemplary adjustment software program.



DETAILED DESCRIPTION
The present invention embraces a dimensioning system to measure items, such as packages for shipment. The dimensioning system typically uses a range sensor, a computing device, and a display for this measurement. The range sensor may be an optical system that acquires information about a field of view or could use another range sensing modality (e.g., ultrasonic). The optical system requires a user to place an item within the system's field of view for measurement and is very easy to use. For the system to give best results, however, the range sensor should be positioned in a range-sensor pose with respect to a frame of reference shared by the package that closely matches a target pose (e.g., below an adjustable threshold value of pose difference). The target pose represents the desired range sensor's position (e.g., height, pitch, roll, and/or yaw) with respect to the frame of reference that ensures good dimensioning performance. The target pose is chosen to allow the range sensor to obtain accurate dimensioning results for a given range of package sizes. For example, a target pose may be established to contain the largest package to be dimensioned, while also ensuring that the smallest package may be resolved sufficiently for accurate measurement. The target pose is also chosen based on the range sensor's resolution, field of view, and/or other limitations (e.g., specular reflections, multipath interference, and/or mixed pixel responses). Similarly, a target pose may be chosen to minimize depth differences between a foreground package and clutter (e.g., background clutter). The target pose may be stored on a computer-readable medium (e.g., non-transitory memory) communicatively coupled to the computing device and is typically set once for a particular application. In certain scenarios, however, this target pose could adjustable. For example, an old target pose could be replaced with a new target pose, or in another embodiment, target poses could be selected by a user to match a particular dimensioning application. For example, a user might want to replace the range sensor with a new range sensor that has a different, sensing modality, resolution, and/or field of view. Here the user could update the target pose to match the new range sensor. Alternatively, the user might want to accommodate a new range of package sizes. Here the user could update the target pose to meet the requirements of the new range of package sizes.
The mathematical representation of a physical pose requires a frame of reference. This frame of reference may be defined with a specified surface (e.g., planar surface) or a line. Alternatively, the frame of reference may be established with a set of 3D points that are arranged in some known way. For example, a pose may be calculated relative to a cylinder placed in front of the camera. Typically, however, a planar surface within the field of view, selected by a user, establishes the frame of reference. For example, the surface that the measured item (e.g., package) rests on during the measurement (e.g., scale or counter-top) may be chosen to serve as the reference surface (i.e., platform). In this way, the orientations of the range-sensor pose and the target pose (each relative to the frame of reference) can be derived mathematically and compared (e.g., compared by rotation matrix or axis-angle representation). For example, rotation vectors, with respect to the frame of reference, could be derived for each pose using Rodrigues' rotation formula. The angle between the two rotation vectors could then be computed and compared to obtain the difference between the range-sensor pose and the target pose (i.e., pose difference).
The process of establishing the platform and aligning the range-sensor pose with a target pose may be made easier through the use of software (e.g., one or more executable files, libraries, and/or scripts) to generate guidance advice for sensor alignment. Here, the adjustment software (i.e., adjustment software program) receives range images from the range sensor and produces feedback (i.e., adjustment messages) to help a user align the range sensor.
Range images are typically single-channel (e.g., gray scale) images that represent the distance between the range camera and the portion of the field of view represented by a pixel. Using these range images, the adjustment software may detect planar surfaces using an algorithm. For example, a random sample consensus (i.e., RANSAC) algorithm may identify planar surfaces within the range sensor's field of view. In the case where more than one planar surface is detected within the range camera's field of view, each planar surface may be indicated in a visual image presented on a display. In one possible embodiment, each planar surface may be indicated by an overlay (e.g., semi-transparent and/or colored overlay) image superimposed on the range image and presented on the display. In other possible embodiments, the reference surface may otherwise highlighted (e.g., an outline). A prompt, generated by the adjustment software, may query a user to indicate which planar surface should be established as the reference surface (i.e., ground plane). Once the ground plane (i.e., platform) is established, the adjustment software may use the range image to compute the range camera's height and orientation (i.e., roll, pitch, and/or yaw) with respect to the ground plane.
During range sensor alignment (e.g., during installation of a package dimensioning system) the adjustment software may use the computed range sensor height and orientation to provide adjustment messages. These adjustment messages include indications of the necessary adjustments in order to align the range sensor's physical pose with the target pose. This feedback may be audible or visual. Visible messages could be text messages or graphical images displayed alone, in addition to, and/or superimposed on other images (e.g., range images, color images, or point-cloud images). By following these adjustment messages, a user may adjust the range-sensor support (e.g., adjustable tripod mount, pole mount, ceiling mount, and/or wall mount) to move the range sensor closer to the target pose. Many adjustment messages may be generated during the alignment process. In one possible embodiment, the process of analyzing range images and providing alignment messages (e.g., “move camera up”) may continue iteratively until the range sensor is aligned with the target pose. Once aligned, the adjustment software may provide an adjustment message indicating that the range sensor is in position, indicating that the user should stop adjusting and secure the support. In another possible embodiment, the software may provide alignment messages that indicate the alignment of the range-sensor pose with the target pose in qualitative terms (e.g., good, better, or best). In still another possible embodiment, the software may simply provide real-time alignment information (e.g., pose difference results in numerical form) and allow the user to decide the ultimate alignment criteria.
While the adjustment software is typically used during the installation of the package dimensioning system, it may also be used periodically after the installation. For example, the adjustment software program may be configured to periodically check the range sensor's pose and compare this with the target pose. If the difference between the two poses (i.e., pose difference) is above some threshold value (e.g., from a misalignment caused by mechanical movement or vibration), the guidance software may provide messages to alert a user that the range sensor is no longer in alignment and that an adjustment is necessary.
The alignment process may happen in real-time with the display rendering real-time range images, while simultaneously displaying adjustment messages. In one embodiment, for example, the adjustment software may guide the user to first adjust range sensor's height and then adjust its orientation (i.e., roll, pitch, and/or yaw) separately and sequentially. In another embodiment, the software may accommodate a user to jointly adjust the range sensor's height and orientation simultaneously.
Three-dimensional (i.e., 3D) sensors (e.g., range sensors) can be utilized effectively in dimensioning applications. The recent advent of relatively low-cost range sensors that can detect and display three-dimensional information has afforded greater opportunity for implementing automated dimensioning on a wider scale. Consequently, the package-dimensioning system disclosed here may include a range sensor to acquire a two-dimensional gray scale image for conveying the range on a pixel by pixel basis (i.e., range image). In an exemplary range image, darker pixels may indicate a point that is a shorter distance away from the range sensor than points represented by lighter pixels.
In the embodiment shown in FIG. 1, the range sensor includes a projector 1 and a range camera 2. The projector 1 may radiate a light pattern onto an item 4 within a field of view 3. The reflected light pattern 6 from the item may be imaged and detected by the range camera 2. If the item's range 7 is changed then the range camera may sense this change as a displacement 5 in detected light pattern. A processor within the range sensor may convert this range information into a range image. In this way the pattern projector and range camera may together help to produce a range image. The projector 1 and the range camera 2 are positioned collinearly and are codirected towards the same field of view (i.e., are positioned in a stereo arrangement). The light from the projector (e.g., the point cloud) may be visible but is typically invisible to the human eye. The range camera is sensitive to this light. In some embodiments, the range sensor also includes a color (i.e., RGB) camera that is sensitive to visible light and which shares the field of view 3 with the projector and range camera. This color camera may be used to display images for a user that are easily interpreted and less confusing than the gray scale range images or point cloud images. In another possible embodiment, the range images may be displayed during the alignment process. In yet another possible embodiment, the raw images including the projected light pattern (point cloud images) may be displayed during the alignment process.
An exemplary package dimensioning system is graphically shown in FIG. 2. Here the range sensor 10 is physically supported and positioned by the range-sensor support 11. The support helps configure the range-sensor pose which is defined by the range sensor's height 12 and orientation. The orientation may include the range sensor's pitch 13, yaw 14, and/or roll 15. A user may configure the range-sensor pose to match a target pose through the use of an adjustable range-sensor support 11. This support is shown in this embodiment as a tripod, though other support mechanisms (e.g., pole-mount, wall-mount, or ceiling-mount) may be used. An adjustment software program executed by a computing device 16 may display adjustment message on a display 13. The range-sensor pose and the target pose are relative to a platform 18 (i.e., reference plane or ground plane) that a package 17 is placed on for dimensioning. The platform may be selected by a user from a plurality of planar surfaces detected within the field of view before the poses are calculated.
The schematic of the package dimensioning system including a computing device 24 for package dimensioning is shown in FIG. 3. Here a range sensor 20 includes a pattern projector 27 for creating a light pattern that can be imaged by the range camera 22 and mathematically transformed into a range image that is transmitted from the range sensor 20 to a processor 23 integrated in the computing device 24 and communicatively coupled to the range sensor. The processor may store the range image in a computer-readable storage medium 25. Adjustment software stored in the storage medium 25 may configure the processor 23 to execute the program steps required for generating the adjustment messages necessary to facilitate the positioning of the range sensor 20 for dimensioning. The processor may transmit the adjustment messages to a display 26. These messages may be displayed along with an image of the range sensor's field of view. This image of the field of view may be the range camera's 22 image or may be a color image created by a color camera 21 configured with the same field of view as the range camera 22. The color camera is optional but may enhance the user's experience, as these images may be easier to understand than the gray scale range images.
As shown in FIG. 4, the adjustment software program 36 operates on range information (e.g., range images 31) to produce some feedback information (e.g., adjustment messages 39). A flowchart illustrating the method for generating adjustment messages to facilitate the positioning of a range sensor for package dimensioning is shown in FIG. 4. The range sensor 30 produces a range image 31. The software analyzes the range image to detect planar surfaces within the field of view. A user may then be prompted to select a reference plane (i.e., platform) from the detected planar surfaces. Alternatively, the software may detect and select a platform automatically. Once the platform 32 is detected, a target pose 33 may be computed based on a stored pose 34. The stored pose information may be information based on the range camera's field of view, the range of expected package sizes, and/or the resolution of the range image. This information may be stored in the computing device's non-transitory, computer-readable storage medium (e.g., hard drive). The platform 32 may also be used to mathematically compute the range-sensor pose 35 from the range image 31 and the platform 32. Mathematically a pose may be defined as a vector relative to the platform 32. The adjustment software program 36 then computes the difference between the target pose 33 and the range-sensor pose 35 to determine a pose difference 37 (e.g., vector difference). If the pose difference is zero (or below some threshold value) then the camera is considered aligned, however if the pose difference is above a threshold value, then a desired action 38 to minimize the pose difference is computed. Based on the desired action 38, an adjustment message 39 is created. This adjustment message is then transmitted with the range camera's image to the display 40 for viewing. The adjustment message could be a text message or a graphical image. In one possible embodiment an arrow graphic indicating the direction to move the range sensor 30 could be overlaid with the range image 31 on the display 40. In another embodiment the adjustment message could provide quantitative measurements (e.g., move camera up 10 cm). In another possible embodiment the adjustment messages may be audio messages transmitted to a speaker for broadcast.
To supplement the present disclosure, this application incorporates entirely by reference the following commonly assigned patents, patent application publications, and patent applications:












U.S. Pat. No. 6,832,725; U.S. Pat. No. 7,128,266;


U.S. Pat. No. 7,159,783; U.S. Pat. No. 7,413,127;


U.S. Pat. No. 7,726,575; U.S. Pat. No. 8,294,969;


U.S. Pat. No. 8,317,105; U.S. Pat. No. 8,322,622;


U.S. Pat. No. 8,366,005; U.S. Pat. No. 8,371,507;


U.S. Pat. No. 8,376,233; U.S. Pat. No. 8,381,979;


U.S. Pat. No. 8,390,909; U.S. Pat. No. 8,408,464;


U.S. Pat. No. 8,408,468; U.S. Pat. No. 8,408,469;


U.S. Pat. No. 8,424,768; U.S. Pat. No. 8,448,863;


U.S. Pat. No. 8,457,013; U.S. Pat. No. 8,459,557;


U.S. Pat. No. 8,469,272; U.S. Pat. No. 8,474,712;


U.S. Pat. No. 8,479,992; U.S. Pat. No. 8,490,877;


U.S. Pat. No. 8,517,271; U.S. Pat. No. 8,523,076;


U.S. Pat. No. 8,528,818; U.S. Pat. No. 8,544,737;


U.S. Pat. No. 8,548,242; U.S. Pat. No. 8,548,420;


U.S. Pat. No. 8,550,335; U.S. Pat. No. 8,550,354;


U.S. Pat. No. 8,550,357; U.S. Pat. No. 8,556,174;


U.S. Pat. No. 8,556,176; U.S. Pat. No. 8,556,177;


U.S. Pat. No. 8,559,767; U.S. Pat. No. 8,599,957;


U.S. Pat. No. 8,561,895; U.S. Pat. No. 8,561,903;


U.S. Pat. No. 8,561,905; U.S. Pat. No. 8,565,107;


U.S. Pat. No. 8,571,307; U.S. Pat. No. 8,579,200;


U.S. Pat. No. 8,583,924; U.S. Pat. No. 8,584,945;


U.S. Pat. No. 8,587,595; U.S. Pat. No. 8,587,697;


U.S. Pat. No. 8,588,869; U.S. Pat. No. 8,590,789;


U.S. Pat. No. 8,596,539; U.S. Pat. No. 8,596,542;


U.S. Pat. No. 8,596,543; U.S. Pat. No. 8,599,271;


U.S. Pat. No. 8,599,957; U.S. Pat. No. 8,600,158;


U.S. Pat. No. 8,600,167; U.S. Pat. No. 8,602,309;


U.S. Pat. No. 8,608,053; U.S. Pat. No. 8,608,071;


U.S. Pat. No. 8,611,309; U.S. Pat. No. 8,615,487;


U.S. Pat. No. 8,616,454; U.S. Pat. No. 8,621,123;


U.S. Pat. No. 8,622,303; U.S. Pat. No. 8,628,013;


U.S. Pat. No. 8,628,015; U.S. Pat. No. 8,628,016;


U.S. Pat. No. 8,629,926; U.S. Pat. No. 8,630,491;


U.S. Pat. No. 8,635,309; U.S. Pat. No. 8,636,200;


U.S. Pat. No. 8,636,212; U.S. Pat. No. 8,636,215;


U.S. Pat. No. 8,636,224; U.S. Pat. No. 8,638,806;


U.S. Pat. No. 8,640,958; U.S. Pat. No. 8,640,960;


U.S. Pat. No. 8,643,717; U.S. Pat. No. 8,646,692;


U.S. Pat. No. 8,646,694; U.S. Pat. No. 8,657,200;


U.S. Pat. No. 8,659,397; U.S. Pat. No. 8,668,149;


U.S. Pat. No. 8,678,285; U.S. Pat. No. 8,678,286;


U.S. Pat. No. 8,682,077; U.S. Pat. No. 8,687,282;


U.S. Pat. No. 8,692,927; U.S. Pat. No. 8,695,880;


U.S. Pat. No. 8,698,949; U.S. Pat. No. 8,717,494;


U.S. Pat. No. 8,717,494; U.S. Pat. No. 8,720,783;


U.S. Pat. No. 8,723,804; U.S. Pat. No. 8,723,904;


U.S. Pat. No. 8,727,223; U.S. Pat. No. D702,237;


International Publication No. 2013/163789;


International Publication No. 2013/173985;


International Publication No. 2014/019130;


U.S. patent application Publication No. 2008/0185432;


U.S. patent application Publication No. 2009/0134221;


U.S. patent application Publication No. 2010/0177080;


U.S. patent application Publication No. 2010/0177076;


U.S. patent application Publication No. 2010/0177707;


U.S. patent application Publication No. 2010/0177749;


U.S. patent application Publication No. 2011/0202554;


U.S. patent application Publication No. 2012/0111946;


U.S. patent application Publication No. 2012/0138685;


U.S. patent application Publication No. 2012/0168511;


U.S. patent application Publication No. 2012/0168512;


U.S. patent application Publication No. 2012/0193407;


U.S. patent application Publication No. 2012/0193423;


U.S. patent application Publication No. 2012/0203647;


U.S. patent application Publication No. 2012/0223141;


U.S. patent application Publication No. 2012/0228382;


U.S. patent application Publication No. 2012/0248188;


U.S. patent application Publication No. 2013/0043312;


U.S. patent application Publication No. 2013/0056285;


U.S. patent application Publication No. 2013/0070322;


U.S. patent application Publication No. 2013/0075168;


U.S. patent application Publication No. 2013/0082104;


U.S. patent application Publication No. 2013/0175341;


U.S. patent application Publication No. 2013/0175343;


U.S. patent application Publication No. 2013/0200158;


U.S. patent application Publication No. 2013/0214048;


U.S. patent application Publication No. 2013/0256418;


U.S. patent application Publication No. 2013/0257744;


U.S. patent application Publication No. 2013/0257759;


U.S. patent application Publication No. 2013/0270346;


U.S. patent application Publication No. 2013/0278425;


U.S. patent application Publication No. 2013/0287258;


U.S. patent application Publication No. 2013/0292474;


U.S. patent application Publication No. 2013/0292475;


U.S. patent application Publication No. 2013/0292477;


U.S. patent application Publication No. 2013/0293539;


U.S. patent application Publication No. 2013/0293540;


U.S. patent application Publication No. 2013/0306728;


U.S. patent application Publication No. 2013/0306730;


U.S. patent application Publication No. 2013/0306731;


U.S. patent application Publication No. 2013/0306734;


U.S. patent application Publication No. 2013/0307964;


U.S. patent application Publication No. 2013/0308625;


U.S. patent application Publication No. 2013/0313324;


U.S. patent application Publication No. 2013/0313325;


U.S. patent application Publication No. 2013/0313326;


U.S. patent application Publication No. 2013/0327834;


U.S. patent application Publication No. 2013/0341399;


U.S. patent application Publication No. 2013/0342717;


U.S. patent application Publication No. 2014/0001267;


U.S. patent application Publication No. 2014/0002828;


U.S. patent application Publication No. 2014/0008430;


U.S. patent application Publication No. 2014/0008439;


U.S. patent application Publication No. 2014/0021256;


U.S. patent application Publication No. 2014/0025584;


U.S. patent application Publication No. 2014/0027518;


U.S. patent application Publication No. 2014/0034723;


U.S. patent application Publication No. 2014/0034734;


U.S. patent application Publication No. 2014/0036848;


U.S. patent application Publication No. 2014/0039693;


U.S. patent application Publication No. 2014/0042814;


U.S. patent application Publication No. 2014/0049120;


U.S. patent application Publication No. 2014/0049635;


U.S. patent application Publication No. 2014/0061305;


U.S. patent application Publication No. 2014/0061306;


U.S. patent application Publication No. 2014/0061307;


U.S. patent application Publication No. 2014/0063289;


U.S. patent application Publication No. 2014/0066136;


U.S. patent application Publication No. 2014/0067692;


U.S. patent application Publication No. 2014/0070005;


U.S. patent application Publication No. 2014/0071840;


U.S. patent application Publication No. 2014/0074746;


U.S. patent application Publication No. 2014/0075846;


U.S. patent application Publication No. 2014/0076974;


U.S. patent application Publication No. 2014/0078341;


U.S. patent application Publication No. 2014/0078342;


U.S. patent application Publication No. 2014/0078345;


U.S. patent application Publication No. 2014/0084068;


U.S. patent application Publication No. 2014/0086348;


U.S. patent application Publication No. 2014/0097249;


U.S. patent application Publication No. 2014/0098284;


U.S. patent application Publication No. 2014/0098792;


U.S. patent application Publication No. 2014/0100774;


U.S. patent application Publication No. 2014/0100813;


U.S. patent application Publication No. 2014/0103115;


U.S. patent application Publication No. 2014/0104413;


U.S. patent application Publication No. 2014/0104414;


U.S. patent application Publication No. 2014/0104416;


U.S. patent application Publication No. 2014/0104451;


U.S. patent application Publication No. 2014/0106594;


U.S. patent application Publication No. 2014/0106725;


U.S. patent application Publication No. 2014/0108010;


U.S. patent application Publication No. 2014/0108402;


U.S. patent application Publication No. 2014/0108682;


U.S. patent application Publication No. 2014/0110485;


U.S. patent application Publication No. 2014/0114530;


U.S. patent application Publication No. 2014/0124577;


U.S. patent application Publication No. 2014/0124579;


U.S. patent application Publication No. 2014/0125842;


U.S. patent application Publication No. 2014/0125853;


U.S. patent application Publication No. 2014/0125999;


U.S. patent application Publication No. 2014/0129378;









    U.S. patent application Ser. No. 13/367,978 for a Laser Scanning Module Employing An Elastomeric U-Hinge Based Laser Scanning Assembly, filed Feb. 7, 2012 (Feng et al.);
    U.S. patent application Ser. No. 29/436,337 for an Electronic Device, filed Nov. 5, 2012 (Fitch et al.);
    U.S. patent application Ser. No. 13/736,139 for an Electronic Device Enclosure, filed Jan. 8, 2013 (Chaney);
    U.S. patent application Ser. No. 13/771,508 for an Optical Redirection Adapter, filed Feb. 20, 2013 (Anderson);
    U.S. patent application Ser. No. 13/780,356 for a Mobile Device Having Object-Identification Interface, filed Feb. 28, 2013 (Samek et al.);
    U.S. patent application Ser. No. 13/852,097 for a System and Method for Capturing and Preserving Vehicle Event Data, filed Mar. 28, 2013 (Barker et al.);
    U.S. patent application Ser. No. 13/902,110 for a System and Method for Display of Information Using a Vehicle-Mount Computer, filed May 24, 2013 (Hollifield);
    U.S. patent application Ser. No. 13/902,144, for a System and Method for Display of Information Using a Vehicle-Mount Computer, filed May 24, 2013 (Chamberlin);
    U.S. patent application Ser. No. 13/902,242 for a System For Providing A Continuous Communication Link With A Symbol Reading Device, filed May 24, 2013 (Smith et al.);
    U.S. patent application Ser. No. 13/912,262 for a Method of Error Correction for 3D Imaging Device, filed Jun. 7, 2013 (Jovanovski et al.);
    U.S. patent application Ser. No. 13/912,702 for a System and Method for Reading Code Symbols at Long Range Using Source Power Control, filed Jun. 7, 2013 (Xian et al.);
    U.S. patent application Ser. No. 29/458,405 for an Electronic Device, filed Jun. 19, 2013 (Fitch et al.);
    U.S. patent application Ser. No. 13/922,339 for a System and Method for Reading Code Symbols Using a Variable Field of View, filed Jun. 20, 2013 (Xian et al.);
    U.S. patent application Ser. No. 13/927,398 for a Code Symbol Reading System Having Adaptive Autofocus, filed Jun. 26, 2013 (Todeschini);
    U.S. patent application Ser. No. 13/930,913 for a Mobile Device Having an Improved User Interface for Reading Code Symbols, filed Jun. 28, 2013 (Gelay et al.);
    U.S. patent application Ser. No. 29/459,620 for an Electronic Device Enclosure, filed Jul. 2, 2013 (London et al.);
    U.S. patent application Ser. No. 29/459,681 for an Electronic Device Enclosure, filed Jul. 2, 2013 (Chaney et al.);
    U.S. patent application Ser. No. 13/933,415 for an Electronic Device Case, filed Jul. 2, 2013 (London et al.);
    U.S. patent application Ser. No. 29/459,785 for a Scanner and Charging Base, filed Jul. 3, 2013 (Fitch et al.);
    U.S. patent application Ser. No. 29/459,823 for a Scanner, filed Jul. 3, 2013 (Zhou et al.);
    U.S. patent application Ser. No. 13/947,296 for a System and Method for Selectively Reading Code Symbols, filed Jul. 22, 2013 (Rueblinger et al.);
    U.S. patent application Ser. No. 13/950,544 for a Code Symbol Reading System Having Adjustable Object Detection, filed Jul. 25, 2013 (Jiang);
    U.S. patent application Ser. No. 13/961,408 for a Method for Manufacturing Laser Scanners, filed Aug. 7, 2013 (Saber et al.);
    U.S. patent application Ser. No. 14/018,729 for a Method for Operating a Laser Scanner, filed Sep. 5, 2013 (Feng et al.);
    U.S. patent application Ser. No. 14/019,616 for a Device Having Light Source to Reduce Surface Pathogens, filed Sep. 6, 2013 (Todeschini);
    U.S. patent application Ser. No. 14/023,762 for a Handheld Indicia Reader Having Locking Endcap, filed Sep. 11, 2013 (Gannon);
    U.S. patent application Ser. No. 14/035,474 for Augmented-Reality Signature Capture, filed Sep. 24, 2013 (Todeschini);
    U.S. patent application Ser. No. 29/468,118 for an Electronic Device Case, filed Sep. 26, 2013 (Oberpriller et al.);
    U.S. patent application Ser. No. 14/047,896 for Terminal Having Illumination and Exposure Control filed Oct. 7, 2013 (Jovanovski et al.);
    U.S. patent application Ser. No. 14/053,175 for Imaging Apparatus Having Imaging Assembly, filed Oct. 14, 2013 (Barber);
    U.S. patent application Ser. No. 14/055,234 for Dimensioning System, filed Oct. 16, 2013 (Fletcher);
    U.S. patent application Ser. No. 14/053,314 for Indicia Reader, filed Oct. 14, 2013 (Huck);
    U.S. patent application Ser. No. 14/065,768 for Hybrid System and Method for Reading Indicia, filed Oct. 29, 2013 (Meier et al.);
    U.S. patent application Ser. No. 14/074,746 for Self-Checkout Shopping System, filed Nov. 8, 2013 (Hejl et al.);
    U.S. patent application Ser. No. 14/074,787 for Method and System for Configuring Mobile Devices via NFC Technology, filed Nov. 8, 2013 (Smith et al.);
    U.S. patent application Ser. No. 14/087,190 for Optimal Range Indicators for Bar Code Validation, filed Nov. 22, 2013 (Hejl);
    U.S. patent application Ser. No. 14/094,087 for Method and System for Communicating Information in an Digital Signal, filed Dec. 2, 2013 (Peake et al.);
    U.S. patent application Ser. No. 14/101,965 for High Dynamic-Range Indicia Reading System, filed Dec. 10, 2013 (Xian);
    U.S. patent application Ser. No. 14/118,400 for Indicia Decoding Device with Security Lock, filed Nov. 18, 2013 (Liu);
    U.S. patent application Ser. No. 14/150,393 for Indicia-reader Having Unitary Construction Scanner, filed Jan. 8, 2014 (Colavito et al.);
    U.S. patent application Ser. No. 14/154,207 for Laser Barcode Scanner, filed Jan. 14, 2014 (Hou et al.);
    U.S. patent application Ser. No. 14/154,915 for Laser Scanning Module Employing a Laser Scanning Assembly having Elastomeric Wheel Hinges, filed Jan. 14, 2014 (Havens et al.);
    U.S. patent application Ser. No. 14/158,126 for Methods and Apparatus to Change a Feature Set on Data Collection Devices, filed Jan. 17, 2014 (Berthiaume et al.);
    U.S. patent application Ser. No. 14/159,074 for Wireless Mesh Point Portable Data Terminal, filed Jan. 20, 2014 (Wang et al.);
    U.S. patent application Ser. No. 14/159,509 for MMS Text Messaging for Hand Held Indicia Reader, filed Jan. 21, 2014 (Kearney);
    U.S. patent application Ser. No. 14/159,603 for Decodable Indicia Reading Terminal with Optical Filter, filed Jan. 21, 2014 (Ding et al.);
    U.S. patent application Ser. No. 14/160,645 for Decodable Indicia Reading Terminal with Indicia Analysis Functionality, filed Jan. 22, 2014 (Nahill et al.);
    U.S. patent application Ser. No. 14/161,875 for System and Method to Automatically Discriminate Between Different Data Types, filed Jan. 23, 2014 (Wang);
    U.S. patent application Ser. No. 14/165,980 for System and Method for Measuring Irregular Objects with a Single Camera filed Jan. 28, 2014 (Li et al.);
    U.S. patent application Ser. No. 14/166,103 for Indicia Reading Terminal Including Optical Filter filed Jan. 28, 2014 (Lu et al.);
    U.S. patent application Ser. No. 14/176,417 for Devices and Methods Employing Dual Target Auto Exposure filed Feb. 10, 2014 (Meier et al.);
    U.S. patent application Ser. No. 14/187,485 for Indicia Reading Terminal with Color Frame Processing filed Feb. 24, 2014 (Ren et al.);
    U.S. patent application Ser. No. 14/200,405 for Indicia Reader for Size-Limited Applications filed Mar. 7, 2014 (Feng et al.);
    U.S. patent application Ser. No. 14/222,994 for Method and Apparatus for Reading Optical Indicia Using a Plurality of Data filed Mar. 24, 2014 (Smith et al.);
    U.S. patent application Ser. No. 14/230,322 for Focus Module and Components with Actuator filed Mar. 31, 2014 (Feng et al.);
    U.S. patent application Ser. No. 14/231,898 for Hand-Mounted Indicia-Reading Device with Finger Motion Triggering filed Apr. 1, 2014 (Van Horn et al.);
    U.S. patent application Ser. No. 14/249,497 for Terminal Having Plurality of Operating Modes filed Apr. 10, 2014, Grunow et al.);
    U.S. patent application Ser. No. 14/250,923 for Reading Apparatus Having Partial Frame Operating Mode filed Apr. 11, 2014, (Deng et al.);
    U.S. patent application Ser. No. 14/257,174 for Imaging Terminal Having Data Compression filed Apr. 21, 2014, (Barber et al.)
    U.S. patent application Ser. No. 14/257,364 for Docking System and Method Using Near Field Communication filed Apr. 21, 2014, (Showering);
    U.S. patent application Ser. No. 14/264,173 for Autofocus Lens System for Indicia Readers filed Apr. 29, 2014, (Ackley et al.);
    U.S. patent application Ser. No. 14/274,858 for Mobile Printer with Optional Battery Accessory filed May 12, 2014, (Marty et al.);
    U.S. patent application Ser. No. 14/342,544 for Imaging Based Barcode Scanner Engine with Multiple Elements Supported on a Common Printed Circuit Board filed Mar. 4, 2014 (Liu et al.);
    U.S. patent application Ser. No. 14/342,551 for Terminal Having Image Data Format Conversion filed Mar. 4, 2014 (Liu et al.);
    U.S. patent application Ser. No. 14/345,735 for Optical Indicia Reading Terminal with Combined Illumination filed Mar. 19, 2014 (Ouyang);
    U.S. patent application Ser. No. 29/486,759 for an Imaging Terminal, filed Apr. 2, 2014 (Oberpriller et al.); and
    U.S. patent application Ser. No. 14/355,613 for Optical Indicia Reading Terminal with Color Image Sensor filed May 1, 2014, (Lu et al.).


In the specification and/or figures, typical embodiments of the invention have been disclosed. The present invention is not limited to such exemplary embodiments. The use of the term “and/or” includes any and all combinations of one or more of the associated listed items. The figures are schematic representations and so are not necessarily drawn to scale. Unless otherwise noted, specific terms have been used in a generic and descriptive sense and not for purposes of limitation.

## Claims

1. A dimensioning system comprising:
a range sensor for capturing range images of a field of view;
an adjustable range-sensor support to physically support and position the range sensor in a range-sensor pose;
a computing device communicatively coupled to the range sensor, the computing device capable of executing adjustment software and dimensioning software; and
a display communicatively coupled to the computing device;
wherein said adjustment software generates adjustment messages to facilitate adjustment of the range-sensor pose, the adjustment software configuring the computing device to: (i) receive the range images from the range sensor, (ii) compute, using at least one of the range images, a pose difference, wherein the pose difference comprises a difference between an initial range-sensor pose and a target range-sensor pose, (iii) generate, based on the pose difference, at least one adjustment message to facilitate adjustment of the range sensor pose to more closely align with the target range-sensor pose, and (iv) transmit the at least one adjustment message to the display-communicatively coupled to the computing device, and
wherein the dimensioning software configures the computing device to derive, from at least one of the range images, dimensions of an object in the field of view.

2. The dimensioning system according to claim 1, wherein the adjustment software generates adjustment messages until the pose difference is minimized below an adjustable threshold value.

3. The dimensioning system according to claim 1, wherein the range sensor comprises a stereo arrangement of (i) a pattern projector for projecting a light pattern within a field of view and (ii) a range camera for capturing images of the reflected light pattern.

4. The dimensioning system according to claim 1, wherein the light pattern is invisible.

5. The dimensioning system according to claim 1, wherein the range sensor comprises a color camera for capturing color images of visible light within the field of view.

6. The dimensioning system according to claim 1, wherein the adjustment software further configures the computing device to detect planar surfaces in the range images.

7. The dimensioning system according to claim 6, wherein the adjustment messages comprise indications for a user to select a platform from the detected planar surfaces.

8. The dimensioning system according to claim 1, wherein the target range-sensor pose is stored on a non-transitory computer-readable storage medium communicatively coupled with the computing device.

9. The dimensioning system according to claim 1, wherein the target range-sensor pose is adjustable.

10. A method, implemented by a computer, for operating a dimensioning system, the method comprising:
generating adjustment messages to facilitate the positioning of a range sensor of the dimensioning system, the range sensor communicatively coupled to the computer and capable of generating range images, the generating adjustment messages comprising:
recording the range images from the range sensor onto a non-transitory computer-readable storage medium;
reading the range images from the computer-readable storage medium;
processing at least one of the range images to derive a result, comprising computing a difference between an initial range-sensor pose and a target range-sensor pose; and
generating at least one adjustment message based on the result, the at least one adjustment message being generated to facilitate adjustment of the range sensor to more closely align with the target range-sensor pose; and
deriving, from at least one of the range images, dimensions of an object in the field of view.

11. The method according to claim 10, wherein the step of processing comprises identifying at least one planar surface in at least one range image.

12. The method according to claim 11, wherein the step of processing comprises computing the initial range-sensor pose and the target range-sensor pose.

13. The method according to claim 12, wherein the adjustment messages comprise instructions for physically adjusting the range sensor in order to minimize the difference the between the initial range-sensor pose and the target range-sensor pose.

14. The method according to claim 10, wherein the range sensor comprises a projector for projecting a light pattern in a field of view and a range camera for detecting the light pattern in at least part of the field of view, wherein the projector and the range camera are in a stereo arrangement.

15. The method according to claim 10, wherein the adjustment messages comprise range images with superimposed graphics and/or text.

16. The method according to claim 10, wherein the range sensor comprises a color camera.

17. The method according to claim 16, wherein the adjustment messages comprise color images with superimposed graphics and/or text.

18. The method according to claim 10, wherein the adjustment messages comprise audio messages.

19. The method according to claim 10, wherein the adjustment messages comprise visual information displayed on a display communicatively coupled to the computer.