1. A computer-implemented method for pre-segmenting point cloud data, the method comprising the steps of: obtaining point cloud data; segmenting the point cloud data; storing segment information for the segmented point cloud data; creating an indexing structure; storing the point cloud data and the segment information into the indexing structure; determining, based on the segment information, points needed for shape extraction; fetching the points needed for shape extraction from the indexing structure; extracting one or more shapes based on the fetched points; and utilizing the extracted one or more shapes to cull points from the point cloud data.