6D Image-Based Visual Servoing for Robot Manipulators with Uncalibrated Stereo Cameras
Total Page:16
File Type:pdf, Size:1020Kb
6D Image-based Visual Servoing for Robot Manipulators with uncalibrated Stereo Cameras Caixia Cai1, Emmanuel Dean-Leon´ 2, Nikhil Somani1, Alois Knoll1 Abstract— This paper introduces 6 new image features to A. Related work provide a solution to the open problem of uncalibrated 6D image-based visual servoing for robot manipulators, where An IBVS usually employs the image Jacobian matrix the goal is to control the 3D position and orientation of the (Jimg) to relate end-effector velocities in the manipulator’s robot end-effector using visual feedback. One of the main Task space to the feature parameter velocities in the feature contributions of this article is a novel stereo camera model which employs virtual orthogonal cameras to map 6D Cartesian (image) space. A full and comprehensive survey on Visual poses defined in the Task space to 6D visual poses defined Servoing and image Jacobian definitions can be found in [1], in a Virtual Visual space (Image space). This new model is [3], [4] and more recently in [5]. In general, the classical used to compute a full-rank square Image Jacobian matrix image Jacobian is defined using a set of image feature (Jimg), which solves several common problems exhibited by the measurements (usually denoted by s) and it describes how classical image Jacobians, e.g., Image space singularities and local minima. This Jacobian is a fundamental key for the image- image features change when the robot manipulator pose based controller design, where a chattering-free adaptive second changess ˙ = Jimgv. In Visual Servoing the image Jacobian order sliding mode is employed to track 6D visual motions for needs to be calculated or estimated. Its inverse is used to a robot manipulator. Exponential convergence of errors in both map the image feature velocitiess ˙ into a meaningful state spaces without local minima are demonstrated. The complete variable required for the control law (usually the generalized control system is experimentally evaluated on a real industrial robot. The robustness of the control scheme is evaluated for joint velocitiesq ˙). cases where the extrinsic parameters of the uncalibrated stereo In general, the image Jacobian can be computed using camera system are changed on-line and unknown when the direct depth information (depth-dependent Jacobian) [6],[7], stereo system is manually moved to obtain a clearer view of by approximation via on-line estimation of depth of the fea- the task. tures (depth-estimation Jacobian) [3], [5], [8], or using depth- independent image Jacobian matrix [9],[10]. Additionally, I. INTRODUCTION many papers directly estimate on-line the complete image Jacobian in different ways [11],[12], [13]. However, all these Visual servoing control (VSC) is an approach to control methods use redundant image point coordinates to define the motion of a robot manipulator using visual feedback (as a general rule) a non-square image Jacobian, which is from a vision system. This has been one of the most active 2p a differentiable mapping from SE(3) to s 2 R (with p as topics in robotics since the early 1990s [1]. We are concerned the number of feature points). Then, a generalized inverse with Image-Based Visual Servoing (IBVS) where the error of the image Jacobian needs to be computed, which leads to function is defined directly in terms of image features. well-known problems such as the Image space singularities This work aims to build upon the concepts of image- and local minima. based visual servoing and attempt to address some of the In our early work [14], we introduced a stereo camera most common problems plaguing conventional approaches model based on a virtual composite camera system, that can by introducing additional features and behaviors. As pointed provide 3D visual position vector. This visual position vector out in [1] and [2], convergence and stability problems may generates a 3 × 3 full-rank Image Jacobian that maps veloc- sometimes occur in IBVS. Local minima in the trajectories ities from the Task space to the Virtual Visual space. Using and singularities in the Image Jacobian (also known as this image Jacobian, a visual servo control is implemented Interaction Matrix) can severely affect the visual servoing to drive 3 DOF of a real robot to trace time-varying desired task. In image-based control approach, the ideal case is trajectories defined in an uncalibrated Image space. However, to find a particular visual feature where the interaction this approach is limited to control only 3D positions, and the matrix has neither local minima nor singularities. During the image Jacobian is only suitable for 3 DOF robots. last decade, several authors have worked on solving these In this paper, we extend the visual features to control 6D problems. In the following section, we will briefly describe visual poses in a Virtual Visual space (Image space). This the most important approaches used in IBVS and discuss visual pose is composed of 3D visual position and 3D visual about their properties and limitations. orientation, which is used to obtain a 6 × 6 full-rank square Image Jacobian to map velocities from the Task space to Authors Affiliation: 1 Technische Universitat¨ Munchen,¨ Fakultat¨ fur¨ the 3D Virtual Visual space. Therefore, this work offers a Informatik. 2 Technischen Universitat¨ Munchen,¨ Fakultat¨ fur¨ Elektrotechnik und Informationstechnik. general solution to control the position and orientation of a Email: fcaica,somani,[email protected] robot end-effector using uncalibrated visual information with T 2p×1 a new full-rank square image Jacobian (Jimg). end-effector), and a vector s = [u1;v1;:::;up;vp] 2 R , which contains p = k=2 image points. Then, the relation B. Organization betweens ˙ and W˙ b is given by This paper is organized as follows: In Section II we high- light the problems in classical image-based visual servoing s˙ = Jx W˙ b (4) |{z} |{z}|{z} approaches and state the core issues which we tackle in this 2p×1 2p×6 6×1 work. In Section III we introduce a new Camera Model T 2p×6 where Jx = [Lx1;:::;Lxp] ·M 2 R is known as the image and describe how it is used to construct a Virtual Visual 6×6 space. This model is used to define the full-rank 6D Visual Jacobian, M 2 R is the mapping to transform velocities Jacobian, which will be used in the Section IV to design an expressed in the camera frame to the robot base frame, and adaptive image-based 6D visual servoing. Section V presents Lxi is given by (3). two real-world experiments (as illustrated in Fig. 1) and B. The problems of Classical IBVS shows the results obtained in a dynamic environment. Finally, If we consider DW as the input to a robot controller, then Section VI draws the conclusions and presents directions for b we need to compute the inverse mapping ofs ˙ as future work. + DWb = Jx Ds; (5) 2cameras[UncalibratedStereoSystem]{30ms} Virtual Camera 1 Virtual + Virtual Camera 2 ∗ ∗ J 2 Distributed Obstacle where D is an error function defined in the space , x System 6×2p 3D R is chosen as the Moore-Penrose pseudoinverse of Jx, Visualization System Visual Stereo System Stereo which leads to the two characteristic problems of the IBVS Tracker Voltage Virtual Camera2 Virtual method: the feature (image) space singularities and local Robot LowLevel Camera1 Control minima. For most IBVS approaches we have 2p > 6. In q,q Robot q,q EF this case, the image Jacobian is singular when rank(Jx) < 6, TCP/IP t orqd Target {4ms} a)GeneralView b)TopView Virtual while the image local minima is defined as the set of image Obstacle 2p×1 locations Ws = sjDs 6= 0;W˙b = 0;8s 2 R when using Fig. 1. Description of robotic experimental setup. redundant image features. (A local minimum is reached since the velocity of the end-effector is zero while the final end- effector position is far from its desired one). Examples of II. PROBLEM FORMULATION the problems generated by the local minima conditions are A. Classical Image-Based Visual Servoing illustrated in [2] and [3]. Suppose that the robot end-effector is moving with angular C. Contribution of this Work velocity w = [w ;w ;w ] and translational velocity v = c x y z c In this work, we get a step further towards a general [v ;v ;v ] both w.r.t. the camera frame in a fixed camera x y z solution for the problem of the IBVS, by introducing an system (eye-to-hand configuration). Let P = [x;y;z]T be a c intermediate mapping from the classical image features s point rigidly attached to the end-effector. The velocity of the T to a new visual representation defined as Ws = [Xs;qs] = point Pc, expressed relative to the camera frame, is given by T 6×1 [xs;ys;zs;as;bs;gs] 2 R . In this case, Ws is a 6D visual P˙c = wc × Pc + vc (1) pose vector defined in a 3D Image space (we call this space the Virtual Visual space). This visual pose is measured in where P˙ = [v ;v ;v ;w ;w ;w ]T is the relative velocity of c x y z x y z pixels and it is composed of 3D visual position and 3D visual the point in the camera frame. orientation. As described in [1], we can relate image-plane velocity of a point to the relative velocity of the point with respect to 4 Image Points Algorithm Implementation the camera as ! x $ # 1l & Virtual Stereo # & Orthogonal X = f (X ) b ˙ y1 s V X = J ⋅ X l X , X s img b s = L P System Cl V RC pos ˙ x c (2) # & Camera l s x = # 1r & # & C RC l θs = Jimg ⋅θb T y l Rs = Rv RC rot in which s = [u;v] is the image feature parameters, and the # 1r & l # & " % interaction matrix Lx is defined as 2 2 " f f +u # u uv Algorithm design Ws = Jimg ⋅Wb 0 − − −v z z f f s = Jx ⋅Wb 6×1 6×6 6×1 Lx = 2 2 (3) 16×1 16×6 6×1 ! x $ ! x $ f v f +v uv ! $ # s & # b & 0 − − u ! $ xb x # & # ys & # yb & z z f f 1l # & Ws = Ji ⋅ s # & # & # yb & # y & # zs & # zb & 1l # & J # & A new mapping from s to Ws = img ⋅ # zb & # α & # α & where f is the focal length of the camera lens.