SYSTEM AND METHOD FOR AUTONOMOUSLY DEFINING A REGION OF INTEREST OF A VESSEL - Patent application
The visually-based system addresses the challenge of accurately determining container dimensions by using a detector and computer system to identify features and define an area of interest autonomously, thereby improving measurement accuracy and reducing operator time.
Patent Information
- Application Number
- JP2022521113
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Priority Date
- 2020-04-21
- Filing Date
- 2020-09-24
- Publication Date
- 2025-04-03
- Estimated Expiration
- 2040-09-24
AI Technical Summary
Existing methods for determining container dimensions from images are challenging due to variations in container posture and orientation, leading to inaccuracies in defining the area of interest and measuring container features.
A visually-based system that includes a detector for capturing images of containers, a platform for supporting containers with relative movement to the detector, and a computer system programmed to identify container features, define an area of interest, and determine dimension measurements autonomously.
The system improves the accuracy of container dimensioning, reduces operator time in configuring measurements, and enables autonomous definition of the area of interest, enhancing the efficiency of container manufacturing and inspection processes.
Smart Images

Figure 0007656342000001 
Figure 0007656342000002 
Figure 0007656342000003
Abstract
Description
[Technical field]
[0001] <Priority Claim> This application claims priority to U.S. Patent Application No. 16 / 854,220, filed April 21, 2020, and U.S. Provisional Patent Application No. 62 / 913,956, filed October 11, 2019, which are incorporated by reference in their entireties. [Background technology]
[0002] During the manufacture of a container, such as a container by blow molding or extrusion, dimensional changes of the container can occur. Measuring the dimensions of the container can be used in quality control of the container to ensure that these dimensional changes are within tolerances. One measurement technique involves the use of images of the container, but there are challenges in determining the measurements of the container from the images. Summary of the Invention
[0003] In one general aspect, the present invention is directed to a system and method for determining a region of interest for a container. The system includes a detector for capturing feature data for the container while the container is on a platform, and a computer system. The computer system is in communication with the detector and is programmed to locate a feature of the container from the captured feature data. In various examples, the feature can be a horizontal center of the container, a vertical center of the container, a top of the container, a finish feature, a body feature, a shoulder feature, an end feature. The computer system is further configured to define a region of interest for the container based on the located features. In various examples, the computer system is programmed to determine dimensional measurements of the container from the identified features. In certain embodiments, the region of interest and / or other features can be stored in a data store.
[0004] In another general aspect, the present invention is directed to a vision-based system and method for determining a region of interest for a container. The system includes a platform for supporting the container, a detector for capturing images of the container over time while the container is on the platform, and a computer system. There is relative movement between the platform and the detector such that images captured by the detector are images of different container poses (positions and orientations) relative to the detector. In one example, the platform can be configured to rotate about an axis and / or change height relative to the detector. The computer system is in communication with the detector and the platform and is programmed to identify edges of the container from the captured images by chain code, raster scanning, Sobel edge detection, binarization, and / or edge extraction, etc. The computer system is programmed to locate features of the container that are on the identified edges from the captured images. In various examples, the features can be a horizontal center of the container, a vertical center of the container, a top of the container, a finish feature, a body feature, a shoulder feature, an end feature. The computer system is further configured to define a region of interest for the container based on the located features. In various examples, the computer system is programmed to determine dimensional measurements of the container from the identified features. In certain embodiments, the areas of interest and / or other features can be stored in a data store.
[0005] In various embodiments, the present disclosure provides systems and methods for autonomously defining a region of interest for a container, thereby improving the accuracy of container dimensional measurements and reducing the time required by an operator to configure measurements for new container designs. The systems and / or methods of the present disclosure can be applied to identify a container before it is placed in a measurement system by adding a second sensor to autonomously configure any mechanical and / or software adjustments for optimal container transport and measurement. These and other advantages realizable through various embodiments of the present invention will become apparent from the following description. [Brief description of the drawings]
[0006] The features and advantages of the embodiments of the present invention, as well as the manner in which they are accomplished, will become more apparent and will be better understood by reference to the following description taken in conjunction with the accompanying drawings, which illustrate, by way of example, various embodiments of the invention, and in which:
[0007] [Figure 1] 1 is an image of a portion of a container including a first area of interest, according to various embodiments of the present disclosure.
[0008] [Diagram 2] 11 is an image of a portion of a container including a second area of interest, according to various embodiments of the present disclosure.
[0009] [Diagram 3] 11 is an image of a portion of a container including a third area of interest, according to various embodiments of the present disclosure.
[0010] [Figure 4] FIG. 1 is a block diagram illustrating a system for autonomously defining a region of interest of a container, according to various embodiments of the present disclosure.
[0011] [Diagram 5] 1 is an image of a portion of a container according to various embodiments of the present disclosure.
[0012] [Figure 6] 1 is a silhouette image of a portion of a container according to various embodiments of the present disclosure.
[0013] [Figure 7] FIG. 13 is a detailed view of a silhouette image of a finishing area of a container according to various embodiments of the present disclosure.
[0014] [Figure 8] 1A-1C illustrate multiple images being combined into a single combined image in accordance with various embodiments of the present disclosure.
[0015] [Figure 9] 1 is a flowchart illustrating a method for autonomously defining a region of interest of a container, according to various embodiments of the present disclosure.
[0016] [Figure 10] 1 is a flow chart illustrating a method for autonomously identifying containers based on a comparison of ROI measurements and other features in a data store.
[0017] [Figure 11] FIG. 1 is a block diagram illustrating a computer system operatively coupled to a display for presenting a virtual representation, according to various embodiments of the present disclosure.
[0018] [Figure 12] 12 is a block diagram of the computer system and display of FIG. 11, with the display presenting a second virtual representation.
[0019] [Figure 13] 13 is a block diagram of the computer system and display of FIG. 12, with the display presenting a third virtual representation.
[0020] Corresponding reference characters indicate corresponding parts throughout the several views. The illustrations described herein illustrate certain particular embodiments in one form, and such illustrations are not to be construed as limiting the scope of the appended claims in any manner. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0021] 1, a typical inspection system may require an operator to define a region of interest 150 for a container in order to determine where features are located and how to locate the features in the container's captured feature data. For example, the operator may have to determine a left-most point 152 (or a right-most point (not shown)) on an edge of the container 106 within the region of interest 150, as shown in FIG.
[0022] It can be a challenge when, during the manufacturing and / or inspection process, the container 106 moves left or right in the field of view of the detector, thus shifting the location of the leftmost point 152 in the captured image, and thus the leftmost point 152 may not align with the region of interest 150. Therefore, the operator can take an additional step to set another region of interest 254, as shown in FIG. 2, to determine where the region of interest 150 should be defined. For example, FIGS. 1 and 2 can be considered to be images captured of the same container, but the container has been rotated in FIG. 2 relative to FIG. 1. The center 256 of the container 106 in FIG. 2 can be located by determining the leftmost point 258 and the rightmost point 260 of the container 106 within the region of interest 254, which can be defined on the thread of the finishing region of the container 106. The operator then references the region of interest 150 shown in FIG. 1 to the center 256 of the container 106 located within the region of interest 254 shown in FIG. 2 to locate the regions of interest in FIG. 1 and FIG. 2 relative to each other.
[0023] However, the container 106 may move vertically within the detector's field of view, and if the region of interest 254 includes at least partially the threads of the finished region of the container 106, the center 256 of the container 106 may be improperly defined. If the center 256 is improperly defined, the region of interest 150 may be improperly defined. Thus, the operator additionally sets another region of interest 362 (e.g., another image of the same container) as shown in Figure 3 to locate the top 364 of the container 106. The operator can reference the region of interest 254 shown in Figure 2 to the top 364 of the container 106 in the region of interest 362 shown in Figure 3 to locate the regions of interest in Figures 2 and 3 relative to each other.
[0024] Typically, an operator of the container manufacturing machine (e.g., a blow molding machine or extrusion machine) inputs various parameters into a control system / user interface of the container manufacturing machine to enable an inspection system of the manufactured container to measure the dimensions of the container 106. Programming the various parameters and defining the areas of interest can be time consuming. In addition, operator turnover can lead to inexperienced operators using the inspection system, and thus the parameters and areas of interest can be incorrectly configured, which can lead to erroneous measurements of the container 106.
[0025] Thus, the present disclosure provides a vision-based system for autonomously defining a region of interest on a container and a corresponding method for autonomously defining a region of interest on a container, which can improve the accuracy of measurements of container features and reduce the time required by an operator to configure measurements for new container designs.
[0026] 4 illustrates a system 400 for determining a region of interest of a container 406, according to various embodiments of the present invention. The system 400 comprises a detector 402, a platform 404, a computer system 410, and optionally a light source 408 and a data store 418. The computer system 410 may be in communication with the detector 402, the platform 404, and the light source 408 via any suitable wired or wireless communication link, such as an Ethernet cable, an RS-232 cable, Bluetooth, etc. The computer system 410 may also be in data communication with the data store 418 (e.g., via a LAN). The platform 404 may be positioned intermediate the detector 402 and the light source 408. The detector 402 is preferably a camera having a field of view, as described further below.
[0027] As used herein, a reference element or region that is "intermediate" between two other elements or regions means that the reference element / region is disposed between, but not necessarily in contact with, the two other elements / regions. Thus, for example, a reference element that is "intermediate" between a first element and a second element may or may not be directly adjacent to or in contact with the first element and / or the second element, and other elements may be disposed between the reference element and the first element and / or the second element.
[0028] The data store 418 is a repository for storing and managing data and may be implemented with a database (e.g., relational database, non-relational database) or other file storage types. For example, the data store 418 may include job files suitable for storing data related to a particular container. For example, each job file may include dimensional measurements of a particular container (e.g., T, E, D, W, height, thickness, material), images of the container, pass / fail thresholds for particular dimensions (e.g., max, min, range), system optimization parameters (e.g., light level, inspection speed, camera gain, spectral characteristics), communications / data / commands (e.g., network, serial), bottle transport parameters (e.g., gripping position, gripping force, transport speed), calibration parameters (e.g., vision, thickness, motion control), and other parameters. The data store 418 may be implemented with, for example, an in-memory data store, a distributed data store, a federated data store, and / or a cloud-based data store.
[0029] The container 406 may be at least one of a bottle, a jar, a jug, a bucket, a preform, and a glass bottle. The container 406 may include a variety of materials such as, for example, plastic, metal, and / or glass. The container 406 may be a blow molded container or an otherwise formed container.
[0030] The platform 404 can be configured to support the container 406. For example, the platform 404 can support the weight and / or position of the container 406. The platform 404 can be, for example, a turntable, a conveyor, an overhead rail, a robotic gripper, or other body. The platform 404 can be fixed with respect to position and orientation, or the platform 404 can be movable relative to the detector 402. For example, the platform 404 can be configured to rotate about an axis 412 and / or change height along a direction 414 relative to the detector 402, with the container 406 moving with the platform 404. In other embodiments, the container 406 is stationary on the platform 404 and the detector 402 moves. In either case, there is relative movement between the platform 404 (and the container 406) and the field of view of the detector 402.
[0031] The detector 402 can be configured to capture feature data within a field of view 416 of the detector 402 and output the captured feature data to the computer system 410. For example, the detector 402 can capture feature data of the container 406 over time while the container 406 is on the platform 404 and output the captured feature data of the container to the computer system 410. The field of view 416 can be at least a portion of the container 406 or the entire container 406 (not shown). The detector 402 can be at least one of a camera (e.g., CCD, CMOS, hyperspectral, time-of-flight), an infrared sensor, a spectrometer, a confocal probe, a LIDAR, a thickness sensor, or other 3D point mapping device. In various embodiments where the detector 402 is a camera, the feature data can be an image. In some embodiments, the detector 402 can capture a single image or multiple images of the container 406 while the container 406 is on the platform 404 and output the captured image or images to the computer system 410.
[0032] In various embodiments, detector 402 may include a thickness sensor or other container material distribution sensor, as described in U.S. Patent No. 8,818,755, which is incorporated herein by reference. In embodiments in which detector 402 is a thickness sensor, the feature data may be a thickness value associated with a location. In other examples, the feature data may be a 3D point cloud or other 3D file. In various examples, system 400 may include multiple detectors 402.
[0033] The detector 402 may be fixed, or the detector 402 may be movable relative to the platform 404. For example, the detector 402 may be movable by a robotic arm or other device such that the orientation of the detector 402 may be changed relative to the platform 404. In various embodiments, the detector 402 may scan the container 406 vertically and / or circumferentially and store a linear profile of the container 406 that is substantially aligned with the axis 412 and / or silhouette (2D or 3D) of the container 406, and the type of detector 402 may be a confocal probe, a LIDAR, a time-of-flight device, a spectrometer, or a similar device.
[0034] As shown, the computer system 410 can be configured to communicate with a positioning control device 448 configured to change the pose of the detector 402 relative to the platform 404. The positioning control device 448 can move the detector in at least three degrees of freedom, such as, for example, along the axis 412, along an axis perpendicular to the axis 412, and rotation about the axis 412. The computer system 410 and the positioning control device 448 can close a loop on the detector 402 to position the detector 402 in an optimal position for a desired performance in measuring the linear profile and / or silhouette of the container 406. For example, the position of the detector 402 can be known based on where it is positioned by the positioning control device 448. The output feature data from the detector 402 and the position of the detector 402 can be used by the computer system 410 to determine characteristics of the container 406, such as, for example, the 3D location of an area on the surface of the bottle, the thickness, and / or the presence of a surface of the container 406.
[0035] For clarity, the detector 402 is described in terms of a camera, but it will be understood that the camera may include, be replaced by, or include in addition to other types of sensors, such as infrared sensors, spectrometers, confocal probes, LIDAR sensors, thickness sensors, or other 3D point mapping devices. Referring back to FIG. 4, regardless of the configuration of the detector 402 and the platform 404, there may be relative movement between the platform 404 and the detector 402. Thus, the images captured by the detector 402 may be of different attitudes (e.g., positions and / or orientations) of the container 406 relative to the detector 402. Images of the container 406 may be captured by rotating the container 406 at a constant height about an axis 412 within the field of view 416 of the detector 402. Images of the container 406 may be captured by changing the height of the container 406 along a direction 414 relative to the detector 402 within the field of view 416 of the detector 402 while maintaining the container 406 at a constant angle relative to the axis 412. An image of the container 406 can be captured by varying the height of the container 406 along a direction 414 relative to the detector 402 within the field of view 416 of the detector 402 and simultaneously rotating the container 406 about an axis 412 within the field of view 416 of the detector 402.
[0036] The pose of the detector 402 relative to the platform 404 (and / or the pose of the platform 404 relative to the detector 402) for each captured image can be added as pose data to the respective image as metadata and / or stored in the data store 418. In various embodiments, each captured image can capture only a partial field of view of the container, and at least two captured images can be combined into a single image based on the pose data and / or identified features as described herein.
[0037] The computer system 410 can be programmed to control the detector 402 (movement and / or image capture), the movement (e.g., rotation and / or height) of the platform 404, and / or the light source 408 (e.g., on / off, brightness, color). The computer system 410 can receive captured images from the detector 402, and the computer system 410 can be programmed to process the captured images.
[0038] For example, the detector 402 can capture an image 520 as shown in FIG. 5 and output the captured image 520 to the computer system 410. The computer system 410 can receive the image 520 from the detector 402 and can process the image 520. For example, the computer system 410 can be programmed to identify an edge 522 of the container 406 from the captured image 520. The edge 522 of the container 406 can be identified based on a contrast change in pixels of the captured image 520 that meets and / or exceeds a threshold, and / or a brightness change in pixels of the captured image 520 that meets and / or exceeds a threshold. In various embodiments, the computer system 410 can be programmed to utilize at least one of a chain code, a raster scan, a Sobel edge detection, binarization, and edge extraction to identify the edge. In one particular example, identifying the edge 522 of the container 406 can include converting the captured image 520 into a silhouette image 624 as shown in FIG. 6. In various examples, the computer system 410 can be further programmed to smooth (e.g., remove pixel noise) the captured image 520 and / or the silhouette image 624. In various examples, the computer system 410 can identify the edge 522 of the container 406 from a point cloud, a computer design file (e.g., a step file), or other data type.
[0039] The computer system 410 can be programmed to locate features on the edge 522 from the silhouette image 624 and / or the captured image 520. The features can be, for example, the horizontal center of the container 406, the vertical center of the container 406, the top of the container 406, the side of the container 406 (e.g., left side, right side), the bottom of the container 406, a finish feature of the container 406, a body feature of the container 406, a shoulder feature of the container 406, and / or an end feature of the container 406. The finish feature can be, for example, a thread crest, a thread root, a support ledge edge, and a neck straight edge.
[0040] The computer system 410 can be programmed to identify edge angles of pixels along the edge 522 from the silhouette image 624 and / or the captured image 520. The edge angles can be identified by defining a first line between two adjacent pixels on the edge 522 and determining the angle of a second line perpendicular to the first line relative to a reference line. The reference line can be stored in the database 418.
[0041] Based on the edge angle, the computer system 410 can be programmed to determine whether the line between adjacent pixels is horizontal, vertical, curved, convex, and / or concave. A horizontal plane can be defined as the top or bottom of the container 406. A midpoint between the top and bottom of the container 406 can be defined as the vertical center of the container 406. A vertical plane can be defined as a side of the container 406. A midpoint between the left and right sides of the container 406 can be defined as the horizontal center of the container 406.
[0042] The curved, convex, and / or concave surfaces can be defined as finish features or other features of the container 406. For example, the computer system 410 can be programmed to locate concave and / or convex regions on the edge 522 from the silhouette image 624 and / or the captured image 520. The concave regions can correspond to portions of the container 406 adjacent to threads, between threads, adjacent to a support ledge, between the support ledge and the threads, and / or another feature. For example, the concave region 726 shown in FIG. 7 positioned between the threads can be located by the computer system 410. Based on the identification of the concave region 726 (and optionally its relative positioning on the container 406, e.g., distance from the top of the container), the threads can be located and the thread apex and / or root can be identified. For example, as shown in FIG. 7, the apex 728 can be identified as adjacent to the concave region 726 and the root 730 can be identified as a point within the concave region. Valley bottom 730 may be the rightmost point in concave region 726. Similarly, convex region 732 may be identified, the leftmost point in convex region 732 may be identified as apex 728, and valley bottom 730 may be identified as adjacent to convex region 732.
[0043] The computer system 410 can be programmed to classify features on the edge 522 into measurement categories. For example, each measurement category can correspond to a dimensional measurement that requires the location of that feature within the captured image 520 or silhouette image 624. The dimensional measurements can include container height (e.g., the distance between the top of the container and the bottom of the container), container width (e.g., the distance between the left side of the container and the right side of the container), tamper evident bead diameter (e.g., A, the distance between the apex of the feature adjacent the left support ledge and the apex of the feature adjacent the right support ledge), tamper evident bead height (e.g., D, the distance between the bottom of the feature adjacent the support ledge and the top of the container), thread root diameter (e.g., E, the distance between the thread root on the left side of the container and the thread root on the right side of the container), and the like. ), thread apex diameter (e.g., T, the distance between the thread apex on the left side of the container and the thread apex on the right side of the container), height from the top of the container to the support ledge, X, diameter of the support ledge (e.g., Z, the distance between the leftmost point of the support ledge and the rightmost point of the support ledge), neck straight diameter (e.g., NSD, the distance between the leftmost point of the neck of the container and the rightmost point of the neck of the container), and neck straight height (e.g., NSH, the distance between the bottom of the neck and the bottom of the support ledge). For example, the top of the container feature can be classified into measurement categories for the tamper evident bead distance D, and the height X from the top of the container to the support ledge.
[0044] In other examples, computer system 410 can be configured to measure thickness and material properties (e.g., composition, density) at any point or continuous scan from the top of container 406 to the bottom along the central axis of the bottle (e.g., substantially parallel to axis 412) in examples where detector 402 is an infrared sensor, spectrometer, hyperspectral camera, or confocal probe. Computer system 410 can be programmed to measure the color of container 406 when detector 402 is a color camera or spectrometer.
[0045] The computer system 410 can be programmed to determine dimensional measurements of the container from the features. For example, the computer system 410 can be programmed to determine pixel distances between features that correspond to the measurements. In various embodiments, the distance measurements may be sub-pixel. The dimensional measurements may be non-contact dimensional measurements.
[0046] The computer system 410 can be programmed to compare the dimensional measurements and other characteristics measured from the detector 402 to a data store 418, which may include dimensional measurement job files or other data including thickness, color and material properties, as well as associated specifications (e.g., ranges for a particular dimension or property). Based on this comparison, the computer system 410 can be programmed to identify the container 406 and determine whether the container 406 passes or fails the specifications (e.g., falls within a range for that particular dimension).
[0047] The computer system 410 can be programmed to define a region of interest for the container 406 based on the features. For example, the region of interest for the tamper-evident bead distance D can be defined to include the bottom of the feature adjacent the support ledge and the top of the container. The region of interest can be defined to omit features that may interfere with the desired dimensional measurements.
[0048] The computer system 410 can be configured to identify edges, locate features, and define regions of interest in a single captured image or in at least two captured images. For example, the computer system 410 can be programmed to combine the at least two captured images together into a combined image of at least a portion of the container. The at least two captured images may be captured at substantially the same angle of the platform relative to the detector 402 and at different heights of the platform 404 relative to the detector 402.
[0049] 8, a first image 834, a second image 836, a third image 838, a fourth image 840, and a fifth image 842 of the container 406 are captured by the detector 402. The images 834, 836, 838, 840, and 842 are output to the computer system 410, where they are combined into a single combined image 844 using pose data embedded in each image or stored in the data store 418. Additionally, the images 834, 836, 838, 840 can be combined into a single silhouette image using the pose data, which reduces the memory required to store the complete shape of the container.
[0050] In various embodiments, the computer system 418 can be in communication with a display 1150, as shown in FIG. 11. The display 1150 can be, for example, a touch screen display. The single combined image 844 or other profile / silhouette data file can be, for example, a three-dimensional (3D) representation of the container 406, such as a point cloud or a 3D image file. The computer system 410 can be configured to present a virtual representation 1144 of the single combined image 844 on the display 1150, and optionally annotate surface features of the virtual representation 1144, such as dimensional variations, thickness, color, material properties, and / or errors between nominal and actual values, throughout the virtual representation 1144 of the container 406. For example, in response to a user clicking via an input device (e.g., a mouse) or (in the case of a touch screen display) touching a selection location on the virtual representation 1144, such as location 1152 on the display 1150 that corresponds to a finish feature of the container 406, the computer system 410 can present a virtual representation 1244 on the display 1150, as shown in FIG. 12. The virtual representation 1244 can be annotated with boxes 1254 presenting various parameters (e.g., dimensional measurements, pass / fail thresholds) and / or options that the user can select, such as finish T, overall height, and finish E, as shown in FIG. 12. The user can then select any one or more of the measurements to be added to a job file in the data store 418 associated with the container 406. The computer system 410 can be programmed to store nominal values of the measurements based on output from the detector 402 scanning the container 406 presented on the platform 404.
[0051] For example, the user may select "Finish T" and a virtual representation 1344 may be displayed by the computer 410 on the display 1150. The virtual representation 1344 may include an arrow annotation to highlight which feature on the container 406 is being used by the computer system 410 to calculate the selected dimensional measurement and may display the value of the measurement (i.e., 26.32). Additionally, another box 1356 may be displayed that the user may use to set various parameters of the job file in the data store 418.
[0052] In other examples, the location of the minimum and / or maximum points for each dimension within the region of interest around the container 406 may be displayed in the virtual representation 1144, 1244, 1344. The computer system 410 may allow the operator to adjust the orientation and / or magnification of the virtual representation 1144, 1244, 1344. For example, the operator may rotate the virtual representation 1144, 1244, 1344 about any of the three axes of the respective virtual representation 1144, 1244, 1344 associated with the container 406.
[0053] The computer system 410 can be programmed to compare the features identified in the captured image to a data store 418, which may include stored feature data. Based on the comparison, the computer system 410 can be programmed to select regions of interest in the captured image. In other embodiments, the computer system can be programmed to compare silhouettes in the captured image to a data store 418, which may include stored nominal silhouettes, and based on the comparison, the computer system 410 can be programmed to select regions of interest and / or measurements in the captured image.
[0054] In various embodiments, the system 400 can include a robotic system 446. The robotic system 446 can be programmed to grasp the container 406 based on a comparison of the identified features to the data store 418 and / or based on dimensional measurements determined from the identified features in the captured images. The robotic system 446 can be programmed to grasp the container 406 by identifying features of the container 406 in real time and comparing the identified features and / or dimensional measurements to the data store 418. Thus, the robotic system 446 can automatically handle and transport the container 406 as desired without the need for an operator to input handling and transport commands to the robotic system 446.
[0055] A method for determining a region of interest of a container, according to various embodiments of the present invention, is shown in FIG. 9. The method can include, at step 902, disposing a container 406 on a platform 404. In various examples, the container can be formed on a container forming machine during a production run, and the container disposed on the platform can be formed during the production run. At step 904, the detector 402 can capture images of the container 406 over time while the container 406 is on the platform 404. There can be relative movement between the platform 404 and the detector 402 such that the images captured by the detector 402 are images of different orientations of the container relative to the detector 402. In various examples, at least two of the captured images can be combined together into a combined image of at least a portion of the container.
[0056] In step 906, the computer system 410 can identify an edge of the container from the captured image, and in step 908, locate features on the edge from the captured image. In step 910, the computer system 410 can define a region of interest for the container based on the identified features, and in step 912, the computer system 410 can determine dimensional measurements of the container 406 from the region of interest. In step 914, the computer system 410 can store the region of interest, e.g., coordinates within the image of the container that define the region of interest, in a data store 418. The data store 418 may be stored in memory, on the cloud, on a server (e.g., a SQL server), etc.
[0057] The identified features, determined dimensional measurements, and / or material properties of the container 406 can be compared to a data store 418 including job files in the data store 418. If a threshold level of similarity between the job file and the features, dimensional measurements, and / or material properties is determined based on the comparison, the job file having the threshold level of similarity can be designated as matching the container 406 being measured. The computer system 410 can then select an area of interest in the captured image based on the area of interest associated with the matching job file, in step 918, and / or determine whether the container passes / fails the specifications based on a pass / fail threshold in the matching job file. In various embodiments, in step 920, the robotic system can grip the container based on parameters associated with the matching job file. Additionally, parameters of the system 400 can be adjusted based on the matching job file to increase the accuracy of the determination of the dimensional measurements. For example, the system 400 can import the correct system parameters defining the optical power, transport speed, or gripping force, or the job modification unit can be placed or moved by an automated actuator based on the matching job file.
[0058] 10, if a threshold level of similarity between the job file and the features is not achieved in step 916, the computer system 410 can determine suitable parameters for the robotic system to grip the container based on the output from the detector 1002. For example, the computer system 410 can determine suitable parameters for adjusting the container transport and / or job modification unit and / or the areas of interest and / or the dimensions to be measured, and generate a job file based on those suitable parameters in 1004. The computer system 410 can save the job file in a data store for future comparison. In some embodiments, the computer system 410 can have a set of template files with pass / fail boundaries, and the computer system 410 can match the container features, dimensions and / or areas of interest determined from the detector 402 to the list of template files in order to quickly and / or accurately generate a job file with the correct parameters autonomously.
[0059] The functionality of the computer system 410 described herein may be implemented with software stored in computer memory and executed by the processor(s) of the computer system 410. The software may use any suitable computer programming language, such as .NET, C, C++, Python, and using traditional, functional, or object-oriented techniques. Programming languages for computer software and other computer-implemented instructions may be translated into machine language by a compiler or assembler before execution and / or directly translated at run-time by an interpreter. Examples of assembly languages include ARM, MIPS, and x86, examples of high-level languages include Ada, BASIC, C, C++, C#, COBOL, Fortran, Java, Lisp, Pascal, ObjectPascal, Haskell, ML, and examples of scripting languages include Bourne script, JavaScript, Python, Ruby, Lua, PHP, and Perl.
[0060] The processor(s) of the computer system 410 may include on-board memory (ROM or RAM) and off-board memory. The on-board memory may include primary, volatile, and / or non-volatile storage (e.g., storage directly accessible by the processor core). The off-board memory may include secondary non-volatile storage (e.g., storage not directly accessible by the processor core), such as ROM, HDD, SSD, flash, etc. The processor core may be, for example, a CPU core and / or a GPU core. Software executed by the processor(s) to implement the above-mentioned functions of the computer system may be stored in the above-mentioned off-board and / or on-board memory.
[0061] Those skilled in the art will recognize that the articles and methods described herein and the accompanying discussion are used as examples for conceptual clarity, and various configuration modifications are contemplated. Thus, as used herein, the specific examples / embodiments described and the accompanying discussion are intended to be representative of their more general classes. In general, the use of any particular example is intended to be representative of its class, and the absence of a particular component, device, action / behavior, and object should not be considered limiting. While the present disclosure provides descriptions of various specific aspects for the purpose of illustrating various aspects of the disclosure and / or its potential applications, those skilled in the art will understand that variations and modifications occur. Thus, the invention or inventions described herein should be understood to be at least as broad as they are claimed, and not more narrowly defined by the specific exemplary aspects provided herein.
Claims
1. 1. A system for autonomously defining a region of interest of a container, comprising: a detector for capturing characteristic data of the container; a computer system in communication with the detector, identifying an edge of the container from the captured feature data, the identification including converting the captured feature data into a silhouette of the container; locating features of the edge of the container, the locating including identifying edge angle characteristics along the edge from the silhouette of the container; classifying the features of the edge of the container into measurement categories based on the edge angle characteristics and the feature location; and defining the area of interest for dimensional measurement of the container based on the located features, including determining which located features to include in the area of interest based on the measurement category.
2. 10. The system of claim 1, wherein the computer system is programmed to locate features of the edge of the container utilizing at least one of a chain code, a raster scan, a Sobel edge detection, binarization, and edge extraction.
3. 2. The system of claim 1, wherein said computer system being programmed to locate features of the edge of the container comprises said computer system being programmed to locate at least one of concave and convex regions from the captured feature data.
4. 2. The system of claim 1, wherein the features include at least one of a horizontal center of the container, a vertical center of the container, a top of the container, a side of the container, a bottom of the container, a finish feature, a body feature, a shoulder feature, and an end feature.
5. The system of claim 4 , wherein the finishing features include at least one of a thread crest, a thread root, a support ledge edge, and a neck straight edge.
6. The system of claim 1 further comprising a platform for supporting the container.
7. The system of claim 6 , wherein the system further comprises a light source, the platform being positioned intermediate the light source and the detector.
8. The system of claim 6 , wherein the platform is configured to rotate about an axis and to change height relative to the detector.
9. The system of claim 6, wherein the detector is configured to capture images of the container over time while the container is on the platform, and there is relative movement between the platform and the detector such that the feature data captured by the detector are images of different container orientations relative to the detector.
10. 10. The system of claim 9, further comprising the computer system programmed to combine at least two of the captured images together into a combined image of at least a portion of the container.
11. The system of claim 10 , wherein the at least two images are captured at substantially the same angle of the platform relative to the detector and at different heights of the platform relative to the detector.
12. 10. The system of claim 1, further comprising a display in communication with the computer system, the computer system configured to display a virtual representation of the characteristic data of at least a portion of the container on the display.
13. The system of claim 12 , wherein the computer system is further configured to annotate the virtual representation with parameters associated with the container.
14. The system of claim 12 , wherein the computer system is configured to modify at least one of a pose and a magnification of the virtual representation in response to received input.
15. The system of claim 1 , further comprising the computer system programmed to compare the features to a data store of features and to select regions of interest based on the comparison.
16. 16. The system of claim 15, further comprising a robotic system programmed to grasp the container based on the comparison.
17. The system of claim 1 , wherein the computer system is programmed to determine dimensional measurements of the container from the characteristics.
18. 20. The system of claim 17, further comprising a robotic system programmed to grasp the container based on the determined dimensional measurements.
19. The system of claim 1 , wherein the detector is at least one of a camera, an infrared sensor, a spectrometer, a confocal probe, a LIDAR, and a thickness sensor.
20. The system of claim 1 , wherein the detector is a camera and the captured feature data is an image.
21. 1. A method for autonomously defining a region of interest of a container, comprising: acquiring characteristic data of the container with a detector; identifying, by a computer system, an edge of the container from the captured feature data, the identifying including converting the captured feature data into a silhouette of the container; locating, by the computer system, features of the edge of the container, the locating including identifying edge angle characteristics along the edge from the silhouette of the container; classifying, by the computer system, the features of the edge into measurement categories based on the edge angle characteristics and the feature locations; and defining, by the computer system, the region of interest for dimensional measurement of the container based on the features, including determining which located features to include in the region of interest based on the measurement category.
22. The method of claim 21 , further comprising storing the region of interest in a data store.
23. 23. The method of claim 22, further comprising forming the container in a container forming machine during a production run.
24. determining, by the computer system, dimensional measurements of the container from the characteristics; and 24. The method of claim 23, further comprising: comparing dimensions of a container formed during the production run to a specification for the container using the areas of interest stored in the data store.
25. capturing, by the detector, images of the container over time while the container is on a platform, where there is relative movement between the platform and the detector such that images captured by the detector are images of different orientations of the container relative to the detector; 22. The method of claim 21, further comprising combining at least two of the captured images together into a combined image of at least a portion of the container.
26. 1. A system for autonomously defining a region of interest of a container, comprising: a detector for capturing characteristic data of the container; a computer system in communication with the detector, identifying an edge of the container from the captured feature data, the identification including converting the captured feature data into a silhouette of the container; locating features of the edge of the container, the locating including identifying an edge angle along the edge from the silhouette of the container; and defining the area of interest for dimensional measurement of the container based on the edge angle and the location of the feature.
27. 27. The system of claim 26, wherein the edge angle is identified by defining a first line between two adjacent pixels on the edge and determining an angle of a second line perpendicular to the first line with respect to a reference line.
Citation Information
Patent Citations
STRESS DETECTION SYSTEM AND METHOD IN MOLDED CONTAINER
JP2002513463A
Appearance inspection device for vessel
JP2007024776A
Distorted image inspection device and distorted image inspection method
JP2019105610A
Semiconductor memory device and refresh method thereof
US20140269123A1
Method and system for testing and inspecting containers using one or more light reflections and positional data
US20190226999A1