WO2005046942A1 - ロボットの駆動方法 - Google Patents

ロボットの駆動方法 Download PDF

Info

Publication number
WO2005046942A1
WO2005046942A1 PCT/JP2004/016968 JP2004016968W WO2005046942A1 WO 2005046942 A1 WO2005046942 A1 WO 2005046942A1 JP 2004016968 W JP2004016968 W JP 2004016968W WO 2005046942 A1 WO2005046942 A1 WO 2005046942A1
Authority
WO
WIPO (PCT)
Prior art keywords
image data
robot
operation command
image
moving object
Prior art date
Application number
PCT/JP2004/016968
Other languages
English (en)
French (fr)
Inventor
Kiyoshi Hoshino
Takanobu Tanimoto
Original Assignee
Japan Science And Technology Agency
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 Japan Science And Technology Agency filed Critical Japan Science And Technology Agency
Priority to GB0611135A priority Critical patent/GB2424723B/en
Priority to US10/595,810 priority patent/US7848850B2/en
Priority to DE112004002219.3T priority patent/DE112004002219B4/de
Priority to JP2005515481A priority patent/JP4878842B2/ja
Publication of WO2005046942A1 publication Critical patent/WO2005046942A1/ja

Links

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J15/00Gripping heads and other end effectors
    • B25J15/0009Gripping heads and other end effectors comprising multi-articulated fingers, e.g. resembling a human hand
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1694Programme 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
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/42Recording and playback systems, i.e. in which the programme is recorded from a cycle of operations, e.g. the cycle of operations being manually controlled, after which this record is played back on the same machine
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands

Definitions

  • the present invention relates to a method for driving a robot, and more particularly, to causing a moving object or a simulated object corresponding to the robot to perform a desired operation in order to operate the robot, and an image of the moving object or the simulated object.
  • the present invention relates to a method of driving a robot suitable for causing the robot to perform the same operation as data.
  • technologies related to robots that can reproduce the movement of a person by imitating the movement of a person include, for example, when an operator walks with a sensor attached, or when the operator puts a data glove equipped with a plurality of sensors on the hand, Then, the robot is driven based on the information output from these sensors.
  • Non Patent Literature 1 and Non Patent Literature 2 disclose this type of technology
  • Non-Patent Document 2 A paper entitled “Imitation and primitive symbol acquisition of humanoids by the integrated mimesis loop," by T. Inamura, Y. Nakamura, H. Ezaki and I. Toshima: Pro c. Of Intl. Conf on Robotics and Automation (ICRA 2001), p. 4208—p. 4213, published in 2001
  • Another object of the present invention is to make it possible to drive a robot stably and at high speed even when the shape of a moving object or a simulated object is complicated or self-occluding on an image frequently occurs. To provide a method for driving a robot.
  • Another object of the present invention is to provide a driving method of a robot that can increase the accuracy of specifying input motion image data.
  • Another object of the present invention is to provide a driving method of a robot capable of quickly collating input motion image data with a large number of image data stored in advance.
  • Still another object of the present invention is to provide a method of driving a robot by eliminating defect setting properties by imitation learning.
  • the robot driving method of the present invention drives the robot in accordance with the following steps in accordance with the operation command.
  • a plurality of image data of the moving object or the simulated object when the moving object or the simulated object corresponding to the robot performs the same operation as the predetermined operation, and the operation command corresponding to the plurality of image data are obtained.
  • a pre-collection operation command collected in advance is stored in the image-corresponding operation command storage means in association with the command.
  • the method for collecting the pre-collection operation command in advance is optional.
  • the moving object or its simulated object is caused to perform a desired operation, and at this time, the operation image data of the moving object or its simulated object is acquired in time series as robot operation image data.
  • the image data corresponding to the motion image data included in the robot motion image data is stored in the image-corresponding motion command storage means, and the image data is specified in a time series from a plurality of image data. Is given to the robot as an operation command.
  • image correspondence The image data stored in the operation command storage means may be data accompanied by feature data indicating characteristics of the image obtained by performing the processing based on the photographed image or data itself of the feature data. Of course it is good.
  • the method of specifying image data corresponding to the motion image data included in the robot motion image data is arbitrary. If the image data is feature amount data, the image data corresponding to the motion image data can be specified based on the similarity of the feature amounts.
  • the same operation as that of the moving object or the simulated object without using a sensor can be performed simply by obtaining an image of the moving object or the simulated object corresponding to the robot. Can be done by a robot. Therefore, according to the present invention, it is possible to easily drive a robot using image data as input data.
  • the correspondence between the image data included in the robot operation image data and the plurality of image data stored in the image corresponding operation command storage means can be determined based on the similarity between the two.
  • a plurality of image data for matching based on a feature amount of the operation image data is specified. It is preferable to select the image data and specify an image corresponding to the motion image data based on the similarity between the plurality of image data for collation and the motion image data.
  • the robot is driven by executing the following first to fifth steps.
  • a moving object corresponding to the robot, a plurality of sensors provided on the moving object for detecting the movement of the moving object, and an operation command generation for generating an operation command based on the outputs of the plurality of sensors Use the device.
  • an operation command generated by the operation command generator based on the outputs of the plurality of sensors when the moving object performs a predetermined operation is stored as a pre-collection operation command.
  • the moving object is typically an entire human or a moving part such as a human hand or foot, but the moving object may be an animal other than a human.
  • a plurality of image data of the moving object when the moving object performs the predetermined operation in the first step is obtained, or the moving object or its simulated object performs the predetermined operation.
  • Multiple image data of the moving object or its simulated object when the same operation is performed Is obtained in chronological order.
  • the “moving object” in the “moving object or its simulated object” may be the same as the moving object in the first step, but has the same shape and structure (in other words, the same joint at the same place). Yes) and another object may be used as long as it can perform the same operation.
  • the “simulated object” in the “moving object or its simulated object” refers to an object created by using an simulated object generation technology such as a computer graphic technology, or a doll of the operable object.
  • the image data obtained in this case is pseudo image data.
  • the imitation image data is computer graphic image data.
  • the method or method of acquiring a plurality of image data in a time series is arbitrary, and may be an image taken by any of a monocular camera, a binocular camera, and a multi-camera.
  • the moving object is a human hand
  • a plurality of image data include image data in which individual differences appearing in the human hand are taken into consideration
  • the differences that cause individual differences include the curvature of the base position of the four fingers other than the thumb, the degree of overhang of the base of the thumb, the degree of opening of two adjacent fingers, and the reference angle of the two opened fingers.
  • Such individual differences may be caused by the basic image already created using the above-mentioned different elements as parameters when creating image data (pseudo image data) using computer graphics technology or other similar artifact generation technology. It can be easily obtained by changing the data (by changing the parameters, creating the aforementioned different elements, such as the bone length, the angle of movement t of the joints, and the like). Therefore, it is not difficult to create image data that takes into account individual differences.
  • the plurality of image data created in the second step may include a plurality of resolution-changed image data created by changing the resolution of the plurality of image data. This is because changing the resolution of the image data may make the characteristics of the image more apparent. The resolution of image data can be easily changed if there is basic image data.
  • the surface of the moving object including the plurality of sensors is covered with a covering including the plurality of sensors, and simultaneously with the first step, a plurality of image data of the moving object is obtained. You may make it acquire.
  • the coating has a configuration capable of eliminating unnecessary information as much as possible. Therefore, it is preferable that the color should be as plain as possible (one color, no pattern: no unnecessary unevenness). From the image data of the moving object covered with such a covering, features (especially features of contours) included in the image data can be acquired in a short time and with high accuracy.
  • a plurality of image data obtained in the second step are associated with each image data included in the plurality of image data obtained in the second step and the pre-collection operation command.
  • the pre-collection operation command is stored in the image-corresponding operation command storage means.
  • uncreated (unphotographed) image data between the previous image data and the subsequent image data acquired in the second step, which includes only the actually captured image is obtained by computer graphic technology.
  • the created one can also be stored.
  • the pre-collection operation command corresponding to the uncreated image data is created by estimation based on the pre-collection operation command corresponding to the previous image data and the pre-collection operation command corresponding to the subsequent image data.
  • the moving object or its simulated object performs a desired operation, and at that time, the motion image data of the moving object or its simulated object is time-sequentially used for the robot operation. Acquire as image data. In this case, it is not necessary to attach a sensor to the moving object.
  • the image data corresponding to the motion image data included in the robot motion image data is specified in time series from a plurality of image data (basic data) stored in the image corresponding motion command storage means. . It is preferable that the correspondence between the motion image data included in the robot motion image data and the plurality of image data stored in the image-corresponding motion command storage means is determined based on the similarity between the two. The method of obtaining the similarity is arbitrary, and is not limited to a specific method.
  • the robot acquires the pre-collection operation command corresponding to the specified image data as the operation command. To give
  • the hand has a high defect setting property. Therefore, when the present invention is applied to driving a robot hand, it is possible to drive the robot hand more easily than before.
  • a human hand or a simulated object is used as the moving object.
  • a data glove worn on a human hand is used. This data glove has a structure in which a plurality of sensors are mounted on the glove main body at positions for detecting the movement of the motion part of the human hand corresponding to the motion part of the robot hand.
  • each feature amount of a plurality of image data is individually calculated (feature amount step).
  • a principal component analysis is performed on each feature amount of the plurality of image data, a principal component score is calculated for each of the plurality of image data, and the first principal component power is calculated based on the cumulative contribution ratio.
  • Each rearranged image data in the image data source is stored in association with the pre-collection operation command.
  • a principal component score is also obtained for the input motion image data, and a plurality of k types of image data source cards are collated based on the principal component score.
  • Select each image data Create multiple types of motion image data with different resolutions by changing the resolution of the motion image data, and obtain the principal component score from these multiple types of motion image data with different resolutions. Therefore, based on the principal component score, k kinds of image data source powers may be selected from a plurality of image data for comparison. A plurality of image data for this collation are selected by a predetermined number based on the principal component score for each principal component from each image data source.
  • the number of image data to be compared can be reduced as compared with the case where all stored image data and the operation image data are compared, and the advantage that the matching time is reduced is obtained.
  • the similarity between the motion image data and the plurality of image data for comparison may be determined based on the principal component score, and the image data corresponding to the motion image data may be specified based on the similarity.
  • the first step is an operation to be performed in advance, the first step is separated, and in the driving method used for the device for driving the robot, only the second to fifth steps are used. It is natural that the robot can be driven.
  • FIG. 1 is a plan view of a known multi-fingered robot hand 1 to be controlled in the present embodiment developed by the inventors.
  • FIG. 2 is a diagram showing an arrangement configuration of an actuator arranged inside the robot hand of FIG. 1.
  • FIG. 3 is a diagram showing a tracking performance for a sine wave input.
  • FIG. 4 is a diagram showing a tracking performance for a sine FM modulated wave input.
  • FIG. 5 is a diagram showing a schematic configuration of an example of a data glove used as a remote command device.
  • FIG. 6 is a diagram showing a schematic configuration of an example of a control device for a multi-fingered robot hand and a device for implementing the driving method of the present invention.
  • FIG. 7 is a flowchart showing an algorithm of software used when a main part of the correspondence determining means of FIG. 6 is realized using a computer.
  • FIG. 8 is a diagram showing a software anorego- rism used when the first to third steps are implemented using a computer.
  • FIG. 9 is a diagram used to explain first to third steps.
  • FIG. 10 is a diagram showing a software algorithm used when the fourth and fifth steps are implemented using a computer.
  • FIG. 11 is a diagram showing an example of a local pattern for a higher-order local autocorrelation feature.
  • FIG. 12 (A) to (C) show different elements of individual differences appearing in human hands.
  • FIG. 13 is a diagram showing a difference in image data when the curvature of the base position and the degree of overhang of the thumb base are changed by changing the parameters of the computer graphic editing software.
  • FIG. 14 is a diagram showing three types of image data with different resolutions.
  • FIG. 15 (A) and (B) are views showing a state where one screen composed of 320 ⁇ 240 pixels is divided into 4 ⁇ 4 screens and a state where it is divided into 8 ⁇ 8 screens.
  • FIG. 16 is a diagram showing an image obtained by rearranging image data.
  • FIG. 17 is a flowchart showing a procedure for creating a database of image data.
  • FIG. 18 is a flowchart showing the flow of a specific collation procedure.
  • Fig. 19 is a conceptual diagram used to explain another embodiment of the method of the present invention.
  • FIG. 20 is a flowchart showing an algorithm for creating a database.
  • FIG. 21 is a flowchart showing details of the algorithm in FIG. 20.
  • FIG. 22 is a diagram showing image data obtained by extracting a contour.
  • FIG. 23 is a diagram showing an example of a local pattern for a higher-order local autocorrelation feature used for creating a database.
  • FIG. 24 is a diagram used to explain extraction of a feature amount.
  • FIG. 25 is a flowchart showing an algorithm when selecting image data in which image data corresponding to operation image data is stored in a database.
  • FIG. 26 is a flowchart showing details of the algorithm in FIG. 25.
  • FIG. 27 is a diagram used to explain clustering.
  • Ogasawara 'Hand pose estimation using multi-viewpoint silhouette images, Proc. 2001 IEEE / RSJ Intl. Conf. On Intelligent Robots and Systems (IROS'2001), pp.1989- 1996, 2001. MH Jeong, Y. Kuno, N. Shimada and Y. Shirai: "Recognition of shape-changing hand gestures, IEICE Transactions Division D, E85—D, 10, pp.1678—1687, 2002. N. Shimada, K. Kimura , Y. Kuno and Y. Shirai: "3-D hand posture estimation by indexing monocular silhouette images, Proc. 6th Workshop on Frontier of Computer Vision, pp. 150-155, 2000).
  • upper limb control such as humanoid robots has at least poor setting problems such as trajectory selection, combination of joint angles, and combination of muscle tension
  • Y. Uno, K. Kawato and R. Suzuki entitled Formation and control of optimal trajectory in human multi-joint arm movement—minimum torque—change model ', Ayumi: Biologic Cybernetics, 61, pp. 89-101, 1989 .;
  • both the poor setting and the sexuality have been successfully solved by humans to realize complex and elaborate voluntary movements.
  • Speaking of empirical power you can also say that you have exercise experience with your own body, that is, physicality (R.
  • FIG. 1 is a plan view of a known multi-fingered robot hand 1 to be controlled in the present embodiment developed by the present inventors
  • FIG. 2 is an actuator arranged inside the robot hand of FIG.
  • FIG. 2 is a diagram showing an arrangement configuration of 2 (micro motor with built-in encoder).
  • the details of the multi-finger bot hand are disclosed in Japanese Patent Application Laid-Open No. 2003-117873.
  • the movable range of each joint of the multi-fingered robot hand 1 is such that the inside and outside rotation of the thumb is 120 ° and the inside and outside rotation is 60 °.
  • the bending and extension of each of the five fingers are performed in conjunction with the second joint, the movable range of the second joint is 112 °, the first joint is 7Z10 times the movable range of the second joint, and the third joint is Is 5Z7 times the movable range of the second joint.
  • the opening and closing of the finger is linked to the ring finger, the index finger and little finger move, and the middle finger is not powered.
  • the movable range of the ring finger is 15 °
  • the index finger is 13 °
  • the little finger is 31 °.
  • the actuator 2 of each joint uses a DC micromotor.
  • Actuator 2 is installed inside the palm for opening and closing (abduction) between the second joint of each finger, the inside and outside rotation of the thumb, the inside and outside rotation of the thumb, and the four fingers other than the thumb.
  • the control of each joint operates in response to a command from a control computer (not shown), and each actuator is controlled via a DZA converter and a drive unit 3 in which a dedicated driver (micro servo) for a small servo motor is arranged. This is done by changing the voltage applied to the motor.
  • the motor of each actuator 2 has a built-in incremental shaft encoder. The output of this encoder can be used for position control in addition to detection of shaft speed and rotation direction.
  • the angle information of each joint has a mechanism that is fed back to a control computer (not shown) via an encoder having a higher resolution through a gear.
  • the resolution of the encoder itself is 16 [PulseZRevolution].
  • a gear with a reduction ratio of 1Z400 is provided in the encoder of the finger opening / closing section, and the conversion resolution is 6400 [PulseZRevolution].
  • Other encoders have gears with a reduction ratio of 1 Z50, and the conversion resolution is 800 [PulseZRevolution].
  • FIG. 3 shows the tracking performance for sine wave input
  • Fig. 4 shows the tracking performance for sine FM modulated wave input. From these results, it can be seen that a slow operating force, a relatively fast operation, and good tracking characteristics can be obtained even for a modulated wave.
  • FIG. 5 is a diagram showing a schematic configuration of an example of the data glove 4 used as a remote command device.
  • the data glove 4 has a configuration in which position sensors are provided at approximately 16 positions around the joint of the glove-shaped main body.
  • cyberglove (trademark) manufactured by Virtual Technologies is used as a data glove.
  • the sensor 5 of this data glove has one MP (metacarpal joint) and one PIP (proximal interphalangeal joint) for each finger except the thumb, and MP, PIP, and DIP (distal internodes) for the thumb. Joints), and a sensor for measuring abduction between each finger and a sensor at the center of the palm.
  • Each of the sensors 5 installed at a total of 16 locations has a different degree of distortion (strain). It has a specification to output at 30-40Hz.
  • the sensor 5 installed at the center of the palm measures the degree of distortion of the entire palm, and the humanoid robot hand does not have such a mechanism. Is not used.
  • the finger glove movement of a person is converted into data by a data glove worn by the operator, taken into a computer, and converted into a control command value of a multi-fingered robot hand.
  • the same operation as that of the operator's hand can be realized by the robot hand.
  • one simple method is to convert data output from a cyber glove into a three-dimensional coordinate position and to obtain angle information of a part that is paired with a joint of the robot hand. There is a means to take out in series, execute it by the robot hand, and operate the robot hand.
  • the 16 values output from each sensor in the data glove are converted into the X, Y, and Z coordinates, pitch angle, single angle, and roll angle of each joint, and each unit time As many as 100 data are generated, and it is not optimal to extract and use the data of eight joints necessary for the operation of the robot node from the viewpoint of calculation efficiency and time efficiency.
  • a multiple regression analysis is performed on the output of the data groove 4 measured in this way and the time series joint angle pattern of the robot and the robot used for the measurement to derive a partial regression coefficient for each joint.
  • the following equation is a multiple regression equation used in the present embodiment.
  • the objective variable ⁇ i is a command value for each joint to be controlled by the robot hand 1
  • an explanatory variable X is an output value of the data glove 4
  • a is a partial regression coefficient
  • a is a partial regression coefficient.
  • the residual Since the value obtained by the multiple regression equation of min On is the value of the joint angle of each finger in the data glove 4, it is sufficient to control this value as the angle command value of the robot node.
  • FIG. 6 shows a schematic configuration of an example of a configuration of a control device for a multi-fingered robot hand used to obtain a pre-collection operation command and a device for driving a robot hand using the robot driving method of the present invention.
  • the control device used to collect the operation commands in advance shown in Fig. 6 has an actuator that operates according to the joint angle command value y indicating the joint angle. It is assumed that the multi-fingered robot node 1 having k joints (k is a positive integer) is controlled.
  • the data glove 4 constitutes a remote command device which is mounted on the operator's hand and outputs n (n is a positive integer) output signals xn according to the movement of the operator's hand.
  • the control device for a multi-finger bot hand includes a correspondence determining means 6 and a control signal generating means 7.
  • the correspondence determining means 6 determines in advance the correspondence between each joint angle command value y and n output signals xn for each of the k joint angle command values y for k joints. It is configured.
  • the correspondence relation determining means 6 includes a time-series joint angle pattern storage means 61, a sampling means 62, a partial regression coefficient deriving means 63, and a multiple regression equation determining means 64.
  • Sampling means 63 inputs a joint angle command value to k joints (actually, actuator 2) in accordance with the time-series joint angle pattern stored in predetermined time-series joint angle pattern storage means 61.
  • the n output signals xn are output m times (m Is a positive integer greater than n).
  • the sampling means 62 gives a command to the time-series joint angle pattern storage means 61 before starting sampling, and the time-series joint angle pattern storage means 61 outputs a predetermined joint angle command value to the driving device 3.
  • the time-series joint angle pattern is preferably configured to give an arbitrary function command that moves evenly in the N-dimensional space to the joint (actuator) of the multi-fingered robot hand.
  • the driving means 3 receives this and causes the multi-fingered robot hand 1 to operate.
  • the partial regression coefficient deriving means 63 includes a time-series joint angle pattern stored in the time-series joint angle pattern storage means 61 and n sets of m sets obtained by sampling m times output from the sampling means 62. A multiple regression analysis is performed based on the output signal xn, and one for each of the k joints! / Derive partial regression coefficients.
  • the control signal generation means 7 is obtained by the multiple regression equation determination means 64 of the correspondence relation determination means 6.
  • the k joint angle command values y are obtained based on the corresponding relationship and the n output signals xn, and a control signal (operation command) indicating the k joint angle command values y is k It is configured to output to a driving device 3 for driving the individual joints.
  • the control signal generating means 7 uses the k multiple regression equations determined by the multiple regression equation determination means 64 as a correspondence, and obtains k joint angle command values y by inputting n output signals xn. These k joint angle command values y are operation commands.
  • the operation command is output from the control command generation means 7 at a time interval corresponding to the processing speed in accordance with the movement of the data glove 4.
  • HANDi ao [n] + ⁇ ai [n] ⁇ GLOVEi [n]
  • HAND is a multi-fingered robot hand joint value
  • a is a partial regression coefficient
  • GLOVE is a multi-fingered robot hand joint value
  • [n] is the data globe output with n degrees of freedom, and i is the number of joints of the multi-fingered robot hand.
  • the row is larger than the column, and an over-determination is made. Therefore, it is preferable to find the partial regression coefficient as the optimal solution using singular value decomposition.
  • FIG. 7 is a flowchart showing an algorithm of software used when the main part of the correspondence determining means 6 of FIG. 6 is realized by using a computer.
  • step ST1 a data pair of the data globe 4 and the time-series joint angle pattern is obtained. That is, the multi-fingered robot bot 1 is driven by giving a function that evenly moves the movable range of each joint of the multi-fingered bot nose 1 and the und 1 and the operator's finger performs the same operation in accordance with the multi-fingered robot hand 1. . If the joint angle or joint angle command value ⁇ y of the multi-fingered robot hand 1 is set to y and the output of n data gloves is set to Xn, time series data up to time 11 m can be obtained as shown in the following formula.
  • n includes noise such as system noise and quantization error.
  • step ST3 estimation of the solution x— by the least squares method is started.
  • a partial regression coefficient is obtained.
  • the equation used for the least squares method is the following equation.
  • step ST7 values of c and ⁇ are determined.
  • ⁇ ⁇ ⁇ is calculated by the following matrix
  • step ST8 the process proceeds to step ST8, in which [P] t [A] [P] is calculated and set as a new value [A].
  • step ST9 the eigenvector V is obtained from the product of the matrix [P] by the following equation.
  • V [p] t ( m) [ ⁇ ] "' ⁇ ⁇ [ ⁇ ] ⁇ (2) [ ⁇ ] ⁇ )
  • [P] t is the matrix [P] used for the N-th conversion.
  • step ST10 the process proceeds to step ST10, and ends if any off-diagonal element of [A] has a convergence condition ⁇ 0.0001. Otherwise, the process returns to step ST5.
  • the diagonal elements of the matrix [B] are eigenvalues.
  • step ST12 the eigenvalues ( ⁇ , ⁇ ,%) Are changed to ( ⁇ ( ⁇ + ⁇ ), 1 / ( ⁇ + ⁇ ),
  • [A] -1 is expressed as follows.
  • step ST13 the estimation of the solution X— by the least squares method ends.
  • multiple regression analysis is performed using the least squares method and singular value decomposition to derive the partial regression coefficient.
  • the above steps ST4 to ST10 are the steps in which the singular value decomposition is performed.
  • the pre-collection operation command storage device 8 stores a plurality of data gloves 4 when the hand (moving object) fitted with the data gloves 4 performs a predetermined operation.
  • the operation command generated by the operation command generator (6, 7) based on the output of the sensor 5 is stored as a pre-collection operation command.
  • Figure 8 shows the software algorithm used to implement this storage operation using a computer.
  • the same operation as when the data glove 4 is attached to the hand by the powerful camera 9 such as a monocular camera or a binocular camera to acquire a pre-collection operation command ( (Predetermined operation) is performed by human hand H.
  • the image data of the hand (moving object) H at this time is acquired in time series.
  • the acquisition of the image data may be performed simultaneously with the acquisition of the pre-collection operation command, or may be performed later.
  • image data a state in which a hand “H” has been formed with a hand H is taken, and based on this image data, image data PD1 of a simulated hand is created by computer graphic technology.
  • image data in a state of forming a “par” with the hand H is taken, and based on the image data, image data PDn of a simulated hand is created by computer graphic technology. Until it changes from “goo” to “par”
  • the image of the process during the process may be actually taken, but the image during the process may be created by combigraphic technology as shown in FIG.
  • the image data created in this way is stored in the image data storage device 10.
  • each image data included in the plurality of image data obtained in the second step is associated with the pre-collection operation command stored in the It is stored in the corresponding operation command storage means 11.
  • the image-related operation command storage means 11 stores the uncreated image data between the previous image data PD1 and the subsequent image data PDn acquired in a time series that includes only the actually photographed image.
  • the pre-collection operation command corresponding to the created image data is estimated based on the pre-collection operation command corresponding to the previous image data PD1 and the pre-collection operation command corresponding to the subsequent image data PDn.
  • it can be created and stored in association with uncreated image data. In this way, more image data and corresponding data of the pre-collection operation command can be obtained with less image data, and the basic data (data in which the image data is associated with the pre-collection operation command) can be obtained. Collecting becomes much easier.
  • the first to third steps are performed as a preliminary operation for driving the robot node. If we try to realize joint angle control with a precision of 5 degrees for each degree of freedom by driving the robot hand, the force that requires about 100 million (20 7) images is required.
  • the use of computer graphics technology simplifies the collection of basic data.
  • "Poser 5 (Curious Labs Incorporated)" can be used as the CG editing software that can be used in this case. If this software is used, it is possible to interpolate and generate an ideal finger CG image similar to a captured two-dimensional finger image from the joint data obtained from the data globe output.
  • the pre-collection operation command corresponding to the interpolated image data can be generated by linear interpolation of the joint angle.
  • the file size of finger CG per image is about 5kB.
  • the fourth step and the fifth step are steps when actually driving the robot hand.
  • a desired operation is performed by hand to operate the robot node.
  • the image data of the hand at that time is acquired as time-series robot operation image data using the camera 12.
  • This robot operation image data (motion image data Are stored in the image data storage device 13 for robot operation.
  • image data corresponding to the motion image data included in the robot motion image data is stored in the image-corresponding motion command storage means 11 and specified by a plurality of image data power time series. This specifying operation is performed by the image data specifying and operation command generator 14.
  • the correspondence between the motion image data included in the robot motion image data and the plurality of image data stored in the image-corresponding motion command storage means is determined based on the similarity between the two.
  • the method of obtaining the similarity is arbitrary.
  • a pre-collection operation command corresponding to the specified image data is given to the driving device 3 as an operation command, and the output of the driving device 3 drives the multi-fingered robot hand.
  • the algorithm of the software when the main parts of the fourth and fifth steps are implemented using a computer is as shown in FIG.
  • a feature extraction technique using a higher-order local autocorrelation function is used for IJ. it can.
  • the higher-order local autocorrelation function is described in detail in a paper entitled “Study on the Application of Statistical Methods for Flexible Information Processing” on pages 126 to 140 of the Research Institute of Electro-Informatics, published in 1993, j957. .
  • the higher-order local autocorrelation function was used for feature extraction of the two-dimensional finger image. If the target image in the screen is f (r), the Nth autocorrelation function is defined as follows with respect to the displacement direction (al, a2, —an).
  • the order N of the higher-order autocorrelation coefficient was set to 2, and the displacement direction was limited to a local 3 ⁇ 3 pixel area around the reference point r.
  • the number of features M is 25 as shown in Fig.11.
  • the black square in FIG. 11 corresponds to the position of the corresponding pixel in the local pattern.
  • the calculation of each feature is obtained by adding the product of the values of the corresponding pixels of the local pattern to all the pixels.
  • Figures 12 (A) to 12 (C) show the different elements of individual differences that appear in human hands.
  • Figure 12 (A) shows a state in which the hands are held in a goo shape
  • FIG. 12 (B) shows the situation when the hand is shaped like a tyre.
  • Figure 12 (C) shows the hand opened in the shape of a par with the difference in the reference angle of the fingers, and in this state, the degree of opening between the thumb and index finger and the curvature of the thumb.
  • Figure 13 shows the difference in image data when the curvature of the base position and the degree of overhang of the thumb base are changed by changing the parameters of the computer graphic editing software. By simply changing these two different elements, it is possible to obtain image data with very different individual differences.
  • a pre-collection operation command corresponding to the uncreated image data to be created is presumed based on the pre-collection operation command corresponding to the previous image data and the pre-collection operation command corresponding to the subsequent image data, and this is prepared.
  • the image data can be stored in association with the uncreated image data.
  • the plurality of image data created in the second step may include a plurality of resolution-changed image data created by changing the resolution of the plurality of image data.
  • the resolution of image data can be easily changed if there is basic image data.
  • Fig. 14 shows three types of image data with different resolutions. The image on the left is the original image, the image at the center is the image with 2 pixels vertically and 2 pixels horizontally and 1 pixel reduced in resolution, and the image on the right is 4 pixels vertically and 4 pixels horizontally. This is an image whose resolution is further reduced as one pixel. For example, if there are 15,000 original images, 45,000 types of image data can be obtained by changing the resolution in two steps.
  • the use of a feature extraction technique using a higher-order local autocorrelation function to specify image data was described.
  • the feature amount is extracted for the entire image.
  • the center of gravity of the hand in the image data is first estimated.
  • computer graphic image data is converted into a black and white image. Then, the center of each of the black-and-white images in the X-axis direction and the Y-axis direction is obtained using the following equation.
  • xg and yg are the X and Y coordinates of the center of gravity
  • xi and yi are the X and Y coordinates of the white pixel
  • k is the number of white pixels.
  • FIGS. 15 (A) and (B) show a state where one screen composed of 320 ⁇ 240 pixels is divided into 4 ⁇ 4 screens and a state where it is divided into 8 ⁇ 8 screens. If the number of pixels is the above, it is also possible to divide the screen into 16 ⁇ 16 screens.
  • the feature amount is calculated for each of the divided images thus divided. That is, a higher-order local autocorrelation pattern is calculated for each screen division.
  • the higher-order local autocorrelation pattern for each screen division may be calculated according to the method of obtaining the higher-order local autocorrelation pattern described above.
  • the following equation is an equation used for calculating a higher-order local autocorrelation pattern.
  • N is 2.
  • (Al, a2, -'an) is the displacement direction of the Nth order autocorrelation function
  • f (r) is the luminance value of the pixel position r of the target image in the screen. If the local pattern shown in FIG. 12 is used, 25 patterns can be used.
  • the following equation is an equation for calculating the principal component score used in the principal component analysis.
  • Zkp is the principal component score of data p in the k-th principal component
  • X is the n-th feature of the m-th screen at the first resolution of data p (1 is the lowercase letter of the alphabet L) pimn
  • a is the factor load of the n-th feature of the m-th screen with the first resolution of the k-th principal component, and klmn
  • div is the number of resolutions (for example, 3), and pnum is the number of screen divisions (for example, 8 x 8).
  • the principal component score of P can be obtained. Note that the factor loading a
  • the klmn calculation method includes a principal factor method, a least squares method, and a maximum likelihood method. To find the factor loading by the main factor method, do the following.
  • the contribution ratio of each principal component is obtained to reduce the feature amount.
  • the contribution ratio is a coefficient representing the power of how much each principal component explains the original information, and can be expressed as follows. [Number 13]
  • C is the contribution ratio of the k-th principal component
  • b is the correlation coefficient between the principal component score Zkp and x, defined as follows:
  • A is a factor load of the n-th feature amount of the m-th screen of the first resolution of the k-th principal component
  • is the k-th largest eigenvalue of the correlation matrix.
  • the contribution ratio C is
  • the component is a coefficient representing the power that explains how much of the original information, and the following relational expression holds.
  • the number of principal components used in feature reduction is determined by the following equation with a cumulative contribution ratio of about 95%.
  • the data to be searched are the data with the principal component score Zkp that is the same as or the closest to the unknown image in each main component, and the number of before and after data according to the contribution ratio of each main component.
  • the number of candidates for each principal component is as follows.
  • Cc is the total sum of the number of estimated candidates, which is preliminarily determined.
  • fractional expression including ⁇ ⁇ is the contribution ratio of the ⁇ component in the tenth principal component.
  • the above equation determines that the number of preceding and succeeding data corresponding to the contribution ratio of each principal component is to be searched. For example, referring to FIG. 16, assuming that the principal component score Zkp of the first principal component of the motion image data to be collated is 13 points, sorting is performed in the order of the principal component score of the first principal component.
  • the image data of the above-mentioned estimated number of candidates is extracted as the image data for comparison, mainly including the image data whose principal component score is close to 13 points among the base image data.
  • FIG. 17 shows a procedure for creating a database of image data including the above-described improvements (corresponding to the first to third steps of the embodiment).
  • FIG. 18 shows a specific flow of the collation procedure.
  • a processing speed higher than the video rate can be achieved, and thus a high-speed camera can be used for imaging.
  • the imaging power also removes the background to remove unnecessary information. For this purpose, a process of subtracting (background image) from imaging of (hand image + background image) is performed.
  • the feature amount of the captured image (moving image data) is calculated.
  • the feature amount may be calculated as it is when the image was captured, but in the example of FIG. 18, three (multiple) types of motion image data having different resolutions are obtained by changing the resolution of the captured motion image data. In other words, simply create three times as much data as the same motion image data.
  • the center of gravity of the hand image is estimated and the screen is divided in the same manner as when the database was created. Also in this case, the screen is divided into 16, 64 or 246.
  • the number of divisions is arbitrary. However, it has been confirmed that increasing the number of divisions does not increase the accuracy, so a division number of about 16 divisions or 64 divisions is preferred.
  • a higher-order local autocorrelation pattern is calculated for each screen division.
  • the calculation of the higher-order local autocorrelation pattern at this time is the same as the calculation method of the higher-order local autocorrelation pattern used when creating the above-mentioned database.
  • a principal component score is calculated by principal component analysis based on the calculated higher-order local autocorrelation pattern.
  • the calculation of the principal component score also employs the same calculation method as the calculation method of the principal component score when the database is created.
  • a plurality of collation image data which are candidates for collation are selected based on the principal component scores obtained by calculation.
  • the number of candidates for each principal component force is determined in advance by the above equation [Equation 17]. Therefore, the image data having the closest principal component score Zkp in each principal component and the image data before and after this image data are selected for the predetermined number of candidates according to the contribution ratio of each principal component, and are selected for comparison.
  • Image data. 10 sorts based on the 10 principal components stored in the database
  • fi (x) is the principal component score of the ith principal component for which the feature power has also been calculated
  • X is a feature value of the candidate r based on a higher-order local autocorrelation function
  • X is a feature quantity by a higher-order local autocorrelation function at time t
  • the data p that minimizes Er is the search image, and the joint angle data of the data p is the estimated angle.
  • the search at time t ends. If a significantly different joint angle is selected from time t1, the next candidate with the next smallest Euclidean distance Er is selected, and whether or not it is within the allowable range is calculated by the following equation.
  • ang is the i-th joint angle data at time t.
  • the image data is specified as corresponding to the operation image data.
  • FIG. 19 is a flowchart showing a procedure for creating a database in advance
  • FIG. 21 is a flowchart showing details of the flowchart of FIG.
  • the video camera 109 captures an image of a hand wearing gloves.
  • a database is constructed using hand image data captured by the high-speed video camera 109 and angle data obtained from the data glove force.
  • image data and angle data are acquired as a set.
  • a monochrome high-speed camera ME310, manufactured by MEGAPLUS, ES310ZT
  • the resolution is 320 * 240 pixels
  • the finger is sufficiently large on the screen.
  • a data glove called "CyberGlo Ve " (trademark) manufactured by Virtual Technologies was used.
  • the gloves were all white and plain.
  • the gloves are fitted over the data gloves to prevent data glove-specific image features (sensor shape and glove shape) from appearing.
  • the color is different from that of a human hand, and the image is also different.
  • the image data can be handled as a general hand image by the feature amount as described later.
  • a primary database is created by combining the finger angle data acquired with the data glove force together with a plurality of continuous image data. To obtain the necessary and sufficient information, move the hand continuously to acquire and save the required image data and angle data at the same time.
  • image processing for converting the image data of the primary database into a feature amount necessary for estimating the actually shot hand image is performed. For this image processing, Then, change the resolution, extract edges, and extract contours (feature extraction).
  • the resolution of the image from which the background has been removed is changed.
  • the image acquired this time is an image with a pixel value of 320 X 240. It takes a lot of time to perform estimation processing by applying various image processing using this as it is. Further, when a human estimates, it is possible to estimate even if the size of the image is smaller than that used in the present embodiment. Therefore, in the present embodiment, the resolution is changed from a pixel value of 320 ⁇ 240 to a size of 64 ⁇ 64.
  • the pixel value after changing the resolution is obtained by the following equation.
  • gr (i, j) is the pixel value of the i-th row and the j-th column after the resolution is changed.
  • go (i, j) is the pixel value at the i-th row and the j-th column before the resolution is changed.
  • the vertical is also calculated at 320. This is because the pixel value after the change is 64 X 64, so that the aspect ratio is adjusted.
  • the calculation is performed up to (i + 1) ⁇ 320Z64 ⁇ 1, where r is the number of k X I.
  • Edge extraction is performed using the resolution-changed image obtained by the above operation. In this work, features necessary for estimation are extracted. Specifically, the resolution-changed image is filtered by a Sobel filter. Thereafter, edges are extracted by binarizing only the outermost periphery of this image.
  • fr (i, j) can be represented by the following equation.
  • fi (i, j) represents the i-th horizontal and half-th pixel before processing.
  • f s is the final value after processing.
  • the binarization of the outermost periphery of the image here means that the image is binarized at a relatively low threshold so that the outline is not interrupted by the outline extraction.
  • contour extraction is performed by scanning the binary image obtained by edge extraction.
  • the reason why the image obtained by the edge extraction in the previous stage is not used as a contour is that the change in ambient light can be increased. There are differences in the ambient light, human skin color, etc. between the actual estimation and the database creation. Furthermore, since white gloves are used when creating the database, even if edge extraction is performed, the edge value and width will differ from the actual image edges.
  • FIG. 22 shows an image after resolution change obtained by performing edge extraction after edge extraction.
  • the image was scanned from above and the first 127 points were set as the starting points.
  • the starting point also searches for neighboring pixels counterclockwise. If there is a point of 127, move to that point and rewrite the value to 255. After moving, the search is continued by dividing the search start point into eight patterns with reference to the previous position. When it returns to the starting point again, it is determined that the contour has been extracted, and the search is terminated. Finally, since the remaining points are not contours, all 127 points are set to 0.
  • the local autocorrelation feature is a feature that is effective for image recognition and measurement, and is obtained by calculating a reference point and its vicinity with respect to a higher-order correlation function defined by the following equation. .
  • the image screen is divided into eight vertically and eight horizontally.
  • the dimension was reduced to 25 feature amounts by a higher-order local autocorrelation function using all the pixels as reference points. That is, considering the whole image, the feature amount of the whole image can be converted into the feature amount of the 25 X screen division number.
  • the feature data which is a combination of the image data obtained by performing the feature amount of one image data and the angle data (corresponding to the pre-collection operation command) from the data glove, is stored in the image corresponding operation command storage means (database ).
  • the image corresponding operation command storage means database .
  • an image actually shot is specified by using this database.
  • FIG. 25 is an algorithm showing a procedure at the time of estimation
  • FIG. 26 is an algorithm in more detail.
  • an image (moving image data) of a hand moving with a high-speed camera is acquired as in the case of creating a database.
  • the obtained motion image data is subjected to the same image processing as that at the time of database creation to extract a feature amount.
  • the feature amount of the motion image data and the feature amounts of a plurality of image data stored in the database are compared by a process described later, and the angle data that is paired with the image data closest to the motion image data is calculated.
  • Output as an operation command corresponding to the image data.
  • X is a feature amount i of the candidate r based on the higher-order local autocorrelation function
  • X is a feature amount i based on the higher-order local autocorrelation function at the time t nti.
  • the angle of the data r that minimizes Er was set as the estimated angle of the motion image data.
  • the angle is limited by comparing it with the previous estimated angle (time t1). Specifically, when the evaluation function Ap shown by the following equation exceeds a specified value for a short distance, the estimation candidate is excluded. If the evaluation function Ap is within the specified value, the estimated angle is adopted.
  • ang is the i-th angle data at time t. Also, i (t) obtained from the data glove
  • the angle information is 24.
  • the current estimated angle is obtained by the above operation.
  • FIG. 27 is a conceptual diagram for explaining clustering.
  • one row indicates one set composed of a plurality of pieces of image data.
  • the darkly colored rows are the data to be searched first, and the lightly colored rows are the data to be searched in detail. If the data included in the database is created using the algorithm for creating the database described above, hand-shaped data will come together in the image data sequence. By utilizing this, the target image data for distance calculation is reduced. Specifically, a plurality of image data is considered as one set. Then, one image data to be used at the time of the first distance calculation is selected from each of a plurality of sets, and the distance calculation is performed with the selected image data.
  • the calculation cost of the distance calculation is reduced by 1 for each set, and the cost is greatly reduced for all the sets.
  • the accuracy is lower than when the estimation result is compared with all the image data in the original database. Therefore, in the distance calculation in the first step, for those having a short distance, the distance between all the image data in the set including each image data and the motion image data is calculated. In this way, since data near angles are gathered near each data, a more accurate estimation result can be obtained.
  • ten image data were considered as one set, and the first-stage distance calculation was performed for one motion image data with one image data in multiple sets.
  • the same operation as that of the moving object or the simulated object without using the sensor is performed by the defect setting only by obtaining an image of the moving object or the simulated object corresponding to the robot. It is possible to make the robot imitate the motion by eliminating the nature. Therefore, according to the present invention, it is possible to easily drive a robot using image data as input data.

Description

明 細 書
ロボットの駆動方法
技術分野
[0001] 本発明は、ロボットの駆動方法に関するものであり、特にロボットを動作させるため にそのロボットに対応する動作物またはその擬似物に所望の動作を行わせ、その動 作物または疑似物の画像データと同じ動作をロボットに行わせるのに適したロボット の駆動方法に関するものである。
背景技術
[0002] 例えば、人の動作を見まねで再現できるロボットに関する技術としては、操作者が センサを付けて歩行したときや、操作者が複数のセンサを備えたデータグローブを手 に嵌めて手を動力したときに、それらのセンサから出力される情報に基いてロボットを 駆動している。非特許文献 1及び非特許文献 2には、この種の技術が開示されている 非特許文献 1 :Y. Kuniyoshi著の A robotic approach to the foundation of communication and symbols と題する餘文: Proc. of 12th World C ongress of Applied Linguistics (AILA' 99) , 94頁, 1999年発行
非特許文献 2 : T. Inamura, Y. Nakamura, H. Ezaki及び I. Toshima著の" Imit ation and primitive symbol acquisition of humanoids by the integr ated mimesis loop,,と題する論文: Pro c. of Intl. Conf. on Robotics an d Automation (ICRA 2001) , 4208頁— 4213頁, 2001年発行
発明の開示
発明が解決しょうとする課題
[0003] し力しながら、上記従来の技術では、多くの場合、不良設定性 (センサの出力また は認識によって正確に判別できない動き)がほとんど存在せず、解が一意に決まり、 比較的容易にロボットを駆動することができる。一方,不良設定性が存在するような問 題に対しては、常にロボットに対応する動作物またはその擬似物にセンサを装着して おく必要があり、汎用性に欠ける問題がある。 [0004] 本発明の目的は、実際にロボットを駆動する際に、ロボットに対応する動作物または その擬似物にセンサを装着しておく必要のないロボットの駆動方法を提供することに める。
[0005] 本発明の他の目的は、動作画像データを入力データとしてロボットを駆動すること を可能にするロボットの駆動方法を提供することにある。
[0006] 本発明の他の目的は、動作物またはその模擬物の形状が複雑であったり、画像上 の自己遮蔽が頻繁に起こる場合でも、安定して高速にロボットを駆動することを可能 にするロボットの駆動方法を提供することにある。
[0007] 本発明の更に他の目的は、コンピュータグラフィック画像データを利用してロボット を駆動することが可能なロボットの駆動方法を提供することにある。
[0008] 本発明の別の目的は、入力される動作画像データの特定精度を高めることができ るロボットの駆動方法を提供することにある。
[0009] 本発明の他の目的は、入力された動作画像データと事前に記憶した多数の画像デ ータとの照合を迅速に行うことができるロボットの駆動方法を提供することにある。
[0010] 本発明の更に他の目的は、見まね学習により不良設定性を解消してロボットを駆動 する方法を提供することにある。
課題を解決するための手段
[0011] 本発明のロボットの駆動方法は、次のステップ従って、動作指令によりロボットを駆 動する。まずロボットに対応する動作物またはその擬似物に所定の動作と同じ動作を させたときの動作物またはその擬似物の複数の画像データと、これら複数の画像デ ータに対応した動作指令を得るために事前に収集された事前収集動作指令とを対 応付けて画像対応動作指令記憶手段に記憶する。事前収集動作指令を事前に収 集するための方法は任意である。次に、ロボットを動作させるために、動作物または その擬似物に所望の動作を行わせ、その際に動作物またはその擬似物の動作画像 データを時系列でロボット動作用画像データとして取得する。そしてロボット動作用画 像データに含まれる動作画像データに対応する画像データを、画像対応動作指令 記憶手段に記憶して!/、る複数の画像データから時系列で特定し、特定した画像デー タに対応する事前収集動作指令を動作指令としてロボットに与える。なお画像対応 動作指令記憶手段に記憶する画像データは、撮影した画像に基づ 、て処理を行つ て得たその画像に関する特徴を示す特徴量のデータを伴うものまたは特徴量のデー タそのものであってもよいのは勿論である。そしてロボット動作用画像データに含まれ る動作画像データに対応する画像データの特定方法は、任意である。画像データが 特徴量のデータであれば、特徴量の類似度によって、動作画像データに対応する画 像データの特定を行うことができる。
[0012] 本発明の方法により実際にロボットを動かすと、ロボットに対応する動作物またはそ の擬似物の画像を得るだけで、センサを使用することなぐその動作物または擬似物 と同じ動作を、ロボットに行わせることができる。したがって本発明によれば、画像デ ータを入力データとしてロボットを簡単に駆動することが可能になる。
[0013] なおロボット動作用画像データに含まれる画像データと画像対応動作指令記憶手 段に記憶されている複数の画像データとの対応を、両者の類似度に基づいて判断 することができる。その場合には、画像対応動作指令記憶手段に記憶している複数 の画像データから動作画像データに対応する画像データを特定する際に、動作画 像データの特徴量を基準にして照合用の複数の画像データを選択し、照合用の複 数の画像データと動作画像データとの類似度に基づいて動作画像データに対応す る画像を特定することが好まし 、。
[0014] 本発明のより具体的な方法では、以下の第 1乃至第 5のステップを実行することによ りロボットを駆動する。第 1のステップでは、ロボットに対応する動作物と、この動作物 に設けられて動作物の動きを検出する複数のセンサと、これら複数のセンサの出力 に基づいて動作指令を発生する動作指令発生装置とを用いる。そして動作物に所 定の動作を行わせたときの複数のセンサの出力に基づいて動作指令発生装置が発 生する動作指令を事前収集動作指令として記憶する。ここで動作物とは、典型的に は人間全体または人間の手や足等の動作する部位等であるが、動作物は人間以外 の動物等でもよい。
[0015] 第 2のステップでは、動作物に第 1のステップにおける所定の動作を行わせたときの 動作物の複数の画像データを取得するか、または動作物またはその擬似物に前記 所定の動作と同じ動作をさせたときの動作物またはその擬似物の複数の画像データ を時系列で取得する。ここで「動作物またはその擬似物」における「動作物」とは第 1 のステップの動作物と同じものでもよいが、同様の形状及び構造を有し (言換えると、 同じ場所に同じ関節があり)且つ同じ動作を行い得るものであれば別の動作物であ つてもよい。また「動作物またはその擬似物」における「その擬似物」とは、その動作物 をコンピュータグラフィック技術等の擬似物生成技術を用いて作成したものや、その 動作物の人形等である。この場合に得る画像データは、疑似画像データである。特 にコンピュータグラフィック技術を用いる場合の疑似物の画像データは、コンピュータ グラフィック画像データである。複数の画像データを時系列で取得する方法または手 法は、任意であり、単眼カメラ、両眼カメラ、あるいはマルチカメラのいずれにより撮影 したものであってもよい。
[0016] 動作物が人間の手である場合、第 2のステップで、複数の画像データに、人間の手 に現れる個人差を考慮した画像データを含めておくと、後述する第 5のステップにお ける画像データの特定精度を高めることができる。ここで個人差が生じる相違要素に は、拇指以外の 4指の基節位置の曲率、拇指基節の張り出し具合、隣り合う二本の 指の開き具合、開いた二本の指の基準角度の違い、拇指の反り具合等がある。この ような個人差は、コンピュータグラフィック技術等の擬似物生成技術を用いて画像デ ータ (疑似画像データ)を作成する場合には、前述の相違要素をパラメータとして既 に作成した基本となる画像データを変更することにより(骨の長さや関節の可動角度 t 、つたような、前述の相違要素を生み出して 、るパラメータを変更することにより)簡 単に得ることができる。したがって個人差を考慮した画像データの作成は、難しいも のではなぐ簡単である。
[0017] また第 2のステップで作成する複数の画像データには、複数の画像データの解像 度を変えて作成した複数の解像度変更画像データを含めてもょ ヽ。これは画像デー タの解像度を変えたほうが、画像の特徴が現れやすくなるものもあるからである。画像 データの解像度は、基本となる画像データがあれば、簡単に変更することは可能で める。
[0018] なお第 2のステップでは、複数のセンサを備えた動作物の表面を、複数のセンサを 含めて被覆物によって覆い、第 1のステップと同時に動作物の複数の画像データを 取得するようにしてもよい。被覆物によって動作物を覆うと、動作物の表面の不要な 情報を物理的に取り去ることができる。したがって被覆物は、不要な情報をできるだ け排除できる構成を有して 、るのが好ま 、。そのためできるだけ無地(一色で無模 様:不要な凹凸がな 、もの)であることが好ま U、。このような被覆物で覆った動作物 の画像データからは、その画像データに含まれる特徴 (特に輪郭についての特徴)を 短い時間で、し力も高精度に取得することができる。
[0019] 第 3のステップでは、第 2のステップで得た複数の画像データに含まれる各画像デ ータと事前収集動作指令とを対応付けて第 2のステップで得た複数の画像データと 事前収集動作指令とを画像対応動作指令記憶手段に記憶する。なお第 3のステップ では、実際に撮影した画像だけでなぐ第 2のステップで取得した前の画像データと 後の画像データとの間の未作成 (未撮影)の画像データをコンピュータグラフィック技 術により作成したものも記憶の対象とすることができる。この場合には、未作成の画像 データに対応する事前収集動作指令を、前の画像データに対応する事前収集動作 指令と後の画像データに対応する事前収集動作指令とに基づいて推定により作成し 、これを未作成の画像データと対応付けて記憶することができる。このようにすれば、 少ない実際の画像データを用いて、より多くの画像データと事前収集動作指令との 対応データを得ることができ、基礎データ (画像データと事前収集動作指令とを対応 付けたデータ)の収集が大幅に簡単になる。
[0020] 第 4のステップでは、ロボットを動作させるために、動作物またはその擬似物に所望 の動作を行わせ、その際に動作物またはその擬似物の動作画像データを時系列で ロボット動作用画像データとして取得する。この場合に、動作物にセンサを装着する 必要はない。そして第 5のステップでは、ロボット動作用画像データに含まれる動作 画像データに対応する画像データを画像対応動作指令記憶手段に記憶している複 数の画像データ (基礎データ)から時系列で特定する。なおロボット動作用画像デー タに含まれる動作画像データと画像対応動作指令記憶手段に記憶されている複数 の画像データとの対応は、両者の類似度に基づいて判断することが好ましい。類似 度の求め方は任意であり、特定の方法に限定されるものではない。そして第 5のステ ップでは、特定した画像データに対応する事前収集動作指令を動作指令としてロボ ットに与える。
[0021] なお人間型ロボットにおいて不良設定性が多いのは、手である。したがってロボット ハンドの駆動に本発明を適用すると、従来よりも簡単にロボットハンドを駆動すること ができる。なおこの場合、動作物としては人間の手またはその擬似物が用いられるこ とになる。そして第 1のステップでは、人間の手に装着するデータグローブを用いる。 このデータグローブは、グローブ本体にロボットの手の動作部に対応した人間の手の 動作部の動きを検出する位置に複数のセンサが装着された構造を有している。
[0022] 基礎データとなる画像データが多くなるほど(画像データベースのデータ量が多く なるほど)、基礎データとなる画像データの中から、入力である動作画像データに対 応した画像データを特定するには時間が力かるようになる。そこでこのような問題を解 消するためには、第 3のステップで、画像データと事前収集動作指令とを対応付けて 画像対応動作指令記憶手段に記憶する際に、次のようにすることができる。まず複数 の画像データのそれぞれの特徴量を個々に演算する(特徴量ステップ)。次に複数 の画像データのそれぞれの特徴量を主成分分析して、複数の画像データのそれぞ れについて主成分ごとの主成分得点を演算し、且つ累積寄与率に基づいて第 1主 成分力ゝら第 k主成分までの主成分の数を決定する(主成分決定ステップ)。そして第 1 主成分から第 k主成分までの各主成分ごとに、複数の画像データを主成分得点の大 きさを基準にして並べ替えて得た k種類の画像データソース [画像情報の表 (テープ ル) ]を作成して記憶する(記憶ステップ)。すなわち例えば、 15, 000枚分の画像デ ータがあるとした場合に、 10種類の主成分を決定したとすると、 15, 000枚分の画像 データを 10種類の主成分ごとに、その主成分得点の大きさを基準にして並べ替えた 10種類の画像データソース(15, 000 X 10= 150, 000枚分画像データに相当)と して記憶する。画像データソース内の並べ変えた各画像データは、それぞれ事前収 集動作指令と対応付けられて記憶されている。このようにした場合には、第 5ステップ で、入力された動作画像データについても主成分得点を求め、この主成分得点を基 準にして k種類の画像データソースカゝら照合用の複数の画像データをそれぞれ選出 する。動作画像データの解像度を変えた複数種類の解像度の異なる動作画像デー タを作り、この複数種類の解像度の異なる動作画像データにっ ヽて主成分得点を求 め、この主成分得点を基準にして k種類の画像データソース力も照合用の複数の画 像データをそれぞれ選出するようにしてもよい。この照合用の複数の画像データは、 各画像データソース力ゝら各主成分ごとの主成分得点を基準にして所定枚数分ずつ 選出される。このようにすると記憶されているすべての画像データと動作画像データと を照合する場合と比べて、照合対象となる画像データの数を少なくすることができる ので、照合時間が短くてすむ利点が得られる。そして主成分得点を基準にして動作 画像データと照合用の複数の画像データの類似度を判定し、前記類似度に基づい て動作画像データに対応する画像データを特定するようにしてもよい。このように解 像度の異なる動作画像データを作成してそれらの因子負荷量も利用して類似度の 判定を行うと、画像の特定精度を上げることができる。
[0023] なお第 1のステップは事前に行う作業であるため、第 1のステップを切り離して、ロボ ットを駆動する装置に用いられる駆動方法においては、第 2乃至第 5のステップだけ を用いてロボットを駆動することができるのは当然である。
図面の簡単な説明
[0024] [図 1]発明者等が開発した本実施の形態で制御の対象とする公知の多指ロボットハン ド 1の平面図である。
[図 2]図 1のロボットハンドの内部に配置されたァクチユエータの配置構成を示す図で める。
[図 3]サイン波入力に対する追従性能を示す図である。
[図 4]サイン FM変調波入力に対する追従性能を示す図である。
[図 5]遠隔指令装置として使用するデータグローブの一例の概略構成を示す図であ る。
[図 6]多指ロボットハンドの制御装置及び本発明の駆動方法を実施する装置の一例 の概略構成を示す図である。
[図 7]図 6の対応関係決定手段の主要部をコンピュータを用いて実現する場合に用 いるソフトウェアのアルゴリズムを示すフローチャートである。
[図 8]第 1乃至第 3のステップをコンピュータを用いて実現する場合に用いるソフトゥェ ァのァノレゴリズムを示す図である。 圆 9]第 1乃至第 3のステップを説明するたに用いる図である。
[図 10]第 4及び第 5のステップをコンピュータを用いて実現する場合に用いるソフトゥ エアのアルゴリズムを示す図である。
[図 11]高次局所自己相関特徴のための局所パターンの例を示す図である。
[図 12] (A)乃至 (C)は、人の手に現れる個人差の相違要素を示している。
[図 13]コンピュータグラフィック編集ソフトのパラメータを変えて、基節位置の曲率と拇 指基節の張り出し具合を変えた場合の画像データの相違を示す図である。
[図 14]解像度を変えた 3種類の画像データを示す図である。
[図 15] (A)及び(B)は、 320 X 240画素から構成された 1画面を 4 X 4画面に分割し た状態と、 8 X 8画面に分割した状態を示す図である。
[図 16]画像データを並べ替えたイメージを示す図である。
[図 17]画像データのデータベース作成の手順を示すフローチャートである。
[図 18]具体的な照合手順の流れを示すフローチャートである。
圆 19]本発明の方法の別の実施の形態を説明するために用いる概念図である。
[図 20]データベースを作成するためのアルゴリズムを示すフローチャートである。
[図 21]図 20のアルゴリズムの詳細を示すフローチャートである。
圆 22]輪郭抽出した画像データを示す図である。
[図 23]データベース作成に使用する高次局所自己相関特徴のための局所パターン の例を示す図である。
[図 24]特徴量の抽出を説明するために用いる図である。
[図 25]動作画像データに対応する画像データをデータベースに記憶した画像データ 力 選ぶ際のアルゴリズムを示すフローチャートである。
[図 26]図 25のアルゴリズムの詳細を示すフローチャートである。
[図 27]クラスタリングを説明するために用いる図である。
発明を実施するための最良の形態
[0025] 以下図面を参照して本発明の方法の実施の形態について説明する。
[0026] なお実施の形態について説明する前に、本実施の形態で用いる技術の基礎につ いて説明する。なお実施の形態について説明する前に、本実施の形態で用いる技 術の基礎について説明する。両眼あるいは単眼カメラによるヒト手指の 3次元形状を 推定する場合には、手指の形状が複雑で、しかも自己遮蔽も多ぐ形状の認識にお ける不良設定性が存在する。そのため、赤外線レンジセンサや複数台のコンピュータ を用いた並列計算装置といった周辺機器類を使用しない限り、高速で且つ高精度に 推定することはできない(参考文献: E. Ueda, Y. Matsumoto, M. Imai and T.
Ogasawara: 'Hand pose estimation using multi-viewpoint silhouette images, Proc. 2001 IEEE/RSJ Intl. Conf. on Intelligent Robots and Systems (IROS'2001), pp.1989- 1996, 2001。 M. H. Jeong, Y. Kuno, N. Shimada and Y. Shirai: "Recognition of shape-changing hand gestures, IEICE Transactions Division D, E85— D, 10, pp.1678— 1687, 2002。 N. Shimada, K. Kimura, Y. Kuno and Y. Shirai: "3-D hand posture estimation by indexing monocular silhouette images, Proc. 6th Workshop on Frontier of Computer Vision, pp.150- 155, 2000)。一方、ヒト型のロボット等の上 肢制御には、少なくとも軌道選択、関節角度の組み合わせ、筋張力の組み合わせな どの不良設定問題があることが知られている(Y. Uno, K. Kawato及び R. Suzuki 著の Formation and control of optimal trajectory in human multijoi nt arm movement— minimum torque— change model',と題する餘文: Biolo gical Cybernetics, 61, pp. 89—101, 1989.;)。ところ力 両方の不良設定'性を 、人は巧く解決して、複雑精緻な随意運動を実現している。経験則力も言えば、自分 自身の身体での運動経験、すなわち身体性 (R. Pfeifer, "Dynamics, morpholog y, and materials in the emergence of cognition, in Advances m A rtificial Intelligence, ed. W. Burgard, A. B. Cremers, and T. Christalle r, Proc. KI— 99, 23th Annual German Conference on Artificial Intelli gence, 1999. )の存在力 認識における不良設定問題の重要な解決になっている と言うことちでさる。
そこで、発明者らは、認識と制御の両方における不良設定問題を同時に解決でき る非常に有効な、場合によっては唯一の方法が、見まね学習であると考えて、人と同 じょうな精度と処理速度で手指動作の再現が可能なロボットノヽンド 'システムの開発を 行った。 [0028] 以下、このシステムに基づいて本発明のロボットの駆動方法の実施の形態の幾つ 力の例を説明する。
[0029] まず本実施の形態で用いる多指ロボットハンド(ロボット)の機構につ!、て説明する。
図 1は、発明者等が開発した本実施の形態で制御の対象とする公知の多指ロボット ハンド 1の平面図であり、図 2は図 1のロボットハンドの内部に配置されたァクチユエ一 タ 2 (エンコーダ内蔵型超小形モータ)の配置構成を示す図である。なおこの多指口 ボットハンドの詳細は、特開 2003— 117873号公報に示されている。この多指ロボッ トハンド 1の各関節の可動範囲は、親指の内外旋が 120° であり、内外転が 60° で ある。そして各 5本指の屈曲、伸展は第 2関節に連動して行われ、第 2関節の可動範 囲は 112° であり、第 1関節は第 2関節の可動範囲の 7Z10倍、第 3関節は第 2関節 の可動範囲の 5Z7倍となっている。指の開閉は薬指に連動して、人指し指、小指が 動き、中指は動力ない。また薬指の開閉可動範囲は 15° であり、人指し指は 13° で あり、小指は 31° である。これらの構成によって、拇指と小指の接触が可能になり人 の手指の可動域を十分に実現できて 、る。
[0030] 各関節のァクチユエータ 2には、 DCマイクロモータを使用している。各指の第 2関 節、拇指の内外旋、内外転部位と拇指以外の 4指間の開閉(アブダクシヨン)用に掌 の内部にそれぞれァクチユエータ 2が設置されている。各関節の制御は、図示しない 制御用計算機からの指令を受けて動作し、内部に DZAコンバータや、小型サーボ モータ専用ドライバー(マイクロサーボ)が配置された駆動装置 3を介して、各ァクチュ エータ 2のモータにかける電圧を変化させることで行う。各ァクチユエータ 2のモータ には、インクリメンタルシャフトエンコーダが内蔵されている。このエンコーダの出力は 、軸速度、回転方向の検出の他に、位置制御に使用できる。各関節の角度情報は、 ギヤを介して分解能を挙げたエンコーダを介して図示しない制御用計算機にフィード バックされる機構を持って 、る。エンコーダ自体の分解能は 16 [PulseZRevolution ]である。指の開閉部のエンコーダには減速比 1Z400のギアが設けられており、換 算分解能は 6400 [PulseZRevolution]となる。その他のエンコーダには減速比 1 Z50のギアを設けており、換算分解能は 800 [PulseZRevolution]となる。
[0031] PID制御等を用いて、サイン波、 FM変調波の時系列角度変化指令を入力したとき の追従結果を図 3及び図 4に示す。図 3はサイン波入力に対する追従性能を示し、図 4はサイン FM変調波入力に対する追従性能を示す。これらの結果から、ゆっくりとし た動作力 比較的早い動作、変調波に対しても良好な追従特性が得られることが分 かる。
[0032] 図 5は、遠隔指令装置として使用するデータグローブ 4の一例の概略構成を示す図 である。このデータグローブ 4には、手袋形の本体の関節部分を中心にして約 16箇 所の位置に分散して位置センサが備えられた構成を有している。具体的には、 Virtu al technologies社製の cyberglove (商標)をデータグローブとして用いて 、る。こ のデータグローブのセンサ 5は、拇指を除く各指の MP (中手指節関節), PIP (近位 指節間関節)に一つずつ、拇指には MP、 PIP, DIP (遠位節間関節)についており、 また各指の間にあるアブダクシヨンを計測するセンサと掌の中央のセンサとで計 16ケ 所に設置されている各センサ 5はそれぞれ歪曲(ひずみ)度を数値ィ匕して 30— 40Hz で出力する仕様を有して 、る。掌の中央に設置されて 、るセンサ 5は掌全体の歪曲 度を計測するものであり、対する人型ロボットハンドにはその機構は備わっていない ため、この実施の形態では、この中央のセンサ 5は使用しない。
[0033] 人の手指動作を操作者が手に装着したデータグローブによりデータ化し、これを計 算機に取り込んで多指型ロボットハンドの制御指令値に変換すれば、データグロ一 ブを装着した操作者の手の動作と同様の動作をロボットハンドで実現させることがで きる。
[0034] データグローブによるロボットハンドの制御法において、一つの簡単な方法としては 、サイバーグローブから出力されるデータを 3次元座標位置に変換しロボットハンドの 関節と対になる部分の角度情報を時系列で取り出し、それをロボットハンドに実行さ せて、ロボットハンドを動作させるという手段がある。しかし、この方法を用いるとデー タグローブの各センサから出力される 16個の値がそれぞれ各関節の X座標、 Y座標 、 Z座標、ピッチ角、ョ一角、ロール角に変換され、一単位時刻あたり 100ものデータ が生成されることとなり、これからロボットノヽンドの動作に必要な 8関節分のデータを抽 出して使用することは計算効率や時間効率を考える面からも最適ではない。
[0035] 人の手指は拇指を除く四指に至って、他の四指の影響を少な力もず受ける。その 特徴を定量的に表すこともこの制御方法及び装置において重要であると考える。そこ でデータグローブで得られるデータ力 ロボットハンド制御用の指令値への変換式に 本発明の実施の形態では、重回帰式を用いる。
[0036] ロボットハンドの各関節に対し重回帰式、すなわちすべてのデータグローブからの 出力の重み付き線形和によりそれぞれのロボットノヽンドの関節を記述するためには、 まず重回帰分析を行い偏回帰係数を求める必要がある。そこで重回帰分析用のデ ータを取得するためにデータグローブ装着者は予め定めた時系列関節角度パター ンに従って関節角度指令値を駆動装置 3に入力して、ロボットハンドを動作させる。な お駆動装置 3に指令を与える制御装置は、ロボットハンド 1にあら力じめ重回帰分析 に有効な動作を行わせる予め定めた時系列関節角度パターンの関節角度指令値を 記憶している。そしてこのロボットハンドの動作に従い即ち倣って、データグローブを 装着した操作者には、データグローブを装着した手において、指の屈伸、アブダクシ ヨン等の動作を事前に行ってもらう。本発明では、このようにして計測したデータグロ ーブ 4の出力と計測に用いたロボットノ、ンドの時系列関節角度パターンとを重回帰分 析にかけ、各関節ごとの偏回帰係数を導き出す。下記の式は本実施の形態で用いる 重回帰式である。
[数 1]
Figure imgf000014_0001
[0037] ここで、目的変数 Θ iはロボットハンド 1での制御対象となる関節各度の指令値、説 明変数 X はデータグローブ 4力ゝらの出力値、 a は偏回帰係数、 a は残差である。こ m in On の重回帰式で出される値はデータグローブ 4での各指の関節角度の値であるので、 この値をロボットノヽンドの角度指令値として制御を行えばよいことになる。
[0038] 図 6には、事前収集動作指令を得る際に用いる多指ロボットハンドの制御装置と本 発明のロボットの駆動方法を用いてロボットハンドを駆動する装置の構成の一例の概 略構成を示してある。図 6に示した動作指令を事前に収集する際に用いる制御装置 では、関節角度を指示する関節角度指令値 yに応じて動作するァクチユエ一タを備 えた k個(kは正の整数)の関節を有する多指ロボットノ、ンド 1を制御するものとする。 そしてデータグローブ 4は、操作者の手に装着されて操作者の手の動きに応じて n個 (nは正の整数)の出力信号 xnを出力する遠隔指令装置を構成している。この多指口 ボットハンドの制御装置は、対応関係決定手段 6と制御信号発生手段 7とを備えて 、 る。対応関係決定手段 6は、 k個の関節のための k個の関節角度指令値 yそれぞれに ついて、各関節角度指令値 yと n個の出力信号 xnとの間の対応関係を予め定めるよ うに構成されている。具体的には、対応関係決定手段 6は、時系列関節角度パター ン記憶手段 61と、サンプリング手段 62と、偏回帰係数導出手段 63と、重回帰式決定 手段 64とを備えている。
[0039] サンプリング手段 63は、 k個の関節(実際にはァクチユエータ 2)にそれぞれ予め定 めた時系列関節角度パターン記憶手段 61に記憶した時系列関節角度パターンに従 つて関節角度指令値を入力して多指ロボットハンド 1を動作させた状態において、多 指ロボットハンド 1の動きに倣うように操作者がデータグローブ 4を操作したときに n個 の出力信号 xnを時系列で m回(mは nより大きい正の整数)サンプリングする。サンプ リング手段 62はサンプリングを開始する前に時系列関節角度パターン記憶手段 61 に指令を与え、時系列関節角度パターン記憶手段 61は駆動装置 3に予め定めた関 節角度指令値を出力する。なお時系列関節角度パターンは、 N次元空間をまんべん なく動くような任意の関数指令を多指ロボットハンドの関節(ァクチユエータ)に与える ように構成するのが好ましい。駆動手段 3は、これを受けて多指ロボットハンド 1を動 作させる。
[0040] 偏回帰係数導出手段 63は、時系列関節角度パターン記憶手段 61に記憶した時 系列関節角度パターンと、サンプリング手段 62から出力される m回のサンプリングに より求めた m組の n個の出力信号 xnとに基づいて重回帰分析を行い、 k個の関節の それぞれにつ!/ヽて偏回帰係数を導出する。
[0041] 重回帰式決定手段 64、偏回帰係数導出手段 63が定めた k個の関節毎の偏回帰 係数を用いて、 k個の関節毎の関節角度指令値 yと n個の出力信号 xnとの間の対応 関係を定める k個の重回帰式を決定する。
[0042] そして制御信号発生手段 7は、対応関係決定手段 6の重回帰式決定手段 64が求 めた対応関係と n個の出力信号 xnとに基づいて、 k個の関節角度指令値 yを求め、 k 個の関節角度指令値 yを示す制御信号 (動作指令)を多指ロボットハンドの k個の関 節を駆動するための駆動装置 3に出力するように構成されている。この制御信号発生 手段 7は、重回帰式決定手段 64が求めた k個の重回帰式を対応関係として用い、 n 個の出力信号 xnを入力として k個の関節角度指令値 yを求める。これら k個の関節角 度指令値 yが動作指令となる。なおデータグローブ 4の動きに応じて制御指令発生手 段 7からは処理速度に応じた時間間隔で動作指令が出力される。なお図 6の例にお いては、対応関係決定手段 6及び制御信号発生手段 7により動作物 (操作者の手) に所定の動作を行わせたときの複数のセンサの出力に基づ 、て動作指令を発生す る動作指令発生装置が構成されて!ヽる。
[0043] 重回帰式決定手段 64で決定するデータグローブ 4の出力と多指ロボットハンド 1の 関節角度との対応を示す重回帰式は以下のようの形で記述することもできる。
[数 2]
HANDi = ao[n] + ∑ ai [n] · GLOVEi [n]
[0044] 上記式において HANDは、多指ロボットハンド関節値, aは偏回帰係数, GLOVE
[n]は n自由度のデータグローブ出力、 iは多指ロボットハンドの関節数である。なお 上記式を用いる場合には、行が列より大きくなり優決定となる。そのため特異値分解 を用いて最適解としての偏回帰係数を求めることが好まし 、。
[0045] 図 7は、図 6の対応関係決定手段 6の主要部をコンピュータを用いて実現する場合 に用いるソフトウェアのアルゴリズムを示すフローチャートである。まずステップ ST1で は、データグローブ 4と時系列関節角度パターンのデータ対を獲得する。即ち多指口 ボットノ、ンド 1の各関節可動域をまんべんなく動かすような関数を多指ロボットノ、ンド 1 に与えて駆動し、多指ロボットハンド 1に合わせて操作者の手指も同じ動作を行う。多 指ロボットハンド 1のある関節角度または関節角度指令値^ yとし、 n個のデータグロ ーブ出力を Xnとすると,次式のように時刻 1一 mまでの時系列データが得られる。
[数 3] y! = xjan + 2aj2 + · · · + xnaln
y2二 Xia2l + 2¾22 + · · · + Xn¾2n
ym = Xiami + X2¾m2 + mn
[0046] ただし上記式において、 m>nである。また前提として、 xにはシステム雑音,量子化 誤差などの雑音が含まれるものとする。
[0047] 次にステップ ST2進んで、データ対をベクトルと行列の形式で表現すると、 y= [H]
Xのように表現することができる。ただしこの式における y、 X及び [H]は下記の通りで める。
[数 4]
Figure imgf000017_0002
Figure imgf000017_0001
[0048] 次にステップ ST3で、最小二乗法による解 x—の推定を開始する。この推定の過程 において、偏回帰係数が求められる。最小二乗法に用いる式は以下の式である。
[数 5]
[0049] 次にステップ ST4から、ヤコビ法による([H] t[H])の計算を開始する。すなわち直 交行列 Pを使って([ΗΓ[Η]) (= [A])を簡単な形の類似行列 [B]に変換する。言い 換えれば、すなわち, [ΡΓ ^A] [P] = [B]を計算する。
[0050] 次にステップ ST5で、行列 [A]の非対角要素のうちの絶対値最大のもの a ( = a )
kl lk を選ぶ。そして次にステップ ST6において、 a =a =cos θ , a = -sin Θ、 a = sin
kk U kl lk
Θとする単位行列 [P]を作る。
[0051] 次にステップ ST7へと進んで cと Θの値を決定する。 Θは、下記の行列により求める
[数 6]
Θ 二
Figure imgf000018_0001
[0052] ただし、上記式において k<lである。
[0053] 次にステップ ST8へと進んで、 [P]t[A] [P]を計算して新 ヽ [A]とする。次にステ ップ ST9で、行列 [P]の積から固有ベクトル Vを下記の式で求める。
[数 7]
V = [p]t(m) [ρ] " ' · · [Ρ]ι(2) [Ρ] ο)
[0054] ただし、上記式において [P]t は N回目の変換に用いた行列 [P]である。
(N)
[0055] 次にステップ ST10へと進み、 [A]のどの非対角要素も収束条件 <0. 0001なら終 了し、そうでなければステップ ST5へと戻る。ここで行列 [B]の対角要素が固有値と なる。
[0056] 次にステップ ST11へと進んで解に含まれる雑音を抑制する。ステップ ST12では、 固有値(λ , λ ,…え )を(ΐΖ(λ + ν), 1/(λ + ν),
1 2 η +υ))と置き
1 2 η
換えて逆行列( [Η] 1 [Η] ) 1を求める。ただし( [H] 1 [Η] )— 1 = [U] [A]— 1 [U] 1である。 またベクトル uは [Η [Η]の固有ベクトルである。また [U] = [u , u , ---u ]である。
i 1 2 N
更に [A]—1は下記のように表される。
[数 8]
Figure imgf000019_0001
[0057] ただし υ = σ である。ここで、雑音成分 η— ¾y= [H]xの右辺に加え、 n—
=y-[H]x と変形することで σ 2 を計算することができる。また σ 2 は yから直接、 計算が可能である。そしてステップ ST13で最小二乗法による解 X—の推定を終了する
[0058] 上記フローチャートのアルゴリズムに従えば、偏回帰係数を導出するために最小二 乗法と特異値分解とを用いて重回帰分析を行うことになる。なお上記ステップ ST4— ST10までが特異値分解を実施しているステップである。
[0059] 図 6と図 8乃至図 10を用いて、本発明の方法によりロボットハンドを駆動する実施の 形態の一例の説明をする。本発明の実施の形態の第 1のステップでは、事前収集動 作指令記憶装置 8が、データグローブ 4を嵌めた手 (動作物)に所定の動作を行わせ たときのデータグローブ 4の複数のセンサ 5の出力に基づ 、て動作指令発生装置(6 , 7)が発生する動作指令を事前収集動作指令として記憶する。この記憶動作をコン ピュータを用いて実現する場合に用いるソフトウェアのアルゴリズムを図 8に示す。
[0060] 第 2のステップでは、図 9に示すように、単眼カメラまたは両眼カメラ等力 なるカメラ 9によりデータグローブ 4を手に装着して事前収集動作指令を取得するときと同じ動 作 (所定の動作)を人の手 Hで行う。そしてこのときの手 (動作物) Hの画像データを 時系列で取得する。なおこの画像データの取得は、事前収集動作指令を取得する のと同時に行ってもよいが、後力 行ってもよい。図 9の例では、手 Hで「グー」の形を 作った状態の画像データをとり、この画像データに基づ 、てコンピュータグラフィック 技術で手の擬似物の画像データ PD1を作成する。そして手 Hで「パー」の形を作つ た状態の画像データをとり、この画像データに基づ 、てコンピュータグラフィック技術 で手の擬似物の画像データ PDnを作成する。「グー」から「パー」まで変化するまでの 間の過程の画像を実際に撮影してもよいが、図 9のようにその間の画像をコンビユー タグラフィック技術で作成してもよい。このようにして作成した画像データは、画像デ ータ記憶装置 10に記憶される。
[0061] 第 3のステップでは、第 2のステップで得た複数の画像データに含まれる各画像デ ータと事前収集動作指令記憶装置 8に記憶された事前収集動作指令とを対応付け て画像対応動作指令記憶手段 11に記憶する。なお本例では、画像対応動作指令 記憶手段 11は、実際に撮影した画像だけでなぐ時系列で取得した前の画像データ PD1と後の画像データ PDnとの間の未作成の画像データをコンピュータグラフィック 技術により作成する場合には、作成した画像データに対応する事前収集動作指令を 前の画像データ PD1に対応する事前収集動作指令と後の画像データ PDnに対応 する事前収集動作指令とに基づいて推定により作成して未作成の画像データと対応 付けて記憶することができる。このようにすれば、少ない画像データによりより多くの画 像データと事前収集動作指令との対応データを得ることができ、基礎データ (画像デ ータと事前収集動作指令とを対応付けたデータ)の収集が大幅に簡単になる。
[0062] 第 1から第 3までのステップは、ロボットノヽンドを駆動するための事前作業として実施 される。なお自由度ごとに 5度刻みの精度の関節角度制御をロボットハンドの駆動に おいて実現しょうとすると、 1億個(20の 7乗)程度の数の画像が必要となる力 上述 のようにコンピュータグラフィック技術を用いれば、基礎データの収集は簡単になる。 この場合に用いることができる CG編集ソフトウェアとしては「Poser 5 (Curious Labs Incorporated製)」を使用することができる。このソフトウェアを用いれば、データグロ一 ブ出力から得られた関節データから、撮像した手指 2次元画像と類似した理想的な 手指 CG画像を補間生成することができる。そして補間生成した画像データに対応す る事前収集動作指令は、関節角度の線形補間により生成することができる。なお、画 像 1枚あたりの手指 CGのファイルサイズは 5kB程度である。
[0063] 第 4のステップ及び第 5のステップは、実際にロボットハンドを駆動する際のステップ である。第 4のステップでは、ロボットノヽンドを動作させるために、手で所望の動作を 行い。図 6に示すように、その際の手の画像データをカメラ 12を用いて時系列でロボ ット動作用画像データとして取得する。このロボット動作用画像データ (動作画像デ ータ)は、ロボット動作用画像データ記憶装置 13に記憶される。そして第 5のステップ では、ロボット動作用画像データに含まれる動作画像データに対応する画像データ を画像対応動作指令記憶手段 11に記憶して 、る複数の画像データ力 時系列で特 定する。この特定作業は、画像データ特定及び動作指令発生装置 14で行う。この例 では、ロボット動作用画像データに含まれる動作画像データと画像対応動作指令記 憶手段に記憶されている複数の画像データとの対応は、両者の類似度に基づいて 判断する。類似度の求め方は任意である。そして第 5のステップでは、特定した画像 データに対応する事前収集動作指令を動作指令として駆動装置 3に与え、駆動装置 3の出力で多指ロボットハンドを駆動する。第 4及び第 5のステップの主要部をコンビ ユータ用いて実現する場合のソフトウェアのアルゴリズムは図 10に示す通りである。
[0064] 画像データ特定及び動作指令発生装置 14で行う画像データの特定の際に特徴量 を抽出する技術として、例えば、高次局所自己相関関数を用いる特徴量抽出技術を 禾 IJ用することができる。高次局所自己相関関数については、 1993年発行の電総研 研究報告, j957の 126頁乃至 140に「柔らかな情報処理のための統計的手法の応 用に関する研究」と題する論文に詳しく説明されている。手指 2次元画像の特徴抽出 には,高次局所自己相関関数を用いた。画面内の対象画像を f (r)とすると、 N次自 己相関関数は変位方向(al, a2, —an)に対して次式のように定義される。
[数 9] xN aい α2 , · ' αΝ ) =
Figure imgf000021_0001
[0065] 実証試験では、高次自己相関係数の次数 Nを 2とし、また変位方向を参照点 rの周 りの局所的な 3 X 3画素の領域に限定した。これより、平行移動による等価な特徴を 除くと特徴 Mの数は図 11に示す 25個になる。図 11中の黒の四角は、局所パターン の対応する画素の位置に対応する。各特徴の計算は、局所パターンの対応する画 素の値の積を全画素に対して足し合わせることで得られる。
[0066] 上記の方法によれば、実際にロボットノ、ンド 1を動かすために、ロボットノ、ンド 1に対 応する手の画像を得るだけで、センサを使用することなぐ手の動きと同じ動作を、見 まねにより不良設定性を解消してロボットノヽンドに動作させることができる。
[0067] 上記実施の形態では、第 3のステップで実際に人の手の画像を撮影して 、るが、す ベてコンピュータグラフィック技術により手の画像データ(手の擬似物の画像データ) を作成してもよ!/、のは勿論である。
[0068] 次に上記実施の形態を改善または改良する手法について詳しく説明する。
[0069] [個人差の考慮]
まず前述の第 2のステップにおいて、複数の画像データ(コンピュータグラフィックの 画像データに、人間の手に現れる個人差を考慮した画像データを含めておくと、第 5 のステップにおける画像データの特定精度を高めることができる。図 12 (A)乃至 (C) は、人の手に現れる個人差の相違要素を示している。図 12 (A)は手をグーの形に握 つた状態を示している。拇指以外の 4指の基節位置の曲率に個人差が現れる。すな わち 4指の基節位置が直線的になる手もあれば、湾曲した形状になる手もある。また 拇指基節の張り出し具合にも顕著な個人差が現れる。これらの個人差は、 2つの関 節間の長さの相違によって生じる。また図 12 (B)は手をチヨキの形にした場合の状態 を示している。この状態においては、二本の指の開き具合と開いた二本の指の基準 角度の違いに個人差が現れる。更に図 12 (C)は手をパーの形に開いた状態を示し ている。この状態では、拇指と人差し指との間の開き具合と拇指の反り具合に個人差 が大きく現れる。このような個人差は、コンピュータグラフィック技術を用いて手の形の 画像データ (疑似画像データ)を作成する場合に、相違要素をパラメータとして既に 作成した基本となる画像データを変更することにより簡単に得ることができる。図 13は 、コンピュータグラフィック編集ソフトのパラメータを変えて、基節位置の曲率と拇指基 節の張り出し具合を変えた場合の画像データの相違を示す図である。この 2つの相 違要素を変更するだけでも、かなり異なった個人差の画像データを得ることができる 。なおこれらの画像データを作成する際に、新たに作成する未作成の画像データに 対応する事前収集動作指令を、前の画像データに対応する事前収集動作指令と後 の画像データに対応する事前収集動作指令とに基づいて推定により作成し、これを 未作成の画像データと対応付けて記憶することができるのは勿論である。 [0070] [解像度の変更]
次に第 2のステップで作成する複数の画像データには、複数の画像データの解像 度を変えて作成した複数の解像度変更画像データを含めてもょ ヽ。これは画像デー タの解像度を変えたほうが、画像の特徴が現れやすくなるものもあるからである。画像 データの解像度は、基本となる画像データがあれば、簡単に変更することは可能で ある。図 14は解像度を変えた 3種類の画像データを示している。左端の画像は、原 画像であり、中央の画像は、縦 2画素 X横 2画素を 1画素にして解像度を下げた状態 の画像であり、右端の画像は、縦 4画素 X横 4画素を 1画素として更に解像度を下げ た画像である。例えば、原画像が 15, 000枚あるとすると、解像度を 2段階変更する ことにより、 45, 000種類の画像データが得られることになる。手をグーの形に握って いる状態では、指が重なり合うため、解像度が高いほうが特徴量を正確に把握するこ とができる。しかし手をチヨキの形にしている状態では、立っている二本の指の部分か ら得られる画像の特徴量が重要である力 その他の部分の特徴量はかえつて誤った 判断をする原因となる。そこで解像度の異なる画像データを予め基礎データとして用 意しておけば、照合の精度は高くなる。
[0071] [各画像データにおける特徴量の計算]
先に、画像データの特定のために、高次局所自己相関関数を用いる特徴量抽出 技術を用いる点について説明した。従来の技術では、画像全体について特徴量を抽 出しているが、精度を高めるために画像をいくつかの分割画像に分けて分割画像単 位で特徴量を抽出することが好ましい。これを実現するためには、まず画像データに おける手の重心を推定する。そのためには、コンピュータグラフィックの画像データを ニ値ィ匕して、白黒画像とする。そしてこの白黒画像について、下記式を用いて X軸方 向、 Y軸方向のそれぞれで中心を求める。
[数 10]
Figure imgf000024_0001
y ,
κ ί二 I
[0072] 上記式においては、 xg、 ygは重心の X、 Y座標であり、 xi, yiは白画素の X、 Y座標 であり、 kは白画素の数である。
[0073] このようにして画像の中心を求めた後は、この重心をもとに各画像を画面分割する 。図 15 (A)及び(B)は、 320 X 240画素から構成された 1画面を 4 X 4画面に分割し た状態と、 8 X 8画面に分割した状態を示している。なお上記画素数であれば、 16 X 16画面に分割することも可能である。
[0074] このようにして分割した各分割画像について、特徴量の計算を行う。即ち画面分割 ごとの高次局所自己相関パターンを算出する。先に説明した高次局所自己相関バタ ーンの求め方に従って画面分割ごとの高次局所自己相関パターンを算出すればよ い。下記の式は高次局所自己相関パターンの算出に用いる式である。
[数 11]
Figure imgf000024_0002
[0075] 上記式において、 χ ¾Ν次元の参照点 rの周りの局所的な相関関数である。したが つて Nは 2である。(al, a2, - 'an)は、 N次自己相関関数の変位方向であり、 f (r)は 画面内の対象画像の画素位置 rの輝度値である。図 12に示した局所パターンを用 Vヽ れば 25パターンとなる力 重複を認めれば 35パターンを使用してもよい。
[0076] [特徴量低減]
上記のように特徴量を計算した場合、画像データが多くなると処理すべき特徴量が 多く
なりすぎる。例えば、図 14に示したように 3つの解像度の画像データを利用する場合 の特徴量は、特徴量 =解像度 3 X画面分割 64 X高次局所自己相関パターン 25 =4 800 (次元)となる。そこで公知の主成分分析技術を利用して特徴量を低減すること が好ましい。まず主成分分析による各主成分ごとの因子負荷量を算出する必要があ る。下記の式は、主成分分析で用いる主成分得点の演算式である。
[数 12] div pnum 25
kp — , / ^ , a kl誦 X phnn
Figure imgf000025_0001
[0077] 上記式において、
Zkpは第 k主成分におけるデータ pの主成分得点であり、
X はデータ pの第 1解像度 (1はアルファベットの Lの小文字)の第 m画面の第 n特徴 pimn
量であり、
a は第 k主成分の第 1解像度の第 m画面の第 n特徴量の因子負荷量であり、 klmn
divは解像度の数 (たとえば 3)で有り、 pnumは画面分割数 (たとえば 8 X 8)である。
[0078] ここで因子負荷量 a を算出して上記式に代入すれば、第 k主成分におけるデー
klmn
タ Pの主成分得点を求めることができる。なお因子負荷量 a の
klmn 求め方には、主因子 法、最小 2乗法、最尤法などがある。主因子法で因子負荷量を求める場合には、次 のようににする。
[0079] (1)各変量の分散を 1に標準化して,標本相関行列 C = (r )を求める。
jk
[0080] (2) xと残りの変量との相関係数のなかの最大値 r し j! =k)を、 Cの対
j max 0) (ただ
角要素に代入して C*を作る。
[0081] (3) C*の固有値問題を解き、固有値 λ , λ , · · · , λ と、それに対応する固有べ
1 2 ρ
クトル C, C, · · ·, C を求める。この固有ベクトルが因子負荷量に相当する。
1 2 ρ
[0082] 次に特徴量低減のために、各主成分の寄与率を求める。ここで寄与率とは、各主 成分が元の情報をどれだけ説明している力を表す係数であり、下記のように表すこと ができる。 [数 13]
Figure imgf000026_0001
[0083] ここで, Cは第 k主成分の寄与率であり、
k
b は主成分得点 Zkpと x の相関係数で,次式のように定義される.
kimn plmn
[数 14]
[0084] a は第 k主成分の第 1解像度の第 m画面の第 n特徴量の因子負荷量であり、
Jdmn
λ は k番目に大き 、相関行列の固有値である。
k
[0085] 次に累積寄与率に基づいた主成分の数の決定を行う。前述の寄与率 Cは、各主
k
成分が元の情報をどれだけ説明している力を表す係数であり、以下の関係式が成り 立つ。
[数 15] = (-^2 = ^3 ― ■■■ — —^k+I ― " " =し div*pnum *25
[0086] そこで,累積寄与率 95%程度を目処に,特徴量低減で使用する主成分の数を下記 の式で決定する。
[数 16]
∑ Q ≥ 0.95
k =l
[0087] 本実施の形態では、累積寄与率が約 97%となる第 10主成分までを用いることにす る。
[0088] 次に主成分得点に応じたデータの並び替えを行う。第 1から第 10主成分までの各 主成分ごとに,主成分得点の大きさに応じて全データを並べ替え (ソート)する。この 並べ替えによって 10種類の画像データソースが作成されることになる。図 16は、並 ベ替えのイメージを示している。このような並べ替えによって、オリジナルの画像数が 15, 000枚とすれば、、 15, 000 X 10= 150, 000枚の画像データ力 ^記'隐されること になる。
[0089] なお未知のヒト手指画像が入力された場合に、効率よく類似画像を検索するため、 範囲を限定した検索対象数をあら力じめ決めておくのが好ましい。具体的には,各主 成分において未知画像と同じか,最も近い主成分得点 Zkpを持つデータと、各主成 分の寄与率に応じた数の前後データを検索対象とする。各主成分の候補数は,以下 の通りである.
[数 17]
Figure imgf000027_0001
[0090] ここで, dc は第 p主成分 (p=l, 2, · · · · 10)の推定候補数である。
P
[0091] Ccは推定候補数の総和で,あら力じめ決めておくものである。
[0092] そして λ ρを含む分数式は、第 10主成分中の ρ成分の寄与率である。
[0093] 上記の式によって各主成分の寄与率に応じた数の前後データが検索対象となるこ とが決まる。例えば、図 16を参照して説明すると、照合対象となる動作画像データの 第 1主成分の主成分得点 Zkpが 13点であるとすると、第 1主成分の主成分得点の得 点順に並べ替えた基礎となる画像データのうち主成分得点が 13点に近い画像デー タを中心に含んで、前述の推定候補数の画像データが照合用画像データとして抽出 される。
[0094] 上記の改良点を含めた画像データのデータベース作成の手順 (実施の形態の第 1 のステップから第 3のステップに相当)を図 17に示す。
[0095] 次に上記のようにして作成したデータベースを利用して、本発明の第 4及び第 5の ステップ (照合処理)を主成分分析技術を用いて処理する処理手順につ!ヽて説明す る。図 18は、具体的な照合手順の流れを示している。まず手の実画像の撮像を得る 。前述の特徴量の低減技術を用いると、ビデオレート以上の速さの処理速度が出せ るので、撮像には高速度カメラを使用することができる。不必要な情報を除去するた めに、撮像力もは背景を除去する。そのためには(手映像 +背景映像)の撮像から( 背景映像)を差し引く処理を行う。
[0096] 次に撮影した画像 (動作画像データ)の特徴量を計算する。撮影したときの解像度 そのままで特徴量を計算してもよいが、図 18の例では、撮像した動作画像データの 解像度を変えて 3種類 (複数種類)の解像度の異なる動作画像データを得る。すなわ ち単純に見ると同じ動作画像データにつ 、て 3倍のデータを作成する。そしてこれら 解像度を変えた 3種類の動作画像データ(手画像のデータ)について、前述のデータ ベースの作成時と同様に、手の画像の重心推定を行い、画面を分割する。この場合 も、画面を 16分割、 64分割または 246分割する。分割数は任意である。しかにあまり 分割数を多くしても精度が上がらないことが確認されているので、 16分割または 64 分割程度の分割数が好ま U、。
[0097] 次に各画面分割ごとの高次局所自己相関パターンを算出する。このときの高次局 所自己相関パターンの算出も前述のデータベースを作成する際に用いた高次局所 自己相関パターンの算出手法と同じである。
[0098] 次に算出した高次局所自己相関パターンに基づいて主成分分析により主成分得 点の計算を行う。この主成分得点の計算も前述のデータベース作成の際の主成分得 点の計算方法と同じ計算方法を採用する。
[0099] 次にデータベースに記憶されている基礎となる複数の画像データとの照合を行う。
照合の候補となる照合用の複数の画像データを、計算により求めた主成分得点を基 準にしてデータベース力 選出する。なお各主成分力 の候補数は、前述の [数 17] の式により、あらかじめ決められている。そこでそれぞれの主成分において最も近い 主成分得点 Zkpを持つ画像データと、この画像データの前後の画像データを各主成 分の寄与率に応じて予め定めた候補数の数分選出して照合用の画像データとする。 データベースに記憶されている 10種類の主成分を基準にして並べ替えられた 10種 類の画像データソースから、それぞれ予め定められた候補数の画像データが選出さ れる。仮に各主成分について予め候補数が 20と定められているものとすると、 20 X 1 0 = 200枚の画像データがデータベース力 選出されることになる。これらの画像デ ータ中には重複して 、るものがあるのは勿論である。
[0100] 次に類似度の計算を行う。具体的には、入力画像 (動作画像データ)と候補となつ た複数枚の照合用の画像データ (候補 CGハンド画像)との間で、次式により、ユーク リツド距離 Erの計算を行う。
[数 18]
Figure imgf000029_0001
[0101] ここで、 fi(x)は特徴量力も算出した第 i主成分の主成分得点であり、
Xは候補 rの高次局所自己相関関数による特徴量であり、
Xは時刻 tにおける高次局所自己相関関数による特徴量であり、
Erを最小にするデータ pを検索画像とし,データ pが持つ関節角度データを推定角 度とする。
[0102] 時刻 tと時刻 t 1の検索結果が許容される関節角度の範囲であれば、時刻 tでの探 索を終了する。そして時刻 t 1から大幅に異なる関節角度が選ばれている場合は、 ユークリッド距離 Erが次に小さい次候補を選び,許容範囲かどうかを下記の式で計 算する。
[数 19]
Figure imgf000029_0002
i=\
[0103] :で, Apは許容値であり、 iはデータグローブの関節番号である(本例では i= 24)
[0104] また ang は時刻 tにおける i番目の関節角度データである。
i(t) [0105] 許容値が許容は範囲内であれば、その画像データが動作画像データに対応するも のと特定される。
[0106] 次に、本発明の方法の別の実施の形態について説明する。この実施の形態では、 前述の実施の形態とは異なって、図 19に示すように、データグローブを嵌めた手の 上にさらに無地 (無模様:一色)の手袋 (被覆物)を嵌めて、前述の第 1のステップと第 2のステップとを同時に実施する。図 19において、下側の図がデータグローブを嵌め た手であり、上側の図がデータグローブを嵌めた手の上に手袋を嵌めた図である。図 20は、事前にデータベースを作成する際の手順を示すフローチャートであり、図 21 は図 20のフローチャートの詳細を示すフローチャートである。
[0107] まずビデオカメラ 109で、手袋を嵌めた状態の手を撮影する。本実施の形態では、 高速ビデオカメラ 109で撮影した手画像データおよびデータグローブ力も得た角度 データを用いてデータベースを構築する。そのために画像データと角度データとを組 にして取得する。本実施の形態では、モノクロ高速度カメラ(MEGAPLUS社製、 ES 310ZT)を使い、解像度を 320* 240画素として、手指が画面内に十分な大きさで 映っている状態を想定する。また角度データの測定には、 Virtual Technologies 社製の「CyberGloVe」(商標)と呼ばれるデータグローブを用いた。そして手袋は、 白一色で無模様のものを用いた。手袋をデータグローブの上に嵌めることにより、デ 一タグローブ固有の画像特徴 (センサの形状やグローブの形状)が出るのを防止して いる。前の実施の形態と異なって、白手袋を撮影すると、ヒトの手とは色が違い、画像 としても違うものとなる。しカゝしながら、手袋を嵌めた手の画像データであっても、後に 説明するように、特徴量ィ匕により一般の手画像として扱うことができる。なおデータべ ース作成に際しては、背景画像が影響を及ぼさないようにするために、背面に無模 様一色のスクリーンを用いて撮影を行う。そして連続する複数の画像データと一緒に 、データグローブ力 取得した手指角度データを組にして 1次データベースを作成す る。必要十分な情報を得るために、手を連続的に動かして必要な画像データと角度 データを同時に取得して、保存する。
[0108] 本実施の形態では、 1次データベースの画像データを、実際に撮影した手画像の 推定に必要な特徴量へと変換する画像処理を行なう。この画像処理のために背景除 去、解像度変更、エッジ抽出、輪郭抽出 (特徴量抽出)を行なう。
[0109] まず画像情報力も背景除去を行う。あらかじめ取得しておいた背景画像を用いて対 象画像との差分を取る。その差分が閾値以上の場合は対象画像の画素を使い、以 下ならば 0とする。
[0110] 次に背景を除去した画像の解像度を変更する。今回取得した画像は 320 X 240の 画素値を持つ画像である。し力しこれをそのまま用いて各種画像処理を施して推定 処理をするには、計算に時間がかかる。また人間が推定する際には、本実施の形態 で用いた画像のサイズより小さくとも推定が可能である。そこで本実施の形態では、 解像度を、 320 X 240の画素値から 64 X 64のサイズに変更する。解像度変更後の 画素値は次式により得られる。
[数 20] gr(i, j)
=丄 go(i * 320 64 + ' 320 64 +!)
[0111] ここで gr (i、 j)は解像度変更後の i行 j列番目の画素値である。 go (i、 j)は、解像度 変更前の i行 j列番目の画素値である。この式では、縦についても 320で計算している 力 これは変更後の画素値を 64 X 64にしているため縦横比を合わせるためである。 また k、 1については i X 320Z64力ら(i+ 1) X 320Z64— 1まで計算し、 rは kの個数 X Iの個数とする。
[0112] 以上の操作で得られた解像度変更画像を用いてエッジ抽出を行なう。この作業で 推定に必要な特徴を抜き出す。具体的にはソーベルフィルタで解像度変更画像をフ ィルタ処理する。その後、この画像の最外周のみをニ値ィ匕することでエッジを抽出す る。
[0113] ソーベルフィルタによる処理は、次式で表現できる。
[数 21] 卩 27 (ただし fr(i ) •70)
fs(i, j)
0 ( fr i,j) '- 70) [0114] ここで fr (i、 j)は下記の式で表すことができる。
[数 22]
fr(l' ;)
Figure imgf000032_0001
[0115] 上記式にぉ 、て、 fi (i、 j)は処理前の横 i番目、網番目の画素を示す。 f sが処理後の 最終的な値となる。
[0116] ここでの画像の最外周の二値化は、輪郭抽出で輪郭が途切れないように、比較的 低い閾値でニ値ィ匕することを意味する。この最後の画像処理として、エッジ抽出で得 られた二値ィ匕画像上を走査することで輪郭抽出を行う。前段階のエッジ抽出により得 た画像を輪郭として使用しない理由として、環境光の変化を上げることができる。実 際の推定時とデータベース作成時とでは、環境光や人の肌の色等に違いがある。ま してやデータベース作成時には白手袋を使用しているため、エッジ抽出を行っても、 エッジの値や幅などが実際の画像のエッジとは異なってくる。その結果、データべ一 スの画像データと実際の画像データとを比較するとき (推定時)とで、両者のエッジに は大幅な相違が生じる可能性がある。そこで輪郭抽出を行って、エッジの幅や値を一 定にする。輪郭抽出は、データベース力 得られる情報と推定時に得られる情報との 差を少なくし、環境の影響などを排除することで、推定時の誤差を減少させるために 採用する。図 22は、エッジ抽出後に輪郭抽出を行って得た解像度変更後の画像で める。
[0117] なお最外周のみニ値ィ匕するための輪郭抽出アルゴリズムでは、画像を上から走査 して行き、最初の 127の点を始点とした。始点カも左回りに近傍画素を探索して行き 、 127の点があればそこへ移動し、値を 255に書き換える。移動後は前回の位置を 参考にして探索開始地点を 8パターンに分けて探索を継続する。始点に再び戻った 時点で輪郭を抽出したと判断し、探索を終了させる。最後に残りの点は輪郭ではない ので 127の点は全て 0とする。
[0118] 次に輪郭抽出を行った画像データの特徴量化を実施する。本実施の形態では、 Otsu等 (N. Otsu and T. Kurita, A new scheme for practical, fiexib le and intelligent vision systems, "Proc. I APR. Workshop on Compu ter Vision, pp. 431— 435, 1998. )が提案している高次局所自己相関関数を特 徴量ィ匕に使用した。高次局所自己相関特徴は、画像の認識や計測のために有効な 特徴であり、下記の式で定義される高次相関関数について、参照点とその近傍につ V、ての計算をしたものである。
[数 23] 1" (a , a2 , - ' - y aN ) =
JV ( / (r + )···/( + )
[0119] 上記式で x ¾N次元での r点近傍の相関関数である。一般に自然画像を処理対象と する場合には、対象点回りの画素が重要になるため、係数 Nを 2次までとする。また、 平行移動すると等価なものになるものを除くと、図 23に示す 25の特徴量で表現でき る。ただし No. 1から No. 5までは、 No. 6以降の特徴量に比べスケールが小さいの で、スケールを合わせる必要がある。 No. 2— No. 5までは、参照点の画素をさらに かけあわせ、 No. 1は参照点の画素の 2乗をかけることで他の特徴量にスケールを一 致させる。
[0120] 本実施の形態では、図 24に示すように、画像の画面を縦 8分割、横 8分割にした。
そして、計 64分割した分割画面に対して、それぞれ画素全てを参照点として、高次 局所自己相関関数によって 25の特徴量に次元低減を行なった。すなわち、全体の 画像で考えれば、 25 X画面分割数の特徴量により、その全体画像の特徴量化を行 うことができる。
[0121] このようにして 1つの画像データを特徴量ィ匕した画像データとデータグローブからの 角度データ (事前収集動作指令に対応)を組みにした特徴データを画像対応動作指 令記憶手段 (データベース)に記憶する。本実施の形態では、このデータベースを利 用して、実際に撮影した画像の特定を行う。
[0122] 次に、上記のようにして作成したデータベース (画像対応動作指令記憶手段)を利 用して、実際に撮影した手の画像から手指角度を推定する方法について説明する。 図 25は推定時の手順を示すアルゴリズムであり、図 26はより詳細にアルゴリズムであ る。まず推定時には、データベース作成時と同様に高速カメラで動く手の画像 (動作 画像データ)を取得する。そして取得した動作画像データに対し、データベース作成 時と同様の画像処理を施し特徴量を抽出する。そしてこの動作画像データの特徴量 とデータベースに記憶されている複数の画像データの特徴量とを後述の処理により 比較し、動作画像データと最も近い画像データと組になる角度データを、その動作画 像データに対応する動作指令として出力する。
[0123] 特に、「データベースとの照合」処理では、データベースに記憶されている画像デ ータ全てに対して、動作画像データの特徴量との間の距離算出を行なった。距離の 算出は単純なユークリッド距離で行なった。最終的な距離は、下記式より算出した。
[数 24]
25*n
E.
[0124] 上記式において、 Xは候補 rの高次局所自己相関関数による特徴量 i、 Xは時刻 t n ti での高次局所自己相関関数による特徴量 iである。 Erを最小にするデータ rの角度を 、その動作画像データの推定角度とした。ただし、角度の大幅に違うものの中に特徴 量の近いデータが紛れ込むことがあるので、前回 (t 1時刻)の推定角度との比較を 行って角度制限を行う。具体的には、距離が近いものについて、下記式で示す評価 関数 Apが規定値を超える場合には、推定候補カゝら除外した。そして評価関数 Apが 規定値以内であれば、その推定角度を採用することとする。
[数 25]
[0125] ここで ang は時刻 tの i番目の角度データである。また、データグローブから得られる i(t)
角度情報は 24となっている。以上の操作により現在の推定角度を求める。
[0126] 実際の推定時に、データベースに記憶されている全ての画像データとの全てにつ いて距離算出の処理を行なうと、データベースの大きさによっては計算コストがかかり すぎ、実時間処理が不可能になる。そこで本実施の形態では、データのクラスタリン グにより推定候補数の削減を行なうことにより、実時間処理を可能にする。
[0127] 図 27は、クラスタリングを説明するための概念図である。図 27においては、一つの 行は複数枚の画像データによって構成される一つの組を示している。着色の濃い行 が最初の探索対象となるデータ、着色の薄 、行が詳細な探索対象となるデータであ る。データベースに含まれるデータを、先に説明したデータベース作成時のアルゴリ ズムで作成すると、画像データの並びにおいて、手の形状の近いものが集まるように なる。これを利用することで距離計算の対象画像データを削減する。具体的には複 数枚の画像データを一組と考える。そして、始めの距離計算時に使う画像データは、 複数組の中からそれぞれ 1つを選び、選んだ画像データと距離計算を行う。これによ り距離計算による計算コストは、各組に含まれる枚数 1がすべての組において削減 されることになり、大幅なコスト減となる。ただし、この段階では真に近い角度の画像 データも計算から除 ヽて 、る可能性があるので、推定結果が元のデータベースの画 像データ全てと対比する場合に比べ精度が落ちる。そのため 1段階目の距離計算で 距離の近いものについては、各画像データが含まれる組内のすべての画像データと 動作画像データとの間の距離計算を行なう。このようにすれば各データ近傍には角 度的に近いものが集まっているため、より精度の良い推定結果が得られる。クラスタリ ングの効果を確認する実験では、 10枚の画像データを一組と考え、 1枚の動作画像 データについて 1段階目の距離計算を複数組内の 1枚の画像データとそれぞれ行つ た。次にこの操作で得られた距離が近 、上位の組 5組に含まれる全ての画像データ について距離計算と角度制限を行ない、最終的な角度を推定した。その結果、すべ ての画像データと比較を行う場合と比べて、遜色の無 、比較精度が得られることが確 認できた。
[0128] 上記実施の形態では、特徴量を求めるにあたって、高次局所自己相関関数を用い た。し力しながらその他の特徴量の求め方を採用することができるのは勿論である。 例えば、廣池敦、武者義則著の「大規模な画像集合のための表現モデル」(日本写 真学会誌、 66卷、 1号、 93— 101頁、 2003年発行)に記載の特徴量ベクトルの求め 方を採用することもできる。 産業上の利用可能性
本発明によれば、実際にロボットを動かすために、ロボットに対応する動作物または その擬似物の画像を得るだけで、センサを使用することなぐその動作物または擬似 物と同じ動作を、不良設定性を解消してロボットに見まね動作させることができる。し たがって本発明によれば、画像データを入力データとしてロボットを簡単に駆動する ことが可能になる。

Claims

請求の範囲
[1] 動作指令に応じて動作するロボットの駆動方法であって、
ロボットに対応する動作物またはその擬似物に所定の動作と同じ動作をさせたとき の前記動作物またはその擬似物の複数の画像データと、前記複数の画像データに 対応した前記動作指令を得るために事前に収集された事前収集動作指令とを対応 付けて画像対応動作指令記憶手段に記憶するステップと、
前記ロボットを動作させるために、前記動作物またはその擬似物に所望の動作を行 わせ、その際に前記動作物またはその擬似物の動作画像データを時系列でロボット 動作用画像データとして取得するステップと、
前記ロボット動作用画像データに含まれる前記動作画像データに対応する画像デ ータを前記画像対応動作指令記憶手段に記憶している前記複数の画像データから 時系列で特定し、特定した前記画像データに対応する前記事前収集動作指令を前 記動作指令として前記ロボットに与えるステップとからなるロボットの駆動方法。
[2] 前記ロボット動作用画像データに含まれる前記画像データと前記画像対応動作指 令記憶手段に記憶されている前記複数の画像データとの対応を両者の類似度に基 づ 、て判断する請求項 1に記載のロボットの駆動方法。
[3] 前記画像対応動作指令記憶手段に記憶している前記複数の画像データから前記 動作画像データに対応する画像データを特定する際に、前記動作画像データの特 徴量を基準にして照合用の複数の画像データを選択し、前記照合用の複数の画像 データと前記動作画像データとの類似度に基づいて前記動作画像データに対応す る画像を特定することを特徴とする請求項 1に記載のロボットの駆動方法。
[4] 動作指令に応じて動作するロボットの駆動方法であって、
ロボットに対応する動作物と、前記動作物に設けられて前記動作物の動きを検出す る複数のセンサと、前記複数のセンサの出力に基づいて前記動作指令を発生する動 作指令発生装置とを用い、前記動作物に所定の動作を行わせたときの前記複数の センサの出力に基づいて前記動作指令発生装置が発生する前記動作指令を事前 収集動作指令として記憶する第 1のステップと、
前記動作物に前記所定の動作を行わせたときの前記動作物の複数の画像データ を取得するか、または前記動作物またはその擬似物に前記所定の動作と同じ動作を 行わせたときの前記動作物またはその擬似物の複数の画像データを時系列で取得 する第 2のステップと、
前記複数の画像データに含まれる画像データと前記事前収集動作指令とを対応 付けて前記複数の画像データと前記事前収集動作指令とを画像対応動作指令記憶 手段に記憶する第 3のステップと、
前記ロボットを動作させるために、前記動作物またはその擬似物に所望の動作を行 わせ、その際に前記動作物またはその擬似物の動作画像データを時系列でロボット 動作用画像データとして取得する第 4のステップと、
前記ロボット動作用画像データに含まれる前記動作画像データに対応する画像デ ータを前記画像対応動作指令記憶手段に記憶している前記複数の画像データから 特定し、特定した前記画像データに対応する前記事前収集動作指令を前記動作指 令として前記ロボットに与える第 5のステップとからなるロボットの駆動方法。
[5] 前記擬似物はコンピュータグラフィック技術等の疑似物生成技術を用いて作成され たものであり、前記画像データは疑似画像データである請求項 4に記載のロボットの 駆動方法。
[6] 前記擬似物はコンピュータグラフィック技術により作成されたものであり、前記擬似 物の画像データはコンピュータグラフィック画像データである請求項 4に記載のロボッ トの駆動方法。
[7] 前記第 2のステップでは、前記複数のセンサを備えた前記動作物の表面を、前記 複数のセンサを含めて被覆物によって覆い、前記第 1のステップと同時に前記動作 物の前記複数の画像データを取得することを特徴とする請求項 4に記載のロボットの 駆動方法。
[8] 前記動作物は人間の手であり、
前記第 2のステップで取得する前記複数の画像データには、人間の手に現れる個 人差を考慮した画像データが含まれている請求項 5または 6に記載のロボットの駆動 方法。
[9] 前記複数の画像データには、前記複数の画像データの解像度を変えて作成した 複数の解像度変更画像データが含まれて 、る請求項 5, 6または 7に記載のロボット の駆動方法。
[10] 前記第 2のステップでは、時系列で取得した前の前記画像データと後の前記画像 データとの間の未作成の画像データを前記コンピュータグラフィック技術により作成し 第 3のステップでは作成した前記画像データに対応する事前収集動作指令を前記 前の画像データに対応する事前収集動作指令と前記後の画像データに対応する事 前収集動作指令とに基づいて推定により作成して前記未作成の画像データと対応 付けて記憶することを特徴とする請求項 6に記載のロボットの駆動方法。
[11] 前記第 5のステップでは、前記ロボット動作用画像データに含まれる前記画像デー タと前記画像対応動作指令記憶手段に記憶されている前記複数の画像データとの 対応を両者の類似度に基づいて判断する請求項 4に記載のロボットの駆動方法。
[12] 前記動作物は人間の手であり、
前記第 1のステップでは、前記人間の手に装着するデータグローブが用いられ、前 記データグローブはグローブ本体に前記ロボットの手の動作部に対応した人間の手 の動作部の動きを検出する位置に前記複数のセンサが装着された構造を有している ことを特徴とする請求項 4に記載のロボットの駆動方法。
[13] 前記動作物は人間の手であり、
前記第 1のステップでは、前記人間の手に装着するデータグローブが用いられ、前 記データグローブはグローブ本体に前記ロボットの手の動作部に対応した人間の手 の動作部の動きを検出する位置に前記複数のセンサが装着された構造を有しており 前記第 2のステップでは、前記データグローブを装着した前記人間の手に無地の 手袋を嵌め、前記第 1のステップと同時に、前記所定の動作を行う前記人間の手の 前記複数の画像データを取得することを特徴とする請求項 4に記載のロボットの駆動 方法。
[14] 前記第 5のステップでは、前記画像対応動作指令記憶手段に記憶して!/、る前記複 数の画像データから前記動作画像データに対応する画像データを特定する際に、 前記動作画像データの特徴量を基準にして照合用の複数の画像データを選択し、 前記照合用の複数の画像データと前記動作画像データとの類似度に基づいて前記 動作画像データに対応する画像データを特定することを特徴とする請求項 4に記載 のロボットの駆動方法。
[15] 前記動作画像データの特徴量が、主成分分析により得た各主成分ごとの主成分得 点である請求項 14に記載のロボットの駆動方法。
[16] 前記第 3のステップでは、前記画像データと前記事前収集動作指令とを対応付け て前記画像対応動作指令記憶手段に記憶する際に、
前記複数の画像データのそれぞれの特徴量を個々に演算する特徴量演算ステツ プと、
前記複数の画像データのそれぞれの特徴量を主成分分析して、前記複数の画像 データのそれぞれについて主成分得点を演算し、且つ累積寄与率に基づいて第 1 主成分力ゝら第 k主成分までの主成分の数を決定する主成分決定ステップと、 前記第 1主成分から第 k主成分までの各主成分ごとに、前記複数の画像データを 前記主成分得点の大きさを基準にして並べ替えて得た k種類の画像データソースを 作成して記憶する記憶ステップとを実行し、
前記第 5ステップでは、前記動作画像データ及び該動作画像データの解像度が異 なる複数種類の動作画像データについて求めた主成分得点を基準にして前記 k種 類の画像データソース力 前記照合用の複数の画像データをそれぞれ抽出すること を特徴とする請求項 10に記載のロボットの駆動方法。
PCT/JP2004/016968 2003-11-13 2004-11-15 ロボットの駆動方法 WO2005046942A1 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
GB0611135A GB2424723B (en) 2003-11-13 2004-11-15 Method for driving robot
US10/595,810 US7848850B2 (en) 2003-11-13 2004-11-15 Method for driving robot
DE112004002219.3T DE112004002219B4 (de) 2003-11-13 2004-11-15 Verfahren zum Antreiben eines Roboters
JP2005515481A JP4878842B2 (ja) 2003-11-13 2004-11-15 ロボットの駆動方法

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2003-384402 2003-11-13
JP2003384402 2003-11-13
JP2004-173268 2004-06-10
JP2004173268 2004-06-10

Publications (1)

Publication Number Publication Date
WO2005046942A1 true WO2005046942A1 (ja) 2005-05-26

Family

ID=34593956

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2004/016968 WO2005046942A1 (ja) 2003-11-13 2004-11-15 ロボットの駆動方法

Country Status (5)

Country Link
US (1) US7848850B2 (ja)
JP (2) JP4878842B2 (ja)
DE (1) DE112004002219B4 (ja)
GB (1) GB2424723B (ja)
WO (1) WO2005046942A1 (ja)

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6261095A (ja) * 1985-09-11 1987-03-17 カシオ計算機株式会社 波形エディット装置
JP2008080431A (ja) * 2006-09-27 2008-04-10 Advanced Telecommunication Research Institute International ロボットシステム
JP2008140267A (ja) * 2006-12-04 2008-06-19 National Institute Of Advanced Industrial & Technology 動作認識装置および動作認識処理方法
WO2009147904A1 (ja) 2008-06-04 2009-12-10 国立大学法人筑波大学 手指形状推定装置、手指形状の推定方法及びプログラム
JP2010089248A (ja) * 2008-10-09 2010-04-22 National Chiao Tung Univ ハンドパペットマニピュレーションシステム
WO2011039429A1 (fr) 2009-09-29 2011-04-07 Artistic Robot Event Systeme et procede de restitution synchrone par un robot de mouvements d'une main ou d'un organe d'extremite
WO2011065035A1 (ja) * 2009-11-24 2011-06-03 株式会社豊田自動織機 ロボットの教示データを作成する方法およびロボット教示システム
WO2011065034A1 (ja) * 2009-11-24 2011-06-03 株式会社豊田自動織機 ロボットの動作を制御する方法およびロボットシステム
JP2011121152A (ja) * 2009-12-11 2011-06-23 Toyota Motor Corp 動作補助装置
WO2012117687A1 (ja) * 2011-03-02 2012-09-07 パナソニック株式会社 姿勢推定装置、姿勢推定システム、および姿勢推定方法
JP2014140942A (ja) * 2013-01-25 2014-08-07 Seiko Epson Corp ロボット制御システム、ロボット、ロボット制御方法及びプログラム
JP2014140941A (ja) * 2013-01-25 2014-08-07 Seiko Epson Corp ロボット制御システム、ロボット、ロボット制御方法及びプログラム
CN112847334A (zh) * 2020-12-16 2021-05-28 北京无线电测量研究所 一种基于视觉伺服的机械臂目标跟踪方法

Families Citing this family (40)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7668797B2 (en) * 2006-04-07 2010-02-23 Gary Kuvich Active semiotic system for image and video understanding by robots and unmanned vehicles, methods and apparatus
JP5148619B2 (ja) * 2006-10-18 2013-02-20 ユタカ・ジェイ・カナヤマ 移動ロボットによる地図作成方法
US9060385B1 (en) * 2007-04-20 2015-06-16 Lloyd Douglas Manning Universal bluetooth/wireless glove
JP5109098B2 (ja) * 2007-06-14 2012-12-26 本田技研工業株式会社 運動制御システム、運動制御方法および運動制御プログラム
US8213706B2 (en) * 2008-04-22 2012-07-03 Honeywell International Inc. Method and system for real-time visual odometry
KR101494344B1 (ko) * 2008-04-25 2015-02-17 삼성전자주식회사 휴머노이드 로봇의 움직임 제어 시스템 및 그 방법
KR100995933B1 (ko) * 2008-09-01 2010-11-22 한국과학기술연구원 진화 알고리즘과 모방학습에 기초한 로봇의 동작 제어 방법
TWI371303B (en) * 2009-02-04 2012-09-01 Inventec Appliances Corp Electronic pet cotrol system and control method thereof
US9052710B1 (en) * 2009-03-20 2015-06-09 Exelis Inc. Manipulation control based upon mimic of human gestures
US8260460B2 (en) * 2009-09-22 2012-09-04 GM Global Technology Operations LLC Interactive robot control system and method of use
AU2011237357B2 (en) * 2010-04-09 2016-05-19 Deka Products Limited Partnership System and apparatus for robotic device and methods of using thereof
JP5306313B2 (ja) * 2010-12-20 2013-10-02 株式会社東芝 ロボット制御装置
KR101896473B1 (ko) * 2012-01-04 2018-10-24 삼성전자주식회사 로봇 핸드의 제어 방법
US9070004B2 (en) * 2012-05-03 2015-06-30 General Electric Company Automatic segmentation and characterization of cellular motion
JP5426719B2 (ja) 2012-05-18 2014-02-26 ファナック株式会社 ロボットシステムの動作シミュレーション装置
US9393695B2 (en) 2013-02-27 2016-07-19 Rockwell Automation Technologies, Inc. Recognition-based industrial automation control with person and object discrimination
US9798302B2 (en) 2013-02-27 2017-10-24 Rockwell Automation Technologies, Inc. Recognition-based industrial automation control with redundant system input support
US9804576B2 (en) 2013-02-27 2017-10-31 Rockwell Automation Technologies, Inc. Recognition-based industrial automation control with position and derivative decision reference
US9498885B2 (en) 2013-02-27 2016-11-22 Rockwell Automation Technologies, Inc. Recognition-based industrial automation control with confidence-based decision support
JP6271903B2 (ja) * 2013-08-06 2018-01-31 キヤノン株式会社 サーボ装置、及びサーボ装置の制御方法
KR102000264B1 (ko) * 2013-10-01 2019-07-15 한국전자통신연구원 교시 데이터 입력 장치와 이를 이용한 로봇의 교시 명령어 생성 장치 및 방법
US9084411B1 (en) * 2014-04-10 2015-07-21 Animal Biotech Llc Livestock identification system and method
JP6003942B2 (ja) * 2014-04-24 2016-10-05 トヨタ自動車株式会社 動作制限装置及び動作制限方法
US10970428B2 (en) * 2015-04-01 2021-04-06 Research & Business Foundation Sungkyunkwan University Method of providing performance indicators of robot hand and method of optimizing structure of robot hand
US9694494B1 (en) 2015-12-11 2017-07-04 Amazon Technologies, Inc. Feature identification and extrapolation for robotic item grasping
US10456910B2 (en) * 2016-01-14 2019-10-29 Purdue Research Foundation Educational systems comprising programmable controllers and methods of teaching therewith
WO2017130389A1 (ja) * 2016-01-29 2017-08-03 三菱電機株式会社 ロボット教示装置及びロボット制御プログラム作成方法
US20170249561A1 (en) * 2016-02-29 2017-08-31 GM Global Technology Operations LLC Robot learning via human-demonstration of tasks with force and position objectives
US11036230B1 (en) * 2016-03-03 2021-06-15 AI Incorporated Method for developing navigation plan in a robotic floor-cleaning device
US9827670B1 (en) * 2016-05-24 2017-11-28 X Development Llc Coaxial finger face and base encoding
TW201805598A (zh) * 2016-08-04 2018-02-16 鴻海精密工業股份有限公司 自主移動設備及建立導航路徑的方法
JP6514156B2 (ja) * 2016-08-17 2019-05-15 ファナック株式会社 ロボット制御装置
US10319109B2 (en) * 2017-03-31 2019-06-11 Honda Motor Co., Ltd. Interaction with physical objects as proxy objects representing virtual objects
CN107199566B (zh) * 2017-06-02 2019-09-10 东南大学 一种基于虚拟手臂的面向空间站机器人的遥操作系统
US11413748B2 (en) * 2017-08-10 2022-08-16 Robert Bosch Gmbh System and method of direct teaching a robot
WO2019064751A1 (ja) * 2017-09-28 2019-04-04 日本電産株式会社 ロボット教示システム、ロボット教示方法、制御装置、及びコンピュータプログラム
WO2019064752A1 (ja) * 2017-09-28 2019-04-04 日本電産株式会社 ロボット教示システム、ロボット教示方法、制御装置、及びコンピュータプログラム
DE102018124671B4 (de) * 2018-10-06 2020-11-26 Bystronic Laser Ag Verfahren und Vorrichtung zur Erstellung eines Robotersteuerprogramms
DE102020124285B4 (de) 2019-09-20 2022-06-09 Nvidia Corporation Visionsbasierte Teleoperation eines beweglichen Robotersystems
US20230109729A1 (en) * 2021-10-07 2023-04-13 Nec Laboratories America, Inc. Co-disentagled series/text multi-modal representation learning for controllable generation

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000329511A (ja) * 1999-05-19 2000-11-30 Sony Corp データグローブ及びこれを用いた形状認識方法
JP2001322079A (ja) * 2000-05-15 2001-11-20 Sony Corp 脚式移動ロボット及びその動作教示方法
JP2003080484A (ja) * 2001-09-07 2003-03-18 Tomy Co Ltd 動作反応玩具

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61122711A (ja) * 1984-11-20 1986-06-10 Fujitsu Ltd ロボツトのテイ−チング装置
JPH01322079A (ja) * 1988-06-22 1989-12-27 Shibuya Kinzoku Sangyo Kk 修正装置付ピボットヒンジ
JPH0380484A (ja) * 1989-08-22 1991-04-05 Hitachi Maxell Ltd テープカートリッジ
US5887069A (en) * 1992-03-10 1999-03-23 Hitachi, Ltd. Sign recognition apparatus and method and sign translation system using same
US6072494A (en) * 1997-10-15 2000-06-06 Electric Planet, Inc. Method and apparatus for real-time gesture recognition
WO1999042800A1 (en) 1998-02-20 1999-08-26 Massachusetts Institute Of Technology Finger touch sensors and virtual switch panels
US6421453B1 (en) * 1998-05-15 2002-07-16 International Business Machines Corporation Apparatus and methods for user recognition employing behavioral passwords
US6681031B2 (en) * 1998-08-10 2004-01-20 Cybernet Systems Corporation Gesture-controlled interfaces for self-service machines and other applications
JP4340367B2 (ja) * 1999-01-27 2009-10-07 株式会社リコー 画像分類装置およびその装置としてコンピュータを機能させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体
JP2001092589A (ja) * 1999-09-22 2001-04-06 Suzuki Motor Corp モデリング装置及びモデリングデータ生成用プログラムを記憶した記憶媒体
JP3457617B2 (ja) * 2000-03-23 2003-10-20 株式会社東芝 画像検索システムおよび画像検索方法
JP2001344567A (ja) * 2000-06-02 2001-12-14 Ricoh Co Ltd 文字認識装置、その方法およびその方法を実施するためのプログラムを記録した記録媒体
JP2002163655A (ja) 2000-11-24 2002-06-07 Omron Corp 個人認証装置
JP2002239960A (ja) * 2001-02-21 2002-08-28 Sony Corp ロボット装置の動作制御方法、プログラム、記録媒体及びロボット装置
US6804396B2 (en) 2001-03-28 2004-10-12 Honda Giken Kogyo Kabushiki Kaisha Gesture recognition system
US20020152077A1 (en) * 2001-04-12 2002-10-17 Patterson Randall R. Sign language translator
JP4028192B2 (ja) * 2001-08-02 2007-12-26 日本電信電話株式会社 動作入力方法、装置、プログラム、及び記録媒体
JP3848123B2 (ja) 2001-10-15 2006-11-22 独立行政法人科学技術振興機構 人型ロボットハンド
JP2003288594A (ja) * 2002-03-28 2003-10-10 Minolta Co Ltd 画像処理装置および方法
US7665041B2 (en) * 2003-03-25 2010-02-16 Microsoft Corporation Architecture for controlling a computer using hand gestures
US7565295B1 (en) * 2003-08-28 2009-07-21 The George Washington University Method and apparatus for translating hand gestures

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000329511A (ja) * 1999-05-19 2000-11-30 Sony Corp データグローブ及びこれを用いた形状認識方法
JP2001322079A (ja) * 2000-05-15 2001-11-20 Sony Corp 脚式移動ロボット及びその動作教示方法
JP2003080484A (ja) * 2001-09-07 2003-03-18 Tomy Co Ltd 動作反応玩具

Cited By (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6261095A (ja) * 1985-09-11 1987-03-17 カシオ計算機株式会社 波形エディット装置
JP2008080431A (ja) * 2006-09-27 2008-04-10 Advanced Telecommunication Research Institute International ロボットシステム
JP2008140267A (ja) * 2006-12-04 2008-06-19 National Institute Of Advanced Industrial & Technology 動作認識装置および動作認識処理方法
WO2009147904A1 (ja) 2008-06-04 2009-12-10 国立大学法人筑波大学 手指形状推定装置、手指形状の推定方法及びプログラム
US9002119B2 (en) 2008-06-04 2015-04-07 University Of Tsukuba, National University Corporation Device method and program for human hand posture estimation
US8571707B2 (en) 2008-10-09 2013-10-29 National Chiao Tung University Glove puppet manipulating system
JP2010089248A (ja) * 2008-10-09 2010-04-22 National Chiao Tung Univ ハンドパペットマニピュレーションシステム
WO2011039429A1 (fr) 2009-09-29 2011-04-07 Artistic Robot Event Systeme et procede de restitution synchrone par un robot de mouvements d'une main ou d'un organe d'extremite
WO2011065035A1 (ja) * 2009-11-24 2011-06-03 株式会社豊田自動織機 ロボットの教示データを作成する方法およびロボット教示システム
WO2011065034A1 (ja) * 2009-11-24 2011-06-03 株式会社豊田自動織機 ロボットの動作を制御する方法およびロボットシステム
JP2011110620A (ja) * 2009-11-24 2011-06-09 Toyota Industries Corp ロボットの動作を制御する方法およびロボットシステム
JP2011110621A (ja) * 2009-11-24 2011-06-09 Toyota Industries Corp ロボットの教示データを作成する方法およびロボット教示システム
JP2011121152A (ja) * 2009-12-11 2011-06-23 Toyota Motor Corp 動作補助装置
JP2012181736A (ja) * 2011-03-02 2012-09-20 Panasonic Corp 姿勢推定装置、姿勢推定システム、および姿勢推定方法
WO2012117687A1 (ja) * 2011-03-02 2012-09-07 パナソニック株式会社 姿勢推定装置、姿勢推定システム、および姿勢推定方法
US9480417B2 (en) 2011-03-02 2016-11-01 Panasonic Corporation Posture estimation device, posture estimation system, and posture estimation method
JP2014140942A (ja) * 2013-01-25 2014-08-07 Seiko Epson Corp ロボット制御システム、ロボット、ロボット制御方法及びプログラム
JP2014140941A (ja) * 2013-01-25 2014-08-07 Seiko Epson Corp ロボット制御システム、ロボット、ロボット制御方法及びプログラム
CN112847334A (zh) * 2020-12-16 2021-05-28 北京无线电测量研究所 一种基于视觉伺服的机械臂目标跟踪方法
CN112847334B (zh) * 2020-12-16 2022-09-23 北京无线电测量研究所 一种基于视觉伺服的机械臂目标跟踪方法

Also Published As

Publication number Publication date
US7848850B2 (en) 2010-12-07
US20070078564A1 (en) 2007-04-05
JP4878842B2 (ja) 2012-02-15
GB0611135D0 (en) 2006-07-19
JP2011131376A (ja) 2011-07-07
GB2424723B (en) 2007-09-19
GB2424723A (en) 2006-10-04
DE112004002219T5 (de) 2006-11-23
JPWO2005046942A1 (ja) 2007-08-23
DE112004002219B4 (de) 2018-07-12
JP5209751B2 (ja) 2013-06-12

Similar Documents

Publication Publication Date Title
JP4878842B2 (ja) ロボットの駆動方法
Newbury et al. Deep learning approaches to grasp synthesis: A review
CN108972494B (zh) 一种仿人机械手抓取控制系统及其数据处理方法
CN106346485B (zh) 基于人手运动姿态学习的仿生机械手的非接触式控制方法
Varley et al. Generating multi-fingered robotic grasps via deep learning
Hasan et al. RETRACTED ARTICLE: Static hand gesture recognition using neural networks
Kang et al. Toward automatic robot instruction from perception-recognizing a grasp from observation
Lopes et al. Visual learning by imitation with motor representations
Qu et al. Human-like coordination motion learning for a redundant dual-arm robot
Jia et al. Manipulating highly deformable materials using a visual feedback dictionary
Koganti et al. Bayesian nonparametric learning of cloth models for real-time state estimation
Schröder et al. Real-time hand tracking using synergistic inverse kinematics
CN109766782B (zh) 基于svm的实时肢体动作识别方法
Liu et al. Hybrid robotic grasping with a soft multimodal gripper and a deep multistage learning scheme
Ottenhaus et al. Visuo-haptic grasping of unknown objects based on gaussian process implicit surfaces and deep learning
Skoglund et al. Programming-by-Demonstration of reaching motions—A next-state-planner approach
Nölker et al. GREFIT: Visual recognition of hand postures
Kumar et al. Graph matching based hand posture recognition using neuro-biologically inspired features
Wang et al. A generative human-robot motion retargeting approach using a single depth sensor
Acosta-Calderon et al. Robot imitation: Body schema and body percept
Palm et al. Recognition of human grasps by time-clustering and fuzzy modeling
Srinivasa et al. A bio-inspired kinematic controller for obstacle avoidance during reaching tasks with real robots
Gutzeit et al. Automatic Detection and Recognition of Human Movement Patterns in Manipulation Tasks.
Hoshino et al. Copycat hand—robot hand imitating human motions at high speed and with high accuracy
Infantino et al. A cognitive architecture for robotic hand posture learning

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BW BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE EG ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NA NI NO NZ OM PG PH PL PT RO RU SC SD SE SG SK SL SY TJ TM TN TR TT TZ UA UG US UZ VC VN YU ZA ZM ZW

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): BW GH GM KE LS MW MZ NA SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IS IT LU MC NL PL PT RO SE SI SK TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
DPEN Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed from 20040101)
WWE Wipo information: entry into national phase

Ref document number: 2005515481

Country of ref document: JP

WWE Wipo information: entry into national phase

Ref document number: 1120040022193

Country of ref document: DE

WWE Wipo information: entry into national phase

Ref document number: 0611135.5

Country of ref document: GB

Ref document number: 0611135

Country of ref document: GB

WWE Wipo information: entry into national phase

Ref document number: 2007078564

Country of ref document: US

Ref document number: 10595810

Country of ref document: US

122 Ep: pct application non-entry in european phase
WWP Wipo information: published in national office

Ref document number: 10595810

Country of ref document: US

REG Reference to national code

Ref country code: DE

Ref legal event code: 8607