1. A method of detecting one or more objects in a three-dimensional point cloud scene, the method being implemented by a computer system that includes one or more processors configured to execute computer modules, the method comprising: receiving, by one or more processors, a three-dimensional point cloud scene, the three-dimensional point cloud scene comprising a plurality of points; classifying, by the one or more processors, at least a portion of the plurality of points in the three-dimensional point cloud into two or more categories by applying a classifying-oriented three-dimensional local descriptor and learning-based classifier; extracting, by the one or more processors, from the three-dimensional point cloud scene one or more clusters of points utilizing the two or more categories by applying at least one of segmenting and clustering; and matching, by the one or more processors, the extracted clusters with objects within a library by applying a matching-oriented three-dimensional local descriptor.