Massively Parallel Algorithms for Point Cloud Based Object Recognition on Heterogeneous Architecture

Massively Parallel Algorithms for Point Cloud Based Object Recognition on Heterogeneous Architecture

Michigan Technological University Digital Commons @ Michigan Tech Dissertations, Master's Theses and Master's Reports 2017 MASSIVELY PARALLEL ALGORITHMS FOR POINT CLOUD BASED OBJECT RECOGNITION ON HETEROGENEOUS ARCHITECTURE Linjia Hu Michigan Technological University, [email protected] Copyright 2017 Linjia Hu Recommended Citation Hu, Linjia, "MASSIVELY PARALLEL ALGORITHMS FOR POINT CLOUD BASED OBJECT RECOGNITION ON HETEROGENEOUS ARCHITECTURE", Open Access Dissertation, Michigan Technological University, 2017. https://doi.org/10.37099/mtu.dc.etdr/508 Follow this and additional works at: https://digitalcommons.mtu.edu/etdr Part of the Computer Sciences Commons MASSIVELY PARALLEL ALGORITHMS FOR POINT CLOUD BASED OBJECT RECOGNITION ON HETEROGENEOUS ARCHITECTURE By Linjia Hu A DISSERTATION Submitted in partial fulfillment of the requirements for the degree of DOCTOR OF PHILOSOPHY In Computer Science MICHIGAN TECHNOLOGICAL UNIVERSITY 2017 © 2017 Linjia Hu This dissertation has been approved in partial fulfillment of the requirements for the Degree of DOCTOR OF PHILOSOPHY in Computer Science. Department of Computer Science Dissertation Advisor: Dr. Saeid Nooshabadi Committee Member: Dr. Timothy Havens Committee Member: Dr. Scott Kuhl Committee Member: Dr. Stefaan De Winter Department Chair: Dr. Min Song Dedication To my loved mother Yuxiang Duan and my father Huazhong Hu, whose affection, love and encouragement make me able to hew out of the mountain of despair a stone of hope; my brilliant, gorgeous and supportive wife Xiaoting Cao; my sweet, exuberant and kind-hearted little boy Andrew Cao Hu. Contents List of Figures ................................. xv List of Tables .................................. xxi Preface ...................................... xxiii Acknowledgments ............................... xxv Abstract ..................................... xxvii 1 Introduction ................................. 1 1.1 Point Cloud Based Object Recognition ................ 2 1.1.1 PointCloud........................... 2 1.1.2 Object Recognition Pipeline .................. 4 1.1.2.1 Descriptors Computing ................ 6 1.1.2.2 Descriptors Matching ................. 8 1.1.2.3 Correspondence Grouping .............. 10 1.1.2.4 HypothesisVerification................ 13 1.1.3 PointCloudLibrary(PCL).................. 14 vii 1.2 Heterogeneous Parallel Computing . ................ 15 1.2.1 GPUHardwareArchitecture.................. 16 1.2.2 CUDAProgrammingModelandMemoryModel....... 19 1.3ScopeofThisWork........................... 21 1.3.1 Parallelization of Image Descriptor Computing ........ 22 1.3.2 Parallelization of the ANNS .................. 22 1.3.3 Parallelization of the Construction of KD-tree and the BANNS 23 1.3.4 Parallel and Distributed BANNS on the Forest of Randomized KD-trees............................. 24 1.4OverviewofChapters.......................... 25 2 Massively Parallel 3D Local Image Descriptor G-SHOT ..... 27 2.1Introduction............................... 28 2.2MathematicalModeloftheSHOTDescriptor............ 31 2.2.1 Repeatable Local Reference Frame (LRF) .......... 32 2.2.2 Descriptor Organization .................... 33 2.3 Implementation of the G-SHOT Algorithms ............. 36 2.3.1 ExactG-SHOTAlgorithm................... 36 2.3.2 ApproximateG-SHOTAlgorithm............... 37 2.3.3 Performance Optimizations .................. 38 2.4ExperimentResultsandDiscussion.................. 40 viii 2.5 Comparative Performance Evaluation of the Two Parallel G-SHOT Algorithms................................ 44 2.6Conclusion................................ 45 3 Massive Parallelization of the ANNS on the KD-tree ....... 49 3.1Introduction............................... 50 3.2Background............................... 52 3.2.1 KD-tree............................. 52 3.2.2 NNSontheKD-tree...................... 53 3.3RelatedWorkandProposedInnovation................ 55 3.3.1 RelatedWork.......................... 55 3.3.1.1 LinearNNS...................... 55 3.3.1.2 Non-linear NNS .................... 57 3.3.2 ProposedInnovation...................... 58 3.4 Massive Parallel Implementation .................... 60 3.4.1 ParallelAlgorithmDesign................... 60 3.4.2 Performance Optimization ................... 66 3.4.3 MemoryUsage......................... 68 3.5ExperimentsandResults........................ 69 3.5.1 Performance Evaluation on Real-world Image Descriptors . 72 3.5.1.1 Performance Comparison with Related Works . 72 ix 3.5.1.2 Performance Comparison Between the Serial and the ParallelAlgorithms.................. 73 3.5.1.3 Effect of Divergence ................. 74 3.5.1.4 SpeedupImpactFactors............... 75 3.5.1.4.1 Effect of the Dataset Size and the Dimen- sionality................... 75 3.5.1.4.2 Effect of the Node Size ........... 76 3.5.1.4.3 Effect of the Backtracking . ........ 78 3.5.1.4.4 Effect of the Number of Nearest Neighbors of Single Query Point (P ) ......... 79 3.5.2 Experimental Results for Local Descriptor SHOT Matching . 80 3.6Conclusion................................ 82 4 Highly Parallel KD-tree Construction for the BANNS ...... 85 4.1Introduction............................... 86 4.2Background............................... 88 4.2.1 P -NNSontheKD-tree..................... 88 4.3RelatedWorkandProposedInnovation................ 90 4.3.1 RelatedWork.......................... 90 4.3.2 ProposedInnovation...................... 92 4.4 Massive Parallel Implementation .................... 93 4.4.1 ParallelConstructionoftheKD-tree............. 93 x 4.4.2 Parallel P -BANNS on the KD-tree .............. 107 4.5 Performance Optimizations ....................... 112 4.6ExperimentsandResults........................ 115 4.6.1 Evaluation on Real-world Image Descriptors ......... 117 4.6.1.1 Performance Comparison with Related Works . 117 4.6.1.2 Comparison Between the Serial and Parallel Algo- rithms......................... 118 4.6.2 SpeedupandAccuracyImpactFactors............ 119 4.6.2.1 Effect of the Dataset Size and the Dimensionality . 119 4.6.2.2 Effect of the KD-tree Height ............. 121 4.6.2.3 Effect of the Number of Backtracks ......... 122 4.6.2.4 Effect of the Number of Nearest Neighbors of Single Query Point (P ) ................... 123 4.6.3 Evaluation of the Sliding Windows .............. 124 4.6.4 Experiments on the SHOT Matching ............. 127 4.7Conclusion................................ 128 5 Parallel and Distributed BANNS on the Forest of Randomized KD-trees .................................. 131 5.1Introduction............................... 132 5.2Background............................... 135 5.2.1 NNSontheForestofRandomizedKD-trees......... 135 xi 5.3RelatedWork.............................. 136 5.4 Massively Parallel Implementations on the GPU Cluster ...... 141 5.4.1 ConstructionofForestofRandomizedKD-trees....... 142 5.4.2 BANNSontheForestofRandomizedKD-trees....... 154 5.4.2.1 Nodes Distribution .................. 154 5.4.2.2 BANNS Queries ................... 155 5.5 Performance Optimization ....................... 165 5.6ExperimentsandResults........................ 166 5.6.1 Evaluation on Real-world Image Descriptors ......... 167 5.6.1.1 Performance Comparison with Related Works . 168 5.6.1.2 Comparison Between the Parallel Algorithms on the GPUandCPUClusters............... 169 5.6.2 SpeedupandAccuracyImpactFactors............ 170 5.6.2.1 Effect of the Dataset Size and the Dimensionality . 170 5.6.2.2 Effect of the KD-tree Height ............. 172 5.6.2.3 Effect of the Number of Backtracks ......... 173 5.6.2.4 Effect of the Number of Nearest Neighbors of Single Query Point (P ) ................... 174 5.6.2.5 Effect of Global Synchronization to the Number of Backtracks ...................... 176 5.6.3 Evaluation of the Sliding Windows .............. 177 xii 5.6.4 Experiments on the SHOT Matching ............. 178 5.7Conclusion................................ 179 6 Conclusion .................................. 181 6.1 Completed Work . .......................... 181 6.2 Constraints and Limitations ...................... 183 6.2.1 SMOccupancy......................... 184 6.2.1.1 SM Occupancy of Parallel Descriptor Computing . 184 6.2.1.2 SM Occupancy of Parallel KD-Tree Construction . 185 6.2.1.3 SM Occupancy of the Parallel ANNS ........ 186 6.2.1.4 SM Occupancy of the Parallel BANNS ....... 186 6.2.2 Memory Utilization ....................... 187 6.2.3 Communication Cost ...................... 187 6.2.4 OtherConstraints........................ 188 6.3FutureWork............................... 189 6.3.1 Data Compression ....................... 190 6.3.2 Binarization and Hashing ................... 191 References .................................... 193 A Letters of Permission ........................... 221 xiii List of Figures 1.1 Point cloud of bunny .......................... 3 1.2Pointcloudofmountains........................ 3 1.3 3D object recognition pipeline ..................... 5 1.4 Model and scene descriptors matching ................ 9 1.5 Model and scene correspondence grouping .............. 12 1.6Initialandfinalcorrespondencesofhypothesisverification..... 14 1.7 Heterogeneous computing architecture (HCA) ............ 16 1.8FermiGPUarchitecture........................ 17 1.9 Streaming multiprocessor architecture . ................ 18 1.10 CUDA programming model ...................... 20 1.11CUDAmemorymodel......................... 21 2.1Azimuth/radialpartition........................ 34 2.2Elevationpartition........................... 34 2.3 Local histogram for each volume

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    258 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us