WO2021133183A1 - Способ управления роботизированным манипулятором - Google Patents

Способ управления роботизированным манипулятором Download PDF

Info

Publication number
WO2021133183A1
WO2021133183A1 PCT/RU2019/000998 RU2019000998W WO2021133183A1 WO 2021133183 A1 WO2021133183 A1 WO 2021133183A1 RU 2019000998 W RU2019000998 W RU 2019000998W WO 2021133183 A1 WO2021133183 A1 WO 2021133183A1
Authority
WO
WIPO (PCT)
Prior art keywords
point
coordinate system
scene
gripper
gripping
Prior art date
Application number
PCT/RU2019/000998
Other languages
English (en)
French (fr)
Inventor
Андрей Владимирович НОВИКОВ
Владимир Николаевич ГЕРАСИМОВ
Роман Александрович ГОРБАЧЕВ
Никита Евгеньевич ШВИНДТ
Владимир Иванович НОВИКОВ
Андрей Евгеньевич ЕФРЕМЕНКО
Дмитрий Леонидович ШИШКОВ
Михаил Нилович ЗАРИПОВ
Филипп Александрович КОЗИН
Алексей Михайлович СТАРОСТЕНКО
Original Assignee
федеральное государственное автономное образовательное учреждение высшего образования "Московский физико-технический институт (национальный исследовательский университет)"
Общество, С Ограниченной Ответственностью "Нейроассистивные Технологии"
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 федеральное государственное автономное образовательное учреждение высшего образования "Московский физико-технический институт (национальный исследовательский университет)", Общество, С Ограниченной Ответственностью "Нейроассистивные Технологии" filed Critical федеральное государственное автономное образовательное учреждение высшего образования "Московский физико-технический институт (национальный исследовательский университет)"
Priority to PCT/RU2019/000998 priority Critical patent/WO2021133183A1/ru
Publication of WO2021133183A1 publication Critical patent/WO2021133183A1/ru

Links

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • B25J13/08Controls for manipulators by means of sensing devices, e.g. viewing or touching devices
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/10Processing, recording or transmission of stereoscopic or multi-view image signals
    • H04N13/106Processing image signals

Definitions

  • the invention relates to robotics, in particular, to robotic systems for manipulating objects by means of a manipulator with a gripping device.
  • US patent US9552673 discloses a method and device for simulating the capture of a virtual object in augmented reality.
  • a touch-sensitive glove can be used to track the position of the operator's hand without the need for a camera to track the position of the operator's hand. It is indicated that the movement of the hand is monitored by modeling the shape of the hand and object with structured periodic patterns.
  • US patent application US2017136632 describes the exclusion of incorrect positions of gripping objects from possible options with the help of an operator.
  • the data can then be fed to the input of a machine learning system.
  • gripper data generated by object simulation and gripping in a simulation environment can be input.
  • the gripper parameters are generated by the system itself, and the closer the gripping point is to the center of the object, the better the grip is.
  • US patent US9014857 discloses a method for generating gripper types for use by a robot having a three-finger gripper.
  • the method includes generating a plurality of directions of approach, each of which is perpendicular to the surface of the object. For each direction of approach, a set of capture types is defined; for each of the types of capture in each of the directions, the capture quality coefficient is calculated. To capture an object, a capture is selected, the quality factor of which is higher than the specified one. Each type of capture that exceeds the specified quality factor is stored in the database, including data on the initial position of the gripper, transformation information and the value of the quality factor.
  • the training dataset is generated based on three-dimensional models of objects.
  • the capture quality metric is included in the training dataset, and this data is fed to the input of the neural network.
  • Three-dimensional models of objects can include data on the mass of objects (properties of mass distribution over the object), properties of the object's substance.
  • the types of captures can be subdivided into classes.
  • US Pat. No. 9,914,213 also discloses a machine learning system and method for performing capture.
  • the training dataset is formed from the data obtained when the robot tries to capture the object.
  • RF patent RU2700246 discloses a method and a system for gripping an object using a robotic object, in which a robotic device is trained using a machine learning algorithm to recognize and memorize gripping points of objects. Training is performed on data characterizing photographic images of objects and corresponding three-dimensional models of objects in various forms. This makes it possible to improve the accuracy of recognition of the area of object capture by the robotic device. Despite this, the recognition accuracy of the capture area of the object may be insufficient for the application of the known method and system by a user with limited or impaired motor functions. In addition, such a system requires rather long training, and the choice of an object to be manipulated from several objects is not provided at all.
  • a robot operating in a work environment can be instructed to determine the work offset.
  • Work offset can describe the location and angular orientation of the work plane of the work environment relative to the base plane of the robot.
  • the robot can identify the work plane.
  • the robot can be controlled to contact one or more points on the work plane; determine the corresponding locations of the points of the contacted points relative to the reference plane based on the corresponding positions of the robot at the corresponding moments of contact; determine location and angular orientation of the work plane relative to the reference plane based on the determined corresponding point locations of the contact points.
  • U.S. Patent Application US2019240843 describes a method for manipulating a deformable object, which includes determining the appropriate three-dimensional position of one or more markers on a deformable object held by a robotic arm, as well as determining a deformable model of the deformable object by displaying the movement of the robot arm and the movement of one or more markers.
  • a robotic arm is controlled based on a defined deformation model to manipulate the deformable object and move one or more markers to the appropriate position.
  • the technical result of the invention is to provide the ability to capture and manipulate with high accuracy previously unknown objects, as well as objects of complex shapes.
  • the problem is solved, and the claimed technical result is achieved in the proposed method for controlling a robotic manipulator containing a grabber for manipulating an object, a stereo scene camera for capturing images of the scene, and a stereo eye camera for capturing images of the left eye and right eye, which includes the following steps: a) providing a library of methods for capturing objects with a grabber;
  • B3) determine the direction of the vector of the direction of gaze of each eye, and b4) determine the direction of gaze in the coordinate system of the scene stereo camera; c) obtaining information about the object and the scene around the object, in which: cl) obtain images of the left frame and the right frame of the scene, c2) form a disparity map by the method of semi-global establishment of stereo correspondences with obtaining disparity for each point of the image with pixel coordinates, c3) determine the true coordinates points with pixel coordinates and form a depth map, c4) form a two-dimensional image in gray scale, in which the brightness of points with pixel coordinates depends on the position of points on the depth map, and c5) perform detection and identification of objects to obtain a set of objects of a three-dimensional scene; d) determining the ability to capture the object; e) selection of the pre-gripping position of the gripper and the optimal gripping method; f) determining the position of the gripping device, in which: fl) determining the position of the
  • stage £ 2 it is preferable if for the implementation of stage £ 2) a preliminary construction of the orthonormal coordinate system Oxyz with unit vectors r, j, k and the expansion of the position vector of the gripper in the coordinate system Oxyz on the basis of the coordinate system of the scene stereo camera is performed.
  • Preliminary construction of the orthonormal coordinate system Oxyz may include: sequential installation of the manipulator with a colored mark applied to it in three arbitrary positions, in which the positions of the colored mark do not lie on one straight line, and the coordinates of the position of the colored mark are known in the manipulator coordinate system; determining the coordinates of the first point, the second point and the third point of the position of the mark in the three specified positions in the coordinate system of the scene stereo camera; and the construction of the orthonormal coordinate system Oxyz, in which: the first point is selected by the origin, the ort of the vector passing from the first point to the second point is selected by the direction of the unit vector i in the Ox direction, the Gram-Schmidt orthogonalization of the vector passing from the first point to the third point is performed , relative to the unit unit vector i to obtain the unit unit unit j in the direction Oy, and perform the vector product of the unit unit vectors i and j to obtain the unit unit unit unit k in the direction Oz.
  • preliminary construction of the Oxyz orthonormal coordinate system may include: installation of the manipulator with three colored marks applied to it, including the first mark, the second mark and the third mark, in the field of view of the scene stereo camera, and these three marks do not lie on one straight line, but their coordinates are known in the manipulator coordinate system; determining the coordinates of the first point, the second point and the third point corresponding to the first mark, the second mark and the third mark, in the coordinate system of the scene stereo camera; and the construction of the orthonormal coordinate system Oxyz, in which: the first point is selected by the origin, the ort of the vector passing from the first point to the second point is selected by the direction of the unit vector i in the Ox direction, the Gram-Schmidt orthogonalization of the vector passing from the first point to the third point is performed , relative to the unit unit vector i to obtain the unit unit unit j in the direction Oy, and perform the vector product of the unit unit vectors / and j to obtain the unit unit unit unit k in the direction Oz.
  • any known robotic system can be used, which is a manipulator with a gripping device installed on it (also called a robotic arm, gripper, etc.).
  • a manipulator with a gripping device installed on it
  • such systems contain a stereo camera of a scene, with the help of which images of objects and images of the vicinity of an object of interest, called a scene (or a scene around an object), are obtained, as well as another stereo camera for obtaining images of the left eye and right eye, hereinafter, for convenience, called a stereo camera. eye.
  • the system should be able to determine the shape and size of the object (or the three-dimensional form factor of the object), the point of the object, and the point of the gripper.
  • the specified data can be determined by the system in true coordinates, or global coordinates, i.e. in the coordinates of the object or the stereo camera of the scene, and not only in the relative coordinates of the image, or the coordinates of the stereo camera of the eyes.
  • the library of capture methods allows you to select the optimal capture method for an arbitrary object of arbitrary purpose and form factor, or to determine that this object cannot be captured with a given gripper, or to determine that it is possible to capture this object with a given gripper, but the grip will be unstable.
  • the library is made in the form of a neural network, for which the classes are capture methods, and the capture methods according to the invention are as follows: the capture is stable in the horizontal plane and in the vertical plane; the grip is stable in the horizontal plane; the grip is unstable in the horizontal plane.
  • the grip is considered stable in the horizontal plane and the vertical plane if it is determined that the object does not slip out of the gripper, any three-dimensional movement of the object and the inclination of the object by an angle within the specified limits or by an arbitrary angle are allowed. In this case, the grip is considered completely stable.
  • the grip is considered stable in the horizontal plane if it is determined that there is no vertical fixation. Detachment and lifting of an object from the reference plane is impossible (i.e., when detached, the object will most likely fall out of the gripper), but without detachment from the reference plane, any movement of the object is permissible. In this case, the grip is considered partially stable.
  • Gripping is considered unstable in the horizontal plane if it is determined that full horizontal fixation of the object is impossible (for example, the object cannot be gripped with your fingers), but the object can move in a certain set of directions without taking off from the surface. The separation of the object from the reference plane is also impossible. In this case, the grip is considered unstable.
  • the script for manipulating the object should take into account the stability of the grip. For example, if there is no need to lift the object off the reference plane, but only need to move it, you can choose any grip stability option, including a partially stable grip or even an unstable grip. If it is required to move the object vertically with a separation from the reference plane (for example, to raise the glass), then it is necessary to use only a completely stable grip.
  • the user chooses the object with which he is going to manipulate. This can be done using a stereo camera of the eyes, which determines the direction of looking at the object, for example, in the following way.
  • images of the left eye and images of the right eye are obtained containing flares from the light sources of the left eye and right eye (these may be located near the stereo camera of the eyes).
  • the position of the pupil of the eye is determined, the position and numbering of the highlights on the cornea of the eye are determined, the optical axis of the direction of the gaze of each eye is determined, and the direction of gaze is already determined from it.
  • a preliminary search for the pupil is performed, a preliminary ellipse of the pupil is constructed, and an ellipse of the pupil is constructed from its nodal points.
  • a preliminary position of the center of the pupil can be determined, as well as the number of pixels in the area of the pupil, which preliminarily characterizes its size.
  • the binarization threshold is found in the preliminary pupil area and binarization is performed to determine the pupil boundary in order to construct the preliminary pupil ellipse.
  • the search for highlights on the cornea of the eye can be performed, for example, by thresholding the eye image with the selection of clusters and filtering the clusters by brightness, size and the parameter of deviation from roundness.
  • the size of the iris it is preferable to use information about the average size of the human iris and information about the distance from the corresponding camera of the left eye or the camera of the right eye to the pupil, which improves the accuracy of determining the direction of gaze.
  • Flare numbering can be performed from one flare from the upper pair closest to the bridge of the nose, in a circle, away from the bridge of the nose, i.e. clockwise for the right eye and counterclockwise for the left eye.
  • the nodal point of the eye, the refractive point for the center of the pupil, and the position of the center of the pupil in the coordinate system of the scene camera are determined.
  • the stage of determining the direction of gaze can also include calibration of the direction of gaze, which is performed either on one of the specified stages, or in advance. In this case, it is enough to calibrate once for a specific user, and re-calibration is no longer required. In particular, when calibrating the direction of gaze, the individual characteristics of the user and the relative position of the cameras of the left and right eyes and the scene camera are taken into account.
  • the step of obtaining by the stereo camera of the scene information about the object with which the user is going to perform the required manipulation is carried out.
  • a method for obtaining a set of objects of a three-dimensional scene in which images of frames from the left camera and the right camera are simultaneously obtained as part of the scene stereo camera, for each image point with pixel coordinates, a disparity map is formed by the method of semi-global establishment of stereo correspondences, according to the disparity map, the true coordinates of the specified point are determined (i.e., the coordinates of the point in the coordinate system of the scene stereo camera), the map of the depths of the points in true coordinates is formed, a two-dimensional image in the gray scale is formed, in which the brightness of the point depends on the true distance to the point, and on the resulting two-dimensional image in gray scale perform detection and identification of objects by one of the methods selected from the Viola-Jones method (R.
  • the disparity map is formed by the method of semi-global establishment CTepeocooTBeTCTBHft (Semi-Global Matching, or SGM; the method is described, for example, in Heiko Hirschmuller. Accurate and Efficient Stereo Processing by Semi-Global Matching and Mutual Information. IEEE Conference on Computer Vision and Pattern Recognition ( CVPR), San Diego, CA, USA, June 20-26, 2005).
  • the true coordinates of the point are determined taking into account the focal lengths of the cameras in the composition stereo cameras of the scene and the distance between them.
  • the brightness of a point is assumed to be zero if the true distance to it is outside the specified range.
  • the disparity map is a visual display of shifts between equally spaced fragments of images of the left and right cameras of the scene stereo camera (the closer the scene point is, the greater these shifts).
  • this "discrepancy" can be represented as a numeric array, the elements of which show the difference in pixels of the points of the right and left images, tied to one of them. Rectification of images from different angles (alignment of the right and left images horizontally) allows you to reduce the dimension of the array - to reduce it to two-dimensional. For ease of perception, this matrix is presented in a graphical form: the greater the discrepancy between the images, the brighter the corresponding pixels in the image.
  • Local algorithms calculate disparity separately for each pixel, while taking into account information only from its narrow neighborhood.
  • the algorithms mainly use square or rectangular windows of a fixed size and, according to some metric, compare the sums of the absolute values of the brightness within these windows.
  • Such algorithms are characterized by high speed and computational efficiency. However, acceptable performance is only ensured if the pixel intensity function is smooth. At the boundaries of objects, where the intensity function breaks, the algorithms make a significant number of errors. Further development of the methods led to the emergence of multi-window algorithms and windows with an adaptive structure, which improved the quality of disparity calculation. But the "payment" for this was a significant increase in operating time, which often leads to the impossibility of analyzing images in real time.
  • Global algorithms are based on calculating the disparity simultaneously for the entire image, while each pixel of the image affects the solution in all other pixels. Global algorithms differ both in the form of unary and pair potentials, and in the minimization algorithms and the structure of the graph. Despite the fact that, as a rule, in terms of efficiency, global algorithms are superior to local ones, the resulting disparity maps are not free from errors caused by the simplifications that were originally incorporated into the formula for the energy functional. Moreover, global algorithms are slower.
  • Semi-global, or partially global, algorithms are a sensible trade-off between fast but imprecise local algorithms and more accurate but slow global algorithms to rationally exploit their strengths.
  • the idea of a semi-global algorithm is the independence of the solution for each pixel, taking into account the influence of all (or a part not limited by the local neighborhood) of the remaining pixels of the image.
  • a disparity map is formed by the method of semi-global establishment of stereo correspondences with obtaining disparity d (x, y) for each image point with pixel coordinates (x, y).
  • a depth map D (x, y) is formed, where D is the true distance from the left camera or right camera to the point with pixel coordinates (x, y).
  • a two-dimensional gray-scale image is formed, on which the brightness ⁇ (x, y) of a point with pixel coordinates (x, y) is set by the formulas:
  • a stereo camera serves a manipulator for gripping and moving objects with a manipulator working area diameter of 3 m, while being at a distance of 1.5 m from the center of the working area
  • Dmin 0.2 m
  • a Dmax 5 m, in order to guarantee the display of the manipulator working zone and its surroundings, i.e. setting a margin of approximately 0.3 m and 0.5 m, respectively, from the near border of the manipulator working area and from the far border of the manipulator working area.
  • objects are detected and identified by one of the methods selected from the Viola-Jones method, the SSD-mobilenet neural network method and the Mask R-CNN neural network method, to obtain a set of objects in a three-dimensional scene.
  • the system After selecting an object to determine the direction of gaze and receiving by the stereo camera of the scene information about the object with which the user is going to perform the required manipulation, such as the shape of the object, the size of the object and the point of the object's position, it is determined whether this object can be captured by the used gripper, and if so what capture methods are available to the system (see figure). Otherwise, the system displays a message about the inability to capture.
  • the library can contain information about three-dimensional form factors of objects with which the specified gripper can work with a given degree of probability. At the same time, for each object form factor, the library can contain information about pre-grip positions, gripper positions, and gripper states.
  • the gripper is first set in the pre-gripping position.
  • the pre-capture position is the position of the gripper near the selected object, from which the gripper must perform uniquely specified actions precisely to capture the object, and it is assumed that the gripper the device is close to the object and there are no obstacles between the gripper and the object.
  • the movement of the gripper is generally determined only by the condition of not touching obstacles and bringing the gripper to the selected object in the pre-gripping position, while the correct orientation of the gripper and the position of its fingers are unimportant.
  • the pre-grip position is the position of the gripper with the fingers correctly positioned near the handle of the kettle.
  • the gripper is simply delivered to the desired position, avoiding obstacles in its path.
  • the object (teapot) gripping algorithm already works: for example, first the fingers of the gripper and the gripper itself move so that the teapot handle is at the desired point between the fingers of the gripper, and then the teapot is fixed in the gripper by moving the fingers.
  • the grip state is the orientation of the palm and the position of the fingers of the gripper. Starting from the pre-gripping position and until the end of the object gripping procedure, at each moment of time, the correct state of the gripper must be ensured in order to correctly grip the object: bring the gripper from the right side, first, do not touch the object with your fingers so that it does not move, then, after approaching the gripper device, fix the object with your fingers.
  • the system After the system receives information about the possibility of gripping a given object with the used gripper, using the library data, as well as information about the shape, size of the object and its location, determine the optimal position of the pre-grip for this object (for example, for a standing glass, this is the position on the side - the fingers of the gripper are ready grab the glass from the sides; for the same glass lying on its side, this is the position from above - fingers are ready to grab from above).
  • the pre-grip position for an object for example, one for grabbing the body from the side, the second for grabbing the handle from the side, and the third for grabbing the body from above.
  • the optimal pre-capture position is considered to be the one which, according to the information in the library, turned out to be successful for the maximum class of close situations and objects.
  • the libraries determine the optimal capture algorithm, i.e. optimal movements of the fingers and the gripper itself.
  • the capture library can be implemented as a neural network. It is preferable if it is a neural network with categorical output, in which, based on the input data, the library offers all possible pre-capture positions with an indication of the weight of each of them. Accordingly, the weight of the optimal pre-grip positions is close to 1 (one), and the weight of inappropriate or unusable pre-grip positions is close to 0 (zero).
  • the optimal position is the pre-capture position, the weight of which is closest to 1, and the concept of “grasping ability” is defined precisely as the weight exceeding the pre-capture position of the specified threshold.
  • a feature of using a depth map which distinguishes it from known analogs, is that the detection and identification of objects in images is performed not on the image of points in pixel coordinates (relative coordinates on the image itself), but on a two-dimensional image in gray scale (preferably 8-bit ), in which the brightness of a point depends on the true distance to the point, i.e. from the point's true coordinates, or global coordinates.
  • the position of the gripper is determined (in the general case, this can be done earlier) and the gripper is brought to the pre-grip point.
  • the gripper is brought to the pre-gripping point, which is at a distance of 0.01 to 0.1 m to the object; is located in a vertical plane passing through the center of the object and the attachment point of the gripper.
  • Determination of the position of the gripper is performed as follows.
  • the position of the gripping device in the manipulator coordinate system is determined, which is possible in at least two ways.
  • a colored mark is applied to the manipulator (or gripper, since the position of the gripping device relative to the manipulator is precisely specified) so that its coordinates can be calculated in the three-dimensional coordinate system of the manipulator (gripper). Then the manipulator is sequentially set in three arbitrary positions, but such that the positions of the colored mark in these positions do not lie on one straight line.
  • the coordinates of the points of the position of the mark are determined at the indicated three arbitrary positions, hereinafter called the first point, the second point and the third point, in the coordinate system of the scene stereo camera.
  • three colored marks are applied to the manipulator, which do not lie on one straight line, and so that their coordinates in the coordinate system manipulators were known. In this case, all three marks must fall into the field of view of the scene stereo camera. Then proceed in the same way as in the first option.
  • the coordinates of the position points of three marks hereinafter also called the first point, the second point and the third point, are determined in the scene stereo camera coordinate system.
  • orthonormal coordinate system Oxyz is constructed as follows.
  • An arbitrary point from the three indicated, for example, the first point, is selected as the origin of coordinates.
  • a unit unit vector i in the direction Ox choose the vector vector passing from the first point to the second point.
  • the unit vector j in the direction Oy is chosen as the vector vector obtained as a result of the Gram-Schmidt orthogonalization of the vector passing from the first point to the third point relative to the vector i.
  • the vector product of the vectors i and j is chosen as the unit vector k in the direction Oz.
  • the resulting Oxyz coordinate system allows for any point or any vector to recalculate their coordinates from the scene stereo camera coordinate system to the manipulator coordinate system or in the opposite direction. Indeed, since the construction is performed simultaneously in the manipulator coordinate system and the scene stereo camera coordinate system, for any vector in the manipulator coordinate system and the scene stereo camera coordinate system, it is possible to determine its coordinates in the Oxyz coordinate system by scalar multiplying this vector and the unit vectors r, j, k.
  • the gripping device is installed in the selected pre-gripping position.
  • the gripper position is calculated only to reach the pre-gripping position position. With a given number of fingers of the gripping device, the pre-gripping position must be determined for the object, where the gripping device will be delivered. The number of fingers only affects the position of the pre-grip position relative to the object, the classes of objects that can be gripped, and the actual gripping algorithms (that is, the movements of the fingers and the gripper for the purpose of gripping).
  • a robotic system is used to perform the manipulation, which contains a stereo camera, with the help of which, among other things, images of the space around the object of interest, called a scene (or a scene around the object), are obtained.
  • the scene determines, in particular, the path of the gripper approaching the pre-gripping point, so that other objects are not touched.
  • the scene is always and constantly defined, for example, in the background, since it can change.
  • the movement algorithm of the gripper can be stopped or changed according to the scene changes.
  • the claimed method of performing manipulation with an object by means of a robotic arm with a gripper has been successfully tested on objects with a horizontal diameter of up to 10 cm, the height of the object is not limited. Due to the fact that the method provides for work with depth maps, there was no fixation of the training library programs on small and insignificant details, and besides, the number of library objects has greatly decreased.
  • the method is universal in the sense that it is actually possible to grip whatever the gripper is theoretically capable of holding. In this case, the method is adaptive with respect to the object, allows for an arbitrary object of arbitrary purpose and form factor either to choose the optimal capture method, or to determine that this object cannot be captured with a given gripper or it is possible, but the capture will be unstable.

Abstract

Изобретение относится к роботизированным системам для манипулирования объектами посредством манипулятора с захватным устройством. Заявленный способ управления роботизированным манипулятором, содержащим захватное устройство для выполнения манипуляций с объектом, стереокамеру сцены для получения изображений сцены и стереокамеру глаз для получения изображений левого глаза и правого глаза, включает обеспечение библиотеки способов захвата объектов захватным устройством; выбор объекта по определению направления взгляда; получение информации об объекте и сцены вокруг объекта; определение возможности захвата объекта; выбор позиции предзахвата захватного устройства и оптимального способа захвата; определение положения захватного устройства; подвод захватного устройства в точку предзахвата и установку захватного устройства в позицию предзахвата; выполнение захвата объекта, и выполнение требуемой манипуляции с объектом. Техническим результатом изобретения является обеспечение возможности захвата и манипуляции с высокой точностью ранее неизвестными объектами, а также объектами сложной формы.

Description

СПОСОБ УПРАВЛЕНИЯ РОБОТИЗИРОВАННЫМ МАНИПУЛЯТОРОМ
Изобретение относится к робототехнике, в частности, к роботизированным системам для манипулирования объектами посредством манипулятора с захватным устройством.
В патенте США US9552673 раскрывается способ и устройство для имитации захвата виртуального объекта в дополненной реальности. Для отслеживания положения руки оператора может применяться сенсорная перчатка, при этом наличие камеры для отслеживания положения руки оператора не требуется. Указано, что движение руки отслеживают путем моделирования формы руки и объекта структурированными периодическими узорами.
Заявка на патент США US2017136632 описывает исключение некорректных положений захватов объектов из возможных вариантов при помощи оператора. Затем данные могут передаваться на вход системы машинного обучения. Кроме того, на вход могут подаваться данные захватного устройства, сгенерированные путем моделирования объекта и захвата в какой-либо среде моделирования. Параметры захватного устройства генерируются самой системой, и чем ближе место захвата к центру объекта, тем захват считается лучше.
В патенте США US9014857 раскрывается способ генерирования видов захвата для применения роботом, имеющим трехпальцевое захватное устройство. Способ включает генерирование множества направлений приближения, каждое из которых перпендикулярно поверхности объекта. Для каждого из направлений приближения определяется набор видов захвата; для каждого из видов захвата по каждому из направлений высчитывается коэффициент качества захвата. Для захвата объекта выбирается захват, коэффициент качества которого выше заданного. Каждый вид захвата, коэффициент качества которого превышает заданный, сохраняется в базе данных, включая данные об изначальном положении захватного устройства, информацию о преобразовании и значение коэффициента качества.
В международной публикации WO2019045779 описаны система и метод для устойчивого захвата объектов. Обучающий набор данных генерируется на основе трехмерных моделей объектов. В обучающий набор данных включен показатель качества захвата, и эти данные подаются на вход нейронной сети. Трехмерные модели объектов могут включать данные о массе объектов (свойствах распределения массы по объекту), свойства вещества объекта. Виды захватов могут подразделяться на классы.
В патенте США US9914213 также раскрываются система и способ машинного обучения для осуществления захвата. Здесь набор обучающих данных формируется из данных, полученных при попытках робота захватить объект.
Патент РФ RU2700246 раскрывает способ и систему захвата объекта с помощью роботизированного объекта, в котором роботизированное устройство обучается с использованием алгоритма машинного обучения для распознавания и запоминания точек захвата объектов. Обучение выполняется на данных, характеризующих фотографические изображения объектов и соответствующие трехмерные модели объектов в различных видах. Это позволяет повысить точность распознавания области захвата объекта роботизированным устройством. Несмотря на это, точность распознавания области захвата объекта может оказаться недостаточной для применения известного способа и системы пользователем с ограниченными или нарушенными двигательными функциями. Кроме того, такая система требует достаточно длительного обучения, а выбор объекта манипулирования из нескольких объектов вообще не предусмотрен.
Из заявки на патент США US2017021500 известны системы и способы определения данных о смещении роботизированной установки в рабочей среде. Робот, работающий в рабочей среде, может получить указание для определения рабочего смещения. Рабочее смещение может описывать местоположение и угловую ориентацию рабочей плоскости рабочей среды относительно базовой плоскости робота. В ответ на указание робот может идентифицировать рабочую плоскость. Робот может управляться для контакта с одной или несколькими точками рабочей плоскости; определять соответствующие местоположения точек контактируемых точек относительно базовой плоскости на основе соответствующих положений робота в соответствующие моменты времени контакта; определять местоположение и угловую ориентацию рабочей плоскости относительно базовой плоскости на основании определенных соответствующих точечных местоположений контактирующих точек.
Заявка на патент США US2019240843 описывает способ манипулирования деформируемым объектом, который включает определение соответствующего трехмерного положения одного или нескольких маркеров на деформируемом объекте, удерживаемом роботизированным манипулятором, а также определения модели деформации деформируемого объекта путем отображения движения робота- манипулятора и движения одного или нескольких маркеров. Управляют роботизированным манипулятором на основе определенной модели деформации, чтобы манипулировать деформируемым объектом и перемещать один или несколько маркеров в соответствующую позицию.
Известные манипуляторы и алгоритмы их работы рассчитаны на манипуляцию с объектами известного назначения, а значит, известной формы и форм-фактора. Обучение часто проводится самой системой, что повышает количество ошибок при ее последующем использовании, а также увеличивает количество объектов в базе объектов, тем самым усложняя критерии выбора подходящего объекта. Поскольку выбор алгоритма захвата объекта привязан к самому объекту, изменение параметров или неточности в этих параметрах могут вызвать проблемы с захватом либо привести к невозможности осуществления захвата и манипуляции с объектом.
Таким образом, существует задача разработки такого способа выполнения манипуляции с объектом посредством роботизированной руки с захватным устройством, который позволяет выполнять манипуляции с произвольным объектом произвольного назначения и форм-фактора, либо выбрать оптимальный способ захвата такого объекта, либо определить, что данным захватным устройством данный объект захватить невозможно, либо захват возможен, но будет неустойчив.
Техническим результатом изобретения является обеспечение возможности захвата и манипуляции с высокой точностью ранее неизвестными объектами, а также объектами сложной формы.
Поставленная задача решается, а заявленный технический результат достигается в предложенном способе управления роботизированным манипулятором, содержащим захватное устройство для выполнения манипуляций с объектом, стереокамеру сцены для получения изображений сцены и стереокамеру глаз для получения изображений левого глаза и правого глаза, который включает следующие этапы: a) обеспечение библиотеки способов захвата объектов захватным устройством;
B) выбор объекта по определению направления взгляда, при котором:
Ы) получают изображения левого глаза и правого глаза,
Ь2) определяют положение зрачка каждого глаза,
ЬЗ) определяют направление вектора направления взгляда каждого глаза, и Ь4) определяют направление взгляда в системе координат стереокамеры сцены; c) получение информации об объекте и сцены вокруг объекта, при котором: cl) получают изображения левого кадра и правого кадра сцены, с2) формируют карту диспаратности способом полуглобального установления стереосоответствий с получением диспаратности для каждой точки изображения с пиксельными координатами, сЗ) определяют истинные координаты точек с пиксельными координатами и формируют карту глубин, с4) формируют двухмерное изображение в шкале серого, на котором яркость точек с пиксельными координатами зависит от положения точек на карте глубин, и с5) выполняют детекцию и идентификацию объектов с получением набора объектов трехмерной сцены; d) определение возможности захвата объекта; e) выбор позиции предзахвата захватного устройства и оптимального способа захвата; f) определение положения захватного устройства, при котором: fl ) определяют положение захватного устройства в системе координат манипулятора, и f2) определяют положение захватного устройства, включающее точку положения захватного устройства и вектор направления захватного устройства, в системе координат стереокамеры сцены; g) подвод захватного устройства в точку предзахвата и установку захватного устройства в позицию предзахвата; h) выполнение захвата объекта, и i) выполнение требуемой манипуляции с объектом.
Поставленная задача решается, а заявленный технический результат достигается также в частных вариантах реализации способа управления роботизированным манипулятором, которыми, однако, данное изобретение не ограничивается.
Так, является предпочтительным, если для осуществления этапа £2) выполняют предварительное построение ортонормальной системы координат Oxyz с единичными ортами г, j, к и разложение вектора положения захватного устройства в системе координат Oxyz по базису системы координат стереокамеры сцены.
Предварительное построение ортонормальной системы координат Oxyz может включать: последовательную установку манипулятора с нанесенной на него цветной меткой в три произвольные позиции, в которых положения цветной метки не лежат на одной прямой, причем координаты положения цветной метки известны в системе координат манипулятора; определение координат первой точки, второй точки и третьей точки положения метки в трех указанных положениях в системе координат стереокамеры сцены; и построение ортонормальной системы координат Oxyz, при котором: выбирают первую точку началом координат, выбирают орт вектора, проходящего от первой точки во вторую точку, направлением единичного орта i в направлении Ох, выполняют ортогонализацию Грама-Шмидта вектора, проходящего от первой точки в третью точку, относительно единичного орта i для получения единичного орта j в направлении Оу, и выполняют векторное произведение единичных ортов i и j для получения единичного орта к в направлении Oz.
Альтернативно, предварительное построение ортонормальной системы координат Oxyz может включать: установку манипулятора с нанесенными на него тремя цветными метками, включающими первую метку, вторую метку и третью метку, в поле зрения стереокамеры сцены, причем указанные три метки не лежат на одной прямой, а их координаты известны в системе координат манипулятора; определение координат первой точки, второй точки и третьей точки, соответствующих первой метке, второй метке и третьей метке, в системе координат стереокамеры сцены; и построение ортонормальной системы координат Oxyz, при котором: выбирают первую точку началом координат, выбирают орт вектора, проходящего от первой точки во вторую точку, направлением единичного орта i в направлении Ох, выполняют ортогонализацию Грама-Шмидта вектора, проходящего от первой точки в третью точку, относительно единичного орта i для получения единичного орта j в направлении Оу, и выполняют векторное произведение единичных ортов / и j для получения единичного орта к в направлении Oz.
Далее заявленный способ управления роботизированным манипулятором и некоторые варианты его осуществления более подробно поясняются со ссылкой на фигуру, на которой схематично представлена блок-схема алгоритма захвата объекта для целей выполнения манипуляции с ним.
Для выполнения манипуляции с объектом может быть использована любая известная роботизированная система, представляющая собой манипулятор с установленным на нем захватным устройством (также называемым роботизированной рукой, схватом и др.). Как правило, такие системы содержат стереокамеру сцены, с помощью которой получают изображения объектов и изображения окрестности представляющего интерес объекта, называемого сценой (или сценой вокруг объекта), а также еще одну стереокамеру для получения изображений левого глаза и правого глаза, далее для удобства называемую стереокамерой глаз. Кроме того, система должна позволять определять форму и размеры объекта (или трехмерный форм-фактор объекта), точку положения объекта, а также точку положения захватного устройства. При этом, как будет показано далее, предпочтительно, чтобы указанные данные система могла определять в истинных координатах, или глобальных координатах, т.е. в координатах объекта или стереокамеры сцены, а не только в относительных координатах изображения, или координатах стереокамеры глаз.
Согласно алгоритму, представленному на фигуре, для выполнения требуемой манипуляции с объектом посредством роботизированной руки, снабженной захватным устройством, необходимо сформировать библиотеку способов захвата объекта конкретно данным захватным устройством. Замена одного захватного устройства на другое, вообще говоря, может потребовать формирования другой библиотеки способов захвата. Это обусловлено тем, что захватные устройства могут иметь различное количество пальцев, их размеры, подвижность, силу захвата и другие параметры, учет которых необходим для обеспечения определения вероятности успешного полного или частичного захвата того или иного объекта.
Библиотека способов захвата, далее для краткости также именуемая библиотекой, позволяет для произвольного объекта произвольного назначения и форм- фактора выбрать оптимальный способ захвата, или определить, что данным захватным устройством данный объект захватить невозможно, или определить, что данным захватным устройством данный объект захватить возможно, но захват будет неустойчив.
В предпочтительном варианте реализации заявленного способа библиотеку выполняют в виде нейронной сети, для которой классами являются способы захвата, причем способами захвата согласно изобретению являются следующие: захват устойчив в горизонтальной плоскости и вертикальной плоскости; захват устойчив в горизонтальной плоскости; захват неустойчив в горизонтальной плоскости.
Захват считается устойчивым в горизонтальной плоскости и вертикальной плоскости, если определено, что объект из захватного устройства не выскальзывает, допустимы любые трехмерные перемещения объекта и наклон объекта на угол в заданных пределах либо на произвольный угол. В этом случае захват считается полностью устойчивым. Захват считается устойчивым в горизонтальной плоскости, если определено, что вертикальная фиксация отсутствует. Отрыв и подъем объекта от опорной плоскости невозможен (т.е. при отрыве объект с большой долей вероятности выпадет из захватного устройства), но без отрыва от опорной плоскости допустимо любое перемещение объекта. В этом случае захват считается частично устойчивым.
Захват считается неустойчивым в горизонтальной плоскости, если определено, что полная горизонтальная фиксация объекта невозможна (например, объект невозможно обхватить пальцами), но возможно передвижение объекта в некотором наборе направлений без отрыва от поверхности. Отрыв объекта от опорной плоскости также невозможен. В этом случае захват считается неустойчивым.
Соответственно, сценарий манипуляций с объектом должен учитывать устойчивость захвата. Например, если нет необходимости отрывать объект от опорной плоскости, а нужно только передвинуть его, можно выбрать любой вариант устойчивости захвата, в том числе частично устойчивый захват или даже неустойчивый захват. Если же требуется переместить объект по вертикали с отрывом от опорной плоскости (например, поднять стакан), то необходимо использовать только полностью устойчивый захват.
Пользователь выбирает объект, с которым он собирается совершить манипуляцию. Это можно осуществить посредством стереокамеры глаз, определяющей направление взгляда на объект, например, следующим способом.
Сначала получают изображения левого глаза и изображения правого глаза, содержащие блики от источников света левого глаза и правого глаза (они могут располагаться рядом со стереокамерой глаз). Далее определяют положение зрачка глаза, определяют положение и проводят нумерацию бликов на роговице глаза, определяют оптическую ось направления взгляда каждого глаза и по ней уже определяют направление взгляда. При определении положения зрачка каждого глаза на изображении каждого глаза выполняют предварительный поиск зрачка, выполняют построение предварительного эллипса зрачка, и по его узловым точкам строят эллипс зрачка. При определении положения и нумерации бликов на роговице каждого глаза на изображении глаза выполняют поиск бликов, вычисляют размер радужки, исключают блики, находящиеся за пределами радужки, и выполняют нумерацию бликов для определения вектора направления взгляда. При определении оптической оси направления взгляда каждого глаза определяют нодальную точку глаза, точку рефракции для центра зрачка, положение центра зрачка в системе координат камеры сцены. Определение направления взгляда выполняют на основании определенной оптической оси направления взгляда и калибровки направления взгляда.
Для предварительного поиска зрачка могут определять предварительное положение центра зрачка, а также количество пикселей в области зрачка, предварительно характеризующее его размер. При построении предварительного эллипса зрачка, предпочтительно, если в предварительной области зрачка находят порог бинаризации и выполняют бинаризацию для определения границы зрачка с целью построения предварительного эллипса зрачка. Для построения эллипса зрачка по узловым точкам границы предварительного эллипса зрачка можно использовать метод наименьших квадратов. При этом предпочтительно отфильтровывать узловые точки таким образом, чтобы они образовывали выпуклую фигуру.
Поиск бликов на роговице глаза можно выполнять, например, пороговой обработкой изображения глаза с выделением кластеров и фильтрацией кластеров по яркости, размеру и параметру отклонения от круглости.
При вычислении размера радужки предпочтительно использовать информацию о среднем размере человеческой радужки и информацию о расстоянии от соответствующей камеры левого глаза или камеры правого глаза до зрачка, что повышает точность определения направления взгляда.
Нумерация бликов может выполняться от одного блика из верхней пары, ближайшего к переносице, по кругу, в сторону от переносицы, т.е. по часовой стрелке для правого глаза и против часовой стрелки для левого глаза.
При определении оптической оси направления взгляда каждого глаза определяют нодальную точку глаза, точку рефракции для центра зрачка, положение центра зрачка в системе координат камеры сцены.
Кроме того, этап определения направления взгляда также может включать калибровку направления взгляда, которая выполняется либо на одном из указанных этапов, либо заранее. При этом достаточно единожды выполнить калибровку для конкретного пользователя, и повторная калибровка уже не потребуется. В частности, при калибровке направления взгляда учитывают индивидуальные особенности пользователя и взаимное положение камер левого и правого глаза и камеры сцены.
Далее, после выбора объекта посредством определения направления взгляда, выполняют этап получения посредством стереокамеры сцены информации об объекте, с которым пользователь собирается совершить требуемую манипуляцию, такой как форма объекта, размеры объекта и точка положения объекта. В качестве одного из вариантов получения указанной информации может быть использован способ получения набора объектов трехмерной сцены, в котором одновременно получают изображения кадров с левой камеры и правой камеры в составе стереокамеры сцены, для каждой точки изображения с пиксельными координатами формируют карту диспаратности методом полуглобального установления стереосоответствий, по карте диспаратности определяют истинные координаты указанной точки (т.е. координаты точки в системе координат стереокамеры сцены), формируют карту глубин точек в истинных координатах, формируют двухмерное изображение в шкале серого, в котором яркость точки зависит от истинного расстояния до точки, и на полученном двухмерном изображении в шкале серого выполняют детекцию и идентификацию объектов одним из методов, выбранных из метода Виолы- Джонса (Р. Viola, M.J. Jones. Robust Real-Time Face Detection International Journal of Computer Vision 57(2), 137-154, 2004), метода нейронной сети SSD-mobilenet (см., например, заявку на патент Китая CN 109398688) и метода нейронной сети Mask R-CNN ( Kaiming Не, Georgia Gkioxari, Piotr Dollar Ross Girshick. Mask R-CNN; опубликовано 24.01.2018, доступно по ссылке в сети Интернет htps://arxiv.org/pdf/1703.06870.pdfl. с получением набора объектов трехмерной сцены. При этом карту диспаратности формируют методом полуглобального установления CTepeocooTBeTCTBHft(Semi-Global Matching, или SGM; метод описан, например, в Heiko Hirschmuller. Accurate and Efficient Stereo Processing by Semi-Global Matching and Mutual Information. IEEE Conference on Computer Vision and Pattern Recognition (CVPR), San Diego, CA, USA, June 20-26, 2005). Истинные координаты точки определяют с учетом фокусных расстояний камер в составе стереокамеры сцены и расстояния между ними. Яркость точки принимается равной нулю, если истинное расстояние до нее выходит за заданный диапазон.
Карта диспаратности - это визуальное отображение сдвигов между одинаково расположенными фрагментами снимков левой и правой камер стереокамеры сцены (чем ближе находится точка сцены, тем эти сдвиги больше). Как известно, это «расхождение» можно представить как числовой массив, элементы которого показывают разность в пикселах точек правого и левого изображений, привязанную к одному из них. Ректификация разноракурсных изображений (выравнивание правого и левого снимков по горизонтали) позволяет уменьшить размерность массива - свести его к двумерному. Для удобства восприятия эта матрица представляется в графическом виде: чем больше расхождение между снимками, тем светлее соответствующие пикселы изображения.
Для построения карт диспаратности используется ряд алгоритмов, в целом подразделяющихся на три класса: локальные, глобальные и полуглобальные (частично глобальные).
Локальные алгоритмы рассчитывают диспаратность в отдельности для каждого пиксела, при этом учитывая информацию лишь из узкой его окрестности. Алгоритмы используют, в основном, квадратные или прямоугольные окна фиксированного размера и по какой-либо метрике сравнивают суммы абсолютных значений яркости внутри этих окон. Такие алгоритмы характеризуются высокой скоростью и вычислительной эффективностью. Однако приемлемое качество работы обеспечивается только при условии гладкости функции интенсивности пикселей. На границах объектов, где функция интенсивности терпит разрыв, алгоритмы допускают значительное количество ошибок. Дальнейшее развитие методов привело к появлению многооконных алгоритмов и окон с адаптивной структурой, что улучшило качество расчета диспаратности. Но «платой» за это стало значительное увеличение времени работы, что зачастую приводит к невозможности анализа изображений в реальном времени.
Глобальные алгоритмы основаны на вычислении диспаратности одновременно для всего изображения, при этом каждый пиксел изображения оказывает влияние на решение во всех остальных пикселах. Глобальные алгоритмы различаются как видом унарного и парного потенциалов, так и алгоритмами минимизации и структурой графа. Несмотря на то, что, как правило, по результативности глобальные алгоритмы превосходят локальные, полученные карты диспаратности не свободны от ошибок, обусловленных теми упрощениями, которые изначально заложены в формулу для функционала энергии. При этом глобальные алгоритмы являются более медленными.
Полуглобальные, или частично глобальные, алгоритмы являются разумным компромиссом между быстрыми, но неточными локальными алгоритмами и более точными, но медленными глобальными алгоритмами, позволяющим рационально использовать их сильные стороны. Идея полуглобального алгоритма состоит в независимости решения для каждого пиксела с учетом влияния всех (или части, не ограниченной локальной окрестностью) остальных пикселов изображения.
В частности, для получения информации об объекте и сцены вокруг объекта обеспечивают по существу одновременное получение левого кадра от левой камеры и правого кадра от правой камеры при съемке сцены. Формируют карту диспаратности способом полуглобального установления стереосоответствий с получением диспаратности d(x,y) для каждой точки изображения с пиксельными координатами (х,у). Определяют истинные координаты (C,U,Z) точки с пиксельными координатами (х,у) по формулам:
X=(x-Q00+Q03)/W,
Y=(yQll+Q13)/W,
Z=Q23/W, где W=d Q32+Q33, a Q00, Q03, Q11, Q13, Q23 - постоянные, определяемые фокусными расстояниями левой камеры и правой камеры и расстоянием между левой камерой и правой камерой. Далее формируют карту глубин D(x,y), где D - истинное расстояние от левой камеры или правой камеры до точки с пиксельными координатами (х,у). Формируют двухмерное изображение в шкале серого, на котором яркость Ф(х,у) точки с пиксельными координатами (х,у) задают по формулам:
Ф(х,у) = 0, если D(x,y) < Dmin,
Ф(х,у) = 255, если D(x,y) > Dmax, Ф(х,у) = 255 (D(x,y) - Dmin)/(Dmax - Dmin) - в остальных случаях, где Dmin и Dmax - заданные соответственно минимальное и максимальное значения глубины, определяемые из контекста применения заявленного способа. Например, если стереокамера обслуживает манипулятор для захвата и перемещения объектов с диаметром рабочей зоны манипулятора 3 м, при этом находясь на расстоянии 1,5 м от центра рабочей зоны, можно взять Dmin=0,2 м, полагая, что в более ближней к стереокамере сцены зоне манипуляции не планируются, a Dmax=5 м, чтобы гарантированно отображать рабочую зону манипулятора и ее окрестность, т.е. задав запас примерно 0,3 м и 0,5 м соответственно от ближней границы рабочей зоны манипулятора и от дальней границы рабочей зоны манипулятора.
На полученном двухмерном изображении в шкале серого выполняют детекцию и идентификацию объектов одним из методов, выбранных из метода Виолы- Джонса, метода нейронной сети SSD-mobilenet и метода нейронной сети Mask R-CNN, с получением набора объектов трехмерной сцены.
После выбора объекта по определению направления взгляда и получения посредством стереокамеры сцены информации об объекте, с которым пользователь собирается совершить требуемую манипуляцию, такой как форма объекта, размеры объекта и точка положения объекта, определяют, можно ли данный объект захватить используемым захватным устройством, и если да, какие способы захвата доступны системе (см. фигуру). В противном случае система выдает сообщение о невозможности выполнить захват.
Библиотека может содержать информацию о трехмерных форм-факторах объектов, с которыми может работать указанное захватное устройство с заданной степенью вероятности. При этом для каждого форм-фактора объекта библиотека может содержать информацию о позициях предзахвата, позициях захвата и состояниях захватного устройства.
Для захвата объекта захватное устройство вначале устанавливают в позицию предзахвата. Позиция предзахвата - это то положение захватного устройства вблизи выбранного объекта, из которого захватное устройство должно выполнить однозначно заданные действия именно для захвата объекта, причем предполагается, что захватное устройство находится вблизи объекта, и между захватным устройством и объектом препятствий нет. До позиции предзахвата движение захватного устройства обусловлено, в общем случае, только условием не задевания препятствий и подведением захватного устройства к выбранному объекту в позицию предзахвата, и при этом правильная ориентация захватного устройства и положение его пальцев являются несущественными.
Например, необходимо взять чайник за ручку. Позиция предзахвата - это положение захватного устройства с правильно расположенными пальцами возле ручки чайника. До позиции предзахвата захватное устройство просто доставляется в нужную позицию в обход препятствий на его пути. Начиная с позиции предзахвата работает уже алгоритм захвата объекта (чайника): например, вначале пальцы захватного устройства и само захватное устройства движутся так, чтобы ручка чайника оказалась в нужной точке между пальцами захватного устройства, а затем движением пальцев чайник фиксируют в захватном устройстве.
Состояние захвата - это ориентация ладони и положение пальцев захватного устройства. Начиная с позиции предзахвата и до завершения процедуры захвата объекта в каждый момент времени должно быть обеспечено правильное состояние захватного устройства, чтобы правильно схватить объект: с нужной стороны подвести захватное устройство, вначале пальцами не задеть объект, чтобы он не передвинулся, затем, после подвода захватного устройства, пальцами зафиксировать объект.
После получения системой информации о возможности захватить данный объект используемым захватным устройством, используя данные библиотеки, а также информацию о форме, размерах объекта и его расположении, определяют оптимальную позицию предзахвата для данного объекта (например, для стоящего стакана это позиция сбоку - пальцы захватного устройства готовы схватить стакан с боков; для того же стакана, лежащего на боку, это позиция сверху - пальцы готовы схватить сверху). Для объекта может существовать несколько вариантов позиции предзахвата, например, одна для захвата сбоку за корпус, вторая - для захвата сбоку за ручку, третья - для захвата сверху за корпус. Тогда оптимальной позицией предзахвата считается та, которая, согласно информации в библиотеке, оказалась удачной для максимального класса близких ситуаций и объектов.
Одновременно с оптимальной позицией предзахвата из конечного набора данных библиотеки определяют оптимальный алгоритм захвата, т.е. оптимальные движения пальцев и самого захватного устройства.
Как было указано выше, библиотека захватов может быть реализована как нейронная сеть. Предпочтительно, если это нейронная сеть с категориальным выходом, в которой на основании входных данных библиотека предлагает все возможные позиции предзахвата с указанием веса каждой из них. Соответственно, вес оптимальных позиций предзахвата близок к 1 (единице), а вес нецелесообразных или непригодных позиций предзахвата близок к 0 (нулю). Оптимальной является позиция предзахвата, вес которой самый близкий к 1, а понятие «возможность схватить» определяется именно как превышение весом позиции предзахвата заданного порога.
Как и для любой нейронной сети, сначала надо провести обучение библиотеки, что может быть выполнено различными известными способами. Результатом является создание библиотеки способов захвата для данного захватного устройства, которая работает как нейронная сеть и определяет, какие объекты могут быть захвачены и каким образом. Является предпочтительным, если при обучении библиотеки фиксация видеоизображений осуществляется в формате карты глубин. Особенностью использования карты глубин, отличающего его от известных аналогов, является то, что детекцию и идентификацию объектов на изображениях выполняют не на изображении точек в пиксельных координатах (относительных координатах на самом изображении), а на двухмерном изображении в шкале серого (предпочтительно, 8-битного), в котором яркость точки зависит от истинного расстояния до точки, т.е. от истинных координат точки, или глобальных координат. При этом детектированию и идентификации подвергают не узоры, рисунки, надписи на объектах и т.п., а темные силуэты объектов на светлом фоне. Поскольку фон является более удаленным, чем объекты, и между фоном и объектами есть некоторое расстояние, то фон на двухмерном изображении в шкале серого светлее объектов, причем образуется контрастная граница между фоном и объектами. Объекты выглядят компактными, контрастными темными силуэтами именно потому, что они расположены ближе, чем фон, и чем ближе объект, тем темнее силуэт объекта. Как следствие, периодические, квазипериодические и стохастические узоры, вообще свойства прозрачности фона и объектов не влияют на процесс детекции и идентификации, потому что обрабатывается только геометрический силуэт, полученный из карты глубин. На этом этапе данные о цветовых и оптических характеристиках объекта уже отсутствуют, т.к. они отсеиваются на этапе стереореконструкции, когда вместо видимого двумерного изображения работают с картой глубин, а на карте глубин данные о раскраске объекта отсутствуют.
После определения оптимальной позиции предзахвата для данного объекта определяют положение захватного устройства (в общем случае это можно сделать и раньше) и подводят захватное устройство в точку предзахвата. Например, захватное устройство подводят в точку предзахвата, которая находится на расстоянии от 0,01 до 0,1 м до объекта; находится в вертикальной плоскости, проходящей через центр объекта и точку крепления захватного устройства.
Определение положения захватного устройства выполняют следующим образом.
Сначала определяют положение захватного устройства в системе координат манипулятора, что возможно осуществить по крайней мере двумя вариантами.
В первом варианте на манипулятор (или захватное устройство, поскольку положение захватного устройства относительно манипулятора точно задано) наносится цветная метка так, чтобы можно было вычислить ее координаты в трехмерной системе координат манипулятора (захватного устройства). Затем манипулятор последовательно устанавливается в три произвольные позиции, но такие, чтобы положения цветной метки в этих позициях не лежали на одной прямой. Используя стереокамеру сцены, при этом применяя автоматическое распознавание цветной метки или кликая мышью на изображении метки, с помощью стереореконструкции определяют координаты точек положения метки в указанных трех произвольных позициях, далее называемых первой точкой, второй точкой и третьей точкой, в системе координат стереокамеры сцены.
Во втором, альтернативном варианте на манипулятор наносят три цветные метки, не лежащие на одной прямой, и так, чтобы их координаты в системе координат манипулятора были известны. При этом все три метки должны попадать в поле зрения стереокамеры сцены. Далее поступают аналогично первому варианту. Используя стереокамеру, при этом применяя автоматическое распознавание каждой метки либо кликая мышью на изображении каждой метки, с помощью стереореконструкции определяют координаты точек положения трех меток, далее также называемых первой точкой, второй точкой и третьей точкой, в системе координат стереокамеры сцены.
Далее строят ортонормальную систему координат Oxyz следующим образом.
За начало координат выбирают произвольную точку из трех указанных, например, первую точку. В качестве единичного орта i в направлении Ох выбирают орт вектора, проходящего от первой точки во вторую точку. В качестве единичного орта j в направлении Оу выбирают орт вектора, получаемого в результате ортогонализации Грама-Шмидта вектора, проходящего от первой точки в третью точку, относительно вектора i . В качестве единичного орта к в направлении Oz выбирают векторное произведение векторов i и j.
Полученная таким образом система координат Oxyz позволяет для любой точки или любого вектора выполнить пересчет их координат из системы координат стереокамеры сцены в систему координат манипулятора либо в обратном направлении. Действительно, поскольку построение выполняется одновременно в системе координат манипулятора и системе координат стереокамеры сцены, для любого вектора в системе координат манипулятора и системе координат стереокамеры сцены возможно определить его координаты в системе координат Oxyz, скалярно перемножая данный вектор и орты г, j, к. Соответственно, для любого вектора в системе координат Oxyz, подставляя вместо ортов /, j, к их явные разложения по базису системы координат стереокамеры сцены или системы координат манипулятора, можно получить координаты вектора соответственно в системе координат стереокамеры сцены или системе координат манипулятора. Следовательно, можно точно определить положение захватного устройства, поскольку, как было указано выше, его положение относительно манипулятора строго задано и точно контролируется механизмами приведения захватного устройства в движение. Аналогично для произвольной точки, вычитая из ее координат координаты первой точки (поскольку она была выбрана в качестве начала координат ортонормальной системы координат Oxyz) в исходной системе координат, можно перейти к вектору, с которым можно проделать любые перечисленные выше действия. После этого, прибавляя координаты первой точки в конечной системе координат, переходят от вектора к точке.
После описанного выше этапа определения положения захватного устройства устанавливают захватное устройство в выбранную позицию предзахвата. Положение захватного устройства рассчитывают только для достижения положения позиции предзахвата. При заданном числе пальцев захватного устройства для объекта должна быть определена позиция предзахвата, куда и будет доставлено захватное устройство. От числа пальцев зависит только положение позиции предзахвата относительно объекта, классы объектов, которые могут быть схвачены, и собственно алгоритмы выполнения захвата (то есть движения пальцев и захватного устройства с целью захвата).
Далее осуществляют захват объекта и, наконец, осуществляют требуемую манипуляцию с объектом.
Как было указано выше, для выполнения манипуляции используется роботизированная система, содержащая стереокамеру, с помощью которой, помимо прочего, получают изображения пространства вокруг представляющего интерес объекта, называемого сценой (или сценой вокруг объекта). Сцена определяет, в частности, путь подвода захватного устройства в точку предзахвата, так чтобы не были задеты другие объекты.
Предпочтительно, если сцена определяется всегда и постоянно, например, в фоновом режиме, поскольку она может меняться. Алгоритм движения захватного устройства может быть остановлен либо изменен в соответствии с изменениями сцены.
Заявленный способ выполнения манипуляции с объектом посредством роботизированной руки с захватным устройством был успешно испытан на объектах с горизонтальным диаметром до 10 см, высота объекта не ограничена. За счет того, что в способе предусмотрена работа с картами глубин, не происходило фиксации обучающей программы библиотеки на мелких и несущественных деталях, а кроме того сильно уменьшилось количество объектов библиотеки. Способ является универсальным в том смысле, что фактически возможно захватить все, что захватное устройство теоретически способно удержать. При этом способ является адаптивным по отношению к объекту, позволяет для произвольного объекта произвольного назначения и форм- фактора либо выбрать оптимальный способ захвата, либо определить, что данным захватным устройством данный объект захватить невозможно или возможно, но захват будет неустойчивым.

Claims

ФОРМУЛА ИЗОБРЕТЕНИЯ
1. Способ управления роботизированным манипулятором, содержащим захватное устройство для выполнения манипуляций с объектом, стереокамеру сцены для получения изображений сцены и стереокамеру глаз для получения изображений левого глаза и правого глаза, включающий: a) обеспечение библиотеки способов захвата объектов захватным устройством;
B) выбор объекта путем определения направления взгляда, при котором:
Ы) получают изображения левого глаза и правого глаза,
Ь2) определяют положение зрачка каждого глаза,
ЬЗ) определяют направление вектора направления взгляда каждого глаза, и Ь4) определяют направление взгляда в системе координат стереокамеры сцены; c) получение информации об объекте и сцены вокруг объекта, при котором: cl) получают изображения левого кадра и правого кадра сцены, с2) формируют карту диспаратности способом полуглобального установления стереосоответствий с получением диспаратности для каждой точки изображения с пиксельными координатами, сЗ) определяют истинные координаты точек с пиксельными координатами и формируют карту глубин, с4) формируют двухмерное изображение в шкале серого, на котором яркость точек с пиксельными координатами зависит от положения точек на карте глубин, и с5) выполняют детекцию и идентификацию объектов с получением набора объектов трехмерной сцены; d) определение возможности захвата объекта; e) выбор позиции предзахвата захватного устройства и оптимального способа захвата; f) определение положения захватного устройства, при котором: fl) определяют положение захватного устройства, включающее точку положения захватного устройства и вектор направления захватного устройства, в системе координат манипулятора, и f2) определяют положение захватного устройства, включающее точку положения захватного устройства и вектор направления захватного устройства, в системе координат стереокамеры сцены; g) подвод захватного устройства в точку предзахвата и установку захватного устройства в позицию предзахвата; h) выполнение захвата объекта, и i) выполнение требуемой манипуляции с объектом.
2. Способ по п. 1, в котором для осуществления этапа f2) выполняют: предварительное построение ортонормальной системы координат Oxyz с единичными ортами /,/, к и разложение вектора положения захватного устройства в системе координат Oxyz по базису системы координат стереокамеры сцены.
3. Способ по п. 2, в котором предварительное построение ортонормальной системы координат Oxyz включает: последовательную установку манипулятора с нанесенной на него цветной меткой в три произвольные позиции, в которых положения цветной метки не лежат на одной прямой, причем координаты положения цветной метки известны в системе координат манипулятора; определение координат первой точки, второй точки и третьей точки положения метки в трех указанных положениях в системе координат стереокамеры сцены; и построение ортонормальной системы координат Oxyz, при котором: выбирают первую точку началом координат, выбирают орт вектора, проходящего от первой точки во вторую точку, направлением единичного орта i в направлении Ох, выполняют ортогонализацию Грама-Шмидта вектора, проходящего от первой точки в третью точку, относительно единичного орта i для получения единичного орта j в направлении Оу, и выполняют векторное произведение единичных ортов / и j для получения единичного орта к в направлении Oz.
4. Способ по п. 2, в котором предварительное построение ортонормальной системы координат Oxyz включает: установку манипулятора с нанесенными на него тремя цветными метками, включающими первую метку, вторую метку и третью метку, в поле зрения стереокамеры сцены, причем указанные три метки не лежат на одной прямой, а их координаты известны в системе координат манипулятора; определение координат первой точки, второй точки и третьей точки положения соответствующих первой метки, второй метки и третьей метки в системе координат стереокамеры сцены; и построение ортонормальной системы координат Oxyz, при котором: выбирают первую точку началом координат, выбирают орт вектора, проходящего от первой точки во вторую точку, направлением единичного орта / в направлении Ох, выполняют ортогонализацию Грама-Шмидта вектора, проходящего от первой точки в третью точку, относительно единичного орта i для получения единичного орта j в направлении Оу, и выполняют векторное произведение единичных ортов г и j для получения единичного орта к в направлении Oz.
PCT/RU2019/000998 2019-12-23 2019-12-23 Способ управления роботизированным манипулятором WO2021133183A1 (ru)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/RU2019/000998 WO2021133183A1 (ru) 2019-12-23 2019-12-23 Способ управления роботизированным манипулятором

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/RU2019/000998 WO2021133183A1 (ru) 2019-12-23 2019-12-23 Способ управления роботизированным манипулятором

Publications (1)

Publication Number Publication Date
WO2021133183A1 true WO2021133183A1 (ru) 2021-07-01

Family

ID=76574545

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/RU2019/000998 WO2021133183A1 (ru) 2019-12-23 2019-12-23 Способ управления роботизированным манипулятором

Country Status (1)

Country Link
WO (1) WO2021133183A1 (ru)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2361726C2 (ru) * 2007-02-28 2009-07-20 Общество С Ограниченной Ответственностью "Алгоритм-Робо" Система управления антропоморфным роботом и способ управления
EP2682710A1 (en) * 2012-07-03 2014-01-08 Canon Kabushiki Kaisha Apparatus and method for three-dimensional measurement and robot system comprising said apparatus
RU2594231C2 (ru) * 2010-12-30 2016-08-10 ЗенРоботикс Ой Способ, компьютерная программа и устройство для определения места захвата
US20190289174A1 (en) * 2018-03-15 2019-09-19 Canon Kabushiki Kaisha Image capturing system, image capturing apparatus, and control method of the same

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2361726C2 (ru) * 2007-02-28 2009-07-20 Общество С Ограниченной Ответственностью "Алгоритм-Робо" Система управления антропоморфным роботом и способ управления
RU2594231C2 (ru) * 2010-12-30 2016-08-10 ЗенРоботикс Ой Способ, компьютерная программа и устройство для определения места захвата
EP2682710A1 (en) * 2012-07-03 2014-01-08 Canon Kabushiki Kaisha Apparatus and method for three-dimensional measurement and robot system comprising said apparatus
US20190289174A1 (en) * 2018-03-15 2019-09-19 Canon Kabushiki Kaisha Image capturing system, image capturing apparatus, and control method of the same

Similar Documents

Publication Publication Date Title
CN109255813B (zh) 一种面向人机协作的手持物体位姿实时检测方法
JP5422735B2 (ja) 可変姿勢を含む画像シーケンスのリアルタイム利用可能なコンピュータ支援分析方法
CN107111753B (zh) 用于注视跟踪模型的注视检测偏移
JP7071054B2 (ja) 情報処理装置、情報処理方法およびプログラム
EP3379396A1 (en) Method for acting on augmented reality virtual objects
CN105487665B (zh) 一种基于头部姿势识别的智能移动服务机器人控制方法
US20150206003A1 (en) Method for the Real-Time-Capable, Computer-Assisted Analysis of an Image Sequence Containing a Variable Pose
RU2700246C1 (ru) Способ и система захвата объекта с помощью роботизированного устройства
JP4445454B2 (ja) 顔中心位置検出装置、顔中心位置検出方法、及び、プログラム
CN112775959A (zh) 机械手的抓取位姿确定方法及系统、存储介质
JP4765075B2 (ja) ステレオ画像を利用した物体の位置および姿勢認識システムならびに物体の位置および姿勢認識方法を実行するプログラム
US20180275073A1 (en) Device and method for calculating area to be out of inspection target of inspection system
CN109164802A (zh) 一种机器人迷宫行走方法、装置及机器人
CN116051631A (zh) 光斑标注方法及系统
CN110123258A (zh) 视标识别的方法、装置、视力检测设备及计算机存储介质
CN115816460A (zh) 一种基于深度学习目标检测与图像分割的机械手抓取方法
JP7171294B2 (ja) 情報処理装置、情報処理方法及びプログラム
JP2002008012A (ja) 対象物体の位置・姿勢算出方法及び観測カメラの位置・姿勢算出方法
CN110363811A (zh) 用于抓取设备的控制方法、装置、存储介质及电子设备
JP4056891B2 (ja) 3次元位置・姿勢検出装置、方法、プログラムおよび記録媒体
WO2021133183A1 (ru) Способ управления роботизированным манипулятором
CN109816728A (zh) 基于生成查询网络的机械臂抓取点定位检测的方法
RU2800443C1 (ru) Способ выполнения манипуляции с объектом
Arsirii et al. Development of the intelligent software and hardware subsystem for capturing an object by robot manipulato
CN115100257A (zh) 套管对准方法、装置、计算机设备、存储介质

Legal Events

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

Ref document number: 19957309

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 19957309

Country of ref document: EP

Kind code of ref document: A1