From e395e0304013f61e9f5944ca54f305a535d41ac7 Mon Sep 17 00:00:00 2001 From: edgarriba Date: Tue, 8 Jul 2014 16:34:49 +0200 Subject: [PATCH] Real Time Pose tutorial --- .../calib3d/real_time_pose/images/pnp.jpg | Bin 0 -> 31839 bytes .../real_time_pose/images/registration.png | Bin 0 -> 108400 bytes .../calib3d/real_time_pose/real_time_pose.rst | 683 ++++++++++++++++++ .../images/real_time_pose_estimation.jpg | Bin 0 -> 84929 bytes .../table_of_content_calib3d.rst | 20 + 5 files changed, 703 insertions(+) create mode 100644 doc/tutorials/calib3d/real_time_pose/images/pnp.jpg create mode 100644 doc/tutorials/calib3d/real_time_pose/images/registration.png create mode 100644 doc/tutorials/calib3d/real_time_pose/real_time_pose.rst create mode 100644 doc/tutorials/calib3d/table_of_content_calib3d/images/real_time_pose_estimation.jpg diff --git a/doc/tutorials/calib3d/real_time_pose/images/pnp.jpg b/doc/tutorials/calib3d/real_time_pose/images/pnp.jpg new file mode 100644 index 0000000000000000000000000000000000000000..f7d01f5f224f9a102150cabd4a8b393f32c353fb GIT binary patch literal 31839 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

B-Bu;rNs~)GPJxXnUzkiN^ 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. + +Source code +=========== + +You can find the source code of this tutorial in the :file:`samples/cpp/tutorial_code/calib3d/real_time_pose_estimation/` folder of the OpenCV source library. + +The tutorial consists of two main programs: + +**1. Model registration** + +This applicaton is exclusive to whom don't have a 3D textured model of the object to be detected. You can use this program to create your own textured 3D model. This program only works for planar objects, then if you want to model an object with complex shape you should use a sophisticated software to create it. + +The application needs an input image of the object to be registered and its 3D mesh. We have also to provide the intrinsic parameters of the camera with which the input image was taken. All the files need to be specified using the absolute path or the relative one from your application’s working directory. If none files are specified the program will try to open the provided default parameters. + +The application starts up extracting the ORB features and descriptors from the input image and then uses the mesh along with the `Möller–Trumbore intersection algorithm `_ to compute the 3D coordinates of the found features. Finally, the 3D points and the descriptors are stored in different lists in a file with YAML format which each row is a different point. The technical background on how to store the files can be found in the :ref:`fileInputOutputXMLYAML` tutorial. + +.. image:: images/registration.png + :alt: Model registration + :align: center + + +**2. Model detection** + +The aim of this application is estimate in real time the object pose given its 3D textured model. + +The application starts up loading the 3D textured model in YAML file format with the same structure explained in the model registration program. From the scene the ORB features and descriptors are detected and extracted. Then, is used :features2d:`FlannBasedMatcher ` with :flann:`LshIndexParams ` to do the matching between the scene descriptors and the model descriptors. Using the found matches along with :calib3d:`solvePnPRansac() ` function the :math:`R` and :math:`t` of the camera are computed. Finally, a :video:`Linear Kalman Filter ` is applied in order to reject bad poses. + + +Explanation +=========== + +Here is explained in detail the code for the real time application: + +**1. Read 3D textured object model and object mesh.** + +In order to load the textured model I implemented the *class* **Model** which has the function *load()* that opens a YAML file and take the stored 3D points with its corresponding descriptors. You can find an example of a 3D textured model in :file:`samples/cpp/tutorial_code/calib3d/real_time_pose_estimation/Data/cookies_ORB.yml` or :download:`download from here <./../../../samples/cpp/tutorial_code/calib3d/real_time_pose_estimation/Data/cookies_ORB.yml>`. + + .. code-block:: cpp + + /** Load a YAML file using OpenCV **/ + void Model::load(const std::string path) + { + cv::Mat points3d_mat; + + cv::FileStorage storage(path, cv::FileStorage::READ); + storage["points_3d"] >> points3d_mat; + storage["descriptors"] >> descriptors_; + + points3d_mat.copyTo(list_points3d_in_); + + storage.release(); + + } + +In the main program the model is loaded as follows: + + .. code-block:: cpp + + Model model; // instantiate Model object + model.load(yml_read_path); // load a 3D textured object model + + + +In order to read the model mesh I implemented a *class* **Mesh** which has a function *load()* that opens a *.ply file and store the 3D points of the object and also the composed triangles. You can find an example of a model mesh in :file:`samples/cpp/tutorial_code/calib3d/real_time_pose_estimation/Data/box.ply` or :download:`download from here <./../../../samples/cpp/tutorial_code/calib3d/real_time_pose_estimation/Data/box.ply>`. + + .. code-block:: cpp + + /** Load a CSV with *.ply format **/ + void Mesh::load(const std::string path) + { + + // Create the reader + CsvReader csvReader(path); + + // Clear previous data + list_vertex_.clear(); + list_triangles_.clear(); + + // Read from .ply file + csvReader.readPLY(list_vertex_, list_triangles_); + + // Update mesh attributes + num_vertexs_ = list_vertex_.size(); + num_triangles_ = list_triangles_.size(); + + } + +In the main program the mesh is loaded as follows: + + .. code-block:: cpp + + Mesh mesh; // instantiate Mesh object + mesh.load(ply_read_path); // load an object mesh + + +**2. Take input from Camera or Video** + +To detect is necessary capture video. It's done loading a recorded video by passing the absolute path where it is located in your machine or using the default camera device: + + .. code-block:: cpp + + cv::VideoCapture cap; // instantiate VideoCapture + (argc < 2) ? cap.open(0) : cap.open(argv[1]); // open the default camera device + // or a recorder video + + if(!cap.isOpened()) // check if we succeeded + { + std::cout << "Could not open the camera device" << std::endl; + return -1; + } + +Then the algorithm is computed frame per frame: + + .. code-block:: cpp + + cv::Mat frame, frame_vis; + + while(cap.read(frame) && cv::waitKey(30) != 27) // capture frame until ESC is pressed + { + + frame_vis = frame.clone(); // refresh visualisation frame + + // MAIN ALGORITHM + + } + + +**3. Extract ORB features and descriptors from the scene** + +The next step is to detect the scene features and extract it descriptors. For this task I implemented a *class* **RobustMatcher** which has a function for keypoints detection and features extraction. You can find it in :file:`samples/cpp/tutorial_code/calib3d/real_time_pose_estimation/src/RobusMatcher.cpp`. In your *RobusMatch* object you can use any of the 2D features detectors of OpenCV. In this case I used ORB features because is based on FAST to detect the keypoints and BRIEF to extract the descriptors which means that is fast and robust to rotations. You can find more detailed information about ORB :features2d:`here ` in the documentation. + +The following code is how to instantiate and set the features detector and the descriptors extractor: + + .. code-block:: cpp + + RobustMatcher rmatcher; // instantiate RobustMatcher + + cv::FeatureDetector * detector = new cv::OrbFeatureDetector(numKeyPoints); // instatiate ORB feature detector + cv::DescriptorExtractor * extractor = new cv::OrbDescriptorExtractor(); // instatiate ORB descriptor extractor + + rmatcher.setFeatureDetector(detector); // set feature detector + rmatcher.setDescriptorExtractor(extractor); // set descriptor extractor + +The features and descriptors will be computed by the *RobustMatcher* inside the matching function. + + +**4. Match scene descriptors with model descriptors using Flann matcher** + +It is the first step in our detection algorithm. The main idea is to match the scene descriptors with our model descriptors in order to know the 3D coordinates of the found features into the current scene. + +First, we have to set which matcher we want to use. In this case is used *FlannBased* matcher which in terms of computational cost is faster than the *BruteForce* matcher as we increase the trained collectction of features. Then, for FlannBased matcher the index created is *Multi-Probe LSH: Efficient Indexing for High-Dimensional Similarity Search* due to *ORB* descriptors are binary. + +You can tune the *LSH* and search parameters to improve the matching efficiency: + + .. code-block:: cpp + + cv::Ptr indexParams = cv::makePtr(6, 12, 1); // instantiate LSH index parameters + cv::Ptr searchParams = cv::makePtr(50); // instantiate flann search parameters + + cv::DescriptorMatcher * matcher = new cv::FlannBasedMatcher(indexParams, searchParams); // instantiate FlannBased matcher + rmatcher.setDescriptorMatcher(matcher); // set matcher + + +Secondly, we have to call the matcher by using *robustMatch()* or *fastRobustMatch()* function. The difference of using this two functions is its computational cost. The first method is slower but more robust at filtering good matches due to that uses two ratio test and a symmetry test. In contrast, the second method is faster but less robust due to that only applies a single ratio test to the matches. + +The following code is to get the model 3D points and its descriptors and then call the matcher in the main program: + + .. code-block:: cpp + + // Get the MODEL INFO + + std::vector list_points3d_model = model.get_points3d(); // list with model 3D coordinates + cv::Mat descriptors_model = model.get_descriptors(); // list with descriptors of each 3D coordinate + + .. code-block:: cpp + + // -- Step 1: Robust matching between model descriptors and scene descriptors + + std::vector good_matches; // to obtain the model 3D points in the scene + std::vector keypoints_scene; // to obtain the 2D points of the scene + + if(fast_match) + { + rmatcher.robustMatch(frame, good_matches, keypoints_scene, descriptors_model); + } + else + { + rmatcher.fastRobustMatch(frame, good_matches, keypoints_scene, descriptors_model); + } + +The following code corresponds to the *robustMatch()* function which belongs to the *RobustMatcher* class. This function uses the given image to detect the keypoints and extract the descriptors, match using *2 Nearest Neighbour* the extracted descriptors with the given model descriptors and vice versa. Then, is applied a ratio test to the two direction matches in order to remove these matches which its distance ratio between the first and second best match is larger than a given threshold. Finally, a symmetry test is applied in order the remove non symmetrical matches. + + .. code-block:: cpp + + void RobustMatcher::robustMatch( const cv::Mat& frame, std::vector& good_matches, + std::vector& keypoints_frame, + const std::vector& keypoints_model, const cv::Mat& descriptors_model ) + { + + // 1a. Detection of the ORB features + this->computeKeyPoints(frame, keypoints_frame); + + // 1b. Extraction of the ORB descriptors + cv::Mat descriptors_frame; + this->computeDescriptors(frame, keypoints_frame, descriptors_frame); + + // 2. Match the two image descriptors + std::vector > matches12, matches21; + + // 2a. From image 1 to image 2 + matcher_->knnMatch(descriptors_frame, descriptors_model, matches12, 2); // return 2 nearest neighbours + + // 2b. From image 2 to image 1 + matcher_->knnMatch(descriptors_model, descriptors_frame, matches21, 2); // return 2 nearest neighbours + + // 3. Remove matches for which NN ratio is > than threshold + // clean image 1 -> image 2 matches + int removed1 = ratioTest(matches12); + // clean image 2 -> image 1 matches + int removed2 = ratioTest(matches21); + + // 4. Remove non-symmetrical matches + symmetryTest(matches12, matches21, good_matches); + + } + +After the matches filtering we have to get the 2D an 3D correspondences using the obtained *DMatches* vector. For more information about :core:`DMatch ` check the documentation. + + .. code-block:: cpp + + // -- Step 2: Find out the 2D/3D correspondences + + std::vector list_points3d_model_match; // container for the model 3D coordinates found in the scene + std::vector list_points2d_scene_match; // container for the model 2D coordinates found in the scene + + for(unsigned int match_index = 0; match_index < good_matches.size(); ++match_index) + { + cv::Point3f point3d_model = list_points3d_model[ good_matches[match_index].trainIdx ]; // 3D point from model + cv::Point2f point2d_scene = keypoints_scene[ good_matches[match_index].queryIdx ].pt; // 2D point from the scene + list_points3d_model_match.push_back(point3d_model); // add 3D point + list_points2d_scene_match.push_back(point2d_scene); // add 2D point + } + + +**5. Estimate pose using PnP + Ransac** + +With the 2D and 3D correspondences we have to apply the PnP algorithm using :calib3d:`solvePnPRansac() ` function in order to estimate the camera pose. The reason why we have to use :calib3d:`solvePnPRansac() ` instead of :calib3d:`solvePnP() ` is due to the fact that after the matching not all the found correspondences are correct and may be there are bad correspondences or also called *outliers*. The `Random Sample Consensus `_ or *Ransac* is a non-deterministic iterative method which estimate parameters of a mathematical model from observed data producing an aproximate result as the number of iterations increase. After appyling *Ransac* all these *outliers* will be eliminated to then estimate the camera pose with a certain probability. + +For the camera pose estimation I have implemented a *class* **PnPProblem**. This *class* has 4 atributes: a given calibration matrix, the rotation matrix, the translation matrix and the rotation-translation matrix. To declare it we need the intrinsic calibration parameters of the camera which you will use to estimate the pose. To obtain these parameters you can check :ref:`CameraCalibrationSquareChessBoardTutorial` and :ref:`cameraCalibrationOpenCV` tutorials. + +The following code is how to declare the *PnPProblem class* in the main program: + + .. code-block:: cpp + + /* + * Set up the intrinsic camera parameters: UVC WEBCAM + */ + + double f = 55; // focal length in mm + double sx = 22.3, sy = 14.9; // sensor size + double width = 640, height = 480; // image size + + double params_WEBCAM[] = { width*f/sx, // fx + height*f/sy, // fy + width/2, // cx + height/2}; // cy + + PnPProblem pnp_detection(params_WEBCAM); // instantiate PnPProblem class + +The following code is how the *PnPProblem class* initialises its atributes: + + .. code-block:: cpp + + // Custom constructor given the intrinsic camera parameters + + PnPProblem::PnPProblem(const double params[]) + { + _A_matrix = cv::Mat::zeros(3, 3, CV_64FC1); // intrinsic camera parameters + _A_matrix.at(0, 0) = params[0]; // [ fx 0 cx ] + _A_matrix.at(1, 1) = params[1]; // [ 0 fy cy ] + _A_matrix.at(0, 2) = params[2]; // [ 0 0 1 ] + _A_matrix.at(1, 2) = params[3]; + _A_matrix.at(2, 2) = 1; + _R_matrix = cv::Mat::zeros(3, 3, CV_64FC1); // rotation matrix + _t_matrix = cv::Mat::zeros(3, 1, CV_64FC1); // translation matrix + _P_matrix = cv::Mat::zeros(3, 4, CV_64FC1); // rotation-translation matrix + + } + +OpenCV provides four PnP methods: ITERATIVE, EPNP, P3P and ? . If we want a real time time application the more suitable methods are EPNP and P3P due to are faster than ITERATIVE finding a solution. Otherwise, EPNP and P3P are not robust especially in front of planar surfaces and sometimes the pose estimation seems to have like a mirror effect. Therefore, in this this tutorial is used ITERATIVE method due to the object to be detected has planar surfaces. + +The OpenCV Ransac implementation wants you to provide three parameters: the maximum number of iterations until stop the algorithm, the maximum allowed distance between the observed and computed point projections to consider it an inlier and a threshold of minimum number of inliers found. You can tune these paramaters in order to improve your algorithm performance. Increasing the number of iterations you will have a more accurate solution, but will take more time to find a solution. Increasing the reprojection error will reduce the computation time, but your solution will be unaccurate. Decreasing the minimum number of inliers will reduce the computation time with high probability to obtain a bad solution. + +The following parameters works for this application: + + .. code-block:: cpp + + // RANSAC parameters + + int iterationsCount = 500; // number of Ransac iterations. + int reprojectionError = 2.0; // maximum allowed distance to consider it an inlier. + int minInliersCount = 70; // thresold of found inliers. + + +The following code corresponds to the *estimatePoseRANSAC()* function which belongs to the *PnPProblem class*. This function estimates the rotation and translation matrix given a set of 2D/3D correspondences, the desired PnP method to use, the output inliers container and the Ransac parameters: + + .. code-block:: cpp + + // Estimate the pose given a list of 2D/3D correspondences with RANSAC and the method to use + + void PnPProblem::estimatePoseRANSAC( const std::vector &list_points3d, // list with model 3D coordinates + const std::vector &list_points2d, // list with scene 2D coordinates + int flags, cv::Mat &inliers, int iterationsCount, // PnP method; inliers container + double reprojectionError, int minInliersCount ) // Ransac parameters + { + cv::Mat distCoeffs = cv::Mat::zeros(4, 1, CV_64FC1); // vector of distortion coefficients + cv::Mat rvec = cv::Mat::zeros(3, 1, CV_64FC1); // output rotation vector + cv::Mat tvec = cv::Mat::zeros(3, 1, CV_64FC1); // output translation vector + + bool useExtrinsicGuess = false; // if true the function uses the provided rvec and tvec values as + // initial approximations of the rotation and translation vectors + + cv::solvePnPRansac( list_points3d, list_points2d, _A_matrix, distCoeffs, rvec, tvec, + useExtrinsicGuess, iterationsCount, reprojectionError, minInliersCount, + inliers, flags ); + + Rodrigues(rvec,_R_matrix); // converts Rotation Vector to Matrix + _t_matrix = tvec; // set translation matrix + + this->set_P_matrix(_R_matrix, _t_matrix); // set rotation-translation matrix + + } + +In the following code are the 3th and 4th steps of the main algorithm. The first, calling the above function and the second taking the output inliers vector from Ransac to get the 2D scene points for drawing purpose. As seen in the code we must be sure to apply Ransac if we have matches, in the other case, the function :calib3d:`solvePnPRansac() ` crashes due to some OpenCV *bug*. + + .. code-block:: cpp + + if(good_matches.size() > 0) // None matches, then RANSAC crashes + { + + // -- Step 3: Estimate the pose using RANSAC approach + pnp_detection.estimatePoseRANSAC( list_points3d_model_match, list_points2d_scene_match, + cv::ITERATIVE, inliers_idx, + iterationsCount, reprojectionError, minInliersCount ); + + + // -- Step 4: Catch the inliers keypoints to draw + for(int inliers_index = 0; inliers_index < inliers_idx.rows; ++inliers_index) + { + int n = inliers_idx.at(inliers_index); // i-inlier + cv::Point2f point2d = list_points2d_scene_match[n]; // i-inlier point 2D + list_points2d_inliers.push_back(point2d); // add i-inlier to list + } + + +Finally, once the camera pose has been estimated we can use the :math:`R` and :math:`t` in order to compute the 2D projection onto the image of a given 3D point expressed in a world reference frame using the showed formula on *Theory*. + +The following code corresponds to the *backproject3DPoint()* function which belongs to the *PnPProblem class*. This function backproject a given 3D point expressed in a world reference frame onto a 2D image: + + .. code-block:: cpp + + // Backproject a 3D point to 2D using the estimated pose parameters + + cv::Point2f PnPProblem::backproject3DPoint(const cv::Point3f &point3d) + { + // 3D point vector [x y z 1]' + cv::Mat point3d_vec = cv::Mat(4, 1, CV_64FC1); + point3d_vec.at(0) = point3d.x; + point3d_vec.at(1) = point3d.y; + point3d_vec.at(2) = point3d.z; + point3d_vec.at(3) = 1; + + // 2D point vector [u v 1]' + cv::Mat point2d_vec = cv::Mat(4, 1, CV_64FC1); + point2d_vec = _A_matrix * _P_matrix * point3d_vec; + + // Normalization of [u v]' + cv::Point2f point2d; + point2d.x = point2d_vec.at(0) / point2d_vec.at(2); + point2d.y = point2d_vec.at(1) / point2d_vec.at(2); + + return point2d; + } + +The above function then is used to compute all the 3D points of the object *Mesh* to show the pose of the object. + + +**6. Use Linear Kalman Filter to reject bad poses** + +Is it common in computer vision or robotics fields that after applying detection or tracking techniques bad results are obtained due to some sensor errors. In order to avoid these bad detections in this tutorialis explained how to implement a Linear Kalman Filter after getting a good pose estimation. The definition of a good pose is arbitrary, so here we will define good pose as a detection with high number of inliers. + +You can find more information about what `Kalman Filter `_ is. In this tutorial it's used the OpenCV implementation of the :video:`Kalman Filter ` based on `Linear Kalman Filter for position and orientation tracking `_ to set the dynamics and measurement models. + +First, we have to define our state vector which will have 18 states: the positional data (x,y,z) with its first and second derivatives (velocity and acceleration), then rotation is added in form of three euler angles (roll, pitch, jaw) together with their first and second derivatives (angular velocity and acceleration) + + .. math:: + + X = (x,y,z,\dot x,\dot y,\dot z,\ddot x,\ddot y,\ddot z,\psi,\theta,\phi,\dot \psi,\dot \theta,\dot \phi,\ddot \psi,\ddot \theta,\ddot \phi)^T + +Secondly, we have to define the number of measuremnts which will be 6: from :math:`R` and :math:`t` we can extract :math:`(x,y,z)` and :math:`(\psi,\theta,\phi)`. Thirdly, we have t define the number of control actions to apply to the system which in this case will be *zero*. Finally, we have to define the differential time between the measurements which in this case is :math:`1/T`, where *T* is the frame rate of the video. + + .. code-block:: cpp + + cv::KalmanFilter KF; // instantiate Kalman Filter + + int nStates = 18; // the number of states + int nMeasurements = 6; // the number of measured states + int nInputs = 0; // the number of action control + + double dt = 0.125; // time between measurements (1/FPS) + + initKalmanFilter(KF, nStates, nMeasurements, nInputs, dt); // init function + + +The following code corresponds to the Kalman Filter initialisation. First, is set the process noise, the measurement noise and the error covariance matrix. Secondly, are set the transition matrix which is the dynamic model and then the measurement matrix which is the measurement model. + +You can tune the process and measurement noise to improve the Kalman Filter performance. As you reduce the measurement noise the faster will converge but will be more sensible in front of bad measurements. + + .. code-block:: cpp + + void initKalmanFilter(cv::KalmanFilter &KF, int nStates, int nMeasurements, int nInputs, double dt) + { + + KF.init(nStates, nMeasurements, nInputs, CV_64F); // init Kalman Filter + + cv::setIdentity(KF.processNoiseCov, cv::Scalar::all(1e-5)); // set process noise + cv::setIdentity(KF.measurementNoiseCov, cv::Scalar::all(1e-4)); // set measurement noise + cv::setIdentity(KF.errorCovPost, cv::Scalar::all(1)); // error covariance + + + /** DYNAMIC MODEL **/ + + // [1 0 0 dt 0 0 dt2 0 0 0 0 0 0 0 0 0 0 0] + // [0 1 0 0 dt 0 0 dt2 0 0 0 0 0 0 0 0 0 0] + // [0 0 1 0 0 dt 0 0 dt2 0 0 0 0 0 0 0 0 0] + // [0 0 0 1 0 0 dt 0 0 0 0 0 0 0 0 0 0 0] + // [0 0 0 0 1 0 0 dt 0 0 0 0 0 0 0 0 0 0] + // [0 0 0 0 0 1 0 0 dt 0 0 0 0 0 0 0 0 0] + // [0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0] + // [0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0] + // [0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0] + // [0 0 0 0 0 0 0 0 0 1 0 0 dt 0 0 dt2 0 0] + // [0 0 0 0 0 0 0 0 0 0 1 0 0 dt 0 0 dt2 0] + // [0 0 0 0 0 0 0 0 0 0 0 1 0 0 dt 0 0 dt2] + // [0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 dt 0 0] + // [0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 dt 0] + // [0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 dt] + // [0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0] + // [0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0] + // [0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1] + + // position + KF.transitionMatrix.at(0,3) = dt; + KF.transitionMatrix.at(1,4) = dt; + KF.transitionMatrix.at(2,5) = dt; + KF.transitionMatrix.at(3,6) = dt; + KF.transitionMatrix.at(4,7) = dt; + KF.transitionMatrix.at(5,8) = dt; + KF.transitionMatrix.at(0,6) = 0.5*pow(dt,2); + KF.transitionMatrix.at(1,7) = 0.5*pow(dt,2); + KF.transitionMatrix.at(2,8) = 0.5*pow(dt,2); + + // orientation + KF.transitionMatrix.at(9,12) = dt; + KF.transitionMatrix.at(10,13) = dt; + KF.transitionMatrix.at(11,14) = dt; + KF.transitionMatrix.at(12,15) = dt; + KF.transitionMatrix.at(13,16) = dt; + KF.transitionMatrix.at(14,17) = dt; + KF.transitionMatrix.at(9,15) = 0.5*pow(dt,2); + KF.transitionMatrix.at(10,16) = 0.5*pow(dt,2); + KF.transitionMatrix.at(11,17) = 0.5*pow(dt,2); + + + /** MEASUREMENT MODEL **/ + + // [1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0] + // [0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0] + // [0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0] + // [0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0] + // [0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0] + // [0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0] + + KF.measurementMatrix.at(0,0) = 1; // x + KF.measurementMatrix.at(1,1) = 1; // y + KF.measurementMatrix.at(2,2) = 1; // z + KF.measurementMatrix.at(3,9) = 1; // roll + KF.measurementMatrix.at(4,10) = 1; // pitch + KF.measurementMatrix.at(5,11) = 1; // yaw + + std::cout << "A " << std::endl << KF.transitionMatrix << std::endl; + std::cout << "C " << std::endl << KF.measurementMatrix << std::endl; + + } + +In the following code is 5th step of the main algorithm. When the obtained number of inliers after *Ransac* is over the threshold, the measurements matrix is filled and then the Kalman Filter is updated: + + .. code-block:: cpp + + // -- Step 5: Kalman Filter + + // GOOD MEASUREMENT + if( inliers_idx.rows >= minInliersKalman ) + { + + // Get the measured translation + cv::Mat translation_measured(3, 1, CV_64F); + translation_measured = pnp_detection.get_t_matrix(); + + // Get the measured rotation + cv::Mat rotation_measured(3, 3, CV_64F); + rotation_measured = pnp_detection.get_R_matrix(); + + // fill the measurements vector + fillMeasurements(measurements, translation_measured, rotation_measured); + + } + + // Instantiate estimated translation and rotation + cv::Mat translation_estimated(3, 1, CV_64F); + cv::Mat rotation_estimated(3, 3, CV_64F); + + // update the Kalman filter with good measurements + updateKalmanFilter( KF, measurements, + translation_estimated, rotation_estimated); + +The following code corresponds to the *fillMeasurements()* function which converts the measured `Rotation Matrix to Eulers angles `_ and fill the measurements matrix along with the measured translation vector: + + .. code-block:: cpp + + void fillMeasurements( cv::Mat &measurements, + const cv::Mat &translation_measured, const cv::Mat &rotation_measured) + { + // Convert rotation matrix to euler angles + cv::Mat measured_eulers(3, 1, CV_64F); + measured_eulers = rot2euler(rotation_measured); + + // Set measurement to predict + measurements.at(0) = translation_measured.at(0); // x + measurements.at(1) = translation_measured.at(1); // y + measurements.at(2) = translation_measured.at(2); // z + measurements.at(3) = measured_eulers.at(0); // roll + measurements.at(4) = measured_eulers.at(1); // pitch + measurements.at(5) = measured_eulers.at(2); // yaw + } + + +The following code corresponds to the *updateKalmanFilter()* function which update the Kalman Filter and set the estimated Rotation Matrix and translation vector. The estimated Rotation Matrix comes from the estimated `Euler angles to Rotation Matrix `_. + + .. code-block:: cpp + + void updateKalmanFilter( cv::KalmanFilter &KF, cv::Mat &measurement, + cv::Mat &translation_estimated, cv::Mat &rotation_estimated ) + { + + // First predict, to update the internal statePre variable + cv::Mat prediction = KF.predict(); + + // The "correct" phase that is going to use the predicted value and our measurement + cv::Mat estimated = KF.correct(measurement); + + // Estimated translation + translation_estimated.at(0) = estimated.at(0); + translation_estimated.at(1) = estimated.at(1); + translation_estimated.at(2) = estimated.at(2); + + // Estimated euler angles + cv::Mat eulers_estimated(3, 1, CV_64F); + eulers_estimated.at(0) = estimated.at(9); + eulers_estimated.at(1) = estimated.at(10); + eulers_estimated.at(2) = estimated.at(11); + + // Convert estimated quaternion to rotation matrix + rotation_estimated = euler2rot(eulers_estimated); + + } + +The 6th step is set the estimated rotation-translation matrix: + + .. code-block:: cpp + + // -- Step 6: Set estimated projection matrix + pnp_detection_est.set_P_matrix(rotation_estimated, translation_estimated); + + +The last and optional step is draw the found pose. To do it I implemented a function to draw all the mesh 3D points and an extra reference axis: + + .. code-block:: cpp + + // -- Step X: Draw pose + + drawObjectMesh(frame_vis, &mesh, &pnp_detection, green); // draw current pose + drawObjectMesh(frame_vis, &mesh, &pnp_detection_est, yellow); // draw estimated pose + + double l = 5; + std::vector pose_points2d; + pose_points2d.push_back(pnp_detection_est.backproject3DPoint(cv::Point3f(0,0,0))); // axis center + pose_points2d.push_back(pnp_detection_est.backproject3DPoint(cv::Point3f(l,0,0))); // axis x + pose_points2d.push_back(pnp_detection_est.backproject3DPoint(cv::Point3f(0,l,0))); // axis y + pose_points2d.push_back(pnp_detection_est.backproject3DPoint(cv::Point3f(0,0,l))); // axis z + draw3DCoordinateAxes(frame_vis, pose_points2d); // draw axes + + +Results +======= + +The following videos are the results of pose estimation in real time using the explained detection algorithm with the following parameters: + + .. code-block:: cpp + + // Robust Matcher parameters + + int numKeyPoints = 2000; // number of detected keypoints + float ratio = 0.70f; // ratio test + bool fast_match = true; // fastRobustMatch() or robustMatch() + + + // RANSAC parameters + + int iterationsCount = 500; // number of Ransac iterations. + int reprojectionError = 2.0; // maximum allowed distance to consider it an inlier. + int minInliersCount = 70; // thresold of found inliers. + + + // Kalman Filter parameters + + int minInliersKalman = 30; // Kalman threshold updating + + +.. raw:: html + +

+ +
+ + diff --git a/doc/tutorials/calib3d/table_of_content_calib3d/images/real_time_pose_estimation.jpg b/doc/tutorials/calib3d/table_of_content_calib3d/images/real_time_pose_estimation.jpg new file mode 100644 index 0000000000000000000000000000000000000000..dcd24cc7915846952e1fcc7d7fceaee1cbc490a1 GIT binary patch literal 84929 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 z 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 E*$j;nJOBUy literal 0 HcmV?d00001 diff --git a/doc/tutorials/calib3d/table_of_content_calib3d/table_of_content_calib3d.rst b/doc/tutorials/calib3d/table_of_content_calib3d/table_of_content_calib3d.rst index 91f80b70b9..47c03d1679 100644 --- a/doc/tutorials/calib3d/table_of_content_calib3d/table_of_content_calib3d.rst +++ b/doc/tutorials/calib3d/table_of_content_calib3d/table_of_content_calib3d.rst @@ -45,6 +45,25 @@ Although we got most of our images in a 2D format they do come from a 3D world. :height: 90pt :width: 90pt ++ + .. tabularcolumns:: m{100pt} m{300pt} + .. cssclass:: toctableopencv + + ===================== ============================================== + |PoseEstimation| **Title:** :ref:`realTimePoseEstimation` + + *Compatibility:* > OpenCV 2.0 + + *Author:* Edgar Riba + + Real time pose estimation of a textured object using ORB features, FlannBased matcher, PnP approach plus Ransac and Linear Kalman Filter to reject possible bad poses. + + ===================== ============================================== + + .. |PoseEstimation| image:: images/real_time_pose_estimation.jpg + :height: 90pt + :width: 90pt + .. raw:: latex \pagebreak @@ -54,3 +73,4 @@ Although we got most of our images in a 2D format they do come from a 3D world. ../camera_calibration_square_chess/camera_calibration_square_chess ../camera_calibration/camera_calibration + ../real_time_pose/real_time_pose