Pose Tracking II! Gordon Wetzstein! Stanford University! EE 267 Virtual Reality! Lecture 12! stanford.edu/class/ee267/!
|
|
- Maximilian Martin Campbell
- 5 years ago
- Views:
Transcription
1 Pose Tracking II! Gordon Wetzstein! Stanford University! EE 267 Virtual Reality! Lecture 12! stanford.edu/class/ee267/!!
2 WARNING! this class will be dense! will learn how to use nonlinear optimization (Levenberg- Marquardt algorithm) for pose estimation! why???!! more accurate than homography method! can dial in lens distortion estimation, and estimation of intrinsic parameters (beyond this lecture, see lecture notes)! LM is very common in 3D computer vision à camera-based tracking!
3 Pose Estimation - Overview! x i y i 0 goal: estimate pose via nonlinear least squares optimization! minimize p { } 2 b f ( g( p) ) 2 image formation minimize reprojection error! pose p is 6-element vector with 3 Euler angles and translation of VRduino w.r.t. base station! x i n y i n b = x 1 n y 1 n! x 4 n y 4 n p = θ x θ y θ z t x t y t z
4 Overview! review: gradients, Jacobian matrix, chain rule, iterative optimization! nonlinear optimization: Gauss-Newton, Levenberg-Marquardt! pose estimation using LM! pose estimation with VRduino using nonlinear optimization!
5 Review!
6 Review: Gradients! gradient of a function that depends on multiple variables:! x f x ( ) = f, f,, f x 1 x 2 x n f :R n R
7 Review: The Jacobian Matrix! gradient of a vector-valued function that depends on multiple variables:! x f x ( ) = J f = f 1! f 1 x 1 x n " # " f m! f m x 1 x n f :R n R m, J f R m n
8 Review: The Chain Rule! here s how you ve probably been using it so far:! x f g x ( ( )) = f g g x this rule applies when! f :R R g :R R
9 Review: The Chain Rule! here s how it is applied in general:! x f g x ( ( ) ) = J f J g = f 1! f 1 g 1 g o " # " f m! f m g 1 g o g 1! g 1 x 1 x n " # " g o! g o x 1 x n f :R o R m, g :R n R o, J f R m o, J g R o n
10 Review: Minimizing a Function! goal: find point x * that minimizes a nonlinear function f(x)! f ( x) x * x
11 Review: What is a Gradient?! gradient of f at some point x 0 is the slope at that point! f ( x) x 0 x
12 Review: What is a Gradient?! gradient of f at some point x 0 is the slope at that point! f ( x) x 0 x
13 Review: What is a Gradient?! extremum is where gradient is 0! (sometimes have to check 2 nd derivative to see if it s a minimum and not a maximum or saddle point)! f ( x) x * x
14 Review: Optimization! extremum is where gradient is 0! (sometimes have to check 2 nd derivative to see if it s a minimum and not a maximum or saddle point)! convex! non-convex! f ( x) f ( x) x x! convex optimization: there is only a single global minimum! non-convex optimization: multiple local minima!
15 Review: Optimization! how to find where gradient is 0?! f ( x)! x
16 Review: Optimization! how to find where gradient is 0?! f ( x) x 0 x 1. start with some initial guess x 0, e.g. a random value!
17 Review: Optimization! how to find where gradient is 0?! f ( x) x 0 x 1. start with some initial guess x 0, e.g. a random value! 2. update guess by linearizing function and minimizing that!
18 Review: Optimization! how to linearize a function? à using Taylor expansion!! f ( x) f ( x 0 + Δx) f ( x 0 ) + J f Δx + ε x 0 x
19 Review: Optimization! find minimum of linear function approximation! f ( x) f ( x 0 + Δx) f ( x 0 ) + J f Δx + ε x 0 x minimize Δx 2 b f ( x 0 + Δx) 2 2 b ( f ( x 0 ) + J f Δx) 2
20 Review: Optimization! find minimum of linear function approximation (gradient=0)! f ( x) f ( x 0 + Δx) f ( x 0 ) + J f Δx + ε x 0 equate gradient to zero:! 0 = J f T J f Δx J f T b f x x minimize Δx ( ( )) Δx = J T f J f 2 b f ( x 0 + Δx) 2 2 b ( f ( x 0 ) + J f Δx) 2 ( ) 1 J f T b f x normal equations! ( ( ))
21 Review: Optimization! take step and repeat procedure! f ( x) x 0 x 0 + Δx x ( ) 1 J f T b f x Δx = J f T J f ( ( ))
22 Review: Optimization! take step and repeat procedure, will get there eventually! f ( x) x 0 x 0 + Δx x ( ) 1 J f T b f x Δx = J f T J f ( ( ))
23 Review: Optimization Gauss-Newton! results in an iterative algorithm! f ( x) x k+1 = x k + Δx x 0 x ( ) 1 J f T b f x Δx = J f T J f ( ( ))
24 Review: Optimization Gauss-Newton! results in an iterative algorithm! x 0 f ( x) x 1. x = rand() // initialize x0 2. for k=1 to max_iter 3. f = eval_objective(x) 4. J = eval_jacobian(x) 5. x = x + inv(j *J)*J *(b-f) // update x ( ) 1 J f T b f x Δx = J f T J f ( ( ))
25 Review: Optimization Gauss-Newton! matrix J T J can be ill-conditioned (i.e. not invertible)! f ( x) x 0 x ( ) 1 J f T b f x Δx = J f T J f ( ( ))
26 Review: Optimization Levenberg! matrix J T J can be ill-conditioned (i.e. not invertible)! add a diagonal matrix to make invertible acts as damping! f ( x) x 0 x ( ) 1 J f T b f x Δx = J f T J f + λi ( ( ))
27 Review: Optimization Levenberg-Marquardt!! matrix J T J can be ill-conditioned (i.e. not invertible)! better: use J T J instead of I as damping. This is LM!! f ( x) x 0 x ( ) 1 J f T b f x Δx = J T f J f + λ diag( J T f J f ) ( ( ))
28 Review: Optimization Levenberg-Marquardt!! matrix J T J can be ill-conditioned (i.e. not invertible)! better: use J T J instead of I as damping. This is LM!! x 0 f ( x) x 1. x = rand() // initialize x0 2. for k=1 to max_iter 3. f = eval_objective(x) 4. J = eval_jacobian(x) 5. x = x+inv(j *J+lambda*diag(J *J))*J *(b-f) ( ) 1 J f T b f x Δx = J T f J f + λ diag( J T f J f ) ( ( ))
29 Pose Estimation via Levenberg-Marquardt!
30 Pose Estimation - Overview! x i y i 0 goal: estimate pose via nonlinear least squares optimization! minimize p { } 2 b f ( g( p) ) 2 image formation minimize reprojection error! pose p is 6-element vector with 3 Euler angles and translation of VRduino w.r.t. base station! x i n y i n b = x 1 n y 1 n! x 4 n y 4 n p = θ x θ y θ z t x t y t z
31 Pose Estimation - Objective Function! goal: estimate pose via nonlinear least squares optimization! minimize p { } 2 b f ( g( p) ) 2 x i y i 0 image formation objective function is sum of squares of reprojection error! x i n y i n 2 ( ) = n x1 f 2 1 ( g( p) ) b f g( p) ( ) 2 + ( y n 1 f 2 ( g( p) )) ( x n 4 f 7 ( g( p) )) 2 + ( y n 4 f 8 ( g( p) )) 2
32 Image Formation! 1. transform 3D point into view space:! x i c y i c z i c = = h 1 h 2 h 3 h 4 h 5 h 6 h 7 h 8 h 9 r 11 r 12 t x r 21 r 22 t y r 31 r 32 t z x i y i 1 x i y i 1 x i n y i n x i y i 0 2. perspective divide:! x i n y i n = x i c z i c y i c z i c
33 Image Formation: g(p) and f(h)! split up image formation into two functions! ( ) = f g( p) f h ( ) g :R 6 R 9, f :R 9 R 8
34 Image Formation: f(h)! f(h) uses elements of homography matrix h to compute projected 2D coordinates as! f ( h) = f 1 f 2 f 7 f 8 ( h) ( h)! h ( ) ( h) = n x 1 n y 1! n x 4 n y 4 = h 1 x 1 + h 2 y 1 + h 3 h 7 x 1 + h 8 y 1 + h 9 h 4 x 1 + h 5 y 1 + h 6 h 7 x 1 + h 8 y 1 + h 9! h 1 x 4 + h 2 y 4 + h 3 h 7 x 4 + h 8 y 4 + h 9 h 4 x 4 + h 5 y 4 + h 6 h 7 x 4 + h 8 y 4 + h 9
35 ! f 1 Jacobian Matrix of f(h)! ( h) = h x +h y +h h 7 x 1 +h 8 y 1 +h 9 J f = f 1! f 1 h 1 h 9 " # " f 8! f 8 h 1 h 9 first row of Jacobian matrix! f 1 h 1 = f 1 h 2 = f 1 h 3 = f 1 h 4 = 0, x 1 h 7 x 1 + h 8 y 1 + h 9 y 1 h 7 x 1 + h 8 y 1 + h 9 1 h 7 x 1 + h 8 y 1 + h 9 f 1 h 5 = 0, f 1 h 6 = 0 f 1 = h 7 f 1 = h 8 h 1 x 1 + h 2 y 1 + h 3 ( ) 2 h 7 x 1 + h 8 y 1 + h 9 h 1 x 1 + h 2 y 1 + h 3 ( ) 2 h 7 x 1 + h 8 y 1 + h 9 f 1 = h x + h y + h h 9 h 7 x 1 + h 8 y 1 + h 9 ( ) 2 x 1 y 1
36 ! Jacobian Matrix of f(h)! the remaining rows of the Jacobian can be derived with a similar pattern! J f = f 1! f 1 h 1 h 9 " # " f 8! f 8 h 1 h 9 see course notes for a detailed deriavtion of the elements of this Jacobian matrix!
37 Image Formation: g(p)! g(p) uses 6 pose parameters to compute elements of homography matrix h as! g( p) = g 1 g 9 ( p)! p ( ) = h 1! h 9 definition of homography matrix:! h 1 h 2 h 3 h 4 h 5 h 6 h 7 h 8 h 9 = r 11 r 12 t x r 21 r 22 t y r 31 r 32 t z rotation matrix from Euler angles:! ( ) sin( θ z ) 0 ( ) R = R z ( θ z ) R x ( θ x ) R y θ y r 11 r 12 r 13 cos θ z r 21 r 22 r 23 = sin( θ z ) cos( θ z ) 0 0 cos θ x r 31 r 32 r sin θ x ( ) sin( θ x ) ( ) cos( θ x ) cos( θ y ) 0 sin( θ y ) sin θ y ( ) 0 cos( θ y )
38 write as! Image Formation: g(p)! h 1 = g 1 ( p) = cos( θ y )cos θ z h 2 = g 2 ( p) = cos( θ x )sin θ z h 3 = g 3 ( p) = t x h 4 = g 4 ( p) = cos( θ y )sin θ z h 5 = g 5 ( p) = cos( θ x )cos θ z h 6 = g 6 ( p) = t y h 7 = g 7 ( p) = cos( θ x )sin( θ y ) h 8 = g 8 ( p) = sin( θ x ) h 9 = g 9 ( p) = t z ( ) sin θ x ( ) ( ) + sin θ x ( ) ( )sin( θ y )sin θ z ( ) ( )sin( θ y )cos θ z ( )
39 ! Jacobian Matrix of g(p)! ( ) p = ( p 1, p 2, p 3, p 4, p 5, p 6 ) = θ x, θ y, θ z, t x, t y, t z h 1 = g 1 ( p) = cos( θ y )cos θ z h 2 = g 2 ( p) = cos( θ x )sin θ z ( ) sin θ x ( ) ( )sin( θ y )sin θ z ( ) J g = g 1! g 1 p 1 p 6 " # " g 9! g 9 p 1 p 6 h 3 = g 3 ( p) = t x h 4 = g 4 ( p) = cos( θ y )sin θ z h 5 = g 5 ( p) = cos( θ x )cos θ z ( ) + sin θ x ( ) ( )sin( θ y )cos θ z ( ) h 6 = g 6 ( p) = t y h 7 = g 7 ( p) = cos( θ x )sin θ y h 8 = g 8 ( p) = sin( θ x ) ( ) h 9 = g 9 ( p) = t z
40 ! h 1 = g 1 ( p) = cos( θ y )cos θ z Jacobian Matrix of g(p)! p = ( p 1, p 2, p 3, p 4, p 5, p 6 ) = θ x, θ y, θ z, t x, t y, t z ( ) J g = ( ) sin θ x ( )sin( θ y )sin θ z ( ) g 1! g 1 p 1 p 6 " # " g 9! g 9 p 1 p 6 first row of Jacobian matrix! g 1 = cos( θ x )sin( θ y )sin( θ z ) p 1 g 1 = sin( θ y )cos( θ z ) sin( θ x )cos( θ y )sin( θ z ) p 2 g 1 = cos( θ y )sin( θ z ) sin( θ x )sin( θ y )cos( θ z ) p 3 g 1 p 4 = 0, g 1 p 5 = 0, g 1 p 6 = 0
41 ! Jacobian Matrix of g(p)! the remaining rows of the Jacobian can be derived with a similar pattern! J g = g 1! g 1 p 1 p 6 " # " g 9! g 9 p 1 p 6 see course notes for a detailed deriavtion of the elements of this Jacobian matrix!
42 ! Jacobian Matrices of f and g! to get the Jacobian of f(g(p)), compute the two Jacobian matrices and multiply them! J = J f J g = f 1! f 1 h 1 h 9 " # " f 8! f 8 h 1 h 9 g 1! g 1 p 1 p 6 " # " g 9! g 9 p 1 p 6
43 Pose Tracking with LM! LM then iteratively updates pose as! ( ( )) 1 J T b f p k p ( k+1) = p ( k) + J T J + λ diag J T J ( ( ( ) )) pseudo-code! 1. p =... // initialize p0 2. for k=1 to max_iter 3. f = eval_objective(p) 4. J = get_jacobian(p) 5. p = p + inv(j *J+lambda*diag(J *J))*J *(b-f)
44 Pose Tracking with LM! 1. value = function eval_objective(p) 2. for i=1:4 3. value(2*(i-1)) = value(2*(i-1)+1) =... h 1 x i + h 2 y i + h 3 h 7 x i + h 8 y i + h 9 h 4 x i + h 5 y i + h 6 h 7 x i + h 8 y i + h 9
45 Pose Tracking with LM! 1. J = function get_jacobian(p) 2. Jf = get_jacobian_f(p) 3. Jg = get_jacobian_g(p) 4. J = Jf*Jg J f = J g = f 1! f 1 h 1 h 9 " # " f 8! f 8 h 1 h 9 g 1! g 1 p 1 p 6 " # " g 9! g 9 p 1 p 6
46 !! Pose Tracking with LM on VRduino! some more hints for implementation:! let Arduino Matrix library compute matrix-matrix multiplications and also matrix inverses for you!! run homography method and use that to initialize p for LM! use something like 5-25 interations of LM per frame for real-time performance! user-defined parameter! λ good luck!
47 Pose Tracking with LM on VRduino! live demo!
48 Outlook: Camera Calibration! camera calibration is one of the most fundamental problems in computer vision and imaging! task: estimate intrinsic (lens distortion, focal length, principle point) & extrinsic (translation, rotation) camera parameters given images of planar checkerboards! uses similar procedure as discussed today!
49 Outlook: Sensor Fusion with Extended Kalman Filter!! also desirable: estimate bias of each of all IMU sensors! also desirable: joint pose estimation from all IMU + photodiode measurements! can do all of that with an Extended Kalman Filter - slightly too advanced for this class, but you can find a lot of literature in the robotic vision community!
50 Outlook: Sensor Fusion with Extended Kalman Filter! Extended Kalman filter: can be interpreted as a Bayesian framework for sensor fusion! Hidden Markov Model (HMM)! known initial state! x x 0 1 x t 1 x unknown, evolving t states! z 1 z t 1 z t measurements!
51 Must read: course notes on tracking!!
Theory of Bouguet s MatLab Camera Calibration Toolbox
Theory of Bouguet s MatLab Camera Calibration Toolbox Yuji Oyamada 1 HVRL, University 2 Chair for Computer Aided Medical Procedure (CAMP) Technische Universität München June 26, 2012 MatLab Camera Calibration
More informationVisual SLAM Tutorial: Bundle Adjustment
Visual SLAM Tutorial: Bundle Adjustment Frank Dellaert June 27, 2014 1 Minimizing Re-projection Error in Two Views In a two-view setting, we are interested in finding the most likely camera poses T1 w
More informationRobot Mapping. Least Squares. Cyrill Stachniss
Robot Mapping Least Squares Cyrill Stachniss 1 Three Main SLAM Paradigms Kalman filter Particle filter Graphbased least squares approach to SLAM 2 Least Squares in General Approach for computing a solution
More informationCamera calibration by Zhang
Camera calibration by Zhang Siniša Kolarić September 2006 Abstract In this presentation, I present a way to calibrate a camera using the method by Zhang. NOTE. This
More informationPose estimation from point and line correspondences
Pose estimation from point and line correspondences Giorgio Panin October 17, 008 1 Problem formulation Estimate (in a LSE sense) the pose of an object from N correspondences between known object points
More informationLinear and Nonlinear Optimization
Linear and Nonlinear Optimization German University in Cairo October 10, 2016 Outline Introduction Gradient descent method Gauss-Newton method Levenberg-Marquardt method Case study: Straight lines have
More informationAutonomous Mobile Robot Design
Autonomous Mobile Robot Design Topic: Extended Kalman Filter Dr. Kostas Alexis (CSE) These slides relied on the lectures from C. Stachniss, J. Sturm and the book Probabilistic Robotics from Thurn et al.
More informationAdvanced Techniques for Mobile Robotics Least Squares. Wolfram Burgard, Cyrill Stachniss, Kai Arras, Maren Bennewitz
Advanced Techniques for Mobile Robotics Least Squares Wolfram Burgard, Cyrill Stachniss, Kai Arras, Maren Bennewitz Problem Given a system described by a set of n observation functions {f i (x)} i=1:n
More informationSparse Levenberg-Marquardt algorithm.
Sparse Levenberg-Marquardt algorithm. R. I. Hartley and A. Zisserman: Multiple View Geometry in Computer Vision. Cambridge University Press, second edition, 2004. Appendix 6 was used in part. The Levenberg-Marquardt
More informationAugmented Reality VU Camera Registration. Prof. Vincent Lepetit
Augmented Reality VU Camera Registration Prof. Vincent Lepetit Different Approaches to Vision-based 3D Tracking [From D. Wagner] [From Drummond PAMI02] [From Davison ICCV01] Consider natural features Consider
More informationAugmented Reality VU numerical optimization algorithms. Prof. Vincent Lepetit
Augmented Reality VU numerical optimization algorithms Prof. Vincent Lepetit P3P: can exploit only 3 correspondences; DLT: difficult to exploit the knowledge of the internal parameters correctly, and the
More informationEE 267 Virtual Reality Course Notes: 6-DOF Pose Tracking with the VRduino
EE 267 Virtual Reality Course Notes: 6-DOF Pose Tracking with the VRduino Gordon Wetzstein gordon.wetzstein@stanford.edu Updated on: December, 207 This document serves as a supplement to the material discussed
More informationMaximum Likelihood Estimation
Maximum Likelihood Estimation Prof. C. F. Jeff Wu ISyE 8813 Section 1 Motivation What is parameter estimation? A modeler proposes a model M(θ) for explaining some observed phenomenon θ are the parameters
More informationHomographies and Estimating Extrinsics
Homographies and Estimating Extrinsics Instructor - Simon Lucey 16-423 - Designing Computer Vision Apps Adapted from: Computer vision: models, learning and inference. Simon J.D. Prince Review: Motivation
More informationTracking for VR and AR
Tracking for VR and AR Hakan Bilen November 17, 2017 Computer Graphics University of Edinburgh Slide credits: Gordon Wetzstein and Steven M. La Valle 1 Overview VR and AR Inertial Sensors Gyroscopes Accelerometers
More informationMethod 1: Geometric Error Optimization
Method 1: Geometric Error Optimization we need to encode the constraints ŷ i F ˆx i = 0, rank F = 2 idea: reconstruct 3D point via equivalent projection matrices and use reprojection error equivalent projection
More informationNumerical computation II. Reprojection error Bundle adjustment Family of Newtonʼs methods Statistical background Maximum likelihood estimation
Numerical computation II Reprojection error Bundle adjustment Family of Newtonʼs methods Statistical background Maximum likelihood estimation Reprojection error Reprojection error = Distance between the
More information13. Nonlinear least squares
L. Vandenberghe ECE133A (Fall 2018) 13. Nonlinear least squares definition and examples derivatives and optimality condition Gauss Newton method Levenberg Marquardt method 13.1 Nonlinear least squares
More informationRobot Dynamics Instantaneous Kinematiccs and Jacobians
Robot Dynamics Instantaneous Kinematiccs and Jacobians 151-0851-00 V Lecture: Tuesday 10:15 12:00 CAB G11 Exercise: Tuesday 14:15 16:00 every 2nd week Marco Hutter, Michael Blösch, Roland Siegwart, Konrad
More informationNumerical Methods for Inverse Kinematics
Numerical Methods for Inverse Kinematics Niels Joubert, UC Berkeley, CS184 2008-11-25 Inverse Kinematics is used to pose models by specifying endpoints of segments rather than individual joint angles.
More informationEE 367 / CS 448I Computational Imaging and Display Notes: Image Deconvolution (lecture 6)
EE 367 / CS 448I Computational Imaging and Display Notes: Image Deconvolution (lecture 6) Gordon Wetzstein gordon.wetzstein@stanford.edu This document serves as a supplement to the material discussed in
More informationOptimization 2. CS5240 Theoretical Foundations in Multimedia. Leow Wee Kheng
Optimization 2 CS5240 Theoretical Foundations in Multimedia Leow Wee Kheng Department of Computer Science School of Computing National University of Singapore Leow Wee Kheng (NUS) Optimization 2 1 / 38
More informationCamera Calibration The purpose of camera calibration is to determine the intrinsic camera parameters (c 0,r 0 ), f, s x, s y, skew parameter (s =
Camera Calibration The purpose of camera calibration is to determine the intrinsic camera parameters (c 0,r 0 ), f, s x, s y, skew parameter (s = cotα), and the lens distortion (radial distortion coefficient
More informationContent.
Content Fundamentals of Bayesian Techniques (E. Sucar) Bayesian Filters (O. Aycard) Definition & interests Implementations Hidden Markov models Discrete Bayesian Filters or Markov localization Kalman filters
More informationLeast-Squares Fitting of Model Parameters to Experimental Data
Least-Squares Fitting of Model Parameters to Experimental Data Div. of Mathematical Sciences, Dept of Engineering Sciences and Mathematics, LTU, room E193 Outline of talk What about Science and Scientific
More informationNumerical solution of Least Squares Problems 1/32
Numerical solution of Least Squares Problems 1/32 Linear Least Squares Problems Suppose that we have a matrix A of the size m n and the vector b of the size m 1. The linear least square problem is to find
More informationApplied Mathematics 205. Unit I: Data Fitting. Lecturer: Dr. David Knezevic
Applied Mathematics 205 Unit I: Data Fitting Lecturer: Dr. David Knezevic Unit I: Data Fitting Chapter I.4: Nonlinear Least Squares 2 / 25 Nonlinear Least Squares So far we have looked at finding a best
More informationIntroduction to gradient descent
6-1: Introduction to gradient descent Prof. J.C. Kao, UCLA Introduction to gradient descent Derivation and intuitions Hessian 6-2: Introduction to gradient descent Prof. J.C. Kao, UCLA Introduction Our
More information2 Nonlinear least squares algorithms
1 Introduction Notes for 2017-05-01 We briefly discussed nonlinear least squares problems in a previous lecture, when we described the historical path leading to trust region methods starting from the
More information1 Kalman Filter Introduction
1 Kalman Filter Introduction You should first read Chapter 1 of Stochastic models, estimation, and control: Volume 1 by Peter S. Maybec (available here). 1.1 Explanation of Equations (1-3) and (1-4) Equation
More informationMobile Robotics 1. A Compact Course on Linear Algebra. Giorgio Grisetti
Mobile Robotics 1 A Compact Course on Linear Algebra Giorgio Grisetti SA-1 Vectors Arrays of numbers They represent a point in a n dimensional space 2 Vectors: Scalar Product Scalar-Vector Product Changes
More informationOptimization: Nonlinear Optimization without Constraints. Nonlinear Optimization without Constraints 1 / 23
Optimization: Nonlinear Optimization without Constraints Nonlinear Optimization without Constraints 1 / 23 Nonlinear optimization without constraints Unconstrained minimization min x f(x) where f(x) is
More informationNoise, Image Reconstruction with Noise!
Noise, Image Reconstruction with Noise! EE367/CS448I: Computational Imaging and Display! stanford.edu/class/ee367! Lecture 10! Gordon Wetzstein! Stanford University! What s a Pixel?! photon to electron
More informationKalman filtering and friends: Inference in time series models. Herke van Hoof slides mostly by Michael Rubinstein
Kalman filtering and friends: Inference in time series models Herke van Hoof slides mostly by Michael Rubinstein Problem overview Goal Estimate most probable state at time k using measurement up to time
More informationNon-polynomial Least-squares fitting
Applied Math 205 Last time: piecewise polynomial interpolation, least-squares fitting Today: underdetermined least squares, nonlinear least squares Homework 1 (and subsequent homeworks) have several parts
More information2D Image Processing (Extended) Kalman and particle filter
2D Image Processing (Extended) Kalman and particle filter Prof. Didier Stricker Dr. Gabriele Bleser Kaiserlautern University http://ags.cs.uni-kl.de/ DFKI Deutsches Forschungszentrum für Künstliche Intelligenz
More informationNumerical Optimization
Numerical Optimization Emo Todorov Applied Mathematics and Computer Science & Engineering University of Washington Spring 2010 Emo Todorov (UW) AMATH/CSE 579, Spring 2010 Lecture 9 1 / 8 Gradient descent
More informationDetermining absolute orientation of a phone by imaging celestial bodies
Technical Disclosure Commons Defensive Publications Series October 06, 2017 Determining absolute orientation of a phone by imaging celestial bodies Chia-Kai Liang Yibo Chen Follow this and additional works
More informationMinimal representations of orientation
Robotics 1 Minimal representations of orientation (Euler and roll-pitch-yaw angles) Homogeneous transformations Prof. lessandro De Luca Robotics 1 1 Minimal representations rotation matrices: 9 elements
More informationMysteries of Parameterizing Camera Motion - Part 2
Mysteries of Parameterizing Camera Motion - Part 2 Instructor - Simon Lucey 16-623 - Advanced Computer Vision Apps Today Gauss-Newton and SO(3) Alternative Representations of SO(3) Exponential Maps SL(3)
More informationAutonomous Navigation for Flying Robots
Computer Vision Group Prof. Daniel Cremers Autonomous Navigation for Flying Robots Lecture 6.2: Kalman Filter Jürgen Sturm Technische Universität München Motivation Bayes filter is a useful tool for state
More informationSECTION 5: POWER FLOW. ESE 470 Energy Distribution Systems
SECTION 5: POWER FLOW ESE 470 Energy Distribution Systems 2 Introduction Nodal Analysis 3 Consider the following circuit Three voltage sources VV sss, VV sss, VV sss Generic branch impedances Could be
More informationChapter 3 Numerical Methods
Chapter 3 Numerical Methods Part 2 3.2 Systems of Equations 3.3 Nonlinear and Constrained Optimization 1 Outline 3.2 Systems of Equations 3.3 Nonlinear and Constrained Optimization Summary 2 Outline 3.2
More informationNeural Network Training
Neural Network Training Sargur Srihari Topics in Network Training 0. Neural network parameters Probabilistic problem formulation Specifying the activation and error functions for Regression Binary classification
More informationIntroduction to Optimization
Introduction to Optimization Konstantin Tretyakov (kt@ut.ee) MTAT.03.227 Machine Learning So far Machine learning is important and interesting The general concept: Fitting models to data So far Machine
More informationThe Jacobian. Jesse van den Kieboom
The Jacobian Jesse van den Kieboom jesse.vandenkieboom@epfl.ch 1 Introduction 1 1 Introduction The Jacobian is an important concept in robotics. Although the general concept of the Jacobian in robotics
More informationPenalty and Barrier Methods General classical constrained minimization problem minimize f(x) subject to g(x) 0 h(x) =0 Penalty methods are motivated by the desire to use unconstrained optimization techniques
More informationLinear Dynamical Systems
Linear Dynamical Systems Sargur N. srihari@cedar.buffalo.edu Machine Learning Course: http://www.cedar.buffalo.edu/~srihari/cse574/index.html Two Models Described by Same Graph Latent variables Observations
More informationLecture Notes: Geometric Considerations in Unconstrained Optimization
Lecture Notes: Geometric Considerations in Unconstrained Optimization James T. Allison February 15, 2006 The primary objectives of this lecture on unconstrained optimization are to: Establish connections
More informationLecture Schedule Week Date Lecture (M: 2:05p-3:50, 50-N202)
J = x θ τ = J T F 2018 School of Information Technology and Electrical Engineering at the University of Queensland Lecture Schedule Week Date Lecture (M: 2:05p-3:50, 50-N202) 1 23-Jul Introduction + Representing
More informationPartially Observable Markov Decision Processes (POMDPs)
Partially Observable Markov Decision Processes (POMDPs) Sachin Patil Guest Lecture: CS287 Advanced Robotics Slides adapted from Pieter Abbeel, Alex Lee Outline Introduction to POMDPs Locally Optimal Solutions
More informationMobile Robot Localization
Mobile Robot Localization 1 The Problem of Robot Localization Given a map of the environment, how can a robot determine its pose (planar coordinates + orientation)? Two sources of uncertainty: - observations
More information2 Regularized Image Reconstruction for Compressive Imaging and Beyond
EE 367 / CS 448I Computational Imaging and Display Notes: Compressive Imaging and Regularized Image Reconstruction (lecture ) Gordon Wetzstein gordon.wetzstein@stanford.edu This document serves as a supplement
More information(W: 12:05-1:50, 50-N202)
2016 School of Information Technology and Electrical Engineering at the University of Queensland Schedule of Events Week Date Lecture (W: 12:05-1:50, 50-N202) 1 27-Jul Introduction 2 Representing Position
More informationLecture Note 8: Inverse Kinematics
ECE5463: Introduction to Robotics Lecture Note 8: Inverse Kinematics Prof. Wei Zhang Department of Electrical and Computer Engineering Ohio State University Columbus, Ohio, USA Spring 2018 Lecture 8 (ECE5463
More informationCS 188: Artificial Intelligence Spring 2009
CS 188: Artificial Intelligence Spring 2009 Lecture 21: Hidden Markov Models 4/7/2009 John DeNero UC Berkeley Slides adapted from Dan Klein Announcements Written 3 deadline extended! Posted last Friday
More information3D from Photographs: Camera Calibration. Dr Francesco Banterle
3D from Photographs: Camera Calibration Dr Francesco Banterle francesco.banterle@isti.cnr.it 3D from Photographs Automatic Matching of Images Camera Calibration Photographs Surface Reconstruction Dense
More informationMotion Estimation (I)
Motion Estimation (I) Ce Liu celiu@microsoft.com Microsoft Research New England We live in a moving world Perceiving, understanding and predicting motion is an important part of our daily lives Motion
More informationProbabilistic Graphical Models
Probabilistic Graphical Models Lecture 12 Dynamical Models CS/CNS/EE 155 Andreas Krause Homework 3 out tonight Start early!! Announcements Project milestones due today Please email to TAs 2 Parameter learning
More informationRobotics I Kinematics, Dynamics and Control of Robotic Manipulators. Velocity Kinematics
Robotics I Kinematics, Dynamics and Control of Robotic Manipulators Velocity Kinematics Dr. Christopher Kitts Director Robotic Systems Laboratory Santa Clara University Velocity Kinematics So far, we ve
More informationIntroduction to Mobile Robotics Compact Course on Linear Algebra. Wolfram Burgard, Bastian Steder
Introduction to Mobile Robotics Compact Course on Linear Algebra Wolfram Burgard, Bastian Steder Reference Book Thrun, Burgard, and Fox: Probabilistic Robotics Vectors Arrays of numbers Vectors represent
More informationIntroduction to Mobile Robotics Compact Course on Linear Algebra. Wolfram Burgard, Cyrill Stachniss, Kai Arras, Maren Bennewitz
Introduction to Mobile Robotics Compact Course on Linear Algebra Wolfram Burgard, Cyrill Stachniss, Kai Arras, Maren Bennewitz Vectors Arrays of numbers Vectors represent a point in a n dimensional space
More informationL03. PROBABILITY REVIEW II COVARIANCE PROJECTION. NA568 Mobile Robotics: Methods & Algorithms
L03. PROBABILITY REVIEW II COVARIANCE PROJECTION NA568 Mobile Robotics: Methods & Algorithms Today s Agenda State Representation and Uncertainty Multivariate Gaussian Covariance Projection Probabilistic
More informationNumerical Methods I Solving Nonlinear Equations
Numerical Methods I Solving Nonlinear Equations Aleksandar Donev Courant Institute, NYU 1 donev@courant.nyu.edu 1 MATH-GA 2011.003 / CSCI-GA 2945.003, Fall 2014 October 16th, 2014 A. Donev (Courant Institute)
More informationMotion Estimation (I) Ce Liu Microsoft Research New England
Motion Estimation (I) Ce Liu celiu@microsoft.com Microsoft Research New England We live in a moving world Perceiving, understanding and predicting motion is an important part of our daily lives Motion
More informationVariations on Backpropagation
2 Variations on Backpropagation 2 Variations Heuristic Modifications Moentu Variable Learning Rate Standard Nuerical Optiization Conjugate Gradient Newton s Method (Levenberg-Marquardt) 2 2 Perforance
More informationIntroduction to Mobile Robotics Compact Course on Linear Algebra. Wolfram Burgard, Cyrill Stachniss, Maren Bennewitz, Diego Tipaldi, Luciano Spinello
Introduction to Mobile Robotics Compact Course on Linear Algebra Wolfram Burgard, Cyrill Stachniss, Maren Bennewitz, Diego Tipaldi, Luciano Spinello Vectors Arrays of numbers Vectors represent a point
More informationDifferential Kinematics
Differential Kinematics Relations between motion (velocity) in joint space and motion (linear/angular velocity) in task space (e.g., Cartesian space) Instantaneous velocity mappings can be obtained through
More information1 Computing with constraints
Notes for 2017-04-26 1 Computing with constraints Recall that our basic problem is minimize φ(x) s.t. x Ω where the feasible set Ω is defined by equality and inequality conditions Ω = {x R n : c i (x)
More informationTrajectory-based optimization
Trajectory-based optimization Emo Todorov Applied Mathematics and Computer Science & Engineering University of Washington Winter 2012 Emo Todorov (UW) AMATH/CSE 579, Winter 2012 Lecture 6 1 / 13 Using
More informationMath 273a: Optimization Netwon s methods
Math 273a: Optimization Netwon s methods Instructor: Wotao Yin Department of Mathematics, UCLA Fall 2015 some material taken from Chong-Zak, 4th Ed. Main features of Newton s method Uses both first derivatives
More informationCS 5522: Artificial Intelligence II
CS 5522: Artificial Intelligence II Hidden Markov Models Instructor: Wei Xu Ohio State University [These slides were adapted from CS188 Intro to AI at UC Berkeley.] Pacman Sonar (P4) [Demo: Pacman Sonar
More informationLecture Note 8: Inverse Kinematics
ECE5463: Introduction to Robotics Lecture Note 8: Inverse Kinematics Prof. Wei Zhang Department of Electrical and Computer Engineering Ohio State University Columbus, Ohio, USA Spring 2018 Lecture 8 (ECE5463
More informationCOMP 558 lecture 18 Nov. 15, 2010
Least squares We have seen several least squares problems thus far, and we will see more in the upcoming lectures. For this reason it is good to have a more general picture of these problems and how to
More informationMiscellaneous. Regarding reading materials. Again, ask questions (if you have) and ask them earlier
Miscellaneous Regarding reading materials Reading materials will be provided as needed If no assigned reading, it means I think the material from class is sufficient Should be enough for you to do your
More informationSystem identification and sensor fusion in dynamical systems. Thomas Schön Division of Systems and Control, Uppsala University, Sweden.
System identification and sensor fusion in dynamical systems Thomas Schön Division of Systems and Control, Uppsala University, Sweden. The system identification and sensor fusion problem Inertial sensors
More informationIMU-Camera Calibration: Observability Analysis
IMU-Camera Calibration: Observability Analysis Faraz M. Mirzaei and Stergios I. Roumeliotis {faraz stergios}@cs.umn.edu Dept. of Computer Science & Engineering University of Minnesota Minneapolis, MN 55455
More informationLie Groups for 2D and 3D Transformations
Lie Groups for 2D and 3D Transformations Ethan Eade Updated May 20, 2017 * 1 Introduction This document derives useful formulae for working with the Lie groups that represent transformations in 2D and
More informationLinear Regression. CSL603 - Fall 2017 Narayanan C Krishnan
Linear Regression CSL603 - Fall 2017 Narayanan C Krishnan ckn@iitrpr.ac.in Outline Univariate regression Multivariate regression Probabilistic view of regression Loss functions Bias-Variance analysis Regularization
More informationLinear Regression. CSL465/603 - Fall 2016 Narayanan C Krishnan
Linear Regression CSL465/603 - Fall 2016 Narayanan C Krishnan ckn@iitrpr.ac.in Outline Univariate regression Multivariate regression Probabilistic view of regression Loss functions Bias-Variance analysis
More informationCS 5522: Artificial Intelligence II
CS 5522: Artificial Intelligence II Hidden Markov Models Instructor: Alan Ritter Ohio State University [These slides were adapted from CS188 Intro to AI at UC Berkeley. All materials available at http://ai.berkeley.edu.]
More informationMultiview Geometry and Bundle Adjustment. CSE P576 David M. Rosen
Multiview Geometry and Bundle Adjustment CSE P576 David M. Rosen 1 Recap Previously: Image formation Feature extraction + matching Two-view (epipolar geometry) Today: Add some geometry, statistics, optimization
More informationMarkov Models. CS 188: Artificial Intelligence Fall Example. Mini-Forward Algorithm. Stationary Distributions.
CS 88: Artificial Intelligence Fall 27 Lecture 2: HMMs /6/27 Markov Models A Markov model is a chain-structured BN Each node is identically distributed (stationarity) Value of X at a given time is called
More informationAnnouncements. CS 188: Artificial Intelligence Fall Markov Models. Example: Markov Chain. Mini-Forward Algorithm. Example
CS 88: Artificial Intelligence Fall 29 Lecture 9: Hidden Markov Models /3/29 Announcements Written 3 is up! Due on /2 (i.e. under two weeks) Project 4 up very soon! Due on /9 (i.e. a little over two weeks)
More informationUniversity of Houston, Department of Mathematics Numerical Analysis, Fall 2005
3 Numerical Solution of Nonlinear Equations and Systems 3.1 Fixed point iteration Reamrk 3.1 Problem Given a function F : lr n lr n, compute x lr n such that ( ) F(x ) = 0. In this chapter, we consider
More informationRobotics & Automation. Lecture 25. Dynamics of Constrained Systems, Dynamic Control. John T. Wen. April 26, 2007
Robotics & Automation Lecture 25 Dynamics of Constrained Systems, Dynamic Control John T. Wen April 26, 2007 Last Time Order N Forward Dynamics (3-sweep algorithm) Factorization perspective: causal-anticausal
More informationLecture 7 Unconstrained nonlinear programming
Lecture 7 Unconstrained nonlinear programming Weinan E 1,2 and Tiejun Li 2 1 Department of Mathematics, Princeton University, weinan@princeton.edu 2 School of Mathematical Sciences, Peking University,
More informationLecture 4: Extended Kalman filter and Statistically Linearized Filter
Lecture 4: Extended Kalman filter and Statistically Linearized Filter Department of Biomedical Engineering and Computational Science Aalto University February 17, 2011 Contents 1 Overview of EKF 2 Linear
More informationEE Camera & Image Formation
Electric Electronic Engineering Bogazici University February 21, 2018 Introduction Introduction Camera models Goal: To understand the image acquisition process. Function of the camera Similar to that of
More information1 Overview. 2 A Characterization of Convex Functions. 2.1 First-order Taylor approximation. AM 221: Advanced Optimization Spring 2016
AM 221: Advanced Optimization Spring 2016 Prof. Yaron Singer Lecture 8 February 22nd 1 Overview In the previous lecture we saw characterizations of optimality in linear optimization, and we reviewed the
More informationOptimisation on Manifolds
Optimisation on Manifolds K. Hüper MPI Tübingen & Univ. Würzburg K. Hüper (MPI Tübingen & Univ. Würzburg) Applications in Computer Vision Grenoble 18/9/08 1 / 29 Contents 2 Examples Essential matrix estimation
More informationLEARNING DYNAMIC SYSTEMS: MARKOV MODELS
LEARNING DYNAMIC SYSTEMS: MARKOV MODELS Markov Process and Markov Chains Hidden Markov Models Kalman Filters Types of dynamic systems Problem of future state prediction Predictability Observability Easily
More informationCONTROL OF ROBOT CAMERA SYSTEM WITH ACTUATOR S DYNAMICS TO TRACK MOVING OBJECT
Journal of Computer Science and Cybernetics, V.31, N.3 (2015), 255 265 DOI: 10.15625/1813-9663/31/3/6127 CONTROL OF ROBOT CAMERA SYSTEM WITH ACTUATOR S DYNAMICS TO TRACK MOVING OBJECT NGUYEN TIEN KIEM
More informationTRACKING and DETECTION in COMPUTER VISION
Technischen Universität München Winter Semester 2013/2014 TRACKING and DETECTION in COMPUTER VISION Template tracking methods Slobodan Ilić Template based-tracking Energy-based methods The Lucas-Kanade(LK)
More informationSystems of Linear ODEs
P a g e 1 Systems of Linear ODEs Systems of ordinary differential equations can be solved in much the same way as discrete dynamical systems if the differential equations are linear. We will focus here
More informationAnnouncements. CS 188: Artificial Intelligence Fall VPI Example. VPI Properties. Reasoning over Time. Markov Models. Lecture 19: HMMs 11/4/2008
CS 88: Artificial Intelligence Fall 28 Lecture 9: HMMs /4/28 Announcements Midterm solutions up, submit regrade requests within a week Midterm course evaluation up on web, please fill out! Dan Klein UC
More informationConstrained optimization. Unconstrained optimization. One-dimensional. Multi-dimensional. Newton with equality constraints. Active-set method.
Optimization Unconstrained optimization One-dimensional Multi-dimensional Newton s method Basic Newton Gauss- Newton Quasi- Newton Descent methods Gradient descent Conjugate gradient Constrained optimization
More informationEKF, UKF. Pieter Abbeel UC Berkeley EECS. Many slides adapted from Thrun, Burgard and Fox, Probabilistic Robotics
EKF, UKF Pieter Abbeel UC Berkeley EECS Many slides adapted from Thrun, Burgard and Fox, Probabilistic Robotics Kalman Filter Kalman Filter = special case of a Bayes filter with dynamics model and sensory
More informationEKF, UKF. Pieter Abbeel UC Berkeley EECS. Many slides adapted from Thrun, Burgard and Fox, Probabilistic Robotics
EKF, UKF Pieter Abbeel UC Berkeley EECS Many slides adapted from Thrun, Burgard and Fox, Probabilistic Robotics Kalman Filter Kalman Filter = special case of a Bayes filter with dynamics model and sensory
More informationME751 Advanced Computational Multibody Dynamics
ME751 Advanced Computational Multibody Dynamics Review: Elements of Linear Algebra & Calculus September 9, 2016 Dan Negrut University of Wisconsin-Madison Quote of the day If you can't convince them, confuse
More information