mirror of
https://github.com/opencv/opencv.git
synced 2024-12-05 09:49:12 +08:00
80c5d18f9c
Add support for 3D point cloud segmentation, using the USAC framework. * Modify the RANSAC framework in usac such that RANSAC can be used in 3D point cloud segmentation. * 1. Add support for 3D point cloud segmentation, using the USAC framework. 2. Add solvers, error estimators for plane model and sphere model. * Added code samples to the comments of class SACSegmentation. * 1. Update the segment interface parameters of SACSegmentation. 2. Fix some errors in variable naming. * Add tests for plane detection. * 1. Add tests for sphere segmentation. 2. Fix some bugs found by tests. 3. Rename "segmentation" to "sac segmentation". 4. Rename "detect" to "segment". TODO: Too much duplicate code, the structure of the test needs to be rebuilt. * 1. Use SIMD acceleration for plane model and sphere model error estimation. 2. Optimize the RansacQualityImpl#getScore function to avoid multiple calls to the error#getError function. 3. Fix a warning in test_sac_segmentation.cpp. * 1. Fix the warning of ModelConstraintFunction ambiguity. 2. Fix warning: no previous declaration for'void cv::usac::modelParamsToUsacConfig(cv::Ptr<cv::usac::SimpleUsacConfig>&, const cv::Ptr<const cv::usac::Model>& ) * Fix a warning in test_sac_segmentation.cpp about direct comparison of different types of data. * Add code comments related to the interpretation of model coefficients. * Update the use of custom model constraint functions. * Simplified test code structure. * Update the method of checking plane models. * Delete test for cylinder. * Add some comments about UniversalRANSAC. * 1. The RANSAC paper in the code comments is referenced using the bibtex format. 2. The sample code in the code comments is replaced using @snippet. 3. Change the public API class SACSegmentation to interface. 4. Clean up the old useless code. * fix warning(no previous declaration) in 3d_sac_segmentation.cpp. * Fix compilation errors caused by 3d_sac_segmentation.cpp. * Move the function sacModelMinimumSampleSize() from ptcloud.hpp to sac_segmentation.cpp. * 1. Change the interface for setting the number of threads to the interface for setting whether to be parallel. 2. Move interface implementation code in ptcloud_utils.hpp to ptcloud_utils.cpp. * SACSegmentation no longer inherits Algorithm. * Add the constructor and destructor of SACSegmentation. * 1. For the declaration of the common API, the prefix and suffix of the parameter names no longer contain underscores. 2. Rename the function _getMatFromInputArray -> getPointsMatFromInputArray. 3. Change part of CV_CheckDepth to CV_CheckDepthEQ. 4. Remove the doxygen flag from the source code. 5. Update the loop termination condition of SIMD in the point cloud section of 3D module. * fix warning: passing 'bool' chooses 'int' over 'size_t {aka unsigned int}' . * fix warning: passing 'bool' chooses 'int' over 'size_t {aka unsigned int}' . |
||
---|---|---|
.. | ||
3d.bib | ||
solvePnP.markdown |