diff --git a/docs/paper.bib b/docs/paper.bib index 5a06e5d..bdc359e 100644 --- a/docs/paper.bib +++ b/docs/paper.bib @@ -59,3 +59,61 @@ @inproceedings{Segal year={2009}, doi={10.15607/rss.2009.v.021} } + +@INPROCEEDINGS{Wang, + author={Wang, Han and Wang, Chen and Xie, Lihua}, + booktitle={IEEE International Conference on Robotics and Automation (ICRA2020)}, + title={Intensity Scan Context: Coding Intensity and Geometry Relations for Loop Closure Detection}, + year={2020}, + pages={2095-2101}, + doi={10.1109/ICRA40945.2020.9196764} +} + +@inproceedings{Izadinia, + title={Scene recomposition by learning-based icp}, + author={Izadinia, Hamid and Seitz, Steven M}, + booktitle={Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition}, + pages={930--939}, + year={2020} +} + +@ARTICLE{Kim, + author={Kim, Kyuwon and Im, Junhyuck and Jee, Gyuin}, + journal={IEEE Transactions on Intelligent Transportation Systems}, + title={Tunnel Facility Based Vehicle Localization in Highway Tunnel Using 3D LIDAR}, + year={2022}, + volume={23}, + number={10}, + pages={17575-17583}, + doi={10.1109/TITS.2022.3160235} +} + +@article{Pomerleau, + author = {Pomerleau, Fran{\c c}ois and Colas, Francis and Siegwart, Roland and Magnenat, St{\'e}phane}, + title = {{Comparing ICP Variants on Real-World Data Sets}}, + journal = {Autonomous Robots}, + year = {2013}, + volume = {34}, + number = {3}, + pages = {133--148}, + month = feb, + doi={10.1007/s10514-013-9327-2} +} + +@INPROCEEDINGS{Serafin, + author={Serafin, Jacopo and Grisetti, Giorgio}, + booktitle={IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS2015)}, + title={NICP: Dense normal based point cloud registration}, + year={2015}, + pages={742-749}, + doi={10.1109/IROS.2015.7353455}} + + +@inproceedings{Datar, +author = {Datar, Mayur and Immorlica, Nicole and Indyk, Piotr and Mirrokni, Vahab S.}, +title = {Locality-sensitive hashing scheme based on p-stable distributions}, +year = {2004}, +doi = {10.1145/997817.997857}, +booktitle = {Twentieth Annual Symposium on Computational Geometry}, +pages = {253–262}, +} \ No newline at end of file diff --git a/docs/paper.md b/docs/paper.md index f94d737..5c694db 100644 --- a/docs/paper.md +++ b/docs/paper.md @@ -20,12 +20,14 @@ bibliography: paper.bib Point cloud registration is a task of aligning two point clouds measured by 3D ranging sensors, for example, LiDARs and range cameras. Iterative point cloud registration, -also known as fine registration or local registration, is particularly crucial. This -process iteratively performs proximity-based point correspondence search and minimizes -the distance between corresponding points. Iterative closest point (ICP) and its variants, +also known as fine registration or local registration, iteratively refines the transformation +between point clouds starting from an initial guess. +Each iteration involves a proximity-based point correspondence search and the minimization +of the distance between corresponding points, continuing until convergence. +Iterative closest point (ICP) and its variants, such as Generalized ICP, are representative iterative point cloud registration algorithms. -They are widely used in applications like autonomous vehicle localization, place recognition, -and object classification. Since these applications often require real-time or near-real-time +They are widely used in applications like autonomous vehicle localization [@Kim], place recognition [@Wang], +and object classification [@Izadinia]. Since these applications often require real-time or near-real-time processing, speed is a critical factor in point cloud registration routines. **small_gicp** provides efficient and parallel algorithms to create an extremely @@ -37,8 +39,9 @@ to offer efficiency, portability, and customizability. # Statement of need -There are several point cloud processing libraries, and PCL [@Rusu] and Open3D -[@Zhou] are the notable ones among them. +There are several point cloud processing libraries, and PCL [@Rusu], Open3D +[@Zhou], libpointmatcher [@Pomerleau] are commonly used in real-time applications +owing to their performant implementations. Although they offer numerous functionalities, including those required for point cloud registration, they present several challenges for practical applications and scientific research. @@ -106,6 +109,15 @@ distribution-to-distribution correspondence). More details can be found at https://github.com/koide3/small_gicp/blob/master/BENCHMARK.md. +# Future work + +The efficiency of nearest neighbor search significantly impacts the overall performance of point cloud registration. +While small_gicp currently offers efficient and parallel implementations of KdTree and voxelmap, which are general and useful in many situations, +there are other nearest neighbor search methods that can be more efficient under mild assumptions about the point cloud measurement model +(e.g., projective search [@Serafin]). +We plan to implement these alternative neighbor search algorithms to further enhance the speed of the point cloud registration process. +The design of small_gicp, where nearest neighbor search and pose optimization are decoupled, facilitates the easy integration of these new search algorithms. + # Acknowledgements This work was supported in part by JSPS KAKENHI Grant Number 23K16979.