US20130144568A1 - System and Method for Variable Detection in Objects - Google Patents
System and Method for Variable Detection in Objects Download PDFInfo
- Publication number
- US20130144568A1 US20130144568A1 US13/601,283 US201213601283A US2013144568A1 US 20130144568 A1 US20130144568 A1 US 20130144568A1 US 201213601283 A US201213601283 A US 201213601283A US 2013144568 A1 US2013144568 A1 US 2013144568A1
- Authority
- US
- United States
- Prior art keywords
- bundle
- module
- model
- dimensional data
- sensors
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Abandoned
Links
- 238000001514 detection method Methods 0.000 title claims abstract description 15
- 238000000034 method Methods 0.000 title claims description 89
- 238000012545 processing Methods 0.000 claims description 24
- 230000002093 peripheral effect Effects 0.000 claims description 7
- 230000008569 process Effects 0.000 description 32
- 230000007547 defect Effects 0.000 description 20
- 238000005259 measurement Methods 0.000 description 15
- 238000001914 filtration Methods 0.000 description 10
- 238000004364 calculation method Methods 0.000 description 7
- 230000000875 corresponding effect Effects 0.000 description 6
- 238000010586 diagram Methods 0.000 description 6
- 239000013598 vector Substances 0.000 description 6
- 238000004458 analytical method Methods 0.000 description 5
- 238000012805 post-processing Methods 0.000 description 5
- 239000002994 raw material Substances 0.000 description 5
- 230000000007 visual effect Effects 0.000 description 5
- 239000002023 wood Substances 0.000 description 5
- 230000007246 mechanism Effects 0.000 description 4
- 239000000047 product Substances 0.000 description 4
- 238000011179 visual inspection Methods 0.000 description 4
- 238000006073 displacement reaction Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 230000003247 decreasing effect Effects 0.000 description 2
- 238000011156 evaluation Methods 0.000 description 2
- 239000011094 fiberboard Substances 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 239000000123 paper Substances 0.000 description 2
- 238000012552 review Methods 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 239000002028 Biomass Substances 0.000 description 1
- 229920001131 Pulp (paper) Polymers 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000002596 correlated effect Effects 0.000 description 1
- 230000001186 cumulative effect Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000001035 drying Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000035945 sensitivity Effects 0.000 description 1
- 241000894007 species Species 0.000 description 1
- 238000003860 storage Methods 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
- -1 timber Substances 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 1
Images
Classifications
-
- G06F17/50—
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01B—MEASURING LENGTH, THICKNESS OR SIMILAR LINEAR DIMENSIONS; MEASURING ANGLES; MEASURING AREAS; MEASURING IRREGULARITIES OF SURFACES OR CONTOURS
- G01B11/00—Measuring arrangements characterised by the use of optical techniques
- G01B11/24—Measuring arrangements characterised by the use of optical techniques for measuring contours or curvatures
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01N—INVESTIGATING OR ANALYSING MATERIALS BY DETERMINING THEIR CHEMICAL OR PHYSICAL PROPERTIES
- G01N21/00—Investigating or analysing materials by the use of optical means, i.e. using sub-millimetre waves, infrared, visible or ultraviolet light
- G01N21/84—Systems specially adapted for particular applications
- G01N21/88—Investigating the presence of flaws or contamination
- G01N21/89—Investigating the presence of flaws or contamination in moving material, e.g. running paper or textiles
- G01N21/892—Investigating the presence of flaws or contamination in moving material, e.g. running paper or textiles characterised by the flaw, defect or object feature examined
- G01N21/898—Irregularities in textured or patterned surfaces, e.g. textiles, wood
- G01N21/8986—Wood
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01N—INVESTIGATING OR ANALYSING MATERIALS BY DETERMINING THEIR CHEMICAL OR PHYSICAL PROPERTIES
- G01N33/00—Investigating or analysing materials by specific methods not covered by groups G01N1/00 - G01N31/00
- G01N33/18—Water
- G01N33/1826—Organic contamination in water
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01N—INVESTIGATING OR ANALYSING MATERIALS BY DETERMINING THEIR CHEMICAL OR PHYSICAL PROPERTIES
- G01N33/00—Investigating or analysing materials by specific methods not covered by groups G01N1/00 - G01N31/00
- G01N33/46—Wood
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/60—Analysis of geometric attributes
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01N—INVESTIGATING OR ANALYSING MATERIALS BY DETERMINING THEIR CHEMICAL OR PHYSICAL PROPERTIES
- G01N33/00—Investigating or analysing materials by specific methods not covered by groups G01N1/00 - G01N31/00
- G01N33/18—Water
Definitions
- This invention relates to systems and methods for detecting distinguishing characteristics in a bundle of objects, and more specifically, to automatic log scaling and the detection of defects in a bundle of logs. This invention also relates to systems and methods for selecting images of a bundle of objects, and more specifically, to identifying limits of a bundle and associating images therewith.
- Wood processing mills all over the world convert some form of forest raw material (e.g., wood logs, chips, sawdust, biomass) into a finished product (e.g., wood pulp, paper, timber, fiber boards, energy). In most cases, these raw materials arrive at the mill on some form of vehicle—typically trucks, but also trains and water vessels. Most of the time it is important to measure the quantity (and perhaps other parameters) of these raw materials as they arrive at the mill, including for payment, inventory, accounting and/or other purposes.
- forest raw material e.g., wood logs, chips, sawdust, biomass
- a finished product e.g., wood pulp, paper, timber, fiber boards, energy.
- Weight measurement is typically used for its convenience and simplicity, but has a significant limitation when the density of the measured material is uncertain.
- forest raw materials can have greatly variable densities not only due to their biological composition, but also due to the varying degree of moisture they hold.
- a freshly cut log can have twice the moisture content of one that has been drying for six weeks.
- Volumetric measurement removes the problem of variable density from the equation, but it can be very difficult to measure the volume of highly heterogeneous materials that arrive at wood processing mills in an automatic and repeatable manner.
- logs In the lumber industry, large diameter logs (typically about 7-30 inches) often arrive at a saw mill loaded on trucks (or other vehicles) and are then sawn and processed into finished lumber.
- logs In the Southeast United States, which has a significant amount of the country's lumber industry, logs are usually delivered by logging trucks and are weight-scaled at the mill gate. Some mills include additional controls, such as counting logs and looking for “defects,” that are usually done visually by an on-site operator. Visual inspection typically requires the operator to walk around the truck looking for different defects, sometimes having to climb onto the truck to gain better visual access to some logs. This represents a safety hazard and can consume quite a bit of time, during which the truck remains stationary.
- Some mills choose (or are required by law) to hire large teams of human scalers that select random trucks to be hand-scaled, log-by-log, in a meticulous and time-consuming process that involves unloading every log to the ground. All these processes are constrained by time and cost. Furthermore, the additional movement of logs (from truck to ground and ground to log yard) adds machinery cost, requires large amounts of space in the mill, and increases log breakage due to additional log handling.
- Sawmills are usually most interested in the total useful volume of a given log (often measured in “cubic board feet”), since this indicates how much finished lumber can be produced from that log. Weight alone is often an incomplete variable, since weight for a given volume can vary significantly depending on density and moisture content. Furthermore, sawmills tend to assign higher value to larger diameter logs as higher value-added products can be made from these (e.g., a high diameter log allows for the production of many combinations of different products, whereas small diameter logs can only be used to produce small products). Sawmills may also penalize for defects in logs that take away from the useful volume, such as crookedness, cracks, splits, rot, knots and others.
- a bundled object variability detection system includes an array of sensors at least partially surrounding a bundle of objects, wherein the sensors are lasers for obtaining physical dimensional data about the bundle.
- the system also includes a processor for executing computer-executable instructions and a memory for storing computer executable instructions. When the instructions are executed, the processor implements a first module that receives the physical dimensional data from the sensors, a second module that locates a distinct cross-section of a singular object within the bundle based on the physical dimensional data, a third module that determines a model of the singular object based on the located cross-section of the singular object, and a fourth module that analyzes the model to determine if the individual object embodies one or more distinguishing characteristics.
- the sensors are disposed on three sides of the bundle.
- the objects are logs.
- the physical dimensional data comprises peripheral data.
- the second module is adapted to apply a curve fitting technique to determine a shape (which may be a circle) that fits the cross-section, and the curve fitting technique may be a local circle fitting.
- the second module further determines an estimated detectable portion of the singular object, compares the estimated detectable portion to the physical dimensional data associated with the object, and determines an occlusion factor based on the comparison.
- the second module further determines an intersection of the singular object with another object in the bundle.
- the model is a three-dimensional model.
- the distinguishing characteristics are a large end diameter, a small end diameter, a length, and/or a curvature.
- a method for detecting variability in individual objects in a bundle of objects includes obtaining physical dimensional data related to a bundle of objects using laser sensors and processing the physical dimensional data with a processor for executing computer-executable instructions. Processing includes locating a cross-section of an individual object, creating a model of the individual object based on the located cross-section, and analyzing the model to determine if the individual object embodies one or more distinguishing characteristics.
- the obtaining step occurs when the objects are in relative motion to the laser sensors.
- the laser sensors are located on three sides of the bundle.
- the objects are logs.
- the physical dimensional data is peripheral data.
- the locating step includes applying a curve fitting technique to determine a shape (which may be a circle) that fits the cross-section, and the curve fitting technique may be a local circle fitting.
- the locating step includes determining an estimated detectable portion of the singular object, comparing the estimated detectable portion to the physical dimensional data associated with the object, and determining an occlusion factor based on the comparison.
- the locating step includes determining an intersection of the singular object with another object in the bundle.
- the model is a three-dimensional model.
- the distinguishing characteristics are a large end diameter, a small end diameter, a length, and/or a curvature.
- a bundled object image selection system in another aspect, includes an array of sensors configured to at least partially surround a bundle of objects, wherein the sensors are lasers adapted to obtain physical dimensional data about the bundle.
- the system also includes at least one camera configured to obtain a plurality of images of the bundle, a processor for executing computer-executable instructions, and a memory for storing computer executable instructions.
- the processor implements a limit module that processes the physical dimensional data to determine a limit of the bundle and a selection module that selects at least one image from the plurality of images corresponding to the limit.
- the sensors are laser sensors. In some embodiments, the sensors are located on at least three sides of the bundle. In some embodiments, the objects are logs. In some embodiments, the physical dimensional data includes distance and angle data between a plurality of set points. In some embodiments the camera is configured to take at least one of photographs and video. In some embodiments, the limit module processes histogram vectors starting at a center of the bundle and working outwards. In some embodiments, the selected image depicts an end of the bundle. In some embodiments, the method includes a cross-section module that organizes the physical dimensional data into a plurality of cross-sections of the bundle. In some embodiments, the system includes a timing module that associates the physical dimensional data with at least one image. In some embodiments, the system includes a synchronization mechanism, and the synchronization mechanism may be configured to use electrical signals to trigger the start of the sensors and the at least one camera.
- a method for selecting an image of bundled objects includes obtaining physical dimensional data about the bundled objects using laser sensors, recording a plurality of images of the bundled objects with at least one camera, processing the physical dimensional data with a processor to determine a limit of the bundle, and selecting at least one image from the plurality of images corresponding to the limit.
- the obtaining step occurs when the objects are in relative motion to the laser sensors.
- the sensors are laser sensors.
- the sensors are located on at least three sides of the bundle.
- the objects are logs.
- the physical dimensional data is distance and angle data between a plurality of set points.
- the recording step includes taking one of photographs and video.
- the processing step includes processing histogram vectors starting at a center of the bundle and working outwards.
- the selected image depicts an end of the bundle.
- the method includes the step of organizing the physical dimensional data into a plurality of cross-sections of the bundle.
- the method includes the step of associating the physical dimensional data and the at least one image with a common time indicator.
- the method includes synchronizing the start of the sensors and the at least one camera with an electrical signal.
- FIGS. 1A to 1E are depictions of various distinguishing characteristics of logs according to an embodiment of the invention.
- FIG. 2 is a block diagram illustrating by example a process for detecting variability in bundled objects according to an embodiment of the invention.
- FIG. 3 is a block diagram illustrating by example a system for detecting variability in bundled objects according to an embodiment of the invention.
- FIGS. 4A and 4B depict an array of sensors according to an embodiment of the invention.
- FIG. 5 depicts a cross-section of a bundle detected by sensors according to an embodiment of the invention.
- FIGS. 6 and 7 depict images of bundle data as obtained by the sensors according to an embodiment of the invention.
- FIG. 8 is a block diagram illustrating by example a local circle fitting module according to an embodiment of the invention.
- FIG. 9 depicts minutiae on a cross-section according to an embodiment of the invention.
- FIG. 10 depicts a method for determining minutia candidates according to an embodiment of the invention.
- FIG. 11 depicts minutia clusters according to an embodiment of the invention.
- FIG. 12 depicts fitted circles according to an embodiment of the invention.
- FIG. 13 is a block diagram illustrating by example a model creation module according to an embodiment of the invention.
- FIGS. 14A to 14C depict progression of model development according to an embodiment of the invention.
- FIG. 15 is a block diagram illustrating by example a process for selecting images of a bundle of objects according to an embodiment of the invention.
- FIG. 16 is a block diagram illustrating by example a system for selecting images of a bundle of objects according to an embodiment of the invention.
- FIGS. 17A and 17B depict images of limits of a bundle according to an embodiment of the invention.
- FIGS. 18A and 18B depict an image of a limit of a bundle and an associated scan according to an embodiment of the invention.
- FIGS. 19A and 19B depict histograms of bundles according to an embodiment of the invention.
- FIG. 20 depicts an interface for observing and marking images of bundles according to an embodiment of the invention.
- FIG. 21 depicts a report on a bundle according to an embodiment of the invention.
- FIG. 1A depicts a log 100 with a length (“L”), a small end diameter (“SED”), and a large end diameter (“LED”).
- L a length
- SED small end diameter
- LED large end diameter
- the log 100 may be considered to have a defect if the length, the small end diameter, and/or the large end diameter fall outside of an acceptable range.
- the acceptable range may be defined by any interested party, such as mill operators.
- FIG. 1B depicts the log 100 with a curvature (also known as “crook” or “sweep”), as defined by a distance (or curvature index) “S” between the log center 102 at a point along the length of the log 100 and an axis 104 defined between the centers of the ends of the log 100 .
- the log 100 may be deemed to have a defect of being too crooked if the curvature index is outside of a specified range.
- FIG. 1C depicts butt swell in the log 100 , which may be defined as expansion in the lower end of the tree trunk above and beyond the usual stump flare found in all species. This is often considered undesirable as the wood in the swollen part of the log 100 is usually too soft to be useful for many applications, such as construction or veneer logs.
- FIG. 1D depicts the log 100 with a split 106 , which is a crack that extends longitudinally into the log 100 , thereby decreasing the total useful volume of the log 100 .
- FIG. 1C depicts butt swell in the log 100 , which may be defined as expansion in the lower end of the tree trunk above and beyond the usual stump flare found in all species. This is often considered undesirable as the wood in the swollen part of the log 100 is usually too soft to be useful for many applications, such as construction or veneer logs.
- FIG. 1D depicts the log 100 with a split 106 , which is a crack that extends longitudinally into the log 100 , thereby decreasing the total useful volume
- 1E depicts the log 100 with an uneven butt, which occurs when a cross section of the lower end of the log 100 is highly uneven (i.e., not circular), again decreasing the total useful volume of the log 100 .
- a comprehensive description of log defects and the treatment they are given can be found in the U.S. Forest Service and USDA “National Forest Log Scaling Handbook.”
- FIG. 2 depicts a process 200 for detecting variability in individual objects in a bundle of objects, where the variability to be detected may be defined by a user as one or more distinguishing characteristics, as set forth above.
- the process 200 includes acquiring/obtaining physical dimensional data related to the bundle of objects (e.g., by using laser sensors) (Step 202 ) and processing the physical dimensional data with a processor for executing computer-executable instructions.
- Processing may include locating a cross-section of an individual object (Step 204 ), creating a model of the individual object based on the located cross-section (Step 206 ), optionally estimating confidence in the model (Step 208 ), and analyzing the model to determine if the individual object embodies one or more distinguishing characteristics (Step 210 ).
- FIG. 3 is a physical depiction of a bundled object variability detection system 300 , including an array of sensors 302 (e.g., laser sensors) that at least partially surround the bundle of objects.
- the sensors 302 are adapted to obtain physical dimensional data about the bundle and communicate the data through a communication module 303 to a subsystem/memory 306 for storing the computer-executable instructions.
- the system 300 also includes a processor 304 for executing the computer-executable instructions.
- the memory 306 includes a first module 308 that receives the physical dimensional data from the sensors 302 , a second module 310 that locates a distinct cross-section of a singular object within the bundle based on the physical dimensional data, a third module 312 that determines a model of the singular object based on the located cross-section of the singular object, and a fourth module 314 that analyzes the model to determine if the individual object embodies one or more distinguishing characteristics.
- the memory 306 may also include a fifth module to determine a confidence value in the model.
- the depicted array 302 is a Logmeter® 4000 system available from Woodtech Measurement Solutions (Santiago, Chile) having individual laser-scanning sensors 302 on a rigid structure 422 (e.g., a metallic structure) for acquiring at least physical dimensional data about the objects (e.g., logs).
- the structure 422 is sized for a logging truck to be able to drive through it with sufficient clearance on all sides.
- the sensors 302 may be disposed on multiple sides of the structure 422 , such that when a truck drives through with a bundle 600 (or multiple bundles 600 ) of logs 100 , as depicted in FIG.
- the sensors 302 are recording data about the bundle 600 from multiple sides (e.g., from three sides). In some embodiments, the sensors 302 may acquire data on the bundle 600 from fewer than three sides, and the sensors 302 may be disposed on the ground to acquire data from beneath the bundle 600 . Additional equipment may be added to the structure 422 , such as one or more cameras.
- the sensors 302 may precisely measure the distance and angle of a set number of points in its field of vision. The number of points depends on the laser resolution and the laser capture angles. By placing an array of lasers 302 to cover the same plane (perpendicular to the trajectory of the objects) from different positions, a complete cross-section 500 or scan of the bundle 600 may be obtained, as shown in FIG. 5 .
- FIG. 4B depicts additional sensors 302 that may be disposed at angles relative to the trajectory of the objects at the measured data point to obtain additional data, including data on a face at a limit of the bundle 600 to acquire data about all (or substantially all) of the logs 100 .
- the laser array 302 may be configured to acquire the data while a truck moves the bundle 600 through the perpendicular laser capture plane.
- the bundle 600 movement allows for the generation of cross-sections of the full length of the bundle 600 .
- the amount of data acquired depends on the speed of the truck and the scanning frequency.
- One such method includes using an additional laser-scanner placed on the structure, either in a scanning plane parallel to the ground such that it scans the wheels of the vehicle or on top of the structure in a scanning plane parallel to the road and perpendicular to the ground such that it scans in a longitudinal way through the upper part of the truck, to measure the displacement and velocity of the truck by comparing and matching the shapes observed in subsequent scans.
- an additional laser-scanner placed on the structure, either in a scanning plane parallel to the ground such that it scans the wheels of the vehicle or on top of the structure in a scanning plane parallel to the road and perpendicular to the ground such that it scans in a longitudinal way through the upper part of the truck, to measure the displacement and velocity of the truck by comparing and matching the shapes observed in subsequent scans.
- Another method includes using a radar speed measurement system placed in front of the truck, e.g., at a distance of at least one truck-length, to measure the change in position of the front of the truck over time. Other known methods for detecting the speed of moving objects may also be used.
- the acquired data may be provided to and stored in the first module 308 for further processing.
- the processor 304 executes the instructions in the second module 310 in the memory 306 to apply a curve fitting to find the best fitting shapes for the cross-section 500 of the logs 100 in the bundle 600 , such as that depicted in FIG. 5 based on the perimeter of the logs 100 , so that each shape represents a cross-section of an individual log 100 .
- the curve fitting technique is a local circle fitting technique.
- FIG. 8 depicts the module 310 adapted for fitting shapes (e.g., circles) to the cross-section 500 .
- the module 310 includes modules for pre-processing the laser data ( 802 ) to sort and filter the acquired data, detecting minutiae ( 804 ) to locate special features, fitting circles ( 806 ) to fit groups of data to a circle model, and post-processing the circle models ( 808 ) by merging and filtering the generated circles and minimizing overlap between them.
- the module 310 may be executed for each laser scan independently.
- the pre-process module 802 includes sorting the data points of each laser measurement ( 802 a ) to allow the system to make some assumptions about the order of angles. Often this is done in a clockwise manner.
- the pre-process module 802 also may include filtering out unreliable points of the laser measurements ( 802 b ) to eliminate poor quality data and to discard non-wood objects, such as load supports, wheels, load platform, driver cockpit, etc.
- Data filtering ( 802 b ) helps the entire local circle fitting module 310 proceed easier and faster, as well as produce better overall results.
- Data filtering ( 802 b ) may include applying one or more of the following filters: an amplitude filter to eliminate all the points that have lower amplitude than a given threshold; a Euclidean filter to eliminate isolated points of each scan by evaluating how many neighbors each point has within a determined maximum distance (all points that do not have the minimum required number of neighbors are filtered out of the data); an external window filter to eliminate all points outside of a determined rectangular window for each scan; and an internal window filter to eliminate all the points inside of a determined rectangular window for each scan.
- the minutiae detection module 804 detects special features, called minutiae, in each scan.
- a minutia may be the point where laser data of two contiguous logs intersect, as depicted by the points 930 in FIG. 9 .
- Minutiae detection 804 includes generating candidates ( 804 a ), analyzing the candidates ( 804 b ), and clustering the minutiae ( 804 c ).
- a set of minutiae candidates is generated by calculating gradients between consecutive points and forming a first minutiae group of points where the gradient exceeds a threshold. Other groups of points may be selected using a different rule, in some embodiments simultaneous with the other selections.
- the minutiae detection module 804 determines the line 1042 between the points P i ⁇ n and P i+n , called L i ⁇ n,i+n where n is a parameter of the system, as depicted in FIG. 10 . If the distance 1044 between P i and L i ⁇ n,i+n is higher than a fixed threshold, the point P i 1040 may be included in the second set of minutiae candidates. This module 804 may be executed as necessary for different threshold values.
- minutiae clustering ( 804 c ) the selected minutiae candidates 1130 depicted in FIG. 11 may appear to be grouped around the real minutiae.
- a distance based clustering process may be executed over the set of minutia candidates 1130 to determine a unique minutia candidate for each real minutia.
- Those minutia candidates 1130 below a threshold value may be grouped, with the mean of each group serving as the final minutia.
- the circle fitting module ( 806 ) may be executed to find circles that best fit the log data in each scan. Circular outlines may be generated from the data points of the previous steps through point clustering ( 806 a ) and circle model fitting ( 806 b ).
- Point clustering ( 806 a ) includes selecting groups of data points that are part of each log section by using an algorithm to select data points between two consecutive minutiae that indicate the selected data points pertain to a particular log 100 .
- Circle model fitting ( 806 b ) follows selection of the points of each log section by executing an iterative circle-fitting algorithm to generate a circle mode. This procedure may be executed independently for each scan of each laser.
- the circle-fitting algorithm may have two stages: a first stage to create an initial circle approximation using standard least square circle fitting over the mentioned points; and a second stage to optimize the parameters of the circle obtained in the first stage by reducing the real distance of the points to the circle model.
- the iterative stage may provide a near-optimal result, however the post-processing module 808 may still be used.
- the post-process module 808 includes merging circles ( 808 a ), optimizing circles ( 808 b ), and filtering circles ( 808 c ).
- the circles merge ( 808 a ) accounts for the overlapping circles generated by contiguous lasers that may be created as a result of the system detecting the same log section from independent laser scans. Each circle detection may be evaluated between the different lasers to determine if two circles are sufficiently overlapping, and if so, whether to merge them. In one exemplary embodiment, to evaluate if two circles are sufficiently overlapping, the post-processing module 808 calculates the common area of both circles.
- the circles may be considered to be part of the same section and the points of both circles to be merged may be used to generate a new circle model using the circle-fitting algorithm of the circle model fitting ( 806 b ).
- This new estimation may improve both independent estimations because it uses more information to estimate the same circle.
- the post-processing module 808 optimizes the merged circles by considering the overlap (calculated as the common area between each pair of circles) that can exist between circles of nearby model log sections.
- the circles should not overlap as the logs 100 do not overlap each other in the bundle 600 .
- the optimization process ( 808 b ) seeks to minimize the total overlapped area between all circles in each scan, as well as the distance to the points of the laser to the circles models by adjusting the radius of each detected circle to create a final set of optimized circle detections.
- a gradient method that defines the optimal direction to move each radius to obtain a better fitness evaluation may be used.
- the post-processing module 808 filters out circles with diameters under or over set thresholds during circle filtering ( 808 c ), resulting in the circles 1250 depicted in FIG. 12 .
- These thresholds may be based on real log diameter limits. In some embodiments, if the logs 100 are expected to have diameters of between approximately 10 and 50 inches, then the thresholds may be 9 and 55 inches. Different sizes of logs, both smaller and larger, may be used, and different threshold values may be used.
- the second module 310 may also include additional instructions for processing the data from the diagonal lasers 302 .
- One method may be based on peripheral trunk face (e.g., limits of the logs 100 ) detection. This method uses the detected circles 1250 given by the previous steps of the module 310 to generate several seeds near the respective trunk faces. Based on these seeds, an expectation maximization algorithm (EM) with a circular model dependent objective function may be developed to approximate the best circle near to the seeds which contains all the points of the data from the diagonal lasers 302 that describes a circular shape. This approximated circle may correspond to the face of a unique log 100 , similar to how the circles 1250 relate to the other logs 100 .
- EM expectation maximization algorithm
- Other instructions may include bundling internal logs 100 by deleting data from the diagonal lasers 302 relating to peripheral logs 100 .
- the module 310 may detect faces of internal logs 100 using differences between laser scans. For example, if a difference with a high spatial density between information in consecutive scans is detected, a new seed may be generated, and the EM algorithm step may be developed based on the new seeds in the same way as in the peripheral case.
- These instructions may supplement an existing model of the periphery loss to verify or correct the existing model.
- a new model may be created based on the newly generated circles derived from the data from the diagonal lasers 302 (e.g., diameter information).
- the data from the diagonal lasers 302 may help make the pre-existing circles more accurate.
- the processor 304 may then execute the instructions in the third module 312 to estimate a model for each log 100 that is related to the fitted circles 1250 , identifying groups of circles of the same log 100 , and filtering the information to create a relatively smooth estimation of each log 100 .
- FIG. 13 depicts the trunk detector/model creation module 312 , which includes a direct Kalman filter 1302 and an inverse Kalman filter 1303 followed by modules for merging the direct models ( 1304 ) and merging the inverse models ( 1305 ), respectively, ending with a module for the merger of the direct and inverse models ( 1306 ).
- the direct and inverse Kalman filters 1302 / 1303 are arranged in parallel, with one filter starting from the first scan of the bundle 600 and moving toward the last scan, and the other starting from the last scan working forward. This process aims to reduce the bias produced by the directionality of the Kalman filters 1302 / 1303 as direct and inverse filters often have different results due to the direction of the process.
- Each Kalman filter 1302 / 1303 has three stages, an observation selector 1302 a / 1303 a , a new model generator 1302 b / 1303 b , and a models estimator 1302 c / 1303 c.
- the observation selector 1302 a / 1303 a evaluates if the circles 1250 of the current scan belong to any of the log models. Each circle 1250 may be compared with the existing models using the Mahalanobis distance. Additionally, a circle 1250 may be required to meet a confidence threshold given by the local circle fitting process 800 to be accepted as an observation. The circles 1250 that are near enough to a model and exceed the confidence threshold may be selected as observations of this model.
- the new model generators 1302 b / 1303 b may consider whether the circles 1250 not associated with a model exceed a second confidence threshold to start a new log model. If not, the circles 1250 may be discarded.
- the models estimators 1302 c / 1303 c include a standard Kalman filter that uses the position of the center of the log 100 and its radius in the current scan as the state of the model. Additionally, a velocity vector, which represents the direction in which the log diameter grows, may be estimated using the difference between observations of the log 100 in consecutive scans. This velocity value may be considered as the perturbation variable of the filtering process, and may be used to estimate the predictive state of the filtering. A corrective stage may be used to verify or modify the results, such as through a comparison with the circles 1250 .
- each log 100 may be represented by several separate models that need to be combined.
- each model section may be compared to others to determine if they are part of the same log 100 .
- Each merge model module 1304 / 1305 includes a volume overlapping estimator 1304 a / 1305 a and a merge overlapped trunks module 1304 b / 1305 b .
- the overlapping estimators 1304 a / 1305 a compare pairs of log models to determine the overlapped volume between them in regions where the physical logs 100 are expected to be in contact.
- the overlapping estimators 1304 a / 1305 a use an algorithm to make a cylindrical projection of the log to the scans where they could be overlapped. If the calculated overlapped volume exceeds a threshold volume ratio, the models may be merged by the merger modules 1304 b / 1305 b . This process may be executed recursively, allowing more than two parts of a model log to be merged into the same model, and may be the same for both the direct and inverse Kalman Filter estimators 1302 / 1303 .
- the merge direct/inverse models module 1306 is used to merge the models generated by the estimators 1302 / 1303 to account for the directional bias using a volume overlapping estimator 1306 a and a merge overlapped trunks module 1306 b .
- the overlapping estimator 1306 a may be similar to those described above (estimators 1304 a / 1305 a ) for use in calculating the volume overlap between log models. Those models exceeding the threshold may be designated for merger.
- the merge overlapped trunks module 1306 b may consider those models designated to be merged and calculate a mean center and radius between the multiple models of the log 100 . When the log 100 has only a single model associated with it, the merge module 1306 b may simply select this model. In this manner, the merge module 1306 b creates a final set of log models.
- FIGS. 14A to 14C A progression of the model generation for a single log 100 is depicted in FIGS. 14A to 14C .
- FIG. 14A depicts a right side of the bundle 600 of logs 100 as scanned by the laser array 302 .
- FIG. 14B depicts the associated observations (a series of circles) 1402 of a singular log 100 as estimated by one of the observation selector modules 1302 a / 1303 a .
- FIG. 14C depicts the final model 1404 of the log 100 following filtering and completion of the last merge overlapped trunks module 1306 b .
- the impact of the Kalman filters 1302 / 1303 can be seen in the differences between FIGS.
- the process 200 optionally includes estimating confidence in the models 1404 (Step 208 ) for reliably detecting the distinguishing characteristics (e.g., length, small end diameter, large end diameter, curvature, etc.) to avoid false positive detections of defects.
- the estimating step (Step 208 ) also includes evaluating the data quality to dynamically define the best thresholds over the confidence values to discard or accept a measurement.
- the second module 310 may include instructions for determining an estimated detectable portion of a singular log 100 , comparing the estimated detectable portion to the physical dimensional data associated with the log 100 , and determining an occlusion factor based on the comparison.
- the second module 310 may be used estimate the visual region of each log from each laser sensor 302 by multiple methods.
- One method includes using real data to count the data points given by the lasers 420 for each log 100 and comparing this count with a section of the bundle perimeter the laser 420 was expected to have viewed (may be done for each log).
- Another method involves using a theoretical model that models all logs as cylinders and estimates the portion of the cylinder that should have been viewed by the laser 420 considering the occlusions generated by all the cylindrical logs. Both methods generate a measurement of the viewed and occluded regions of each log section for each complete log 100 over the entire bundle.
- Data quality may be determined as a proportional factor of the difference between measurements obtained by these methods. If the difference in both measurements increases, it is likely more points that should be visible are not being seen, therefore lowering the data quality.
- This occlusion factor may be used to dynamically adjust some thresholds to filter out defects in undetected logs.
- each log 100 it may be desirable to know how much occlusion occurs where the system believes the large and small ends of the log 100 are located. If there is a high level of occlusion, the system may be less confident in determining the measurements of the distinguishing characteristics.
- To determine the level of occlusion five occlusion factors may be calculated, with the first four relating to the level of occlusion in the scans just before and just after each end of the log 100 , and the last one looking at occlusion for the entire log. With these occlusion factors, and using the dynamically estimated thresholds of data quality, the system may decide if each distinguishing characteristic can be calculated with the required confidence.
- Analyzing the model is the final stage for estimating the distinguishing characteristics of each log 100 .
- the relevant distinguishing characteristics of each log 100 may be measured from its associated model 1404 , and the occlusion factors and data quality may be used to determine the confidence of these measurements. This confidence may be used to determine whether each measurement is indicative of the log 100 having a defect.
- the process 200 may help minimize the number of false positive defects calculated by the system while at the same time maximizing the number of true positives. The sensitivity of the system to calculating false positives can be adjusted according to the requirements of each mill, even for individual bundles 600 .
- FIG. 15 depicts another embodiment including a process 1500 directed to selecting an image of bundled objects.
- the process 1500 includes obtaining physical dimensional data about the bundle 600 (Step 1502 ), recording a plurality of images of the bundle 600 with at least one camera (Step 1504 ), processing the physical dimensional data with a processor to determine a limit of the bundle 600 (Step 1506 ), and selecting at least one image from the plurality of images corresponding to the limit (Step 1508 ).
- the process 1500 optionally includes organizing the data into a plurality of cross-sections of the bundle 600 (Step 1510 ), associating the data and at least one image with a common time indicator (Step 1512 ), and/or synchronizing the start of the sensors 302 and the camera with an electrical signal (Step 1514 ).
- FIG. 16 depicts a related system 1600 for selecting images of bundled objects.
- the system 1600 includes the sensors 302 to obtain physical dimensional data about the bundle 600 as described above.
- Cameras 1602 are included in the system 1600 to obtain a plurality of images of the bundle 600 .
- the cameras 1602 may be positioned on the structure 422 , or may be located remote from the structure 422 .
- the cameras 1602 may record video from which single images may be taken, or the camera 1602 may take photographs, at a high resolution while the bundle 600 moves through the structure 422 .
- the cameras 1602 may be positioned and angled (e.g., similar to the lasers 302 in FIG. 4B ) so that images of the front and back of the bundle 600 , as well as the right and left-hand sides can be obtained.
- This setup may be extended to include cameras 1602 that capture the top and/or bottom side of the bundle 600 .
- cameras 1602 Using cameras 1602 with a high enough frame rate, detailed information of each part of the bundle 600 may be captured as can be seen in FIGS. 17A and 17B .
- the cumulative data 308 may be stored in memory/subsystem 1604 , along with other modules.
- the scan rate of the sensors 302 and the frame rate of the cameras 1602 may be kept constant to ensure both sources of data remain synchronized.
- a synchronization mechanism 1606 may be used to help ensure the sensors 302 and the cameras 1602 begin operation at the same time.
- the synchronization mechanism 1606 may provide an electrical signal at a designated time (e.g., when the bundle 600 passes a certain point) to start the sensors 302 and the cameras 1602 .
- each scan may be associated with a particular image.
- a timing module 1608 may be used to associate the physical dimensional data with at least one image, e.g., by associating a unique image ( FIG.
- a cross-section module 1610 may be used to organize the data into a plurality of cross-sections of the bundle 600 . As each cross-section may have an associated image, it is possible to look at an image of the bundle 600 anywhere there is a detected cross-section.
- the images of greatest interest may be those of the limits or ends of the bundle. These limit images may enable a human user to perform a visual analysis to determine if a distinguishing characteristic is present (e.g., a swollen butt, a split, an uneven butt, etc.).
- the physical dimensional data may be processed according to the limit selection module 1612 by using a y-axis histogram calculation process, a bundle center calculation process, a bundle limits calculation, and a validation process.
- the y-axis histogram calculation process includes counting those data points located above a y-axis threshold. Exemplary histogram analyses are depicted in FIGS. 19A (single bundle 600 ) and 19 B (multiple bundles 600 ).
- the bundle center calculation process may include processing y-axis histogram vectors to determine each bundle's central or middle scan.
- the bundle limits calculation process may include processing the y-axis histogram vectors starting at the determined center and working outwards. This process tends to result in limit detection with greater accuracy than existing methods.
- a number of rules may be applied, including the following: limits of different bundles 600 cannot overlap; the scan that marks the beginning of the load cannot come after the one that marks the end; and the limits of the load cannot be less than a certain distance or more than a certain distance apart (the distance used may vary based on application).
- the limit module 1612 determines the limits of the bundle 600 .
- a selection module 1614 can automatically select at least one image from a plurality of images corresponding approximately to the limit.
- the selection module 1614 may select multiple images as others around the limit may provide a better view. For each bundle 600 , several different images that show the front or back of the bundle 600 may be appropriate (the number can depend on factors such as truck speed, the camera frame rate, and the spacing between bundles). Images taken closer to the limit of the bundle 600 may allow an operator to view some logs 100 in greater detail (due to greater magnification), but can provide a more tangential angle of view to the log faces, thus making some logs 100 more difficult to view.
- Images taken from further away may provide a better angle of view, but can compromise the visible detail in each log 100 .
- the optimum image may be considered to be the one where the operator has the best overall perspective of the front or end of the bundle 600 so as to visually determine defects (particularly those typically detected with a visual inspection, including swollen butts, splits, and uneven butts).
- the selection module 1614 may also be used to select images on either side of the optimum, accounting for other factors such as the speed of the bundle 600 through the structure 422 , thus allowing the operator to scroll through different images in order to determine the best for visual inspection according to his/her subjective evaluation. Further, the selection module may select images from both limits so that the front and back ends of each bundle are displayed.
- the various images may be displayed in a user-friendly interface to help operators identify and mark log defects.
- This software may enable a user to easily scroll between different images if one automatically selected by the system is not ideal or if the operator desires a different viewing angle.
- Other features include the ability to adjust the color, contrast, white balance and other settings to compensate for problems with an image, such as poor lighting, the ability to zoom in and out of the image to focus on different details, and tools to digitally mark and color-code defects.
- An exemplary interface is depicted in FIG. 20 .
- the system allows an operator to conduct the visual inspection remote from the bundle 600 on a computer screen. This can help save time by eliminating the need for the operator to walk around, and in some cases even onto, the bundle 600 .
- the operator may be located in an entirely different geographical location from the bundle 600 , and multiple operators from various geographically distributed sites may analyze the images concurrently or at different times. Further, the bundle 600 may remain in motion while the data is acquired and the operator performs a visual analysis, or the images may be archived for later analysis.
- the system provides a location and time independent means for inspecting bundles 600 of logs 100 , creating many efficiencies over the common current protocol.
- FIG. 21 depicts one such report 2100 , though the report 2100 may take many different forms.
- the information generated throughout the process may be stored for later review in an auditing system. Interested parties may later review the digital markings for a variety of reasons, including to determine the effectiveness of operators in detecting defects and to settle disputes with suppliers.
- the information may be referenced as long as the data is stored and accessible.
- algorithms and processing techniques described above may be implemented in software modules or hardware components that perform certain tasks.
- the algorithms and processing techniques may advantageously be configured to reside on an addressable storage medium and be configured to execute on one or more processors.
- the algorithms and processing techniques may be fully or partially implemented with a general purpose integrated circuit (IC), co-processor, FPGA, or ASIC.
- IC general purpose integrated circuit
- algorithms and processing technique may include, by way of example, components, such as software components, object-oriented software components, class libraries, class components and task components, processes, functions, attributes, procedures, subroutines, segments of program code, drivers, firmware, microcode, circuitry, data, databases, data structures, tables, arrays, and variables.
- components and algorithms and processing techniques may be combined into fewer components and algorithms and processing techniques or further separated into additional components and algorithms and processing techniques. Additionally, the components and algorithms and processing techniques may advantageously be implemented on many different platforms, including computers, computer servers, data communications infrastructure equipment such as application-enabled switches or routers, or telecommunications infrastructure equipment, such as public or private telephone switches or private branch exchanges (PBX). In any of these cases, implementation may be achieved either by writing applications that are native to the chosen platform, or by interfacing the platform to one or more external application engines, for example, locally or over a network.
- PBX private telephone switches or private branch exchanges
Landscapes
- Engineering & Computer Science (AREA)
- Life Sciences & Earth Sciences (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Chemical & Material Sciences (AREA)
- Wood Science & Technology (AREA)
- Analytical Chemistry (AREA)
- Biochemistry (AREA)
- General Health & Medical Sciences (AREA)
- Immunology (AREA)
- Pathology (AREA)
- Textile Engineering (AREA)
- Theoretical Computer Science (AREA)
- Medicinal Chemistry (AREA)
- Food Science & Technology (AREA)
- Geometry (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Computer Hardware Design (AREA)
- Evolutionary Computation (AREA)
- General Engineering & Computer Science (AREA)
- Length Measuring Devices By Optical Means (AREA)
- Architecture (AREA)
- Software Systems (AREA)
Abstract
A bundled object variability detection system includes an array of sensors at least partially surrounding a bundle of objects, wherein the sensors comprise lasers adapted to obtain physical dimensional data about the bundle. The system also includes a processor for executing computer-executable instructions and a memory for storing computer executable instructions. When the instructions are executed, the processor implements a first module that receives the physical dimensional data from the sensors, a second module that locates a distinct cross-section of a singular object within the bundle based on the physical dimensional data, a third module that determines a model of the singular object based on the located cross-section of the singular object, and a fourth module that analyzes the model to determine if the individual object embodies one or more distinguishing characteristics.
Description
- This application claims priority to U.S. provisional patent application Ser. Nos. 61/529,549 and 61/529,603, both filed on Aug. 31, 2011, each of which is hereby incorporated by reference in its entirety.
- This invention relates to systems and methods for detecting distinguishing characteristics in a bundle of objects, and more specifically, to automatic log scaling and the detection of defects in a bundle of logs. This invention also relates to systems and methods for selecting images of a bundle of objects, and more specifically, to identifying limits of a bundle and associating images therewith.
- Wood processing mills all over the world convert some form of forest raw material (e.g., wood logs, chips, sawdust, biomass) into a finished product (e.g., wood pulp, paper, timber, fiber boards, energy). In most cases, these raw materials arrive at the mill on some form of vehicle—typically trucks, but also trains and water vessels. Most of the time it is important to measure the quantity (and perhaps other parameters) of these raw materials as they arrive at the mill, including for payment, inventory, accounting and/or other purposes.
- To determine the quantity of raw material in a given delivery, various methods can be used, primarily relating to either weight or volume. Weight measurement is typically used for its convenience and simplicity, but has a significant limitation when the density of the measured material is uncertain. For example, forest raw materials can have greatly variable densities not only due to their biological composition, but also due to the varying degree of moisture they hold. A freshly cut log can have twice the moisture content of one that has been drying for six weeks. Volumetric measurement removes the problem of variable density from the equation, but it can be very difficult to measure the volume of highly heterogeneous materials that arrive at wood processing mills in an automatic and repeatable manner.
- In the lumber industry, large diameter logs (typically about 7-30 inches) often arrive at a saw mill loaded on trucks (or other vehicles) and are then sawn and processed into finished lumber. In the Southeast United States, which has a significant amount of the country's lumber industry, logs are usually delivered by logging trucks and are weight-scaled at the mill gate. Some mills include additional controls, such as counting logs and looking for “defects,” that are usually done visually by an on-site operator. Visual inspection typically requires the operator to walk around the truck looking for different defects, sometimes having to climb onto the truck to gain better visual access to some logs. This represents a safety hazard and can consume quite a bit of time, during which the truck remains stationary. Some mills choose (or are required by law) to hire large teams of human scalers that select random trucks to be hand-scaled, log-by-log, in a meticulous and time-consuming process that involves unloading every log to the ground. All these processes are constrained by time and cost. Furthermore, the additional movement of logs (from truck to ground and ground to log yard) adds machinery cost, requires large amounts of space in the mill, and increases log breakage due to additional log handling.
- Sawmills are usually most interested in the total useful volume of a given log (often measured in “cubic board feet”), since this indicates how much finished lumber can be produced from that log. Weight alone is often an incomplete variable, since weight for a given volume can vary significantly depending on density and moisture content. Furthermore, sawmills tend to assign higher value to larger diameter logs as higher value-added products can be made from these (e.g., a high diameter log allows for the production of many combinations of different products, whereas small diameter logs can only be used to produce small products). Sawmills may also penalize for defects in logs that take away from the useful volume, such as crookedness, cracks, splits, rot, knots and others.
- Accordingly, there is a need for a system that automatically and precisely estimates desired variables of loads delivered to a mill to improve the efficiency of the mill by a significant margin in terms of time and cost. There is also a need for a system that aids a human operator in rapidly detecting and registering specific log defects in a much more time and cost efficient manner, thus increasing the mill's capability of searching for defects and/or reducing the need for additional people. It is also desirable that this system provides the capability of storing images of each load that is scanned, as well as the inputs of the human operator.
- In general and in one aspect, a bundled object variability detection system is provided. The system includes an array of sensors at least partially surrounding a bundle of objects, wherein the sensors are lasers for obtaining physical dimensional data about the bundle. The system also includes a processor for executing computer-executable instructions and a memory for storing computer executable instructions. When the instructions are executed, the processor implements a first module that receives the physical dimensional data from the sensors, a second module that locates a distinct cross-section of a singular object within the bundle based on the physical dimensional data, a third module that determines a model of the singular object based on the located cross-section of the singular object, and a fourth module that analyzes the model to determine if the individual object embodies one or more distinguishing characteristics.
- In some embodiments, the sensors are disposed on three sides of the bundle. In some embodiments, the objects are logs. In some embodiments, the physical dimensional data comprises peripheral data. In some embodiments, the second module is adapted to apply a curve fitting technique to determine a shape (which may be a circle) that fits the cross-section, and the curve fitting technique may be a local circle fitting. In some embodiments, the second module further determines an estimated detectable portion of the singular object, compares the estimated detectable portion to the physical dimensional data associated with the object, and determines an occlusion factor based on the comparison. In some embodiments, the second module further determines an intersection of the singular object with another object in the bundle. In some embodiments, the model is a three-dimensional model. In some embodiments, the distinguishing characteristics are a large end diameter, a small end diameter, a length, and/or a curvature.
- In general, in another aspect, a method for detecting variability in individual objects in a bundle of objects includes obtaining physical dimensional data related to a bundle of objects using laser sensors and processing the physical dimensional data with a processor for executing computer-executable instructions. Processing includes locating a cross-section of an individual object, creating a model of the individual object based on the located cross-section, and analyzing the model to determine if the individual object embodies one or more distinguishing characteristics.
- In some embodiments, the obtaining step occurs when the objects are in relative motion to the laser sensors. In some embodiments, the laser sensors are located on three sides of the bundle. In some embodiments, the objects are logs. In some embodiments, the physical dimensional data is peripheral data. In some embodiments, the locating step includes applying a curve fitting technique to determine a shape (which may be a circle) that fits the cross-section, and the curve fitting technique may be a local circle fitting. In some embodiments, the locating step includes determining an estimated detectable portion of the singular object, comparing the estimated detectable portion to the physical dimensional data associated with the object, and determining an occlusion factor based on the comparison. In some embodiments, the locating step includes determining an intersection of the singular object with another object in the bundle. In some embodiments, the model is a three-dimensional model. In some embodiments, the distinguishing characteristics are a large end diameter, a small end diameter, a length, and/or a curvature.
- In general, in another aspect, a bundled object image selection system includes an array of sensors configured to at least partially surround a bundle of objects, wherein the sensors are lasers adapted to obtain physical dimensional data about the bundle. The system also includes at least one camera configured to obtain a plurality of images of the bundle, a processor for executing computer-executable instructions, and a memory for storing computer executable instructions. When the instructions are executed, the processor implements a limit module that processes the physical dimensional data to determine a limit of the bundle and a selection module that selects at least one image from the plurality of images corresponding to the limit.
- In some embodiments, the sensors are laser sensors. In some embodiments, the sensors are located on at least three sides of the bundle. In some embodiments, the objects are logs. In some embodiments, the physical dimensional data includes distance and angle data between a plurality of set points. In some embodiments the camera is configured to take at least one of photographs and video. In some embodiments, the limit module processes histogram vectors starting at a center of the bundle and working outwards. In some embodiments, the selected image depicts an end of the bundle. In some embodiments, the method includes a cross-section module that organizes the physical dimensional data into a plurality of cross-sections of the bundle. In some embodiments, the system includes a timing module that associates the physical dimensional data with at least one image. In some embodiments, the system includes a synchronization mechanism, and the synchronization mechanism may be configured to use electrical signals to trigger the start of the sensors and the at least one camera.
- In general, in another aspect, a method for selecting an image of bundled objects includes obtaining physical dimensional data about the bundled objects using laser sensors, recording a plurality of images of the bundled objects with at least one camera, processing the physical dimensional data with a processor to determine a limit of the bundle, and selecting at least one image from the plurality of images corresponding to the limit.
- In some embodiments, the obtaining step occurs when the objects are in relative motion to the laser sensors. In some embodiments, the sensors are laser sensors. In some embodiments, the sensors are located on at least three sides of the bundle. In some embodiments, the objects are logs. In some embodiments, the physical dimensional data is distance and angle data between a plurality of set points. In some embodiments, the recording step includes taking one of photographs and video. In some embodiments, the processing step includes processing histogram vectors starting at a center of the bundle and working outwards. In some embodiments, the selected image depicts an end of the bundle. In some embodiments, the method includes the step of organizing the physical dimensional data into a plurality of cross-sections of the bundle. In some embodiments, the method includes the step of associating the physical dimensional data and the at least one image with a common time indicator. In some embodiments, the method includes synchronizing the start of the sensors and the at least one camera with an electrical signal.
- Other aspects and advantages of the invention will become apparent from the following drawings, detailed description, and claims, all of which illustrate the principles of the invention, by way of example only.
- In the drawings, like reference characters generally refer to the same parts throughout the different views. Also, the drawings are not necessarily to scale, emphasis instead generally being placed upon illustrating the principles of the invention.
-
FIGS. 1A to 1E are depictions of various distinguishing characteristics of logs according to an embodiment of the invention. -
FIG. 2 is a block diagram illustrating by example a process for detecting variability in bundled objects according to an embodiment of the invention. -
FIG. 3 is a block diagram illustrating by example a system for detecting variability in bundled objects according to an embodiment of the invention. -
FIGS. 4A and 4B depict an array of sensors according to an embodiment of the invention. -
FIG. 5 depicts a cross-section of a bundle detected by sensors according to an embodiment of the invention. -
FIGS. 6 and 7 depict images of bundle data as obtained by the sensors according to an embodiment of the invention. -
FIG. 8 is a block diagram illustrating by example a local circle fitting module according to an embodiment of the invention. -
FIG. 9 depicts minutiae on a cross-section according to an embodiment of the invention. -
FIG. 10 depicts a method for determining minutia candidates according to an embodiment of the invention. -
FIG. 11 depicts minutia clusters according to an embodiment of the invention. -
FIG. 12 depicts fitted circles according to an embodiment of the invention. -
FIG. 13 is a block diagram illustrating by example a model creation module according to an embodiment of the invention. -
FIGS. 14A to 14C depict progression of model development according to an embodiment of the invention. -
FIG. 15 is a block diagram illustrating by example a process for selecting images of a bundle of objects according to an embodiment of the invention. -
FIG. 16 is a block diagram illustrating by example a system for selecting images of a bundle of objects according to an embodiment of the invention. -
FIGS. 17A and 17B depict images of limits of a bundle according to an embodiment of the invention. -
FIGS. 18A and 18B depict an image of a limit of a bundle and an associated scan according to an embodiment of the invention. -
FIGS. 19A and 19B depict histograms of bundles according to an embodiment of the invention. -
FIG. 20 depicts an interface for observing and marking images of bundles according to an embodiment of the invention. -
FIG. 21 depicts a report on a bundle according to an embodiment of the invention. - In the forestry industry, logs can be used for a variety of purposes (e.g., lumber, pulp and paper, fiberboard, etc.). Depending on the intended use of the logs, different distinguishing characteristics of the logs may be of interest, particularly those distinguishing characteristics considered to be defects in the logs. Examples of distinguishing characteristics are depicted in
FIGS. 1A to 1E .FIG. 1A depicts alog 100 with a length (“L”), a small end diameter (“SED”), and a large end diameter (“LED”). Thelog 100 may be considered to have a defect if the length, the small end diameter, and/or the large end diameter fall outside of an acceptable range. The acceptable range may be defined by any interested party, such as mill operators.FIG. 1B depicts thelog 100 with a curvature (also known as “crook” or “sweep”), as defined by a distance (or curvature index) “S” between thelog center 102 at a point along the length of thelog 100 and anaxis 104 defined between the centers of the ends of thelog 100. Thelog 100 may be deemed to have a defect of being too crooked if the curvature index is outside of a specified range. - While the above described distinguishing characteristics may be detected automatically, other distinguishing characteristics may be better suited for visual detection.
FIG. 1C depicts butt swell in thelog 100, which may be defined as expansion in the lower end of the tree trunk above and beyond the usual stump flare found in all species. This is often considered undesirable as the wood in the swollen part of thelog 100 is usually too soft to be useful for many applications, such as construction or veneer logs.FIG. 1D depicts thelog 100 with asplit 106, which is a crack that extends longitudinally into thelog 100, thereby decreasing the total useful volume of thelog 100.FIG. 1E depicts thelog 100 with an uneven butt, which occurs when a cross section of the lower end of thelog 100 is highly uneven (i.e., not circular), again decreasing the total useful volume of thelog 100. A comprehensive description of log defects and the treatment they are given can be found in the U.S. Forest Service and USDA “National Forest Log Scaling Handbook.” -
FIG. 2 depicts aprocess 200 for detecting variability in individual objects in a bundle of objects, where the variability to be detected may be defined by a user as one or more distinguishing characteristics, as set forth above. Theprocess 200 includes acquiring/obtaining physical dimensional data related to the bundle of objects (e.g., by using laser sensors) (Step 202) and processing the physical dimensional data with a processor for executing computer-executable instructions. Processing may include locating a cross-section of an individual object (Step 204), creating a model of the individual object based on the located cross-section (Step 206), optionally estimating confidence in the model (Step 208), and analyzing the model to determine if the individual object embodies one or more distinguishing characteristics (Step 210). -
FIG. 3 is a physical depiction of a bundled objectvariability detection system 300, including an array of sensors 302 (e.g., laser sensors) that at least partially surround the bundle of objects. Thesensors 302 are adapted to obtain physical dimensional data about the bundle and communicate the data through acommunication module 303 to a subsystem/memory 306 for storing the computer-executable instructions. Thesystem 300 also includes aprocessor 304 for executing the computer-executable instructions. Thememory 306 includes afirst module 308 that receives the physical dimensional data from thesensors 302, asecond module 310 that locates a distinct cross-section of a singular object within the bundle based on the physical dimensional data, athird module 312 that determines a model of the singular object based on the located cross-section of the singular object, and afourth module 314 that analyzes the model to determine if the individual object embodies one or more distinguishing characteristics. Thememory 306 may also include a fifth module to determine a confidence value in the model. - One embodiment of the
sensor array 302 is shown inFIG. 4A . The depictedarray 302 is a Logmeter® 4000 system available from Woodtech Measurement Solutions (Santiago, Chile) having individual laser-scanningsensors 302 on a rigid structure 422 (e.g., a metallic structure) for acquiring at least physical dimensional data about the objects (e.g., logs). Thestructure 422 is sized for a logging truck to be able to drive through it with sufficient clearance on all sides. Thesensors 302 may be disposed on multiple sides of thestructure 422, such that when a truck drives through with a bundle 600 (or multiple bundles 600) oflogs 100, as depicted inFIG. 6 , thesensors 302 are recording data about thebundle 600 from multiple sides (e.g., from three sides). In some embodiments, thesensors 302 may acquire data on thebundle 600 from fewer than three sides, and thesensors 302 may be disposed on the ground to acquire data from beneath thebundle 600. Additional equipment may be added to thestructure 422, such as one or more cameras. - The
sensors 302 may precisely measure the distance and angle of a set number of points in its field of vision. The number of points depends on the laser resolution and the laser capture angles. By placing an array oflasers 302 to cover the same plane (perpendicular to the trajectory of the objects) from different positions, acomplete cross-section 500 or scan of thebundle 600 may be obtained, as shown inFIG. 5 .FIG. 4B depictsadditional sensors 302 that may be disposed at angles relative to the trajectory of the objects at the measured data point to obtain additional data, including data on a face at a limit of thebundle 600 to acquire data about all (or substantially all) of thelogs 100. Thelaser array 302 may be configured to acquire the data while a truck moves thebundle 600 through the perpendicular laser capture plane. Thebundle 600 movement allows for the generation of cross-sections of the full length of thebundle 600. The amount of data acquired depends on the speed of the truck and the scanning frequency. The data may be organized in a Cartesian coordinate system CS=(X, Y, Z), following the convention shown inFIG. 5 . - By combining the data acquired with a real-time measurement of the speed of the
bundle 600, it is possible to reconstruct a three-dimensional image of thebundle 600 as shown inFIG. 6 (displayed in the Cartesian coordinate system inFIG. 7 ). The use of data from the diagonal lasers contributes to the generation of three-dimensional (3D) models with information on the back and/or front faces of thebundle 600 where all (or substantially all) of thelogs 100 are exposed. The speed of the truck carrying thebundle 600 may be acquired through many means. One such method includes using an additional laser-scanner placed on the structure, either in a scanning plane parallel to the ground such that it scans the wheels of the vehicle or on top of the structure in a scanning plane parallel to the road and perpendicular to the ground such that it scans in a longitudinal way through the upper part of the truck, to measure the displacement and velocity of the truck by comparing and matching the shapes observed in subsequent scans. By identifying corresponding shapes in pairs of scans, and by determining the displacement vector between these corresponding shapes, the system is able to determine the truck's displacement between the time in which those scan were acquired. Another method includes using a radar speed measurement system placed in front of the truck, e.g., at a distance of at least one truck-length, to measure the change in position of the front of the truck over time. Other known methods for detecting the speed of moving objects may also be used. The acquired data may be provided to and stored in thefirst module 308 for further processing. - Following (or in some embodiments concurrent with) data acquisition (Step 202), the
processor 304 executes the instructions in thesecond module 310 in thememory 306 to apply a curve fitting to find the best fitting shapes for thecross-section 500 of thelogs 100 in thebundle 600, such as that depicted inFIG. 5 based on the perimeter of thelogs 100, so that each shape represents a cross-section of anindividual log 100. In some embodiments, the curve fitting technique is a local circle fitting technique.FIG. 8 depicts themodule 310 adapted for fitting shapes (e.g., circles) to thecross-section 500. Themodule 310 includes modules for pre-processing the laser data (802) to sort and filter the acquired data, detecting minutiae (804) to locate special features, fitting circles (806) to fit groups of data to a circle model, and post-processing the circle models (808) by merging and filtering the generated circles and minimizing overlap between them. Themodule 310 may be executed for each laser scan independently. - The
pre-process module 802 includes sorting the data points of each laser measurement (802 a) to allow the system to make some assumptions about the order of angles. Often this is done in a clockwise manner. Thepre-process module 802 also may include filtering out unreliable points of the laser measurements (802 b) to eliminate poor quality data and to discard non-wood objects, such as load supports, wheels, load platform, driver cockpit, etc. Data filtering (802 b) helps the entire local circlefitting module 310 proceed easier and faster, as well as produce better overall results. Data filtering (802 b) may include applying one or more of the following filters: an amplitude filter to eliminate all the points that have lower amplitude than a given threshold; a Euclidean filter to eliminate isolated points of each scan by evaluating how many neighbors each point has within a determined maximum distance (all points that do not have the minimum required number of neighbors are filtered out of the data); an external window filter to eliminate all points outside of a determined rectangular window for each scan; and an internal window filter to eliminate all the points inside of a determined rectangular window for each scan. - The
minutiae detection module 804 detects special features, called minutiae, in each scan. A minutia may be the point where laser data of two contiguous logs intersect, as depicted by thepoints 930 inFIG. 9 .Minutiae detection 804 includes generating candidates (804 a), analyzing the candidates (804 b), and clustering the minutiae (804 c). During gradient calculation (804 a), a set of minutiae candidates is generated by calculating gradients between consecutive points and forming a first minutiae group of points where the gradient exceeds a threshold. Other groups of points may be selected using a different rule, in some embodiments simultaneous with the other selections. For example, let Pi−(Xi,Yi) be theith point 1040 measured by the laser sensor 420. To evaluate if thepoint P i 1040 belongs to a second set of minutiae candidates, theminutiae detection module 804 determines theline 1042 between the points Pi−n and Pi+n, called Li−n,i+n where n is a parameter of the system, as depicted inFIG. 10 . If thedistance 1044 between Pi and Li−n,i+n is higher than a fixed threshold, thepoint P i 1040 may be included in the second set of minutiae candidates. Thismodule 804 may be executed as necessary for different threshold values. - Candidate analysis (804 b), completed following determination of the candidates, involves determining a final set of minutiae that include the intersection between groups of candidates. During minutiae clustering (804 c), the selected
minutiae candidates 1130 depicted inFIG. 11 may appear to be grouped around the real minutiae. In one embodiment, a distance based clustering process may be executed over the set ofminutia candidates 1130 to determine a unique minutia candidate for each real minutia. Thoseminutia candidates 1130 below a threshold value may be grouped, with the mean of each group serving as the final minutia. - The circle fitting module (806) may be executed to find circles that best fit the log data in each scan. Circular outlines may be generated from the data points of the previous steps through point clustering (806 a) and circle model fitting (806 b). Point clustering (806 a) includes selecting groups of data points that are part of each log section by using an algorithm to select data points between two consecutive minutiae that indicate the selected data points pertain to a
particular log 100. Circle model fitting (806 b) follows selection of the points of each log section by executing an iterative circle-fitting algorithm to generate a circle mode. This procedure may be executed independently for each scan of each laser. The circle-fitting algorithm may have two stages: a first stage to create an initial circle approximation using standard least square circle fitting over the mentioned points; and a second stage to optimize the parameters of the circle obtained in the first stage by reducing the real distance of the points to the circle model. The iterative stage may provide a near-optimal result, however thepost-processing module 808 may still be used. - The
post-process module 808 includes merging circles (808 a), optimizing circles (808 b), and filtering circles (808 c). The circles merge (808 a) accounts for the overlapping circles generated by contiguous lasers that may be created as a result of the system detecting the same log section from independent laser scans. Each circle detection may be evaluated between the different lasers to determine if two circles are sufficiently overlapping, and if so, whether to merge them. In one exemplary embodiment, to evaluate if two circles are sufficiently overlapping, thepost-processing module 808 calculates the common area of both circles. If this common area is above a certain threshold, the circles may be considered to be part of the same section and the points of both circles to be merged may be used to generate a new circle model using the circle-fitting algorithm of the circle model fitting (806 b). This new estimation may improve both independent estimations because it uses more information to estimate the same circle. - After circles are merged, the
post-processing module 808 optimizes the merged circles by considering the overlap (calculated as the common area between each pair of circles) that can exist between circles of nearby model log sections. The circles should not overlap as thelogs 100 do not overlap each other in thebundle 600. The optimization process (808 b) seeks to minimize the total overlapped area between all circles in each scan, as well as the distance to the points of the laser to the circles models by adjusting the radius of each detected circle to create a final set of optimized circle detections. A gradient method that defines the optimal direction to move each radius to obtain a better fitness evaluation may be used. Finally, thepost-processing module 808 filters out circles with diameters under or over set thresholds during circle filtering (808 c), resulting in thecircles 1250 depicted inFIG. 12 . These thresholds may be based on real log diameter limits. In some embodiments, if thelogs 100 are expected to have diameters of between approximately 10 and 50 inches, then the thresholds may be 9 and 55 inches. Different sizes of logs, both smaller and larger, may be used, and different threshold values may be used. - The
second module 310 may also include additional instructions for processing the data from thediagonal lasers 302. One method may be based on peripheral trunk face (e.g., limits of the logs 100) detection. This method uses the detectedcircles 1250 given by the previous steps of themodule 310 to generate several seeds near the respective trunk faces. Based on these seeds, an expectation maximization algorithm (EM) with a circular model dependent objective function may be developed to approximate the best circle near to the seeds which contains all the points of the data from thediagonal lasers 302 that describes a circular shape. This approximated circle may correspond to the face of aunique log 100, similar to how thecircles 1250 relate to theother logs 100. - Other instructions may include bundling
internal logs 100 by deleting data from thediagonal lasers 302 relating toperipheral logs 100. Using the remaining data from the diagonal lasers, themodule 310 may detect faces ofinternal logs 100 using differences between laser scans. For example, if a difference with a high spatial density between information in consecutive scans is detected, a new seed may be generated, and the EM algorithm step may be developed based on the new seeds in the same way as in the peripheral case. - These instructions may supplement an existing model of the periphery loss to verify or correct the existing model. When there is not an existing model (e.g., for interior logs 100), a new model may be created based on the newly generated circles derived from the data from the diagonal lasers 302 (e.g., diameter information). In some embodiments, the data from the
diagonal lasers 302 may help make the pre-existing circles more accurate. - The
processor 304 may then execute the instructions in thethird module 312 to estimate a model for eachlog 100 that is related to the fittedcircles 1250, identifying groups of circles of thesame log 100, and filtering the information to create a relatively smooth estimation of eachlog 100.FIG. 13 depicts the trunk detector/model creation module 312, which includes adirect Kalman filter 1302 and aninverse Kalman filter 1303 followed by modules for merging the direct models (1304) and merging the inverse models (1305), respectively, ending with a module for the merger of the direct and inverse models (1306). - The direct and inverse Kalman filters 1302/1303 are arranged in parallel, with one filter starting from the first scan of the
bundle 600 and moving toward the last scan, and the other starting from the last scan working forward. This process aims to reduce the bias produced by the directionality of the Kalman filters 1302/1303 as direct and inverse filters often have different results due to the direction of the process. EachKalman filter 1302/1303 has three stages, anobservation selector 1302 a/1303 a, anew model generator 1302 b/1303 b, and amodels estimator 1302 c/1303 c. - The
observation selector 1302 a/1303 a evaluates if thecircles 1250 of the current scan belong to any of the log models. Eachcircle 1250 may be compared with the existing models using the Mahalanobis distance. Additionally, acircle 1250 may be required to meet a confidence threshold given by the local circle fitting process 800 to be accepted as an observation. Thecircles 1250 that are near enough to a model and exceed the confidence threshold may be selected as observations of this model. Thenew model generators 1302 b/1303 b may consider whether thecircles 1250 not associated with a model exceed a second confidence threshold to start a new log model. If not, thecircles 1250 may be discarded. The models estimators 1302 c/1303 c include a standard Kalman filter that uses the position of the center of thelog 100 and its radius in the current scan as the state of the model. Additionally, a velocity vector, which represents the direction in which the log diameter grows, may be estimated using the difference between observations of thelog 100 in consecutive scans. This velocity value may be considered as the perturbation variable of the filtering process, and may be used to estimate the predictive state of the filtering. A corrective stage may be used to verify or modify the results, such as through a comparison with thecircles 1250. - Once log models are generated by the Kalman filters 1302/1303, each
log 100 may be represented by several separate models that need to be combined. During merge models (1304/1305), each model section may be compared to others to determine if they are part of thesame log 100. Eachmerge model module 1304/1305 includes a volume overlapping estimator 1304 a/1305 a and a merge overlapped trunks module 1304 b/1305 b. The overlapping estimators 1304 a/1305 a compare pairs of log models to determine the overlapped volume between them in regions where thephysical logs 100 are expected to be in contact. The overlapping estimators 1304 a/1305 a use an algorithm to make a cylindrical projection of the log to the scans where they could be overlapped. If the calculated overlapped volume exceeds a threshold volume ratio, the models may be merged by the merger modules 1304 b/1305 b. This process may be executed recursively, allowing more than two parts of a model log to be merged into the same model, and may be the same for both the direct and inverseKalman Filter estimators 1302/1303. - The merge direct/
inverse models module 1306 is used to merge the models generated by theestimators 1302/1303 to account for the directional bias using a volume overlapping estimator 1306 a and a merge overlappedtrunks module 1306 b. The overlapping estimator 1306 a may be similar to those described above (estimators 1304 a/1305 a) for use in calculating the volume overlap between log models. Those models exceeding the threshold may be designated for merger. The merge overlappedtrunks module 1306 b may consider those models designated to be merged and calculate a mean center and radius between the multiple models of thelog 100. When thelog 100 has only a single model associated with it, themerge module 1306 b may simply select this model. In this manner, themerge module 1306 b creates a final set of log models. - A progression of the model generation for a
single log 100 is depicted inFIGS. 14A to 14C .FIG. 14A depicts a right side of thebundle 600 oflogs 100 as scanned by thelaser array 302.FIG. 14B depicts the associated observations (a series of circles) 1402 of asingular log 100 as estimated by one of theobservation selector modules 1302 a/1303 a.FIG. 14C depicts thefinal model 1404 of thelog 100 following filtering and completion of the last merge overlappedtrunks module 1306 b. The impact of the Kalman filters 1302/1303 can be seen in the differences betweenFIGS. 14B and 14C , including: i) generation of a filtered output, reducing the high frequencies of the changes between observations observed inFIG. 14B and ii) generation of acomplete log model 1404 even where the log has no laser observations (e.g., near the vertical support bars that hold the load in place which produce a “shadow” inFIG. 14B as the laser scanners cannot see through them). - In certain embodiments, the
process 200 optionally includes estimating confidence in the models 1404 (Step 208) for reliably detecting the distinguishing characteristics (e.g., length, small end diameter, large end diameter, curvature, etc.) to avoid false positive detections of defects. The estimating step (Step 208) also includes evaluating the data quality to dynamically define the best thresholds over the confidence values to discard or accept a measurement. Thesecond module 310 may include instructions for determining an estimated detectable portion of asingular log 100, comparing the estimated detectable portion to the physical dimensional data associated with thelog 100, and determining an occlusion factor based on the comparison. These instructions may be executed in conjunction with, or separate from, other instructions in thesecond module 310 for determining an intersection of alog 100 with anotherlog 100 in thebundle 600. Thesecond module 310 may be used estimate the visual region of each log from eachlaser sensor 302 by multiple methods. One method includes using real data to count the data points given by the lasers 420 for eachlog 100 and comparing this count with a section of the bundle perimeter the laser 420 was expected to have viewed (may be done for each log). Another method involves using a theoretical model that models all logs as cylinders and estimates the portion of the cylinder that should have been viewed by the laser 420 considering the occlusions generated by all the cylindrical logs. Both methods generate a measurement of the viewed and occluded regions of each log section for eachcomplete log 100 over the entire bundle. - Data quality may be determined as a proportional factor of the difference between measurements obtained by these methods. If the difference in both measurements increases, it is likely more points that should be visible are not being seen, therefore lowering the data quality. This occlusion factor may be used to dynamically adjust some thresholds to filter out defects in undetected logs.
- For each
log 100, it may be desirable to know how much occlusion occurs where the system believes the large and small ends of thelog 100 are located. If there is a high level of occlusion, the system may be less confident in determining the measurements of the distinguishing characteristics. To determine the level of occlusion, five occlusion factors may be calculated, with the first four relating to the level of occlusion in the scans just before and just after each end of thelog 100, and the last one looking at occlusion for the entire log. With these occlusion factors, and using the dynamically estimated thresholds of data quality, the system may decide if each distinguishing characteristic can be calculated with the required confidence. - Analyzing the model (Step 210) is the final stage for estimating the distinguishing characteristics of each
log 100. The relevant distinguishing characteristics of eachlog 100 may be measured from its associatedmodel 1404, and the occlusion factors and data quality may be used to determine the confidence of these measurements. This confidence may be used to determine whether each measurement is indicative of thelog 100 having a defect. Theprocess 200 may help minimize the number of false positive defects calculated by the system while at the same time maximizing the number of true positives. The sensitivity of the system to calculating false positives can be adjusted according to the requirements of each mill, even forindividual bundles 600. -
FIG. 15 depicts another embodiment including aprocess 1500 directed to selecting an image of bundled objects. Theprocess 1500 includes obtaining physical dimensional data about the bundle 600 (Step 1502), recording a plurality of images of thebundle 600 with at least one camera (Step 1504), processing the physical dimensional data with a processor to determine a limit of the bundle 600 (Step 1506), and selecting at least one image from the plurality of images corresponding to the limit (Step 1508). Theprocess 1500 optionally includes organizing the data into a plurality of cross-sections of the bundle 600 (Step 1510), associating the data and at least one image with a common time indicator (Step 1512), and/or synchronizing the start of thesensors 302 and the camera with an electrical signal (Step 1514). -
FIG. 16 depicts arelated system 1600 for selecting images of bundled objects. Thesystem 1600 includes thesensors 302 to obtain physical dimensional data about thebundle 600 as described above.Cameras 1602 are included in thesystem 1600 to obtain a plurality of images of thebundle 600. Thecameras 1602 may be positioned on thestructure 422, or may be located remote from thestructure 422. Thecameras 1602 may record video from which single images may be taken, or thecamera 1602 may take photographs, at a high resolution while thebundle 600 moves through thestructure 422. Thecameras 1602 may be positioned and angled (e.g., similar to thelasers 302 inFIG. 4B ) so that images of the front and back of thebundle 600, as well as the right and left-hand sides can be obtained. This setup may be extended to includecameras 1602 that capture the top and/or bottom side of thebundle 600. Usingcameras 1602 with a high enough frame rate, detailed information of each part of thebundle 600 may be captured as can be seen inFIGS. 17A and 17B . Thecumulative data 308 may be stored in memory/subsystem 1604, along with other modules. - To synchronize the physical dimensional data from the
sensors 302 with the image data from thecameras 1602, the scan rate of thesensors 302 and the frame rate of thecameras 1602 may be kept constant to ensure both sources of data remain synchronized. Asynchronization mechanism 1606 may be used to help ensure thesensors 302 and thecameras 1602 begin operation at the same time. Thesynchronization mechanism 1606 may provide an electrical signal at a designated time (e.g., when thebundle 600 passes a certain point) to start thesensors 302 and thecameras 1602. When the rates are synchronized, each scan may be associated with a particular image. Atiming module 1608 may be used to associate the physical dimensional data with at least one image, e.g., by associating a unique image (FIG. 18A ) with a particular scan line 1860 (FIG. 18B ). Additionally, across-section module 1610 may be used to organize the data into a plurality of cross-sections of thebundle 600. As each cross-section may have an associated image, it is possible to look at an image of thebundle 600 anywhere there is a detected cross-section. - The images of greatest interest may be those of the limits or ends of the bundle. These limit images may enable a human user to perform a visual analysis to determine if a distinguishing characteristic is present (e.g., a swollen butt, a split, an uneven butt, etc.). To detect a limit of the bundle, the physical dimensional data may be processed according to the
limit selection module 1612 by using a y-axis histogram calculation process, a bundle center calculation process, a bundle limits calculation, and a validation process. The y-axis histogram calculation process includes counting those data points located above a y-axis threshold. Exemplary histogram analyses are depicted inFIGS. 19A (single bundle 600) and 19B (multiple bundles 600). Multiple thresholds may be used, including one to find the initial scan of thebundle 600 and another to determine the final scan of thebundle 600. The bundle center calculation process may include processing y-axis histogram vectors to determine each bundle's central or middle scan. The bundle limits calculation process may include processing the y-axis histogram vectors starting at the determined center and working outwards. This process tends to result in limit detection with greater accuracy than existing methods. To validate the limit results, a number of rules may be applied, including the following: limits ofdifferent bundles 600 cannot overlap; the scan that marks the beginning of the load cannot come after the one that marks the end; and the limits of the load cannot be less than a certain distance or more than a certain distance apart (the distance used may vary based on application). Through this process, thelimit module 1612 determines the limits of thebundle 600. - As the images are correlated with the laser scan data through the synchronization process described above, a
selection module 1614 can automatically select at least one image from a plurality of images corresponding approximately to the limit. Theselection module 1614 may select multiple images as others around the limit may provide a better view. For eachbundle 600, several different images that show the front or back of thebundle 600 may be appropriate (the number can depend on factors such as truck speed, the camera frame rate, and the spacing between bundles). Images taken closer to the limit of thebundle 600 may allow an operator to view somelogs 100 in greater detail (due to greater magnification), but can provide a more tangential angle of view to the log faces, thus making somelogs 100 more difficult to view. Images taken from further away may provide a better angle of view, but can compromise the visible detail in eachlog 100. Often the optimum image may be considered to be the one where the operator has the best overall perspective of the front or end of thebundle 600 so as to visually determine defects (particularly those typically detected with a visual inspection, including swollen butts, splits, and uneven butts). Theselection module 1614 may also be used to select images on either side of the optimum, accounting for other factors such as the speed of thebundle 600 through thestructure 422, thus allowing the operator to scroll through different images in order to determine the best for visual inspection according to his/her subjective evaluation. Further, the selection module may select images from both limits so that the front and back ends of each bundle are displayed. - The various images may be displayed in a user-friendly interface to help operators identify and mark log defects. This software may enable a user to easily scroll between different images if one automatically selected by the system is not ideal or if the operator desires a different viewing angle. Other features include the ability to adjust the color, contrast, white balance and other settings to compensate for problems with an image, such as poor lighting, the ability to zoom in and out of the image to focus on different details, and tools to digitally mark and color-code defects. An exemplary interface is depicted in
FIG. 20 . - The system allows an operator to conduct the visual inspection remote from the
bundle 600 on a computer screen. This can help save time by eliminating the need for the operator to walk around, and in some cases even onto, thebundle 600. The operator may be located in an entirely different geographical location from thebundle 600, and multiple operators from various geographically distributed sites may analyze the images concurrently or at different times. Further, thebundle 600 may remain in motion while the data is acquired and the operator performs a visual analysis, or the images may be archived for later analysis. The system provides a location and time independent means for inspectingbundles 600 oflogs 100, creating many efficiencies over the common current protocol. - Often, it is desirable to generate a report of the measurements and observations. The response format may be adjusted for different applications, but generally includes a summary of the defects detected and a set of images illustrating the defects.
FIG. 21 depicts onesuch report 2100, though thereport 2100 may take many different forms. In many instances it is also desirable to inform the location's administrative or enterprise resource planning system so that the necessary actions can be taken, e.g., applying a discount to a dollar value of the bundle or adjusting a mill's inventory. - The information generated throughout the process, including the selected images and digital markings made by the human operator, may be stored for later review in an auditing system. Interested parties may later review the digital markings for a variety of reasons, including to determine the effectiveness of operators in detecting defects and to settle disputes with suppliers. The information may be referenced as long as the data is stored and accessible.
- Although the exemplary operations described above recite steps performed in a particular order, the present invention does not necessarily need to operate in the recited order. One of ordinary skill in the art would recognize many variations, including performing steps in a different order.
- Various embodiments and features of the present invention have been described in detail with particularity. The utilities thereof can be appreciated by those skilled in the art. It should be emphasized that the above-described embodiments of the present invention merely describe certain examples implementing the invention, including the best mode, in order to set forth a clear understanding of the principles of the invention. Numerous changes, variations, and modifications can be made to the embodiments described herein and the underlying concepts, without departing from the spirit and scope of the principles of the invention. All such variations and modifications are intended to be included within the scope of the present invention, as set forth herein. The scope of the present invention is to be defined by the claims, rather than limited by the forgoing description of various preferred and alternative embodiments. Accordingly, what is desired to be secured by Letters Patent is the invention as defined and differentiated in the claims, and all equivalents.
- Computer Implementation
- The algorithms and processing techniques described above may be implemented in software modules or hardware components that perform certain tasks. The algorithms and processing techniques may advantageously be configured to reside on an addressable storage medium and be configured to execute on one or more processors. The algorithms and processing techniques may be fully or partially implemented with a general purpose integrated circuit (IC), co-processor, FPGA, or ASIC. Thus, algorithms and processing technique may include, by way of example, components, such as software components, object-oriented software components, class libraries, class components and task components, processes, functions, attributes, procedures, subroutines, segments of program code, drivers, firmware, microcode, circuitry, data, databases, data structures, tables, arrays, and variables. The functionality provided for in the components and algorithms and processing techniques may be combined into fewer components and algorithms and processing techniques or further separated into additional components and algorithms and processing techniques. Additionally, the components and algorithms and processing techniques may advantageously be implemented on many different platforms, including computers, computer servers, data communications infrastructure equipment such as application-enabled switches or routers, or telecommunications infrastructure equipment, such as public or private telephone switches or private branch exchanges (PBX). In any of these cases, implementation may be achieved either by writing applications that are native to the chosen platform, or by interfacing the platform to one or more external application engines, for example, locally or over a network.
Claims (23)
1. A bundled object variability detection system, the system comprising:
an array of sensors at least partially surrounding a bundle of objects, wherein the sensors comprise lasers adapted to obtain physical dimensional data about the bundle;
a processor for executing computer-executable instructions; and
a memory for storing computer executable instructions, that when executed by the processor implements (i) a first module that receives the physical dimensional data from the sensors; (ii) a second module that locates a distinct cross-section of a singular object within the bundle based on the physical dimensional data; (iii) a third module that determines a model of the singular object based on the located cross-section of the singular object; and (iv) a fourth module that analyzes the model to determine if the individual object embodies one or more distinguishing characteristics.
2. The system of claim 1 , wherein the array of sensors are disposed on three sides of the bundle.
3. The system of claim 1 , wherein the objects comprise logs.
4. The system of claim 1 , wherein the physical dimensional data comprises peripheral data.
5. The system of claim 1 , wherein the second module is adapted to apply a curve fitting technique to determine a shape that fits the cross-section.
6. The system of claim 5 , wherein the curve fitting technique comprises local circle fitting.
7. The system of claim 5 , wherein the shape is a circle.
8. The system of claim 1 , wherein the second module further determines an estimated detectable portion of the singular object, compares the estimated detectable portion to the physical dimensional data associated with the object, and determines an occlusion factor based on the comparison.
9. The system of claim 1 , wherein the second module further determines an intersection of the singular object with another object in the bundle.
10. The system of claim 1 , wherein the model is a three-dimensional model.
11. The system of claim 1 , wherein the distinguishing characteristics are selected from the group consisting of a large end diameter, a small end diameter, a length, and a curvature.
12. A method for detecting variability in individual objects in a bundle of objects, the method comprising:
obtaining physical dimensional data related to a bundle of objects using laser sensors; and
processing the physical dimensional data with a processor for executing computer-executable instructions, wherein processing comprises the steps of:
locating a cross-section of an individual object;
creating a model of the individual object based on the located cross-section; and
analyzing the model to determine if the individual object embodies one or more distinguishing characteristics.
13. The method of claim 12 , wherein the obtaining step occurs when the objects are in relative motion to the laser sensors.
14. The method of claim 12 , wherein the laser sensors are disposed on three sides of the bundle.
15. The method of claim 12 , wherein the objects comprise logs.
16. The method of claim 12 , wherein the physical dimensional data comprises peripheral data.
17. The method of claim 12 , wherein the locating step comprises applying a curve fitting technique to determine a shape that fits the cross-section.
18. The method of claim 17 , wherein the curve fitting technique comprises local circle fitting.
19. The method of claim 17 , wherein the shape is a circle.
20. The method of claim 12 , wherein the locating step comprises determining an estimated detectable portion of the singular object, comparing the estimated detectable portion to the physical dimensional data associated with the object, and determining an occlusion factor based on the comparison.
21. The method of claim 12 , wherein the locating step comprises determining an intersection of the singular object with another object in the bundle.
22. The method of claim 12 , wherein the model is a three-dimensional model.
23. The method of claim 12 , wherein the distinguishing characteristics are selected from the group consisting of a large end diameter, a small end diameter, a length, and a curvature.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/601,283 US20130144568A1 (en) | 2011-08-31 | 2012-08-31 | System and Method for Variable Detection in Objects |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201161529549P | 2011-08-31 | 2011-08-31 | |
US201161529603P | 2011-08-31 | 2011-08-31 | |
US13/601,283 US20130144568A1 (en) | 2011-08-31 | 2012-08-31 | System and Method for Variable Detection in Objects |
Publications (1)
Publication Number | Publication Date |
---|---|
US20130144568A1 true US20130144568A1 (en) | 2013-06-06 |
Family
ID=47751968
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US13/601,283 Abandoned US20130144568A1 (en) | 2011-08-31 | 2012-08-31 | System and Method for Variable Detection in Objects |
US13/601,290 Expired - Fee Related US9147014B2 (en) | 2011-08-31 | 2012-08-31 | System and method for image selection of bundled objects |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US13/601,290 Expired - Fee Related US9147014B2 (en) | 2011-08-31 | 2012-08-31 | System and method for image selection of bundled objects |
Country Status (2)
Country | Link |
---|---|
US (2) | US20130144568A1 (en) |
CA (1) | CA2788399A1 (en) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130265333A1 (en) * | 2011-09-08 | 2013-10-10 | Lucas B. Ainsworth | Augmented Reality Based on Imaged Object Characteristics |
WO2016024242A1 (en) * | 2014-08-13 | 2016-02-18 | C 3 Limited | Log scanning system |
WO2020152632A1 (en) * | 2019-01-25 | 2020-07-30 | Robotics Plus Limited | Load scanning apparatus |
US10769472B2 (en) * | 2018-03-28 | 2020-09-08 | Wipro Limited | Method and system counting plurality of objects placed in a region |
US20210291404A1 (en) * | 2020-03-18 | 2021-09-23 | Disco Corporation | Edge alignment method |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106276372A (en) * | 2016-10-11 | 2017-01-04 | 凌云光技术集团有限责任公司 | A kind of method and device positioning package packaging defect |
WO2020060845A1 (en) | 2018-09-17 | 2020-03-26 | Datalog, LLC | Log scaling system and related methods |
FI20195628A1 (en) * | 2019-07-11 | 2021-01-12 | Teknosavo Oy | Method for determination of volume of pulp wood or timber stack |
CN110501334B (en) * | 2019-08-08 | 2022-06-07 | 福建依客赛客信息技术有限公司 | Method and system for visual detection by adopting linear laser to match with CCD (Charge coupled device) when adhesive tape is pasted on lithium battery |
EP4028605A4 (en) * | 2019-09-13 | 2023-10-18 | Spectrum 28, LLC | Lumber use designation system and method |
CN111141744B (en) * | 2019-12-31 | 2023-01-31 | 广州维思车用部件有限公司 | Lens detection device |
RU2734085C1 (en) * | 2020-05-28 | 2020-10-12 | Александр Васильевич Кононов | Device for non-contact measurement of volume of a moving load having a complex geometrical shape |
SK500392021A3 (en) * | 2021-07-13 | 2021-09-29 | VALASAHA Group, a. s. | Method for determining the external parameters of wood logs using a three-dimensional image |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6463402B1 (en) * | 2000-03-06 | 2002-10-08 | Ralph W. Bennett | Infeed log scanning for lumber optimization |
US6466305B1 (en) * | 1999-05-24 | 2002-10-15 | Lmi Technologies Inc. | High speed laser triangulation measurements of shape and thickness |
Family Cites Families (82)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
BE708100A (en) | 1967-05-05 | 1968-06-17 | ||
US3513321A (en) | 1967-08-03 | 1970-05-19 | Weyerhaeuser Co | Log tally system with minimum diameter measuring means |
US3565531A (en) | 1969-03-12 | 1971-02-23 | Sanders Associates Inc | Electro-optical thickness measurement apparatus |
US3593632A (en) | 1969-05-02 | 1971-07-20 | Bobby S Woodruff | Volume recorder |
US3802774A (en) | 1971-05-17 | 1974-04-09 | Siemens Ag | Method and apparatus for determining the thickness or width of work pieces |
GB1488841A (en) | 1974-01-18 | 1977-10-12 | Plessey Co Ltd | Optical detection apparatus |
US4122525A (en) | 1976-07-12 | 1978-10-24 | Eaton-Leonard Corporation | Method and apparatus for profile scanning |
US4122957A (en) | 1977-10-06 | 1978-10-31 | The Raymond Corporation | Lift truck having height indicating means |
US4375921A (en) | 1980-03-13 | 1983-03-08 | Selective Electronic Co. Ab | Dimension measuring apparatus |
US4392204A (en) | 1980-12-01 | 1983-07-05 | Prim David F | Lumber marking system |
US4364732A (en) | 1981-04-06 | 1982-12-21 | Weyerhaeuser Company | Simulated interactive dividing and allocating process |
US4528651A (en) | 1983-02-04 | 1985-07-09 | Weyerhaeuser Company | Method and apparatus for measurement of length and height of objects |
DE3587582D1 (en) | 1985-03-14 | 1993-10-21 | Beltronics Inc | Device and method for automatically inspecting objects and for identifying or recognizing known and unknown parts thereof, including errors and the like. |
US4687107A (en) | 1985-05-02 | 1987-08-18 | Pennwalt Corporation | Apparatus for sizing and sorting articles |
US4762990A (en) | 1985-10-21 | 1988-08-09 | International Business Machines Corporation | Data processing input interface determining position of object |
IT1204492B (en) | 1986-03-21 | 1989-03-01 | Cremona Lorenzo | SYSTEM FOR THE DETECTION AND ELIMINATION OF DEFECTS PRESENT IN MANUFACTURING WORK, IN PARTICULAR WOOD PANELS WITH CRACKS AND FOLDS THAT MUST BE STUCKED |
SU1411209A1 (en) | 1986-11-28 | 1988-07-23 | Государственный научно-исследовательский и проектный институт по освоению месторождений нефти и газа "Гипроморнефтегаз" | Method of measuring the mass of bulky objects afloat |
US4913551A (en) | 1987-07-28 | 1990-04-03 | Davis Richard B | Log measuring method and apparatus |
US4879752A (en) | 1987-11-18 | 1989-11-07 | Macmillan Bloedel Limited | Lumber optimizer |
GB8829250D0 (en) | 1988-12-15 | 1989-01-25 | Beta Instr Co | System for determining the dimension of an object |
FI85769C (en) | 1989-09-27 | 1992-05-25 | Outokumpu Oy | X-ray tomographic procedure for observing faults and twigs in wood |
FI85542C (en) | 1989-11-27 | 1992-04-27 | Vision Systems Oy | FOERFARANDE OCH ANORDNING FOER MAETNING AV KNIPPEN. |
AT398174B (en) | 1991-02-08 | 1994-10-25 | Andritz Patentverwaltung | METHOD AND DEVICE FOR SEPARATING BLEED WOOD STICKS |
SE510242C2 (en) | 1992-04-23 | 1999-05-03 | Limab Laser Instrumentmek | Method and measurement system for detecting defects at the surface of a piece of wood |
US5257101A (en) * | 1992-06-01 | 1993-10-26 | Board Of Regents Of The University Of Ok | Apparatus and method for selecting a log orientation and pattern for sawing |
US5394342A (en) * | 1993-02-26 | 1995-02-28 | Macmillan Bloedel Limited | Log scanning |
DE4407066C2 (en) | 1993-03-04 | 1999-03-11 | Yazaki Corp | Strain sensor for a vehicle load measuring device |
US6847740B1 (en) | 1993-11-10 | 2005-01-25 | Gebhard Birkle | Method for the optical detection of objects, whose surfaces can reflect or scatter light and which have self-affine, or self-similar, or fractal patterns or structures |
JP3602199B2 (en) | 1994-06-15 | 2004-12-15 | 株式会社アマダ | Material dimension measuring device |
NZ270892A (en) | 1994-08-24 | 1997-01-29 | Us Natural Resources | Detecting lumber defects utilizing optical pattern recognition algorithm |
JPH08133449A (en) | 1994-11-11 | 1996-05-28 | Mitsubishi Heavy Ind Ltd | Detection system for specific foreign matter in transported goods |
US5614710A (en) | 1995-06-07 | 1997-03-25 | Electrocom Automation L.P. | Dichotomous scan system for detection of overlapped objects |
CA2203970C (en) * | 1996-05-01 | 2003-12-02 | Newnes Machine Ltd. | Method and apparatus for video lumber grading |
US5892808A (en) * | 1996-06-28 | 1999-04-06 | Techne Systems, Inc. | Method and apparatus for feature detection in a workpiece |
GB2315546A (en) | 1996-07-18 | 1998-02-04 | Imperial College | Luggage scanner |
US5960104A (en) | 1996-08-16 | 1999-09-28 | Virginia Polytechnic & State University | Defect detection system for lumber |
US5900590A (en) | 1996-08-22 | 1999-05-04 | Southwest Research Institute | Centrifugal measurement of mass |
SE9603880D0 (en) | 1996-10-23 | 1996-10-23 | Bengt Soervik | Forest planning and process |
US7098435B2 (en) | 1996-10-25 | 2006-08-29 | Frederick E. Mueller | Method and apparatus for scanning three-dimensional objects |
DE19647613C2 (en) | 1996-11-18 | 1998-11-12 | Laser Applikationan Gmbh | Method and device for measuring the thickness of non-circular, elongated workpieces which are advanced in the direction of their longitudinal axis and which have any desired and changing angular position |
US5815274A (en) | 1996-12-31 | 1998-09-29 | Pitney Bowes Inc. | Method for dimensional weighing by spaced line projection |
US6181411B1 (en) | 1997-08-14 | 2001-01-30 | R. Brooks Associates, Inc. | Apparatus for inspecting difficult to access objects |
US6407819B1 (en) | 1998-01-22 | 2002-06-18 | Maschinenfabrik Rieter Ag | Method and device for measuring fibre length |
CA2306094C (en) | 1999-04-16 | 2002-02-12 | Autolog Inc. | Apparatus for detecting defects in wood processed by a planer |
US6756789B1 (en) | 1999-05-27 | 2004-06-29 | New Zealand Forest Research Institute Limited | Method for imaging logs or stems and apparatus |
EP1061361A1 (en) | 1999-05-27 | 2000-12-20 | CEO Centro di Eccellenza Optronica | Device and method for capacitively detecting defects in wood |
US7161688B1 (en) | 1999-08-31 | 2007-01-09 | Brett Bonner | Mass scanning and dimensioning system |
US6480290B1 (en) | 2000-01-31 | 2002-11-12 | Carnegie Mellon University | Method and apparatus to measure the cross-sectional area of an object |
US6618155B2 (en) | 2000-08-23 | 2003-09-09 | Lmi Technologies Inc. | Method and apparatus for scanning lumber and other objects |
FR2814541B1 (en) | 2000-09-27 | 2002-12-13 | Aerospatiale Matra Airbus | DEVICE FOR WEIGHING AN OBJECT BY LIFTING |
US6778681B2 (en) | 2001-05-09 | 2004-08-17 | Invision Technologies, Inc. | Analysis and presentation of internal features of logs |
US6598477B2 (en) | 2001-10-31 | 2003-07-29 | Weyerhaeuser Company | Method of evaluating logs to predict warp propensity of lumber sawn from the logs |
US6996497B2 (en) | 2001-11-13 | 2006-02-07 | Weyerhaeuser Company | Method of evaluating logs to predict properties of lumber or veneer produced from the logs |
DE10216122A1 (en) | 2002-04-12 | 2003-10-30 | Sick Ag | object detection |
US7660433B2 (en) | 2002-08-27 | 2010-02-09 | Dralle A/S | Method and a system for automatic measurement and tracking of logs, industrial wood and boards |
JP4116877B2 (en) | 2002-12-26 | 2008-07-09 | 富士通株式会社 | Heap size automatic optimization processing method, heap size automatic optimization device and program thereof |
US7356175B2 (en) | 2003-09-25 | 2008-04-08 | Columbia Forest Products, Inc. | Identifying defects in decorative wood panels |
ITMO20030284A1 (en) | 2003-10-21 | 2005-04-22 | Paolo Benedetti | METHOD FOR DETECTING DEFECTS IN SUBSTANTIALLY WOODY TYPICAL PRODUCTS, PARTICULARLY PANELS AND SIMILAR, AND RELATIVE EQUIPMENT. |
CA2556982A1 (en) | 2004-02-20 | 2005-09-01 | Dralle Aps | A system for grading of industrial wood |
US7149633B2 (en) * | 2004-02-26 | 2006-12-12 | Coe Newnes/Mcgettee Inc. | Displacement method of knot sizing |
DE102004018813A1 (en) | 2004-04-19 | 2006-02-23 | Ibeo Automobile Sensor Gmbh | Method for detecting and / or tracking objects |
FI117575B (en) * | 2004-05-27 | 2006-11-30 | Ekspansio Engineering Ltd Oy | Examination of the roughness of the wood surface |
US7146276B2 (en) | 2004-09-13 | 2006-12-05 | Delphi Technologies, Inc. | Method for determining driving task demand based on speed variability |
JP4261466B2 (en) | 2004-11-17 | 2009-04-30 | 株式会社日立製作所 | Autonomous mobile device and object and self-position detection system |
WO2006100674A2 (en) | 2005-03-21 | 2006-09-28 | Yeda Research And Development Co. Ltd. | Detecting irregularities |
CA2606850A1 (en) | 2005-05-02 | 2006-11-09 | Radial Corporation Limited | Method and apparatus for cutting |
US7978192B2 (en) | 2005-10-04 | 2011-07-12 | Rdv Systems Ltd. | Method and apparatus for evaluating sight distance |
US7526064B2 (en) | 2006-05-05 | 2009-04-28 | Rapiscan Security Products, Inc. | Multiple pass cargo inspection system |
WO2008136067A1 (en) * | 2007-04-20 | 2008-11-13 | Meinan Machinery Works, Inc. | Lumber inspection method, device and program |
US8109007B2 (en) | 2007-10-03 | 2012-02-07 | Northwestern University | Object profile sensing |
KR20100134085A (en) | 2008-04-01 | 2010-12-22 | 휴렛-팩커드 디벨롭먼트 컴퍼니, 엘.피. | System and method for speeding up object detection in digital image |
US8401270B2 (en) * | 2008-06-13 | 2013-03-19 | L-3 Communications Security And Detection Systems, Inc. | Examination of a region using dual-energy radiation |
FR2933498B1 (en) | 2008-07-04 | 2012-07-06 | Smiths Heimann Sas | METHOD AND DEVICE FOR DETECTING THE PRESENCE, IN A LOAD, OF SUSPICIOUS OBJECTS CONSISTING OF HIGH ATOMIC WEIGHT NUCLEAR MATERIALS |
IT1396830B1 (en) | 2008-09-18 | 2012-12-14 | Microtec Srl | APPARATUS AND METHOD FOR THE IDENTIFICATION OF THE POSITION OF DEFECTS IN BODIES, IN PARTICULAR WOOD BODIES SUCH AS TRUNKS OR TABLES |
CN104783757B (en) | 2009-06-17 | 2018-01-05 | 3形状股份有限公司 | Focus on scanning device |
US8115928B2 (en) | 2009-08-20 | 2012-02-14 | Graham Packaging Company, L.P. | Box inspector |
US8270024B2 (en) | 2010-03-23 | 2012-09-18 | Lexmark International, Inc. | Apparatus and method for printing within a print zone on the surface of a skewed object moving in a given direction of travel |
US8577611B2 (en) * | 2010-03-30 | 2013-11-05 | Weyerhaeuser Nr Company | System and method for analyzing trees in LiDAR data using views |
US8134717B2 (en) | 2010-05-21 | 2012-03-13 | LTS Scale Company | Dimensional detection system and associated method |
US9335299B2 (en) | 2010-06-23 | 2016-05-10 | Acousticeye Ltd | Method and system for testing a bundle of tubular objects guided by a computing device |
DE102010052338A1 (en) | 2010-11-25 | 2012-05-31 | Steinert Elektromagnetbau Gmbh | Method and device for single-grain sorting of bulk materials of any kind |
ES2602636T3 (en) | 2010-12-21 | 2017-02-21 | Siemens Aktiengesellschaft | Stacking device and stacking procedure |
-
2012
- 2012-08-31 US US13/601,283 patent/US20130144568A1/en not_active Abandoned
- 2012-08-31 US US13/601,290 patent/US9147014B2/en not_active Expired - Fee Related
- 2012-08-31 CA CA2788399A patent/CA2788399A1/en not_active Abandoned
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6466305B1 (en) * | 1999-05-24 | 2002-10-15 | Lmi Technologies Inc. | High speed laser triangulation measurements of shape and thickness |
US6463402B1 (en) * | 2000-03-06 | 2002-10-08 | Ralph W. Bennett | Infeed log scanning for lumber optimization |
Non-Patent Citations (1)
Title |
---|
Emma Clowting, Optical scanners enhance vision systems, Vision Systems Design Magazine, 1 April 2004. * |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130265333A1 (en) * | 2011-09-08 | 2013-10-10 | Lucas B. Ainsworth | Augmented Reality Based on Imaged Object Characteristics |
WO2016024242A1 (en) * | 2014-08-13 | 2016-02-18 | C 3 Limited | Log scanning system |
US10503943B2 (en) * | 2014-08-13 | 2019-12-10 | C 3 Limited | Log scanning system |
US10769472B2 (en) * | 2018-03-28 | 2020-09-08 | Wipro Limited | Method and system counting plurality of objects placed in a region |
WO2020152632A1 (en) * | 2019-01-25 | 2020-07-30 | Robotics Plus Limited | Load scanning apparatus |
US20210348914A1 (en) * | 2019-01-25 | 2021-11-11 | Robotics Plus Limited | Load Scanning Apparatus |
US11885605B2 (en) * | 2019-01-25 | 2024-01-30 | Robotics Plus Limited | Load scanning apparatus |
US20240133675A1 (en) * | 2019-01-25 | 2024-04-25 | Robotics Plus Limited | Load Scanning Apparatus |
US12253349B2 (en) * | 2019-01-25 | 2025-03-18 | Robotics Plus Limited | Load scanning apparatus |
US20210291404A1 (en) * | 2020-03-18 | 2021-09-23 | Disco Corporation | Edge alignment method |
US12151401B2 (en) * | 2020-03-18 | 2024-11-26 | Disco Corporation | Edge alignment method |
Also Published As
Publication number | Publication date |
---|---|
CA2788399A1 (en) | 2013-02-28 |
US9147014B2 (en) | 2015-09-29 |
US20130141568A1 (en) | 2013-06-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9147014B2 (en) | System and method for image selection of bundled objects | |
Mielcarek et al. | Testing and evaluating different LiDAR-derived canopy height model generation methods for tree height estimation | |
CN111412842B (en) | Method, device and system for measuring cross-sectional dimension of wall surface | |
KR101298957B1 (en) | Wood knot detecting method, device, and program | |
Othmani et al. | Towards automated and operational forest inventories with T-Lidar | |
Peuhkurinen et al. | Preharvest measurement of marked stands using airborne laser scanning | |
Pyysalo et al. | Reconstructing tree crowns from laser scanner data for feature extraction | |
US8577611B2 (en) | System and method for analyzing trees in LiDAR data using views | |
CA2496916C (en) | A method and a system for automatic measurement and tracking of logs, industrial wood and boards | |
US20100224140A1 (en) | Method and a System for Measuring an Animal's Height | |
CN110148116A (en) | A kind of forest biomass evaluation method and its system | |
WO2002068899A3 (en) | Log evaluation using cylindrical projections | |
CN110045354B (en) | Method and device for evaluating radar performance | |
CN113096121A (en) | Pavement crack detection method and system based on cross fracture mechanics and image processing | |
CN109187548A (en) | A kind of rock cranny recognition methods | |
CN115035254A (en) | Regional vegetation three-dimensional green quantity estimation method based on reconstructed point cloud | |
Litkey et al. | Single-scan TLS methods for forest parameter retrieval | |
US8538695B2 (en) | System and method for analyzing trees in LiDAR data using views | |
IE20080223A1 (en) | Tree surveying | |
Schütt et al. | Approaches for recognition of wood quality of standing trees based on terrestrial laserscanner data | |
Marinelli et al. | A triangulation-based technique for tree-top detection in heterogeneous forest structures using high density LiDAR data | |
CN112766685A (en) | Road engineering quality supervision method based on big data analysis and machine vision and cloud computing supervision platform | |
CN109544514A (en) | A kind of sawn timber identity identification method, device and equipment merging performance characteristic | |
JP3437141B2 (en) | Pattern recognition method and apparatus | |
IT202100027284A1 (en) | COMPUTER-IMPLEMENTED METHOD AND A COMPUTER SYSTEM FOR GENERATING A TRAINING DATASET FOR TRAINING AN ARTIFICIAL NEURAL NETWORK |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: WOODTECH MEASUREMENT SOLUTIONS, CHILE Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:PALMA-AMESTOY, RODRIGO A.;LASTRA, RAUL A.;REEL/FRAME:030056/0782 Effective date: 20130321 |
|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION |