WO2024176359A1 - 位置補正装置、ロボットシステムおよび位置補正プログラム - Google Patents

位置補正装置、ロボットシステムおよび位置補正プログラム Download PDF

Info

Publication number
WO2024176359A1
WO2024176359A1 PCT/JP2023/006260 JP2023006260W WO2024176359A1 WO 2024176359 A1 WO2024176359 A1 WO 2024176359A1 JP 2023006260 W JP2023006260 W JP 2023006260W WO 2024176359 A1 WO2024176359 A1 WO 2024176359A1
Authority
WO
WIPO (PCT)
Prior art keywords
position correction
correction device
workpiece
workpieces
dimensional
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.)
Ceased
Application number
PCT/JP2023/006260
Other languages
English (en)
French (fr)
Inventor
維佳 李
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fanuc Corp
Original Assignee
Fanuc Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Fanuc Corp filed Critical Fanuc Corp
Priority to CN202380086739.6A priority Critical patent/CN120380299A/zh
Priority to JP2025501985A priority patent/JPWO2024176359A1/ja
Priority to DE112023005156.9T priority patent/DE112023005156T5/de
Priority to PCT/JP2023/006260 priority patent/WO2024176359A1/ja
Priority to TW113102413A priority patent/TW202434420A/zh
Publication of WO2024176359A1 publication Critical patent/WO2024176359A1/ja
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01BMEASURING LENGTH, THICKNESS OR SIMILAR LINEAR DIMENSIONS; MEASURING ANGLES; MEASURING AREAS; MEASURING IRREGULARITIES OF SURFACES OR CONTOURS
    • G01B11/00Measuring arrangements characterised by the use of optical techniques
    • G01B11/24Measuring arrangements characterised by the use of optical techniques for measuring contours or curvatures
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • B25J13/08Controls for manipulators by means of sensing devices, e.g. viewing or touching devices
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Program-controlled manipulators
    • B25J9/16Program controls
    • B25J9/1694Program controls characterised by use of sensors other than normal servo-feedback from position, speed or acceleration sensors, perception control, multi-sensor controlled systems, sensor fusion
    • B25J9/1697Vision controlled systems
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01BMEASURING LENGTH, THICKNESS OR SIMILAR LINEAR DIMENSIONS; MEASURING ANGLES; MEASURING AREAS; MEASURING IRREGULARITIES OF SURFACES OR CONTOURS
    • G01B11/00Measuring arrangements characterised by the use of optical techniques
    • G01B11/24Measuring arrangements characterised by the use of optical techniques for measuring contours or curvatures
    • G01B11/25Measuring arrangements characterised by the use of optical techniques for measuring contours or curvatures by projecting a pattern, e.g. one or more lines, moiré fringes on the object
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40006Placing, palletize, un palletize, paper roll placing, box stacking
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40564Recognize shape, contour of object, extract position and orientation
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V2201/00Indexing scheme relating to image or video recognition or understanding
    • G06V2201/06Recognition of objects for industrial automation

Definitions

  • This disclosure relates to a position correction device, a robot system, and a position correction program.
  • object detection technology that recognizes an object (workpiece) in an image captured by a camera and acquires information such as the object's position, orientation, and external size.
  • image processing technology e.g., pattern matching
  • one object may be mistakenly recognized as multiple objects, or multiple objects may be mistakenly recognized as one object.
  • an object is close to its surrounding background, there is a problem in which the object cannot be detected (goes undetected), or the background may be mistakenly recognized as an object even though it is not actually present.
  • a position correction device that calculates at least the detection position of at least one workpiece based on a two-dimensional image capturing the areas where multiple workpieces are present, and corrects and outputs the detection position of at least one workpiece based on three-dimensional measurement data that measures the areas where multiple workpieces are present.
  • FIG. 1 is a diagram illustrating an example of a robot system according to the present embodiment.
  • FIG. 2 is a flowchart for explaining an example of processing in a first example of a position correction program according to this embodiment.
  • FIG. 3 is a diagram for explaining an example of a workpiece recognition process in the first example of the position correction device according to the present embodiment.
  • FIG. 4 is a flowchart for explaining an example of processing in a second example of a position correction program according to this embodiment.
  • FIG. 5 is a diagram for explaining an example of a workpiece recognition process in the second example of the position correction device according to the present embodiment.
  • FIG. 6 is a diagram for explaining the shape region of a workpiece in the first and second examples of the position correction device according to this embodiment.
  • FIG. 1 is a diagram showing a schematic diagram of an example of a robot system according to this embodiment.
  • the robot system 100 includes a robot 1, a robot control device 2, a position correction device 3, and an acquisition unit (measurement unit) 4.
  • the robot 1 includes a robot mechanism unit 10, an arm 11, and an end effector (hand unit) 12.
  • the robot 1 is configured as, for example, a multi-axis robot, and an end effector 12 is provided at the tip of an arm 11.
  • the end effector 12 is a suction device (suction hand), but it goes without saying that this can be changed to various types depending on the object (workpiece) to which the robot system is applied and the work content.
  • the robot mechanism unit 10 is for making the robot 1 perform a predetermined operation based on a control command from the robot control device 2. That is, the robot control device 2 receives the output of the position correction device 3, and generates a control command for making the robot 1 perform a predetermined operation based on, for example, a program or teaching data stored in an internal storage device, and outputs it to the robot mechanism unit 10.
  • the position correction device 3 is depicted as being independent from the robot control device 2, the position correction device 3 may be configured to be incorporated inside the robot control device 2.
  • the acquisition unit 4 is for acquiring two-dimensional images and three-dimensional measurement data (three-dimensional point cloud data) of the area where multiple workpieces (e.g., multiple cardboard boxes) D1 to D9 exist, and includes, for example, two cameras 4a and 4b and a projector 4c.
  • the projector 4c projects a predetermined pattern onto the area where the multiple workpieces D1 to D9 exist, and the two cameras 4a and 4b capture an image of the area where the multiple workpieces exist onto which the predetermined pattern is projected by the projector 4c, and measure the three-dimensional shapes of the workpieces D1 to D9.
  • the acquisition unit 4 can measure the three-dimensional shape of the areas where the multiple workpieces D1 to D9 exist and acquire three-dimensional measurement data. Furthermore, the acquisition unit 4 can also acquire a two-dimensional image of the areas where the multiple workpieces D1 to D9 exist, for example, by using an image captured by one of the two cameras 4a and 4b.
  • the acquisition unit 4 is not limited to the above-mentioned configuration, and may, for example, acquire three-dimensional measurement data of the area where multiple workpieces are present using stereo cameras 4a and 4b, and acquire two-dimensional images of the area where multiple workpieces are present using two-dimensional camera 4c. Furthermore, the acquisition unit 4 may have various other configurations as long as it can acquire two-dimensional images and three-dimensional measurement data of the area where workpieces D1 to D9 are present. In FIG.
  • the acquisition unit 4 outputs two-dimensional images and three-dimensional measurement data to the position correction device 3, but the position correction device 3 may, for example, receive and process only image data captured by each of the cameras 4a to 4c of the acquisition unit 4, and internally generate two-dimensional images and three-dimensional measurement data (three-dimensional point cloud data).
  • the position correction device 3 performs position correction processing of the workpiece based on the two-dimensional image and three-dimensional measurement data from the acquisition unit 4, or based on the two-dimensional image and three-dimensional measurement data generated from the image data of each camera 4a to 4c from the acquisition unit 4.
  • the position correction device 3 can be built into the robot control device 2, instead of being provided as a dedicated position correction device 3.
  • the position correction device 3 can be configured as a dedicated workstation provided near the robot control device 2, or a higher-level computer or general-purpose computer provided at a location remote from the robot system 100.
  • a general-purpose computer or processor may be used, but faster processing can be achieved by applying a GPGPU (General-Purpose computing on Graphics Processing Units) or a large-scale PC cluster.
  • GPGPU General-Purpose computing on Graphics Processing Units
  • a large-scale PC cluster may be used, but faster processing can be achieved by applying a GPGPU (General-Purpose computing on Graphics Processing Units) or a large-scale PC cluster.
  • the position correction device of this first example corrects and calculates the shape area of the workpiece (object) calculated based on a two-dimensional image using three-dimensional measurement data (three-dimensional point cloud data), and corrects the position, orientation, external size, etc. of the workpiece based on the corrected shape area. Furthermore, the position correction device of this second example corrects and calculates the shape area of the workpiece calculated based on three-dimensional measurement data using the image processing results of the two-dimensional image, and corrects the position, orientation, external size, etc. of the workpiece based on the corrected shape area.
  • FIG. 6 is a diagram for explaining the shape area of the workpiece in the first and second examples of the position correction device according to this embodiment.
  • shape area of the workpiece refers to, for example, the area indicated by reference character A1 (area of the workpiece D itself) that includes only the workpiece D and does not include the background area around the workpiece D in the two-dimensional image or three-dimensional image (generated from three-dimensional measurement data) P3 output from the acquisition unit 4, as shown in the left diagram of FIG. 6.
  • the area includes the workpiece D and its surrounding background area, and is not the area indicated by reference character A2 (area of a predetermined shape) of a predetermined shape.
  • the "shape area of the workpiece" in this specification is "area information reflecting the shape/outer shape of the workpiece", and this information can be used to calculate the shape/outer shape of the workpiece.
  • FIG. 2 is a flowchart for explaining an example of processing in a first embodiment of the position correction program (position correction device) according to this embodiment
  • FIG. 3 is a diagram for explaining an example of work recognition processing in the first embodiment of the position correction device according to this embodiment.
  • FIG. 2 when an example of processing in the position correction program of the first embodiment starts (START), in step ST11, two-dimensional images and three-dimensional measurement data of the presence areas of multiple workpieces are acquired. That is, as described with reference to FIG. 1, the acquisition unit 4 acquires two-dimensional images and three-dimensional measurement data (three-dimensional point cloud data) of the presence areas of multiple workpieces (e.g., multiple cardboard boxes) D1 to D9, and outputs them to the position correction device 3.
  • multiple workpieces e.g., multiple cardboard boxes
  • step ST12 to detect the workpiece based on the two-dimensional image. That is, the position correction device 3 detects the workpiece based on the two-dimensional image from the acquisition unit 4.
  • FIG. 3 shows a case where there is almost no difference in the shading or color (hue, brightness, and saturation) of the entire workpiece (object) B0 in a two-dimensional image P1 capturing an area where multiple workpieces are present. That is, for example, if the shading or color of the workpiece B0 is almost the same in the two-dimensional image P1, the position correction device 3 detects the workpiece B0 as a single workpiece (B1) and proceeds to step ST13.
  • step ST13 the workpiece detection results are corrected based on the three-dimensional measurement data. Specifically, if the three-dimensional measurement data from the acquisition unit 4 shows that the heights (three-dimensional shapes) of the workpieces B11, B12, and B13 are different, for example, the detection results (for example, the number of detections, the detection position and orientation, the external size, etc.) are corrected to show that the workpiece B0 in the two-dimensional image P1 is not one workpiece B1, but three workpieces B11, B12, and B13.
  • the detection results for example, the number of detections, the detection position and orientation, the external size, etc.
  • the position correction device 3 corrects the number of detections from one to three so that there are three workpieces B11, B12, and B13 by comparing the erroneous detection result that shows that the workpiece B0 is one workpiece B1 based on the two-dimensional image with the three-dimensional measurement data, and correctly corrects and outputs data such as the detection position and orientation and the external size.
  • the two-dimensional image used by the position correction device 3 to detect the workpiece i.e., the two-dimensional image of the area where the multiple workpieces are present acquired by the acquisition unit 4
  • the two-dimensional image used by the position correction device 3 to detect the workpiece may be, for example, either a black and white image (grayscale image) or a color image (RGB image).
  • the three-dimensional measurement data used by the position correction device 3 to correct the workpiece detection result i.e., the three-dimensional measurement data of the area where the multiple workpieces are present acquired by the acquisition unit 4, may be, for example, data that can acquire information in the height direction.
  • step ST14 where the robot's motion is planned
  • step ST15 where the robot 1 is controlled to pick up the workpieces. That is, in step ST14, the robot control device 2 plans the motion of the robot 1 so that, assuming that there are three workpieces B11, B12, and B13, and based on the output data of the position correction device 3, such as information on the position and orientation of each workpiece, all workpieces that have been detected/recognized are picked up.
  • step ST15 the robot control device 2 outputs a control command to the robot mechanism unit 10, for example, so that the robot 1 picks up the three workpieces B11, B12, and B13 in order, and the robot mechanism unit 10 receives the control command and performs the pick-up operation.
  • END an example of the processing in the first example of the position correction program according to this embodiment is ended (END).
  • the robot mechanism 10 may move to an incorrect/shifted detection position to attempt to pick up workpiece B1, failing to lift up workpiece B1, or may fail in such a way that the suction pad actually touches the lower right corner of workpiece B11 to lift it up, but then loses balance during subsequent handling and causes workpiece B11 to drop.
  • the position correction device 3 of this first embodiment makes it possible to prevent failures in the pick-up operation by correcting the detection results, such as the number of workpieces detected and the detected position and orientation.
  • the first example of the position correction program calculates at least the detection position of at least one workpiece based on a two-dimensional image capturing the areas in which multiple workpieces exist, and corrects and outputs the detection position of at least one workpiece based on three-dimensional measurement data measuring the areas in which multiple workpieces exist.
  • the position correction device 3 of the first example for example, corrects and calculates the shape area of the workpiece calculated based on the two-dimensional image using three-dimensional measurement data, and corrects and calculates the position, orientation, external size, etc. of the workpiece based on the corrected shape area.
  • the position correction device 3 can use the learning results (e.g., a trained model) of image processing or machine learning to calculate the shape area of each of the multiple workpieces (e.g., multiple boxes, cardboard boxes, etc.) shown in the two-dimensional image from the acquisition unit 4.
  • the stereo cameras (4a, 4b) of the acquisition unit 4 are used to capture multiple two-dimensional images of the areas in which multiple workpieces are arranged in different arrangements, and three-dimensional measurements are simultaneously performed to obtain three-dimensional point cloud data (three-dimensional measurement data).
  • the shape area of each of the workpieces shown in the captured multiple two-dimensional images is taught, and the teaching results and images are generated as training data.
  • deep learning is performed using, for example, Fast R-CNN (Region Based Convolutional Neural Networks), Faster R-CNN, Mask R-CNN, etc., to generate a trained model.
  • the acquisition unit 4 captures a new two-dimensional image and predicts and calculates the shape area of each of the multiple workpieces captured in the captured image using the trained model.
  • the process of generating machine learning learning data and the process of executing machine learning to generate a trained model may be performed by a separate device. In that case, the position correction device 3 receives the trained model data and calculates the shape area of the workpiece.
  • various known image processing techniques e.g., pattern matching, edge extraction, etc.
  • the position correction device 3 compares the calculation results of the shape area in each of the two-dimensional images of the multiple workpieces with the three-dimensional measurement data (e.g., three-dimensional point cloud data or three-dimensional image) and the two-dimensional image, and uses the difference in three-dimensional position contained in the three-dimensional measurement data to exclude background areas, obstacle areas, areas of adjacent workpieces, etc. that are erroneously included in the calculation results.
  • the position correction device 3 also compares the three-dimensional measurement data with the two-dimensional image, calculates features based on the three-dimensional measurement data, corrects the shape area of the workpiece in the two-dimensional image using the calculated features, and corrects and outputs the detection position of the workpiece based on the corrected shape area.
  • the center of gravity position of the shape area may be calculated and output as the detection position of the workpiece.
  • the robot control device 2 controls the robot 1 (robot mechanism unit 10) based on the corrected detection position from the position correction device 3, and causes the robot 1 to perform the workpiece removal process.
  • the position correction device 3 also calculates at least one of a groove, a gap, a step, a three-dimensional plane, and a three-dimensional curved surface as a feature. Furthermore, the position correction device 3 performs correction calculations for at least one of the posture, outer shape, and size of the at least one workpiece, along with the detected position of the at least one workpiece, and outputs the results.
  • the background area around the workpiece may also be erroneously recognized as part of the workpiece, or part of the workpiece may be erroneously recognized as the background area.
  • the shape area of the workpiece and the background area cannot be correctly distinguished, and a size larger or smaller than the actual size is erroneously detected as the size of the workpiece.
  • part of the background area where no work is present may be erroneously recognized as the shape area of the workpiece.
  • the shape area of the workpiece is erroneously recognized as the background area, and a workpiece in the background cannot be detected and is not detected.
  • the position correction device 3 of this first embodiment therefore uses the three-dimensional position information contained in the three-dimensional measurement data (three-dimensional point cloud data) corresponding to the workpiece shape region and background region on the two-dimensional image to calculate the difference between their three-dimensional positions. If the difference in three-dimensional position between the workpiece shape region and the background region is large, for example exceeding a predetermined threshold, it is determined that the two regions are separate (not regions within the same workpiece), and the workpiece shape region and background region can be correctly distinguished, preventing erroneous recognition (misdetection) of the workpiece shape region and background region, non-detection of the workpiece, and erroneous detection of the background.
  • the position correction device 3 of this first embodiment uses the three-dimensional measurement data acquired by the acquisition unit 4 to calculate features such as gaps, grooves, and steps to recognize the gaps between the workpieces, thereby preventing multiple closely spaced workpieces from being erroneously recognized as one.
  • the position correction device 3 of the first embodiment uses the three-dimensional measurement data acquired by the acquisition unit 4 to calculate the characteristics of a three-dimensional plane or three-dimensional curved surface, and for example, determines that multiple areas of different colors are actually areas on the same plane or curved surface, thereby preventing one workpiece from being erroneously recognized as two or more workpieces.
  • the difference in the three-dimensional positions of the workpiece and the background according to the three-dimensional measurement data can be used to correctly distinguish the shape area of the workpiece from the background area, preventing misrecognition of the workpiece and the background and non-detection of the workpiece.
  • the gap (gap, groove, step, etc.) between two workpieces that are close to each other on the two-dimensional image can be recognized using the three-dimensional measurement data, thereby preventing the two workpieces from being misrecognized as one.
  • the three-dimensional measurement data confirms that the areas are on the same plane or curved surface, preventing the misrecognition of one workpiece as two or more workpieces.
  • FIG. 4 is a flowchart for explaining an example of processing in a second embodiment of the position correction program (position correction device) according to this embodiment
  • FIG. 5 is a diagram for explaining an example of work recognition processing in the second embodiment of the position correction device according to this embodiment.
  • FIG. 4 when an example of processing in the position correction program of the second embodiment starts (START), in step ST21, three-dimensional measurement data and two-dimensional images of the areas where multiple workpieces exist are acquired. That is, as explained with reference to FIG. 1, the acquisition unit 4 acquires two-dimensional images and three-dimensional measurement data of the areas where multiple workpieces D1 to D9 exist, and outputs them to the position correction device 3.
  • step ST22 to detect the workpiece based on the three-dimensional measurement data. That is, the position correction device 3 detects the workpiece based on the three-dimensional measurement data from the acquisition unit 4.
  • FIG. 5 shows a case where there is almost no difference in the overall height (three-dimensional shape) of the workpiece (object) C0 in three-dimensional measurement data (e.g., a three-dimensional image generated from three-dimensional point cloud data) P2 capturing an image of the areas in which multiple workpieces exist. That is, if the heights of the workpieces C0 are approximately the same in the three-dimensional measurement data P2, the position correction device 3 detects the workpieces C0 as a single workpiece (C1) and proceeds to step ST23.
  • three-dimensional measurement data e.g., a three-dimensional image generated from three-dimensional point cloud data
  • step ST23 the detection results of the workpieces are corrected based on the two-dimensional image. Specifically, in the two-dimensional image from the acquisition unit 4, for example, if the shades and colors (hue, brightness, and thickness) of the workpieces C11, C12, and C13 are significantly different, the detection results (for example, the number of detections, the detection position and orientation, the external size, etc.) are corrected to show that the workpiece C0 in the three-dimensional measurement data P2 is not one workpiece C1, but three workpieces C11, C12, and C13.
  • the detection results for example, the number of detections, the detection position and orientation, the external size, etc.
  • the position correction device 3 compares the detection results in which the workpiece C0 is one workpiece C1 based on the three-dimensional measurement data with the two-dimensional image, corrects the number of detections from one to three so that there are three workpieces C11, C12, and C13, and correctly corrects and outputs data such as the detection position and orientation and external size.
  • step ST24 where the robot's motion is planned
  • step ST25 where the robot 1 is controlled to pick up the workpiece. That is, in step ST24, the robot control device 2 plans the motion of the robot 1 so that, assuming that there are three workpieces C11, C12, and C13, and based on the output data of the position correction device 3, such as information on the position and orientation of each workpiece, it picks up all of the workpieces that have been detected/recognized.
  • step ST25 the robot control device 2 outputs a control command to the robot mechanism unit 10, for example, so that the robot 1 picks up the three workpieces C11, C12, and C13 in order, and the robot mechanism unit 10 receives the control command and performs the pick-up operation.
  • END an example of the processing in the second example of the position correction program according to this embodiment is ended (END).
  • the robot mechanism 10 may move to an incorrect/shifted detection position to attempt to pick up workpiece C1, resulting in failure to lift up workpiece C1, or the suction pad may come into contact with a position shifted from the actual center of gravity of workpiece C12, lift it up, and then lose balance during subsequent handling, causing workpiece C12 to be dropped.
  • the position correction device 3 of the second embodiment makes it possible to prevent failures in the pick-up operation by correcting the detection results, such as the number of detected works and the detected positions and orientations of the works.
  • the second example of the position correction program (position correction device) according to this embodiment corrects and calculates the shape area of the workpiece calculated based on the three-dimensional measurement data using the image processing results of the two-dimensional image, and corrects the position, orientation, external size, etc. of the workpiece based on the corrected shape area.
  • the position correction device 3 of the second example calculates the detection position of the workpiece based on the three-dimensional measurement data, and corrects the detection position of the workpiece based on the processing results of the two-dimensional image.
  • the position correction device 3 at least calculates the detection position of at least one workpiece based on three-dimensional measurement data that measures the presence areas of multiple workpieces, and at least corrects and outputs the detection position of at least one workpiece based on a two-dimensional image that captures the presence areas of the multiple workpieces.
  • the position correction device 3 of the second embodiment also calculates the shape area of the workpiece in the three-dimensional measurement data, and corrects and outputs at least one detection position of the workpiece based on the calculated shape area of the workpiece.
  • the position correction device 3 may be configured to calculate the shape area of the workpiece in the three-dimensional measurement data by using the learning results of image processing or machine learning.
  • the position correction device 3 can also calculate the shape area of the workpiece in the three-dimensional measurement data by performing a matching process, for example, with a three-dimensional CAD (Computer Aided Design) model of the workpiece for the three-dimensional measurement data (e.g., three-dimensional point cloud data).
  • CAD Computer Aided Design
  • the position correction device 3 of this second embodiment may compare the two-dimensional image with the three-dimensional measurement data, use the difference in pixel values contained in the two-dimensional image to correct the shape area of the workpiece in the three-dimensional measurement data, and correct and output the detection position of the workpiece based on the corrected shape area.
  • the position correction device 3 may also compare the two-dimensional image with the three-dimensional measurement data, calculate features based on the two-dimensional image, use the calculated features to correct the shape area of the workpiece in the three-dimensional measurement data, and correct and output the detection position of the workpiece based on the corrected shape area.
  • the position correction device 3 of the second embodiment may calculate at least one of the following patterns as features: edges, grooves, gaps, steps, circles, planes, curved surfaces, and feature points.
  • the position correction device 3 can also calculate at least one of the posture, shape, and size of at least one workpiece along with the detected position of at least one workpiece.
  • the position correction device 3 can also correct and output at least one of the posture, shape, and size of at least one workpiece along with the detected position of at least one workpiece.
  • the detection accuracy of the position and orientation of the workpiece can be improved by correcting the detected position and orientation using the image processing results of a two-dimensional image captured by an inexpensive camera.
  • This makes it possible to obtain detection results of the position and orientation with a high degree of accuracy equivalent to that of an expensive three-dimensional measuring device with high measurement accuracy, thereby reducing the cost of introducing equipment.
  • two-dimensional images and three-dimensional measurement data are acquired within the same area (imaging range: area where multiple workpieces exist) and correction calculations are performed.
  • the first and second examples of the position correction program capture two-dimensional images of the areas where multiple workpieces are present, and perform three-dimensional measurements on the same areas to obtain three-dimensional measurement data (e.g., three-dimensional point cloud data). The three-dimensional measurement data is then compared with the two-dimensional image, thereby improving the detection (recognition) accuracy of the position, orientation, external size, etc. of the workpiece.
  • the first and second examples of the position correction program according to this embodiment described above can be executed by an arithmetic processing device in the robot control device 2, rather than a dedicated position correction device 3, for example, when the load of the calculation process is small. In this case, the position correction device 3 is incorporated inside the robot control device 2.
  • the position correction device 3 can be configured by a dedicated workstation provided near the robot control device 2, or a higher-level computer or general-purpose computer provided in a location remote from the robot system 100. Furthermore, the position correction device 3 may perform calculations by receiving only the learning results (e.g., trained model data) obtained by performing machine learning using another device or service, such as a cloud service that can use a GPU device, without performing machine learning.
  • learning results e.g., trained model data
  • the position correction program according to the present embodiment described above may be provided by recording it on a computer-readable non-transitory recording medium or a non-volatile semiconductor memory, or may be provided via a wired or wireless connection.
  • Examples of computer-readable non-transitory recording media include optical disks such as CD-ROMs (Compact Disc Read Only Memory) and DVD-ROMs, or hard disk devices.
  • Examples of non-volatile semiconductor memory include PROMs (Programmable Read Only Memory) and flash memories.
  • distribution from a server device may be via a wired or wireless LAN (Local Area Network), or a WAN such as the Internet.
  • the position correction device, robot system, and position correction program according to this embodiment make it possible to prevent erroneous detection and non-detection problems, and improve the recognition/detection accuracy of the workpiece (object).
  • a position correction device (3) that calculates at least a detection position of at least one workpiece (B0, D) based on a two-dimensional image (P1) capturing an area where a plurality of workpieces (D1 to D9, B0, D) are present, and corrects (B1, B11 to B13) the detection position of at least one workpiece (B0) based on three-dimensional measurement data (P2) capturing the area where the plurality of workpieces (D1 to D9, B0, D) are present, and outputs the corrected position.
  • P1 two-dimensional image
  • P2 three-dimensional measurement data
  • the position correction device (3) calculates a shape area (A1) of the workpiece (B0, D) in the two-dimensional image (P1), and calculates (B1, B11 to B13) the detection position of at least one of the workpieces (B0) based on the calculated shape area (A1) of the workpiece (B0, D).
  • the position correction device (3) calculates the shape area (A1) of the workpiece (B0, D) in the two-dimensional image (P1) by utilizing a learning result of machine learning.
  • the position correction device (3) performs image processing on the two-dimensional image (P1) to calculate the shape area (A1) of the workpiece (B0, D) in the two-dimensional image (P1).
  • the position correction device (3) compares the three-dimensional measurement data (P2) with the two-dimensional image (P1), corrects the shape area (A1) of the workpiece (B0, D) in the two-dimensional image (P1) using a difference in three-dimensional position contained in the three-dimensional measurement data (P2), and corrects (B1, B11 to B13) the detection position of the workpiece (B0) based on the corrected shape area and outputs it.
  • the position correction device described in any one of Appendix 2 to Appendix 4.
  • the position correction device (3) compares the three-dimensional measurement data (P2) with the two-dimensional image (P1), calculates features based on the three-dimensional measurement data (P2), corrects the shape area of the workpiece (B0, D) in the two-dimensional image (P1) using the calculated features, and corrects and outputs the detection position of the workpiece (B0, D) based on the corrected shape area.
  • the position correction device described in any one of Appendix 2 to Appendix 5.
  • a position correction device (3) that calculates at least a detection position of at least one work (C0, D) based on three-dimensional measurement data (P2) obtained by measuring the existence areas of a plurality of workpieces (D1 to D9, C0, D), and corrects (C1, C11 to C13) the detection position of at least one workpiece (C0) based on a two-dimensional image (P1) obtained by capturing the existence areas of the plurality of workpieces (D1 to D9, C0, D) and outputs the corrected position.
  • P2 three-dimensional measurement data
  • P1 to D9 three-dimensional measurement data
  • P1 two-dimensional image
  • the position correction device (3) calculates a shape area (A1) of the workpiece (C0, D) in the three-dimensional measurement data (P2), and calculates (C1, C11 to C13) the detection position of at least one of the workpieces (C0, D) based on the calculated shape area (A1) of the workpiece (C0, D).
  • the position correction device (3) calculates the shape area (A1) of the workpiece (C0, D) in the three-dimensional measurement data (P2) by utilizing a learning result of machine learning.
  • the position correction device (3) processes the three-dimensional measurement data (P2) to calculate the shape area (A1) of the workpiece (C0, D) in the three-dimensional measurement data (P2).
  • the position correction device (3) compares the two-dimensional image (P1) with the three-dimensional measurement data (P2), corrects the shape area (A1) of the workpiece (C0, D) in the three-dimensional measurement data (P2) using a difference in pixel values contained in the two-dimensional image (P1), and corrects and outputs the detection position of the workpiece (C0, D) based on the corrected shape area (A1).
  • the position correction device (3) compares the two-dimensional image (P1) with the three-dimensional measurement data (P2), calculates features based on the two-dimensional image (P1), corrects the shape area (A1) of the workpiece (C0, D) in the three-dimensional measurement data (P2) using the calculated features, and corrects and outputs the detection position of the workpiece (C0, D) based on the corrected shape area (A1).
  • the position correction device calculates at least one of an edge, a groove, a gap, a step, a circle, a plane, a curved surface, and a pattern of feature points as the feature.
  • the position correction device (3) calculates at least one of the posture, the outer shape, and the size of at least one of the workpieces (B0, C0, D) together with the detected position of at least one of the workpieces (B0, C0, D).
  • the position correction device (3) corrects and outputs at least one of the posture, shape, and size of at least one of the workpieces (B0, C0, D) together with the detected position of at least one of the workpieces (B0, C0, D).
  • a robot (1) that performs a predetermined task on a workpiece (B0, C0, D);
  • An acquisition unit (4) that acquires a two-dimensional image (P1) of an existing area of a plurality of workpieces (D1 to D9, B0, C0, D) and acquires three-dimensional measurement data (P2) of the existing area of the plurality of workpieces (D1 to D9, B0, C0, D);
  • a position correction device (3) that calculates at least a detection position of at least one of the workpieces (B0, C0, D) based on the two-dimensional image (P1) and the three-dimensional measurement data (P2) from the acquisition unit (4) and corrects and outputs the detection position of at least one of the workpieces (B0, C0, D);
  • a robot control device (2) that receives an output of the position correction device (3) and outputs a control command to the robot (1) to control the robot (1);
  • a robot system (100) wherein the position correction device (3) is a position
  • Appendix 18 The robot system described in Appendix 17, wherein the robot (1) is controlled to pick up the workpiece (B11 to B13, C11 to C13) at the detection position output by the position correction device (3) based on the control command output from the robot control device (2).
  • a processing unit includes: Calculate at least a detection position of at least one of the workpieces (B0, D) based on a two-dimensional image (P1) obtained by capturing an area where the workpieces (D1 to D9, B0, D) are present; A position correction program that executes a process to correct and output the detected position of at least one of the workpieces (B0) based on three-dimensional measurement data (P2) obtained by measuring the existence areas of the plurality of workpieces (D1 to D9, B0, D).
  • a processing unit includes: Calculating at least a detection position of at least one of the workpieces (C0, D) based on three-dimensional measurement data (P2) obtained by measuring the presence area of the plurality of workpieces (D1 to D9, C0, D); A position correction program that executes a process to correct (C1, C11 to C13) the detected position of at least one of the workpieces (C0) based on a two-dimensional image (P1) obtained by capturing the presence area of the plurality of workpieces (D1 to D9, C0, D) and output the corrected position.
  • Robot 2 Robot control device 3
  • Position correction device 4 Acquisition unit (measurement unit) 10
  • Robot mechanism 11 Arm 12 End effector (hand) 100

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Theoretical Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Multimedia (AREA)
  • Human Computer Interaction (AREA)
  • Image Analysis (AREA)
  • Image Processing (AREA)
  • Manipulator (AREA)

Abstract

誤検出や未検出問題の発生を防ぎ、ワークの認識/検出精度を向上することができる位置補正装置の提供を図る。位置補正装置は、複数のワークの存在領域を撮像した2次元画像に基づいて、少なくとも1つのワークの検出位置を少なくとも算出し、複数のワークの存在領域を計測した3次元計測データに基づいて、少なくとも1つのワークの検出位置を補正して出力する。

Description

位置補正装置、ロボットシステムおよび位置補正プログラム
 本開示は、位置補正装置、ロボットシステムおよび位置補正プログラムに関する。
 従来、例えば、カメラが撮像した画像上の物体(ワーク)を認識し、物体の位置姿勢および外形サイズ等の情報を取得する物体検出技術が知られている。また、画像処理技術(例えば、パターンマッチ)を利用して、画像から特徴を抽出し、抽出された特徴を利用して物体を認識する手法も知られている。
 さらに、近年では、機械学習を利用して画像から特徴を抽出し、画像上の物体を認識して物体の位置姿勢および外形サイズ等を推定する手法も実用化されつつある。また、3次元計測器を使って物体の3次元形状を計測し、その計測した物体の3次元計測データ(3次元点群データ)を利用して物体の位置姿勢等を取得する手法も提案されている。
 従来、カメラが撮像した画像上の物体を認識し、物体の位置姿勢および外形サイズ等の情報を取得する物体検出技術としては、様々な提案がなされている。
特開2016-192135号公報 特開2010-120141号公報
 上述したように、従来、カメラが撮像した画像上の物体を認識して物体の位置姿勢等の情報を取得する物体検出技術としては、様々な提案がなされている。また、近年では、機械学習を利用して画像から抽出した特徴に基づいて、物体の位置姿勢等を推定する手法も実用化されて来ており、3次元計測器を使用して求めた物体の3次元計測データを利用して物体の位置姿勢等を取得する手法も提案されている。
 しかしながら、上述した物体の位置姿勢および外形サイズ等の情報を取得する従来の物体検出技術では、例えば、実際の適用において、1つの物体を複数の物体として誤認識し、或いは、複数の物体を1つの物体として誤認識することがあった。また、物体とその周りの背景が近い場合、物体を検出できない(未検出)問題や、物体は実際には存在していないがその背景を物体として誤認識する問題もある。
 そこで、これらの誤検出や未検出問題の発生を防ぎ、ワーク(物体)の認識/検出精度を向上することができる位置補正装置、ロボットシステムおよび位置補正プログラムの提供が要望されている。
 本開示に係る一実施形態によれば、複数のワークの存在領域を撮像した2次元画像に基づいて、少なくとも1つのワークの検出位置を少なくとも算出し、複数のワークの存在領域を計測した3次元計測データに基づいて、少なくとも1つのワークの検出位置を補正して出力する、位置補正装置が提供される。
図1は、本実施形態に係るロボットシステムの一例を模式的に示す図である。 図2は、本実施形態に係る位置補正プログラムの第1実施例における処理の一例を説明するためのフローチャートである。 図3は、本実施形態に係る位置補正装置の第1実施例におけるワークの認識処理の一例を説明するための図である。 図4は、本実施形態に係る位置補正プログラムの第2実施例における処理の一例を説明するためのフローチャートである。 図5は、本実施形態に係る位置補正装置の第2実施例におけるワークの認識処理の一例を説明するための図である。 図6は、本実施形態に係る位置補正装置の第1および第2実施例におけるワークの形状領域を説明するための図である。
 以下、本実施形態に係る位置補正装置、ロボットシステムおよび位置補正プログラムの実施例を、添付図面を参照して詳述する。各図面において、同一または類似の構成要素には同一または類似の符号が付与されている。また、以下に記載する実施形態は、特許請求の範囲に記載される発明の技術的範囲および用語の意義を限定するものではない。
 図1は、本実施形態に係るロボットシステムの一例を模式的に示す図である。図1に示されるように、ロボットシステム100は、ロボット1,ロボット制御装置2,位置補正装置3および取得部(計測部)4を備える。ロボット1は、ロボット機構部10,アーム11およびエンドエフェクタ(ハンド部)12を含む。
 ロボット1は、例えば、多軸ロボットとして構成され、アーム11の先端にはエンドエフェクタ12が設けられている。図1において、エンドエフェクタ12は、吸着装置(吸着ハンド)とされているが、これは、ロボットシステムが適用される対象物(ワーク)や作業内容等に応じて様々なものに変更することができるのは言うまでもない。なお、ロボット機構部10は、ロボット制御装置2からの制御指令に基づいて、ロボット1に所定の動作を行わせるためのものである。すなわち、ロボット制御装置2は、位置補正装置3の出力を受け取り、例えば、予め内部の記憶装置に格納されているプログラムや教示データ等に基づいて、ロボット1に対して所定の動作を行わせるための制御指令を生成し、ロボット機構部10に出力する。また、位置補正装置3はロボット制御装置2とは独立しているように描いているが、位置補正装置3をロボット制御装置2の内部に組み込まれるように構成してもよい。
 取得部4は、複数のワーク(例えば、複数のダンボール箱)D1~D9の存在領域の2次元画像と3次元計測データ(3次元点群データ)を取得するためのものであり、例えば、2台のカメラ4a,4bおよびプロジェクタ4cを含む。プロジェクタ4cは、複数のワークD1~D9が存在する領域に対して所定のパターンを投影し、2台のカメラ4a,4bは、プロジェクタ4cにより所定のパターンが投影された複数のワークの存在領域を撮像して、ワークD1~D9の3次元形状を計測する。
 このように、取得部4は、複数のワークD1~D9の存在領域の3次元形状を計測して3次元計測データを取得することができる。さらに、取得部4は、例えば、2台のカメラ4a,4bの一方のカメラが撮像した画像を使用して、複数のワークD1~D9の存在領域を撮像した2次元画も取得することができる。
 ここで、取得部4は、上述した構成に限定されず、例えば、ステレオカメラ4a,4bにより複数のワークの存在領域の3次元計測データを取得し、2次元カメラ4cにより複数のワークの存在領域の2次元画像を取得するようにしてもよい、さらに、取得部4としては、ワークD1~D9の存在領域の2次元画像および3次元計測データを取得できれば、他の様々な構成を適用することができる。なお、図1では、取得部4から位置補正装置3に2次元画像および3次元計測データを出力しているが、位置補正装置3は、例えば、取得部4の各カメラ4a~4cで撮像した画像データのみを受け取って処理し、2次元画像および3次元計測データ(3次元点群データ)を内部で生成してもよい。
 位置補正装置3は、取得部4からの2次元画像および3次元計測データに基づいて、或いは、取得部4からの各カメラ4a~4cの画像データから生成した2次元画像および3次元計測データに基づいて、ワークの位置補正処理を行う。なお、位置補正装置3は、例えば、計算処理の負荷が小さい場合には専用の位置補正装置3として設けずに、例えば、ロボット制御装置2に内蔵することができる。逆に、例えば、機械学習を行うような計算処理の負荷が大きい(計算量やデータ量が多い)場合、位置補正装置3は、ロボット制御装置2の近くに設けられた専用のワークステーション、或いは、ロボットシステム100から離隔した場所に設けられた上位のコンピュータや汎用計算機等により構成することもできる。さらに、大量のデータを機械学習モデルに入力して学習させる場合、汎用の計算機やプロセッサを用いてもよいが、GPGPU(General-Purpose computing on Graphics Processing Units)や大規模PCクラスター等を適用すると、より高速に処理することが可能になる。
 次に、本実施形態に係る位置補正プログラムおよび位置補正装置の第1実施例および第2実施例を説明する。まず、概略すると、本第1実施例の位置補正装置は、2次元画像に基づいて計算されたワーク(物体)の形状領域を、3次元計測データ(3次元点群データ)を使って補正計算し、補正された形状領域に基づいてワークの位置姿勢や外形サイズ等を補正する。さらに、本第2実施例の位置補正装置は、3次元計測データに基づいて計算されたワークの形状領域を2次元画像の画像処理結果を利用して補正計算し、補正された形状領域に基づいてワークの位置姿勢や外形サイズ等を補正する。
 ここで、図6を参照して、上記「ワークの形状領域」を説明する。図6は、本実施形態に係る位置補正装置の第1および第2実施例におけるワークの形状領域を説明するための図である。本明細書において、「ワークの形状領域」なる文言は、図6の左側図に示されるように、例えば、取得部4から出力された2次元画像または3次元画像(3次元計測データから生成されたもの)P3において、ワークDのみを含み、ワークDの周りの背景領域を含まない参照符号A1で示す領域(ワークD自体の領域)である。すなわち、図6の右側図に示されるように、例えば、2次元画像(3次元画像)P3において、ワークDおよびその周りの背景領域を含み、予め定められた所定形状の参照符号A2で示す領域(所定形状の領域)ではない。つまり、本明細書における「ワークの形状領域」は、「ワークの形状/外形を反映した領域情報」であり、この情報を使ってワークの形状/外形を計算できるものである。
 図2は、本実施形態に係る位置補正プログラム(位置補正装置)の第1実施例における処理の一例を説明するためのフローチャートであり、図3は、本実施形態に係る位置補正装置の第1実施例におけるワークの認識処理の一例を説明するための図である。図2に示されるように、第1実施例の位置補正プログラムにおける処理の一例が開始(START)すると、ステップST11において、複数のワークの存在領域の2次元画像および3次元計測データを取得する。すなわち、図1を参照して説明したように、取得部4は、複数のワーク(例えば、複数のダンボール箱)D1~D9の存在領域の2次元画像と3次元計測データ(3次元点群データ)を取得して、位置補正装置3に出力する。
 次に、ステップST12に進んで、2次元画像に基づいてワークを検出する。すなわち、位置補正装置3は、取得部4からの2次元画像に基づいてワークの検出を行う。一例として、図3は、複数のワークの存在領域を撮像した2次元画像P1において、ワーク(物体)B0全体の濃淡や色合い(色相、明度および彩度)にほとんど差異がない場合を示す。すなわち、2次元画像P1において、例えば、ワークB0の濃淡や色合いがほぼ同じ場合、位置補正装置3は、ワークB0を1つのワーク(B1)として検出し、ステップST13に進む。
 ステップST13では、3次元計測データに基づいてワークの検出結果を補正する。具体的に、取得部4からの3次元計測データにおいて、例えば、ワークB11,B12,B13の高さ(3次元形状)がそれぞれ異なる場合、2次元画像P1におけるワークB0は、1つのワークB1ではなく、3つのワークB11,B12,B13であると検出結果(例えば、検出数、検出位置姿勢、外形サイズ等)を補正する。すなわち、位置補正装置3は、2次元画像に基づいてワークB0を1つのワークB1とした誤った検出結果を、3次元計測データとの照らし合わせを行うことにより、3つのワークB11,B12,B13であるように、検出数を1個から3個に補正し、検出位置姿勢や外形サイズ等のデータを正しく補正して出力する。
 ここで、ステップST12において、位置補正装置3がワークの検出に使用する2次元画像、すなわち、取得部4が取得する複数のワークの存在領域の2次元画像は、例えば、白黒画像(グレースケール画像)またはカラー画像(RGB画像)のどちらでもよい。また、ステップST13において、位置補正装置3がワークの検出結果の補正に使用する3次元計測データ、すなわち、取得部4が取得する複数のワークの存在領域の3次元計測データは、例えば、高さ方向の情報を取得できるデータであればよい。
 さらに、ステップST14に進んで、ロボットの動作計画を行った後、ステップST15に進み、ロボット1を制御してワークを取り出す。すなわち、ステップST14において、ロボット制御装置2は、3つのワークB11,B12,B13が存在していて、それぞれのワークの位置姿勢等の情報といった位置補正装置3の出力データに基づいて、検出/認識できた全てのワークを取り出すようにロボット1の動作計画を行う。さらに、ステップST15において、ロボット制御装置2は、例えば、ロボット1が3つのワークB11,B12,B13を順に取り出すように、ロボット機構部10に制御指令を出力して、ロボット機構部10が制御指令を受信して取り出し動作を実施する。そして、本実施形態に係る位置補正プログラムの第1実施例における処理の一例を終了(END)する。
 上述した例において、例えば、実際には3つのワークB11,B12,B13が存在しているにもかかわらず、補正無しの場合は誤った/ずれた検出位置にロボット機構部10が移動してワークB1を取り出そうとして、ワークB1を持ち上げることができずに失敗したり、或いは、実質上のワークB11の右下角部を吸着パットで接触して持ち上げ、その後のハンドリング中にバランスを失ってワークB11を落としてしまうといった失敗を起こす虞がある。このような場合、本第1実施例に係る位置補正装置3によれば、ワークの検出数と検出位置姿勢等の検出結果を補正することにより、取り出し動作の失敗等を防止することが可能になる。
 このように、本実施形態に係る位置補正プログラム(位置補正装置)の第1実施例は、複数のワークの存在領域を撮像した2次元画像に基づいて、少なくとも1つのワークの検出位置を少なくとも算出し、複数のワークの存在領域を計測した3次元計測データに基づいて、少なくとも1つのワークの検出位置を補正して出力する。第1実施例の位置補正装置3は、例えば、2次元画像に基づいて計算されたワークの形状領域を、3次元計測データを使って補正計算し、補正された形状領域に基づいてワークの位置姿勢や外形サイズ等を補正計算する。
 ここで、位置補正装置3は、取得部4からの2次元画像に写っている複数のワーク(例えば、複数の箱や段ボール等)のそれぞれの形状領域を計算するために、画像処理または機械学習の学習結果(例えば、学習済みモデル)を利用して計算することができる。例えば、異なる複数種類の並び方でそれぞれ並んでいる複数のワークの存在領域に対して取得部4のステレオカメラ(4a,4b)を使って複数枚の2次元画像を撮像し、同時に3次元計測を行って3次元点群データ(3次元計測データ)を取得する。また、撮像された複数枚の2次元画像上に写っているそれぞれのワークの形状領域を教示し、教示結果と画像を学習データとして生成する。このような学習データに対して、例えば、Fast R-CNN(Region Based Convolutional Neural Networks),Faster R-CNN或いはMask R-CNN等を利用して深層学習を行い、学習済みモデルを生成する。さらに、カメラ(取得部4)に対するワークの位置,姿勢,並び方またはワークの種類や個数等が変更された場合には、取得部4が新たに2次元画像を撮像し、撮像された画像上に写っている複数のワークのそれぞれの形状領域を、学習済みモデルを使って予測して計算する。機械学習の学習データを生成する処理や、機械学習を実行して学習済みモデルを生成する処理は、別の装置により行ってもよい。その場合、位置補正装置3は、学習済みモデルデータを受け取ってワークの形状領域を計算することになる。なお、画像処理を利用する場合には、知られている様々な画像処理技術(例えば、パターンマッチ、エッジ抽出等)を利用することができるのは言うまでもない。
 そして、位置補正装置3は、複数のワークのそれぞれの2次元画像における形状領域の計算結果に対して、3次元計測データ(例えば、3次元点群データまたは3次元画像)と2次元画像の照らし合わせを行い、3次元計測データに含まれる3次元位置の差を利用して、計算結果の中に誤って入っている背景領域や障害物領域若しくは隣のワークの領域等を除外する。また、位置補正装置3は、3次元計測データと2次元画像との照らし合わせを行い、3次元計測データに基づいて特徴を算出し、算出された特徴を使用して2次元画像におけるワークの形状領域を補正し、補正された形状領域に基づいてワークの検出位置を補正して出力する。このように補正された形状領域に基づいて、例えば、その形状領域の重心位置を計算してワークの検出位置として出力してもよい。なお、ロボット制御装置2は、位置補正装置3からの補正された検出位置に基づいてロボット1(ロボット機構部10)を制御し、ワークの取り出し処理をロボット1に行わせる。また、位置補正装置3は、特徴として、溝,ギャップ,段差,3次元平面および3次元曲面のうち少なくとも1つを算出する。さらに、位置補正装置3は、少なくとも1つのワークの検出位置と共に、少なくとも1つのワークの姿勢,外形およびサイズのうち少なくとも1つを補正計算して出力する。
 ところで、取得部4(カメラ)が撮像した2次元画像上に写っているワークとその周囲の背景の色や明るさが近い場合、機械学習または画像処理を利用してワーク認識を行った結果としては、いろいろな誤認識や未検出が発生する場合がある。すなわち、例えば、ワーク周囲の背景領域もワークの一部として誤認識し、或いは、ワークの一部を背景領域として誤認識することがある。これらの場合には、ワークの形状領域と背景領域を正しく区別できず、実際のサイズよりも大きいサイズ或いは小さいサイズをワークのサイズとして誤検出してしまう。若しくは、ワークが存在していない背景領域の一部をワークの形状領域として誤認識することもある。また、ワークの形状領域を背景領域として誤認識し、背景にあるワークを検出できない未検出ケースが生じることもあり得る。
 そこで、本第1実施例の位置補正装置3は、2次元画像上のワークの形状領域と背景領域に対応している3次元計測データ(3次元点群データ)に含まれる3次元位置情報を利用して、両者の3次元位置の差を計算する。ワークの形状領域と背景領域の3次元位置の差が大きく、例えば、予め定められた閾値を超えた場合には、それら2つの領域は別である(同じワーク内の領域ではない)と判別し、ワークの形状領域と背景領域を正しく区別でき、ワークの形状領域と背景領域の誤認識(誤検出)や、ワークの未検出および背景の誤検出等の発生を防止できる。
 さらに、取得部4が撮像した2次元画像上に写っている複数のワーク(例えば、箱や段ボール等)が密接している場合、それぞれのワーク間の隙間(ギャップ,溝,段差等)を画像から認識することが難しくなり、複数のワークを1つのワークとして誤認識する虞がある。特に、RGB情報を有しないグレースケールの2次元画像が持っている濃淡の情報はRGB画像ほど豊富ではないため、限られた情報からはギャップ,溝,段差等の特徴を認識するのは困難である。これは、例えば、解像度が低い2次元画像においても、同様の問題が存在している。
 そのため、本第1実施例の位置補正装置3は、取得部4により取得した3次元計測データを利用し、ギャップ,溝,段差等の特徴を計算してワーク間の隙間を認識することにより、密接している複数のワークを1つとして誤認識することを防止できる。
 また、取得部4が撮像した2次元画像上に写っているワークは色分布が不均一なワークである場合、1つのワークを2つ以上のワークとして誤認識する虞がある。そこで、本第1実施例の位置補正装置3は、取得部4により取得した3次元計測データを利用して、3次元平面または3次元曲面等の特徴を計算し、例えば、色が異なる複数の領域が実は同じ平面または曲面上の領域であると判別することで、1つワークを2つ以上のワークとして誤認識することを防止できる。
 上述したように、本第1実施例によれば、例えば、2次元画像に写っているワーク(物体)とその周囲の背景の色や明るさが近い場合であっても、3次元計測データによるワークと背景の3次元位置の差を利用してワークの形状領域と背景領域を正しく区別でき、ワークと背景の誤認識やワークの未検出等の発生を防止できる。また、本第1実施例によれば、2次元画像上に密接している2つワークの間の隙間(ギャップ,溝,段差等)を、3次元計測データを利用して認識することで、2つワークを1つとして誤認識するようなことを防止できる。さらに、本第1実施例によれば、例えば、2次元画像上に写っているワークの色分布が不均一な場合であっても、3次元計測データではそれらの領域が同じ平面または曲面上の領域であることを確認することで、1つワークを2つ以上のワークとして誤認識することを防止できる。
 図4は、本実施形態に係る位置補正プログラム(位置補正装置)の第2実施例における処理の一例を説明するためのフローチャートであり、図5は、本実施形態に係る位置補正装置の第2実施例におけるワークの認識処理の一例を説明するための図である。図4に示されるように、第2実施例の位置補正プログラムにおける処理の一例が開始(START)すると、ステップST21において、複数のワークの存在領域の3次元計測データおよび2次元画像を取得する。すなわち、図1を参照して説明したように、取得部4は、複数のワークD1~D9の存在領域の2次元画像と3次元計測データを取得して、位置補正装置3に出力する。
 次に、ステップST22に進んで、3次元計測データに基づいてワークを検出する。すなわち、位置補正装置3は、取得部4からの3次元計測データに基づいてワークの検出を行う。一例として、図5は、複数のワークの存在領域を撮像した3次元計測データ(例えば、3次元点群データから生成した3次元画像)P2において、ワーク(物体)C0全体の高さ(3次元形状)にほとんど差異がない場合を示す。すなわち、3次元計測データP2において、ワークC0の高さがほぼ同じ場合、位置補正装置3は、ワークC0を1つのワーク(C1)として検出し、ステップST23に進む。
 ステップST23では、2次元画像に基づいてワークの検出結果を補正する。具体的に、取得部4からの2次元画像において、例えば、ワークC11,C12,C13の濃淡や色合い(色相、明度および再度)が大きく異なる場合、3次元計測データP2におけるワークC0は、1つのワークC1ではなく、3つのワークC11,C12,C13であると検出結果(例えば、検出数、検出位置姿勢、外形サイズ等)を補正する。すなわち、位置補正装置3は、3次元計測データに基づいてワークC0を1つのワークC1とした検出結果を、2次元画像と照らし合わせを行うことにより、3つのワークC11,C12,C13であるように、検出数を1個から3個に補正し、検出位置姿勢や外形サイズ等のデータを正しく補正して出力する。
 さらに、ステップST24に進んで、ロボットの動作計画を行った後、ステップST25に進み、ロボット1を制御してワークを取り出す。すなわち、ステップST24において、ロボット制御装置2は、3つのワークC11,C12,C13が存在していて、それぞれのワークの位置姿勢等の情報といった位置補正装置3の出力データに基づいて、検出/認識できた全てのワークを取り出すようにロボット1の動作計画を行う。さらに、ステップST25において、ロボット制御装置2は、例えば、ロボット1が3つのワークC11,C12,C13を順に取り出すように、ロボット機構部10に制御指令を出力して、ロボット機構部10が制御指令を受信して取り出し動作を実施する。そして、本実施形態に係る位置補正プログラムの第2実施例における処理の一例を終了(END)する。
 上述した例において、例えば、実際には3つのワークC11,C12,C13が存在しているにもかかわらず、補正無しの場合は誤った/ずれた検出位置にロボット機構部10が移動してワークC1を取り出そうとして、ワークC1を持ち上げることができずに失敗したり、或いは、実質上のワークC12の重心からずれた位置を吸着パットで接触して持ち上げ、その後のハンドリング中にバランスを失ってワークC12を落としてしまうといった失敗を起こす虞がある。このような場合、本第2実施例に係る位置補正装置3によれば、ワークの検出数と検出位置姿勢等の検出結果を補正することにより、取り出し動作の失敗等を防止することが可能になる。
 このように、本実施形態に係る位置補正プログラム(位置補正装置)の第2実施例は、3次元計測データに基づいて計算されたワークの形状領域を2次元画像の画像処理結果を使って補正計算し、補正された形状領域に基づいてワークの位置姿勢や外形サイズ等を補正する。第2実施例の位置補正装置3は、例えば、ワークの検出位置を3次元計測データに基づいて算出し、そのワークの検出位置を2次元画像の処理結果に基づいて補正する。すなわち、位置補正装置3は、複数のワークの存在領域を計測した3次元計測データに基づいて、少なくとも1つのワークの検出位置を少なくとも算出し、複数のワークの存在領域を撮像した2次元画像に基づいて、少なくとも1つのワークの検出位置を少なくとも補正して出力する。
 また、本第2実施例の位置補正装置3は、3次元計測データにおけるワークの形状領域を算出し、算出されたワークの形状領域に基づいて、少なくとも1つのワークの検出位置を少なくとも補正して出力する。さらに、位置補正装置3は、前述した第1実施例と同様に、画像処理または機械学習の学習結果を利用して3次元計測データにおけるワークの形状領域を算出するように構成してもよい。また、位置補正装置3は、3次元計測データ(例えば、3次元点群データ)に対して、例えば、ワークの3次元CAD(Computer Aided Design)モデルとのマッチング処理等を行って3次元計測データにおけるワークの形状領域を算出することもできる。なお、画像処理を利用する場合には、知られている様々な画像処理技術(例えば、パターンマッチ、エッジ抽出等)を利用することができるのは前述した通りである。
 さらに、本第2実施例の位置補正装置3は、2次元画像と3次元計測データとの照らし合わせを行い、2次元画像に含まれる画素値の差を利用して、3次元計測データにおけるワークの形状領域を補正し、補正された形状領域に基づいてワークの検出位置を補正して出力してもよい。また、位置補正装置3は、2次元画像と3次元計測データとの照らし合わせを行い、2次元画像に基づいて特徴を算出し、算出された特徴を使用して3次元計測データにおけるワークの形状領域を補正し、補正された形状領域に基づいてワークの検出位置を補正して出力することもできる。
 そして、本第2実施例の位置補正装置3は、特徴として、エッジ,溝,ギャップ,段差,円,平面,曲面および特徴点のパターンのうち少なくとも1つを算出してもよい。また、位置補正装置3は、少なくとも1つのワークの検出位置と共に、少なくとも1つのワークの姿勢,外形およびサイズのうち少なくとも1つを算出することもできる。さらに、位置補正装置3は、少なくとも1つのワークの検出位置と共に、少なくとも1つのワークの姿勢,外形およびサイズのうち少なくとも1つを補正して出力することもできる。
 上述したように、本第2実施例によれば、例えば、安価な3次元計測器を使う場合にその計測精度が低くて、取得した3次元計測データの品質が良くない場合でも、安価なカメラを使って撮像した2次元画像の画像処理結果を使って検出位置姿勢等を補正することにより、ワークの位置姿勢等の検出精度を向上することができる。これより、計測精度が高くて値段も高い3次元計測器を使用しなくても、それと同程度の高精度な位置姿勢等の検出結果を得られるので、設備を導入するコストを削減することが可能になる。また、本第2実施例によれば、同じ領域(撮像範囲:複数のワークの存在領域)内の2次元画像と3次元計測データを取得して補正計算を行うので、例えば、[先行技術文献]にリストアップした[特許文献1]のように、第2画像(3次元点群データを含む3次元画像)の撮像範囲は必ず第1画像の撮像範囲(2次元のカメラ画像)より小さいといった撮像方法では、一部の領域内のワークに対して3次元計測データを取得していないためにその領域内のワークの検出位置の計算に3次元計測データを利用できずに位置精度が下がってしまうといったことも防止できる。
 このように、本実施形態に係る位置補正プログラム(位置補正装置)の第1および第2実施例は、複数のワークの存在領域に対して2次元画像を撮像すると共に、同じ領域に対して3次元計測を行い、3次元計測データ(例えば、3次元点群データ)を取得する。そして、3次元計測データと2次元画像との照らし合わせを行い、ワークの位置姿勢や外形サイズ等の検出(認識)精度を向上させることができる。なお、上述した本実施形態に係る位置補正プログラムの第1および第2実施例は、例えば、計算処理の負荷が小さい場合には専用の位置補正装置3ではなく、ロボット制御装置2における演算処理装置で実行することができる。この場合、位置補正装置3は、ロボット制御装置2の内部に組み込まれる。逆に、例えば、機械学習を実行するような計算処理の負荷が大きい場合、位置補正装置3は、ロボット制御装置2の近くに設けられた専用のワークステーション、或いは、ロボットシステム100から離隔した場所に設けられた上位のコンピュータや汎用計算機等により構成することもできる。また、位置補正装置3は、機械学習を実行せずに、別の装置やサービス、例えば、GPUディバイスを利用できるクラウドサービスを利用して機械学習を実行した学習結果(例えば、学習済みモデルデータ)のみを受け取って計算処理を行ってもよい。
 上述した本実施形態に係る位置補正プログラムは、コンピュータ読み取り可能な非一時的記録媒体や不揮発性半導体メモリに記録して提供してもよく、また、有線または無線を介して提供してもよい。ここで、コンピュータ読み取り可能な非一時的記録媒体としては、例えば、CD-ROM(Compact Disc Read Only Memory)やDVD-ROM等の光ディスク、或いは、ハードディスク装置等が考えられる。また、不揮発性半導体メモリとしては、PROM(Programmable Read Only Memory)やフラッシュメモリ等が考えられる。さらに、サーバ装置からの配信としては、有線または無線によるLAN(Local Area Network)、或いは、インターネット等のWANを介した提供が考えられる。
 以上、詳述したように、本実施形態に係る位置補正装置、ロボットシステムおよび位置補正プログラムによれば、誤検出や未検出問題の発生を防ぎ、ワーク(物体)の認識/検出精度を向上することが可能になる。
 本開示について詳述したが、本開示は上述した個々の実施形態に限定されるものではない。これらの実施形態は、本開示の要旨を逸脱しない範囲で、または、特許請求の範囲に記載された内容とその均等物から導き出される本開示の趣旨を逸脱しない範囲で、種々の追加、置き換え、変更、部分的削除等が可能である。また、これらの実施形態は、組み合わせて実施することもできる。例えば、上述した実施形態において、各動作の順序や各処理の順序は、一例として示したものであり、これらに限定されるものではない。また、上述した実施形態の説明に数値または数式が用いられている場合も同様である。
 上記実施形態および変形例に関し、さらに、以下の付記を開示する。
 [付記1]
 複数のワーク(D1~D9,B0,D)の存在領域を撮像した2次元画像(P1)に基づいて、少なくとも1つの前記ワーク(B0,D)の検出位置を少なくとも算出し、前記複数のワーク(D1~D9,B0,D)の前記存在領域を計測した3次元計測データ(P2)に基づいて、少なくとも1つの前記ワーク(B0)の前記検出位置を補正(B1,B11~B13)して出力する、位置補正装置(3)。
 [付記2]
 前記位置補正装置(3)は、前記2次元画像(P1)における前記ワーク(B0,D)の形状領域(A1)を算出し、算出された前記ワーク(B0,D)の前記形状領域(A1)に基づいて、少なくとも1つの前記ワーク(B0)の前記検出位置を算出(B1,B11~B13)する、付記1に記載の位置補正装置。
 [付記3]
 前記位置補正装置(3)は、機械学習の学習結果を利用して前記2次元画像(P1)における前記ワーク(B0,D)の前記形状領域(A1)を算出する、付記2に記載の位置補正装置。
 [付記4]
 前記位置補正装置(3)は、前記2次元画像(P1)に対して画像処理を行って前記2次元画像(P1)における前記ワーク(B0,D)の前記形状領域(A1)を算出する、付記2または付記3に記載の位置補正装置。
 [付記5]
 前記位置補正装置(3)は、前記3次元計測データ(P2)と前記2次元画像(P1)との照らし合わせを行い、前記3次元計測データ(P2)に含まれる3次元位置の差を利用して、前記2次元画像(P1)における前記ワーク(B0,D)の前記形状領域(A1)を補正し、補正された前記形状領域に基づいて前記ワーク(B0)の前記検出位置を補正(B1,B11~B13)して出力する、付記2乃至付記4のいずれか1項に記載の位置補正装置。
 [付記6]
 前記位置補正装置(3)は、前記3次元計測データ(P2)と前記2次元画像(P1)との照らし合わせを行い、前記3次元計測データ(P2)に基づいて特徴を算出し、算出された前記特徴を使用して前記2次元画像(P1)における前記ワーク(B0,D)の前記形状領域を補正し、補正された前記形状領域に基づいて前記ワーク(B0,D)の前記検出位置を補正して出力する、付記2乃至付記5のいずれか1項に記載の位置補正装置。
 [付記7]
 前記位置補正装置(3)は、前記特徴として、溝,ギャップ,段差,3次元平面および3次元曲面のうち少なくとも1つを算出する、付記6に記載の位置補正装置。
 [付記8]
 複数のワーク(D1~D9,C0,D)の存在領域を計測した3次元計測データ(P2)に基づいて、少なくとも1つの前記ワーク(C0,D)の検出位置を少なくとも算出し、前記複数のワーク(D1~D9,C0,D)の前記存在領域を撮像した2次元画像(P1)に基づいて、少なくとも1つの前記ワーク(C0)の前記検出位置を補正(C1,C11~C13)して出力する、位置補正装置(3)。
 [付記9]
 前記位置補正装置(3)は、前記3次元計測データ(P2)における前記ワーク(C0,D)の形状領域(A1)を算出し、算出された前記ワーク(C0,D)の前記形状領域(A1)に基づいて、少なくとも1つの前記ワーク(C0,D)の前記検出位置を算出(C1,C11~C13)する、付記8に記載の位置補正装置。
 [付記10]
 前記位置補正装置(3)は、機械学習の学習結果を利用して前記3次元計測データ(P2)における前記ワーク(C0,D)の前記形状領域(A1)を算出する、付記9に記載の位置補正装置。
 [付記11]
 前記位置補正装置(3)は、前記3次元計測データ(P2)に対して処理を行って前記3次元計測データ(P2)における前記ワーク(C0,D)の前記形状領域(A1)を算出する、付記9または付記10に記載の位置補正装置。
 [付記12]
 前記位置補正装置(3)は、前記2次元画像(P1)と前記3次元計測データ(P2)との照らし合わせを行い、前記2次元画像(P1)に含まれる画素値の差を利用して、前記3次元計測データ(P2)における前記ワーク(C0,D)の前記形状領域(A1)を補正し、補正された前記形状領域(A1)に基づいて前記ワーク(C0,D)の前記検出位置を補正して出力する、付記9乃至付記11のいずれか1項に記載の位置補正装置。
 [付記13]
 前記位置補正装置(3)は、前記2次元画像(P1)と前記3次元計測データ(P2)との照らし合わせを行い、前記2次元画像(P1)に基づいて特徴を算出し、算出された前記特徴を使用して前記3次元計測データ(P2)における前記ワーク(C0,D)の前記形状領域(A1)を補正し、補正された前記形状領域(A1)に基づいて前記ワーク(C0,D)の前記検出位置を補正して出力する、付記9乃至付記12のいずれか1項に記載の位置補正装置。
 [付記14]
 前記位置補正装置(3)は、前記特徴として、エッジ,溝,ギャップ,段差,円,平面,曲面および特徴点のパターンのうち少なくとも1つを算出する、付記13に記載の位置補正装置。
 [付記15]
 前記位置補正装置(3)は、少なくとも1つの前記ワーク(B0,C0,D)の前記検出位置と共に、少なくとも1つの前記ワーク(B0,C0,D)の姿勢,外形およびサイズのうち少なくとも1つを算出する、付記1乃至付記14のいずれか1項に記載の位置補正装置。
 [付記16]
 前記位置補正装置(3)は、少なくとも1つの前記ワーク(B0,C0,D)の前記検出位置と共に、少なくとも1つの前記ワーク(B0,C0,D)の姿勢,外形およびサイズのうち少なくとも1つを補正して出力する、付記1乃至付記15のいずれか1項に記載の位置補正装置。
 [付記17]
 ワーク(B0,C0,D)に対して所定の作業を行うロボット(1)と、
 複数のワーク(D1~D9,B0,C0,D)の存在領域を撮像した2次元画像(P1)を取得すると共に、前記複数のワークの(D1~D9,B0,C0,D)前記存在領域の3次元計測データ(P2)を取得する取得部(4)と、
 前記取得部(4)からの前記2次元画像(P1)および前記3次元計測データ(P2)に基づいて、少なくとも1つの前記ワーク(B0,C0,D)の検出位置を少なくとも算出すると共に、少なくとも1つの前記ワーク(B0,C0,D)の前記検出位置を補正して出力する位置補正装置(3)と、
 前記位置補正装置(3)の出力を受け取り、前記ロボット(1)に制御指令を出力して前記ロボット(1)を制御するロボット制御装置(2)と、を備え、
 前記位置補正装置(3)は、付記1乃至付記16のいずれか1項に記載の位置補正装置である、ロボットシステム(100)。
 [付記18]
 前記ロボット(1)は、前記ロボット制御装置(2)から出力される前記制御指令に基づいて、前記位置補正装置(3)により出力された前記検出位置で前記ワーク(B11~B13,C11~C13)を取り出すように制御される、付記17に記載のロボットシステム。
 [付記19]
 演算処理装置に、
  複数のワーク(D1~D9,B0,D)の存在領域を撮像した2次元画像(P1)に基づいて、少なくとも1つの前記ワーク(B0,D)の検出位置を少なくとも算出し、
  前記複数のワーク(D1~D9,B0,D)の前記存在領域を計測した3次元計測データ(P2)に基づいて、少なくとも1つの前記ワーク(B0)の前記検出位置を補正して出力する、処理を実行させる、位置補正プログラム。
 [付記20]
 演算処理装置に、
  複数のワーク(D1~D9,C0,D)の存在領域を計測した3次元計測データ(P2)に基づいて、少なくとも1つの前記ワーク(C0,D)の検出位置を少なくとも算出し、
  前記複数のワーク(D1~D9,C0,D)の前記存在領域を撮像した2次元画像(P1)に基づいて、少なくとも1つの前記ワーク(C0)の前記検出位置を補正(C1,C11~C13)して出力する、処理を実行させる、位置補正プログラム。
 1  ロボット
 2  ロボット制御装置
 3  位置補正装置
 4  取得部(計測部)
 10  ロボット機構部
 11  アーム
 12  エンドエフェクタ(ハンド部)
 100  ロボットシステム
 A1  形状領域
 A2  領域
 B0,B1,B11~B13;C0,C1,C11~C13;D1~D9  物体(ワーク)

Claims (20)

  1.  複数のワークの存在領域を撮像した2次元画像に基づいて、少なくとも1つの前記ワークの検出位置を少なくとも算出し、前記複数のワークの前記存在領域を計測した3次元計測データに基づいて、少なくとも1つの前記ワークの前記検出位置を補正して出力する、位置補正装置。
  2.  前記位置補正装置は、前記2次元画像における前記ワークの形状領域を算出し、算出された前記ワークの前記形状領域に基づいて、少なくとも1つの前記ワークの前記検出位置を算出する、請求項1に記載の位置補正装置。
  3.  前記位置補正装置は、機械学習の学習結果を利用して前記2次元画像における前記ワークの前記形状領域を算出する、請求項2に記載の位置補正装置。
  4.  前記位置補正装置は、前記2次元画像に対して画像処理を行って前記2次元画像における前記ワークの前記形状領域を算出する、請求項2または請求項3に記載の位置補正装置。
  5.  前記位置補正装置は、前記3次元計測データと前記2次元画像との照らし合わせを行い、前記3次元計測データに含まれる3次元位置の差を利用して、前記2次元画像における前記ワークの前記形状領域を補正し、補正された前記形状領域に基づいて前記ワークの前記検出位置を補正して出力する、請求項2乃至請求項4のいずれか1項に記載の位置補正装置。
  6.  前記位置補正装置は、前記3次元計測データと前記2次元画像との照らし合わせを行い、前記3次元計測データに基づいて特徴を算出し、算出された前記特徴を使用して前記2次元画像における前記ワークの前記形状領域を補正し、補正された前記形状領域に基づいて前記ワークの前記検出位置を補正して出力する、請求項2乃至請求項5のいずれか1項に記載の位置補正装置。
  7.  前記位置補正装置は、前記特徴として、溝,ギャップ,段差,3次元平面および3次元曲面のうち少なくとも1つを算出する、請求項6に記載の位置補正装置。
  8.  複数のワークの存在領域を計測した3次元計測データに基づいて、少なくとも1つの前記ワークの検出位置を少なくとも算出し、前記複数のワークの前記存在領域を撮像した2次元画像に基づいて、少なくとも1つの前記ワークの前記検出位置を補正して出力する、位置補正装置。
  9.  前記位置補正装置は、前記3次元計測データにおける前記ワークの形状領域を算出し、算出された前記ワークの前記形状領域に基づいて、少なくとも1つの前記ワークの前記検出位置を算出する、請求項8に記載の位置補正装置。
  10.  前記位置補正装置は、機械学習の学習結果を利用して前記3次元計測データにおける前記ワークの前記形状領域を算出する、請求項9に記載の位置補正装置。
  11.  前記位置補正装置は、前記3次元計測データに対して処理を行って前記3次元計測データにおける前記ワークの前記形状領域を算出する、請求項9または請求項10に記載の位置補正装置。
  12.  前記位置補正装置は、前記2次元画像と前記3次元計測データとの照らし合わせを行い、前記2次元画像に含まれる画素値の差を利用して、前記3次元計測データにおける前記ワークの前記形状領域を補正し、補正された前記形状領域に基づいて前記ワークの前記検出位置を補正して出力する、請求項9乃至請求項11のいずれか1項に記載の位置補正装置。
  13.  前記位置補正装置は、前記2次元画像と前記3次元計測データとの照らし合わせを行い、前記2次元画像に基づいて特徴を算出し、算出された前記特徴を使用して前記3次元計測データにおける前記ワークの前記形状領域を補正し、補正された前記形状領域に基づいて前記ワークの前記検出位置を補正して出力する、請求項9乃至請求項12のいずれか1項に記載の位置補正装置。
  14.  前記位置補正装置は、前記特徴として、エッジ,溝,ギャップ,段差,円,平面,曲面および特徴点のパターンのうち少なくとも1つを算出する、請求項13に記載の位置補正装置。
  15.  前記位置補正装置は、少なくとも1つの前記ワークの前記検出位置と共に、少なくとも1つの前記ワークの姿勢,外形およびサイズのうち少なくとも1つを算出する、請求項1乃至請求項14のいずれか1項に記載の位置補正装置。
  16.  前記位置補正装置は、少なくとも1つの前記ワークの前記検出位置と共に、少なくとも1つの前記ワークの姿勢,外形およびサイズのうち少なくとも1つを補正して出力する、請求項1乃至請求項15のいずれか1項に記載の位置補正装置。
  17.  ワークに対して所定の作業を行うロボットと、
     複数のワークの存在領域を撮像した2次元画像を取得すると共に、前記複数のワークの前記存在領域の3次元計測データを取得する取得部と、
     前記取得部からの前記2次元画像および前記3次元計測データに基づいて、少なくとも1つの前記ワークの検出位置を少なくとも算出すると共に、少なくとも1つの前記ワークの前記検出位置を補正して出力する位置補正装置と、
     前記位置補正装置の出力を受け取り、前記ロボットに制御指令を出力して前記ロボットを制御するロボット制御装置と、を備え、
     前記位置補正装置は、請求項1乃至請求項16のいずれか1項に記載の位置補正装置である、ロボットシステム。
  18.  前記ロボットは、前記ロボット制御装置から出力される前記制御指令に基づいて、前記位置補正装置により出力された前記検出位置で前記ワークを取り出すように制御される、請求項17に記載のロボットシステム。
  19.  演算処理装置に、
      複数のワークの存在領域を撮像した2次元画像に基づいて、少なくとも1つの前記ワークの検出位置を少なくとも算出し、
      前記複数のワークの前記存在領域を計測した3次元計測データに基づいて、少なくとも1つの前記ワークの前記検出位置を補正して出力する、処理を実行させる、位置補正プログラム。
  20.  演算処理装置に、
      複数のワークの存在領域を計測した3次元計測データに基づいて、少なくとも1つの前記ワークの検出位置を少なくとも算出し、
      前記複数のワークの前記存在領域を撮像した2次元画像に基づいて、少なくとも1つの前記ワークの前記検出位置を補正して出力する、処理を実行させる、位置補正プログラム。
PCT/JP2023/006260 2023-02-21 2023-02-21 位置補正装置、ロボットシステムおよび位置補正プログラム Ceased WO2024176359A1 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
CN202380086739.6A CN120380299A (zh) 2023-02-21 2023-02-21 位置校正装置、机器人系统以及位置校正程序
JP2025501985A JPWO2024176359A1 (ja) 2023-02-21 2023-02-21
DE112023005156.9T DE112023005156T5 (de) 2023-02-21 2023-02-21 Positionskorrekturvorrichtung, robotersystem, und positionskorrekturprogramm
PCT/JP2023/006260 WO2024176359A1 (ja) 2023-02-21 2023-02-21 位置補正装置、ロボットシステムおよび位置補正プログラム
TW113102413A TW202434420A (zh) 2023-02-21 2024-01-22 位置補正裝置、機器人系統及位置補正程式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2023/006260 WO2024176359A1 (ja) 2023-02-21 2023-02-21 位置補正装置、ロボットシステムおよび位置補正プログラム

Publications (1)

Publication Number Publication Date
WO2024176359A1 true WO2024176359A1 (ja) 2024-08-29

Family

ID=92500421

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2023/006260 Ceased WO2024176359A1 (ja) 2023-02-21 2023-02-21 位置補正装置、ロボットシステムおよび位置補正プログラム

Country Status (5)

Country Link
JP (1) JPWO2024176359A1 (ja)
CN (1) CN120380299A (ja)
DE (1) DE112023005156T5 (ja)
TW (1) TW202434420A (ja)
WO (1) WO2024176359A1 (ja)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010247959A (ja) * 2009-04-16 2010-11-04 Ihi Corp 箱状ワーク認識装置および方法
CN111783529A (zh) * 2019-07-26 2020-10-16 牧今科技 基于边缘和多维拐角的检测后改善
JP2020537775A (ja) * 2018-10-30 2020-12-24 株式会社Mujin 自動パッケージ登録機構および自動検出パイプラインを備えたロボットシステム
WO2021177239A1 (ja) * 2020-03-05 2021-09-10 ファナック株式会社 取り出しシステム及び方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010247959A (ja) * 2009-04-16 2010-11-04 Ihi Corp 箱状ワーク認識装置および方法
JP2020537775A (ja) * 2018-10-30 2020-12-24 株式会社Mujin 自動パッケージ登録機構および自動検出パイプラインを備えたロボットシステム
CN111783529A (zh) * 2019-07-26 2020-10-16 牧今科技 基于边缘和多维拐角的检测后改善
WO2021177239A1 (ja) * 2020-03-05 2021-09-10 ファナック株式会社 取り出しシステム及び方法

Also Published As

Publication number Publication date
CN120380299A (zh) 2025-07-25
TW202434420A (zh) 2024-09-01
JPWO2024176359A1 (ja) 2024-08-29
DE112023005156T5 (de) 2025-10-30

Similar Documents

Publication Publication Date Title
US11724400B2 (en) Information processing apparatus for determining interference between object and grasping unit, information processing method, and storage medium
Xiao et al. An adaptive feature extraction algorithm for multiple typical seam tracking based on vision sensor in robotic arc welding
CN108369650B (zh) 标识校准图案的可能特征点的方法
CN115194751B (zh) 机器人系统、控制方法、图像处理装置及方法和产品制造方法
US20160279791A1 (en) Information processing apparatus, information processing method, and storage medium
JP6172432B2 (ja) 被写体識別装置、被写体識別方法および被写体識別プログラム
JP7191352B2 (ja) 物体検出を実施するための方法および計算システム
CN115375610A (zh) 检测方法及装置、检测设备和存储介质
JP2009288917A (ja) 情報処理装置、情報処理方法、およびプログラム
US20150063637A1 (en) Image recognition method and robot
JP5403367B2 (ja) 物体形状評価装置
TW202046248A (zh) 圖型匹配方法
JP2021071420A (ja) 情報処理装置、情報処理方法、プログラム、システム、物品の製造方法、計測装置及び計測方法
WO2024176359A1 (ja) 位置補正装置、ロボットシステムおよび位置補正プログラム
JP6237122B2 (ja) ロボット、画像処理方法及びロボットシステム
CN116033999A (zh) 机器人系统以及控制方法
Fu et al. Pose estimation method combining the PNP algorithm and contour depth extraction for peg-in-hole assembly
Tellaeche et al. 6DOF pose estimation of objects for robotic manipulation. A review of different options
JP7323061B2 (ja) エレベーターの3次元データの処理装置
JP7614358B2 (ja) 画像処理装置及びコンピュータ読み取り可能な記憶媒体
Araújo et al. Machine vision for industrial robotic manipulator using raspberry Pi
TW202040510A (zh) 影像匹配判定方法、影像匹配判定裝置、及記錄了用於使電腦執行影像匹配判定方法的程式的電腦可讀取之記錄媒體
CN117351213B (zh) 基于3d视觉的箱体分割定位方法及系统
US20250196351A1 (en) Robot system
CN115937273A (zh) 图像对位方法、系统、记录媒体、以及计算机程序产品

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 23924013

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 2025501985

Country of ref document: JP

WWE Wipo information: entry into national phase

Ref document number: 202380086739.6

Country of ref document: CN

WWP Wipo information: published in national office

Ref document number: 202380086739.6

Country of ref document: CN

WWE Wipo information: entry into national phase

Ref document number: 112023005156

Country of ref document: DE

WWP Wipo information: published in national office

Ref document number: 112023005156

Country of ref document: DE

122 Ep: pct application non-entry in european phase

Ref document number: 23924013

Country of ref document: EP

Kind code of ref document: A1