diff --git a/.gitignore b/.gitignore index 3feb3d2..9cab334 100644 --- a/.gitignore +++ b/.gitignore @@ -4,3 +4,4 @@ /PCL-1.3.1-Source.tar.bz2 /PCL-1.3.1-Source /PCL-1.4.0-Source.tar.bz2 +/PCL-1.5.1-Source.tar.bz2 diff --git a/PCL-1.4.0-Source-fedora.patch b/PCL-1.4.0-Source-fedora.patch index 443ecc5..e59cd5f 100644 --- a/PCL-1.4.0-Source-fedora.patch +++ b/PCL-1.4.0-Source-fedora.patch @@ -64,16 +64,10 @@ diff -urN PCL-1.3.1-Source/PCLConfig.cmake.in PCL-1.3.1-Source.fedora/PCLConfig. diff -urN PCL-1.3.1-Source/visualization/CMakeLists.txt PCL-1.3.1-Source.fedora/visualization/CMakeLists.txt --- PCL-1.3.1-Source/visualization/CMakeLists.txt 2011-12-03 00:35:48.000000000 +0100 +++ PCL-1.3.1-Source.fedora/visualization/CMakeLists.txt 2012-01-16 19:40:43.437690160 +0100 -@@ -83,9 +83,9 @@ - target_link_libraries(${LIB_NAME} pcl_io pcl_kdtree pcl_range_image - vtkCommon vtkWidgets vtkHybrid) - set(EXT_DEPS "") +@@ -85,3 +85,3 @@ - if(OPENNI_FOUND) - list(APPEND EXT_DEPS openni-dev) - endif(OPENNI_FOUND) + #if(OPENNI_FOUND) + # list(APPEND EXT_DEPS openni-dev) + #endif(OPENNI_FOUND) - PCL_MAKE_PKGCONFIG(${LIB_NAME} ${SUBSYS_NAME} "${SUBSYS_DESC}" - "${SUBSYS_DEPS}" "${EXT_DEPS}" "" "" "") - diff --git a/pcl-1.4.0-gcc47.patch b/pcl-1.4.0-gcc47.patch deleted file mode 100644 index f578e04..0000000 --- a/pcl-1.4.0-gcc47.patch +++ /dev/null @@ -1,525 +0,0 @@ -Index: octree/include/pcl/octree/impl/octree_pointcloud.hpp -=================================================================== ---- octree/include/pcl/octree/impl/octree_pointcloud.hpp (revision 3921) -+++ octree/include/pcl/octree/impl/octree_pointcloud.hpp (working copy) -@@ -724,11 +724,11 @@ - // iterate over all children - for (childIdx = 0; childIdx < 8; childIdx++) - { -- if (!branchHasChild (*node_arg, childIdx)) -+ if (!this->branchHasChild (*node_arg, childIdx)) - continue; - - const OctreeNode * childNode; -- childNode = getBranchChild (*node_arg, childIdx); -+ childNode = this->getBranchChild (*node_arg, childIdx); - - // generate new key for current branch voxel - OctreeKey newKey; -Index: octree/include/pcl/octree/impl/octree_search.hpp -=================================================================== ---- octree/include/pcl/octree/impl/octree_search.hpp (revision 3921) -+++ octree/include/pcl/octree/impl/octree_search.hpp (working copy) -@@ -51,9 +51,9 @@ - bool b_success = false; - - // generate key -- genOctreeKeyforPoint (point, key); -+ this->genOctreeKeyforPoint (point, key); - -- LeafT* leaf = getLeaf (key); -+ LeafT* leaf = this->getLeaf (key); - - if (leaf) - { -@@ -196,7 +196,7 @@ - // iterate over all children - for (childIdx = 0; childIdx < 8; childIdx++) - { -- if (branchHasChild (*node, childIdx)) -+ if (this->branchHasChild (*node, childIdx)) - { - PointT voxelCenter; - -@@ -205,10 +205,10 @@ - searchEntryHeap[childIdx].key.z = (key.z << 1) + (!!(childIdx & (1 << 0))); - - // generate voxel center point for voxel at key -- genVoxelCenterFromOctreeKey (searchEntryHeap[childIdx].key, treeDepth, voxelCenter); -+ this->genVoxelCenterFromOctreeKey (searchEntryHeap[childIdx].key, treeDepth, voxelCenter); - - // generate new priority queue element -- searchEntryHeap[childIdx].node = getBranchChild (*node, childIdx); -+ searchEntryHeap[childIdx].node = this->getBranchChild (*node, childIdx); - searchEntryHeap[childIdx].pointDistance = pointSquaredDist (voxelCenter, point); - } - else -@@ -301,11 +301,11 @@ - // iterate over all children - for (childIdx = 0; childIdx < 8; childIdx++) - { -- if (!branchHasChild (*node, childIdx)) -+ if (!this->branchHasChild (*node, childIdx)) - continue; - - const OctreeNode* childNode; -- childNode = getBranchChild (*node, childIdx); -+ childNode = this->getBranchChild (*node, childIdx); - - OctreeKey newKey; - PointT voxelCenter; -@@ -317,7 +317,7 @@ - newKey.z = (key.z << 1) + (!!(childIdx & (1 << 0))); - - // generate voxel center point for voxel at key -- genVoxelCenterFromOctreeKey (newKey, treeDepth, voxelCenter); -+ this->genVoxelCenterFromOctreeKey (newKey, treeDepth, voxelCenter); - - // calculate distance to search point - squaredDist = pointSquaredDist ((const PointT &)voxelCenter, point); -@@ -393,7 +393,7 @@ - // iterate over all children - for (childIdx = 0; childIdx < 8; childIdx++) - { -- if (!branchHasChild (*node, childIdx)) -+ if (!this->branchHasChild (*node, childIdx)) - continue; - - PointT voxelCenter; -@@ -404,7 +404,7 @@ - newKey.z = (key.z << 1) + (!!(childIdx & (1 << 0))); - - // generate voxel center point for voxel at key -- genVoxelCenterFromOctreeKey (newKey, treeDepth, voxelCenter); -+ this->genVoxelCenterFromOctreeKey (newKey, treeDepth, voxelCenter); - - voxelPointDist = pointSquaredDist (voxelCenter, point); - -@@ -420,7 +420,7 @@ - // make sure we found at least one branch child - assert (minChildIdx<8); - -- childNode = getBranchChild (*node, minChildIdx); -+ childNode = this->getBranchChild (*node, minChildIdx); - - if (treeDepth < this->octreeDepth_) - { -@@ -540,7 +540,7 @@ - { - PointT newPoint; - -- genLeafNodeCenterFromOctreeKey (key, newPoint); -+ this->genLeafNodeCenterFromOctreeKey (key, newPoint); - - voxelCenterList.push_back (newPoint); - -@@ -571,7 +571,7 @@ - childIdx = a; - - // childNode == 0 if childNode doesn't exist -- childNode = getBranchChild ((OctreeBranch&)*node, childIdx); -+ childNode = this->getBranchChild ((OctreeBranch&)*node, childIdx); - - // Generate new key for current branch voxel - childKey.x = (key.x << 1) | (!!(childIdx & (1 << 2))); -@@ -695,7 +695,7 @@ - childIdx = a; - - // childNode == 0 if childNode doesn't exist -- childNode = getBranchChild ((OctreeBranch&)*node, childIdx); -+ childNode = this->getBranchChild ((OctreeBranch&)*node, childIdx); - // Generate new key for current branch voxel - childKey.x = (key.x << 1) | (!!(childIdx & (1 << 2))); - childKey.y = (key.y << 1) | (!!(childIdx & (1 << 1))); -Index: surface/include/pcl/surface/impl/mls_omp.hpp -=================================================================== ---- surface/include/pcl/surface/impl/mls_omp.hpp (revision 3921) -+++ surface/include/pcl/surface/impl/mls_omp.hpp (working copy) -@@ -59,7 +59,7 @@ - std::vector nn_sqr_dists; - - // Get the initial estimates of point positions and their neighborhoods -- if (!searchForNeighbors ((*indices_)[cp], nn_indices, nn_sqr_dists)) -+ if (!this->searchForNeighbors ((*indices_)[cp], nn_indices, nn_sqr_dists)) - { - if (normals_) - normals_->points[cp].normal[0] = normals_->points[cp].normal[1] = normals_->points[cp].normal[2] = normals_->points[cp].curvature = std::numeric_limits::quiet_NaN (); -@@ -73,7 +73,7 @@ - - Eigen::Vector4f model_coefficients; - // Get a plane approximating the local surface's tangent and project point onto it -- computeMLSPointNormal (output.points[cp], *input_, nn_indices, nn_sqr_dists, -+ this->computeMLSPointNormal (output.points[cp], *input_, nn_indices, nn_sqr_dists, - model_coefficients); - - // Save results to output cloud -Index: surface/include/pcl/surface/impl/marching_cubes_greedy.hpp -=================================================================== ---- surface/include/pcl/surface/impl/marching_cubes_greedy.hpp (revision 3921) -+++ surface/include/pcl/surface/impl/marching_cubes_greedy.hpp (working copy) -@@ -72,11 +72,11 @@ - - // the vertices are shared by 8 voxels, so we need to update all 8 of them - HashMap neighbor_list; -- getNeighborList1D (cell_data, index_3d, neighbor_list); -+ this->getNeighborList1D (cell_data, index_3d, neighbor_list); - BOOST_FOREACH (typename HashMap::value_type entry, neighbor_list) - { - Eigen::Vector3i i3d; -- getIndexIn3D(entry.first, i3d); -+ this->getIndexIn3D(entry.first, i3d); - // if the neighbor doesn't exist, add it, otherwise we need to do an OR operation on the vertices - if (cell_hash_map_.find (entry.first) == cell_hash_map_.end ()) - { -Index: surface/include/pcl/surface/impl/marching_cubes_greedy_dot.hpp -=================================================================== ---- surface/include/pcl/surface/impl/marching_cubes_greedy_dot.hpp (revision 3921) -+++ surface/include/pcl/surface/impl/marching_cubes_greedy_dot.hpp (working copy) -@@ -72,11 +72,11 @@ - - // the vertices are shared by 8 voxels, so we need to update all 8 of them - HashMap neighbor_list; -- getNeighborList1D (cell_data, index_3d, neighbor_list); -+ this->getNeighborList1D (cell_data, index_3d, neighbor_list); - BOOST_FOREACH (typename HashMap::value_type entry, neighbor_list) - { - Eigen::Vector3i i3d; -- getIndexIn3D (entry.first, i3d); -+ this->getIndexIn3D (entry.first, i3d); - // getCellCenterFromIndex (const Eigen::Vector3i &index, Eigen::Vector4f ¢er) const - Eigen::Vector4f posVector; - MarchingCubes::getCellCenterFromIndex (i3d, posVector); -Index: registration/include/pcl/registration/impl/icp.hpp -=================================================================== ---- registration/include/pcl/registration/impl/icp.hpp (revision 3921) -+++ registration/include/pcl/registration/impl/icp.hpp (working copy) -@@ -82,7 +82,7 @@ - // Iterating over the entire index vector and find all correspondences - for (size_t idx = 0; idx < indices_->size (); ++idx) - { -- if (!searchForNeighbors (output, (*indices_)[idx], nn_indices, nn_dists)) -+ if (!this->searchForNeighbors (output, (*indices_)[idx], nn_indices, nn_dists)) - { - PCL_ERROR ("[pcl::%s::computeTransformation] Unable to find a nearest neighbor in the target dataset for point %d in the source!\n", getClassName ().c_str (), (*indices_)[idx]); - return; -@@ -185,7 +185,7 @@ - - if (nr_iterations_ >= max_iterations_ || - fabs ((transformation_ - previous_transformation_).sum ()) < transformation_epsilon_ || -- fabs (getFitnessScore (correspondence_distances_, previous_correspondence_distances)) <= euclidean_fitness_epsilon_ -+ fabs (this->getFitnessScore (correspondence_distances_, previous_correspondence_distances)) <= euclidean_fitness_epsilon_ - ) - { - converged_ = true; -@@ -196,7 +196,7 @@ - PCL_DEBUG ("fabs ((transformation_ - previous_transformation_).sum ()) (%f) < transformation_epsilon_ (%f)\n", - fabs ((transformation_ - previous_transformation_).sum ()), transformation_epsilon_); - PCL_DEBUG ("fabs (getFitnessScore (correspondence_distances_, previous_correspondence_distances)) (%f) <= euclidean_fitness_epsilon_ (%f)\n", -- fabs (getFitnessScore (correspondence_distances_, previous_correspondence_distances)), -+ fabs (this->getFitnessScore (correspondence_distances_, previous_correspondence_distances)), - euclidean_fitness_epsilon_); - - } -Index: features/include/pcl/features/spin_image.h -=================================================================== ---- features/include/pcl/features/spin_image.h (revision 3921) -+++ features/include/pcl/features/spin_image.h (working copy) -@@ -159,7 +159,7 @@ - setInputWithNormals (const PointCloudInConstPtr& input, - const PointCloudNConstPtr& normals) - { -- setInputCloud (input); -+ this->setInputCloud (input); - input_normals_ = normals; - } - -@@ -176,8 +176,8 @@ - setSearchSurfaceWithNormals (const PointCloudInConstPtr& surface, - const PointCloudNConstPtr& normals) - { -- setSearchSurface (surface); -- setInputNormals (normals); -+ this->setSearchSurface (surface); -+ this->setInputNormals (normals); - } - - /** \brief Sets single vector a rotation axis for all input points. -Index: features/include/pcl/features/impl/fpfh_omp.hpp -=================================================================== ---- features/include/pcl/features/impl/fpfh_omp.hpp (revision 3921) -+++ features/include/pcl/features/impl/fpfh_omp.hpp (working copy) -@@ -96,7 +96,7 @@ - this->searchForNeighbors (*surface_, p_idx, search_parameter_, nn_indices, nn_dists); - - // Estimate the SPFH signature around p_idx -- computePointSPFHSignature (*surface_, *normals_, p_idx, i, nn_indices, hist_f1_, hist_f2_, hist_f3_); -+ this->computePointSPFHSignature (*surface_, *normals_, p_idx, i, nn_indices, hist_f1_, hist_f2_, hist_f3_); - - // Populate a lookup table for converting a point index to its corresponding row in the spfh_hist_* matrices - spfh_hist_lookup[p_idx] = i; -Index: features/include/pcl/features/impl/intensity_gradient.hpp -=================================================================== ---- features/include/pcl/features/impl/intensity_gradient.hpp (revision 3921) -+++ features/include/pcl/features/impl/intensity_gradient.hpp (working copy) -@@ -229,7 +229,7 @@ - - Eigen::Vector3f normal = Eigen::Vector3f::Map (normals_->points[idx].normal); - Eigen::Vector3f gradient; -- computePointIntensityGradient (*surface_, nn_indices, centroid.head<3> (), mean_intensity, normal, gradient); -+ this->computePointIntensityGradient (*surface_, nn_indices, centroid.head<3> (), mean_intensity, normal, gradient); - - output.points (idx, 0) = gradient[0]; - output.points (idx, 1) = gradient[1]; -Index: features/include/pcl/features/impl/intensity_spin.hpp -=================================================================== ---- features/include/pcl/features/impl/intensity_spin.hpp (revision 3921) -+++ features/include/pcl/features/impl/intensity_spin.hpp (working copy) -@@ -221,7 +221,7 @@ - } - - // Compute the intensity spin image -- computeIntensitySpinImage (*surface_, search_radius_, sigma_, k, nn_indices, nn_dist_sqr, intensity_spin_image); -+ this->computeIntensitySpinImage (*surface_, search_radius_, sigma_, k, nn_indices, nn_dist_sqr, intensity_spin_image); - - // Copy into the resultant cloud - int bin = 0; -Index: features/include/pcl/features/impl/shot_omp.hpp -=================================================================== ---- features/include/pcl/features/impl/shot_omp.hpp (revision 3921) -+++ features/include/pcl/features/impl/shot_omp.hpp (working copy) -@@ -83,7 +83,7 @@ - #else - int tid = 0; - #endif -- computePointSHOT ((*indices_)[idx], nn_indices, nn_dists, shot[tid], rfs[tid]); -+ this->computePointSHOT ((*indices_)[idx], nn_indices, nn_dists, shot[tid], rfs[tid]); - - // Copy into the resultant cloud - for (int d = 0; d < shot[tid].size (); ++d) -@@ -139,7 +139,7 @@ - #else - int tid = 0; - #endif -- computePointSHOT ((*indices_)[idx], nn_indices, nn_dists, shot[tid], rfs[tid]); -+ this->computePointSHOT ((*indices_)[idx], nn_indices, nn_dists, shot[tid], rfs[tid]); - - // Copy into the resultant cloud - for (int d = 0; d < shot[tid].size (); ++d) -Index: features/include/pcl/features/impl/3dsc.hpp -=================================================================== ---- features/include/pcl/features/impl/3dsc.hpp (revision 3921) -+++ features/include/pcl/features/impl/3dsc.hpp (working copy) -@@ -340,7 +340,7 @@ - } - - std::vector descriptor (descriptor_length_); -- if (!computePoint (point_index, *normals_, rf, descriptor)) -+ if (!this->computePoint (point_index, *normals_, rf, descriptor)) - output.is_dense = false; - for (int j = 0; j < 9; ++j) - output.points (point_index, j) = rf[j]; -Index: features/include/pcl/features/impl/rift.hpp -=================================================================== ---- features/include/pcl/features/impl/rift.hpp (revision 3921) -+++ features/include/pcl/features/impl/rift.hpp (working copy) -@@ -246,7 +246,7 @@ - } - - // Compute the RIFT descriptor -- computeRIFT (*surface_, *gradient_, (*indices_)[idx], search_radius_, nn_indices, nn_dist_sqr, rift_descriptor); -+ this->computeRIFT (*surface_, *gradient_, (*indices_)[idx], search_radius_, nn_indices, nn_dist_sqr, rift_descriptor); - - // Copy into the resultant cloud - int bin = 0; -Index: features/include/pcl/features/impl/principal_curvatures.hpp -=================================================================== ---- features/include/pcl/features/impl/principal_curvatures.hpp (revision 3921) -+++ features/include/pcl/features/impl/principal_curvatures.hpp (working copy) -@@ -188,7 +188,7 @@ - } - - // Estimate the principal curvatures at each patch -- computePointPrincipalCurvatures (*normals_, (*indices_)[idx], nn_indices, -+ this->computePointPrincipalCurvatures (*normals_, (*indices_)[idx], nn_indices, - output.points (idx, 0), output.points (idx, 1), output.points (idx, 2), - output.points (idx, 3), output.points (idx, 4)); - } -@@ -207,7 +207,7 @@ - } - - // Estimate the principal curvatures at each patch -- computePointPrincipalCurvatures (*normals_, (*indices_)[idx], nn_indices, -+ this->computePointPrincipalCurvatures (*normals_, (*indices_)[idx], nn_indices, - output.points (idx, 0), output.points (idx, 1), output.points (idx, 2), - output.points (idx, 3), output.points (idx, 4)); - } -Index: features/include/pcl/features/impl/boundary.hpp -=================================================================== ---- features/include/pcl/features/impl/boundary.hpp (revision 3921) -+++ features/include/pcl/features/impl/boundary.hpp (working copy) -@@ -196,10 +196,10 @@ - // Obtain a coordinate system on the least-squares plane - //v = normals_->points[(*indices_)[idx]].getNormalVector4fMap ().unitOrthogonal (); - //u = normals_->points[(*indices_)[idx]].getNormalVector4fMap ().cross3 (v); -- getCoordinateSystemOnPlane (normals_->points[(*indices_)[idx]], u, v); -+ this->getCoordinateSystemOnPlane (normals_->points[(*indices_)[idx]], u, v); - - // Estimate whether the point is lying on a boundary surface or not -- output.points (idx, 0) = isBoundaryPoint (*surface_, input_->points[(*indices_)[idx]], nn_indices, u, v, angle_threshold_); -+ output.points (idx, 0) = this->isBoundaryPoint (*surface_, input_->points[(*indices_)[idx]], nn_indices, u, v, angle_threshold_); - } - } - else -@@ -218,10 +218,10 @@ - // Obtain a coordinate system on the least-squares plane - //v = normals_->points[(*indices_)[idx]].getNormalVector4fMap ().unitOrthogonal (); - //u = normals_->points[(*indices_)[idx]].getNormalVector4fMap ().cross3 (v); -- getCoordinateSystemOnPlane (normals_->points[(*indices_)[idx]], u, v); -+ this->getCoordinateSystemOnPlane (normals_->points[(*indices_)[idx]], u, v); - - // Estimate whether the point is lying on a boundary surface or not -- output.points (idx, 0) = isBoundaryPoint (*surface_, input_->points[(*indices_)[idx]], nn_indices, u, v, angle_threshold_); -+ output.points (idx, 0) = this->isBoundaryPoint (*surface_, input_->points[(*indices_)[idx]], nn_indices, u, v, angle_threshold_); - } - } - } -Index: features/include/pcl/features/impl/fpfh.hpp -=================================================================== ---- features/include/pcl/features/impl/fpfh.hpp (revision 3921) -+++ features/include/pcl/features/impl/fpfh.hpp (working copy) -@@ -307,7 +307,7 @@ - std::vector nn_dists (k_); - - std::vector spfh_hist_lookup; -- computeSPFHSignatures (spfh_hist_lookup, hist_f1_, hist_f2_, hist_f3_); -+ this->computeSPFHSignatures (spfh_hist_lookup, hist_f1_, hist_f2_, hist_f3_); - - // Intialize the array that will store the FPFH signature - output.points.resize (indices_->size (), nr_bins_f1_ + nr_bins_f2_ + nr_bins_f3_); -@@ -332,7 +332,7 @@ - nn_indices[i] = spfh_hist_lookup[nn_indices[i]]; - - // Compute the FPFH signature (i.e. compute a weighted combination of local SPFH signatures) ... -- weightPointSPFHSignature (hist_f1_, hist_f2_, hist_f3_, nn_indices, nn_dists, fpfh_histogram_); -+ this->weightPointSPFHSignature (hist_f1_, hist_f2_, hist_f3_, nn_indices, nn_dists, fpfh_histogram_); - output.points.row (idx) = fpfh_histogram_; - } - } -@@ -354,7 +354,7 @@ - nn_indices[i] = spfh_hist_lookup[nn_indices[i]]; - - // Compute the FPFH signature (i.e. compute a weighted combination of local SPFH signatures) ... -- weightPointSPFHSignature (hist_f1_, hist_f2_, hist_f3_, nn_indices, nn_dists, fpfh_histogram_); -+ this->weightPointSPFHSignature (hist_f1_, hist_f2_, hist_f3_, nn_indices, nn_dists, fpfh_histogram_); - output.points.row (idx) = fpfh_histogram_; - } - } -Index: features/include/pcl/features/impl/moment_invariants.hpp -=================================================================== ---- features/include/pcl/features/impl/moment_invariants.hpp (revision 3921) -+++ features/include/pcl/features/impl/moment_invariants.hpp (working copy) -@@ -181,7 +181,7 @@ - continue; - } - -- computePointMomentInvariants (*surface_, nn_indices, -+ this->computePointMomentInvariants (*surface_, nn_indices, - output.points (idx, 0), output.points (idx, 1), output.points (idx, 2)); - } - } -@@ -198,7 +198,7 @@ - continue; - } - -- computePointMomentInvariants (*surface_, nn_indices, -+ this->computePointMomentInvariants (*surface_, nn_indices, - output.points (idx, 0), output.points (idx, 1), output.points (idx, 2)); - } - } -Index: features/include/pcl/features/impl/spin_image.hpp -=================================================================== ---- features/include/pcl/features/impl/spin_image.hpp (revision 3921) -+++ features/include/pcl/features/impl/spin_image.hpp (working copy) -@@ -106,7 +106,7 @@ - - std::vector nn_indices; - std::vector nn_sqr_dists; -- const int neighb_cnt = searchForNeighbors (index, search_radius_, nn_indices, nn_sqr_dists); -+ const int neighb_cnt = this->searchForNeighbors (index, search_radius_, nn_indices, nn_sqr_dists); - if (neighb_cnt < (int)min_pts_neighb_) - { - throw PCLException ( -@@ -324,7 +324,7 @@ - output.points.resize (indices_->size (), 153); - for (int i_input = 0; i_input < (int)indices_->size (); ++i_input) - { -- Eigen::ArrayXXd res = computeSiForPoint (indices_->at (i_input)); -+ Eigen::ArrayXXd res = this->computeSiForPoint (indices_->at (i_input)); - - // Copy into the resultant cloud - for (int iRow = 0; iRow < res.rows () ; iRow++) -Index: features/include/pcl/features/impl/shot.hpp -=================================================================== ---- features/include/pcl/features/impl/shot.hpp (revision 3921) -+++ features/include/pcl/features/impl/shot.hpp (working copy) -@@ -672,7 +672,7 @@ - interpolateSingleChannel (indices, sqr_dists, input_->points[index].getVector4fMap (), rf, binDistanceShape, nr_shape_bins_, shot); - - // Normalize the final histogram -- normalizeHistogram (shot, descLength_); -+ this->normalizeHistogram (shot, descLength_); - } - - -@@ -691,14 +691,14 @@ - - // Clear the resultant shot - std::vector binDistanceShape; -- createBinDistanceShape (index, indices, sqr_dists, *input_, *normals_, *surface_, search_radius_, binDistanceShape, rf); -+ this->createBinDistanceShape (index, indices, sqr_dists, *input_, *normals_, *surface_, search_radius_, binDistanceShape, rf); - - // Interpolate - shot.setZero (); - interpolateSingleChannel (indices, sqr_dists, input_->points[index].getVector4fMap (), rf, binDistanceShape, nr_shape_bins_, shot); - - // Normalize the final histogram -- normalizeHistogram (shot, descLength_); -+ this->normalizeHistogram (shot, descLength_); - } - - -@@ -717,14 +717,14 @@ - - // Clear the resultant shot - std::vector binDistanceShape; -- createBinDistanceShape (index, indices, sqr_dists, *input_, *normals_, *surface_, search_radius_, binDistanceShape, rf); -+ this->createBinDistanceShape (index, indices, sqr_dists, *input_, *normals_, *surface_, search_radius_, binDistanceShape, rf); - - // Interpolate - shot.setZero (); - interpolateSingleChannel (indices, sqr_dists, input_->points[index].getVector4fMap (), rf, binDistanceShape, nr_shape_bins_, shot); - - // Normalize the final histogram -- normalizeHistogram (shot, descLength_); -+ this->normalizeHistogram (shot, descLength_); - } - - -@@ -839,7 +839,7 @@ - } - - // Compute the SHOT descriptor for the current 3D feature -- computePointSHOT ((*indices_)[idx], nn_indices, nn_dists, shot_, rf_); -+ this->computePointSHOT ((*indices_)[idx], nn_indices, nn_dists, shot_, rf_); - - // Copy into the resultant cloud - for (int d = 0; d < shot_.size (); ++d) -@@ -955,7 +955,7 @@ - } - - // Estimate the SHOT at each patch -- computePointSHOT ((*indices_)[idx], nn_indices, nn_dists, shot_, rf_); -+ this->computePointSHOT ((*indices_)[idx], nn_indices, nn_dists, shot_, rf_); - - // Copy into the resultant cloud - for (int d = 0; d < shot_.size (); ++d) diff --git a/pcl-1.5.1-gcc47.patch b/pcl-1.5.1-gcc47.patch new file mode 100644 index 0000000..3d202a5 --- /dev/null +++ b/pcl-1.5.1-gcc47.patch @@ -0,0 +1,82 @@ +diff -up ./tracking/include/pcl/tracking/impl/kld_adaptive_particle_filter.hpp.gcc47 ./tracking/include/pcl/tracking/impl/kld_adaptive_particle_filter.hpp +--- ./tracking/include/pcl/tracking/impl/kld_adaptive_particle_filter.hpp.gcc47 2012-02-27 19:52:53.813318632 -0500 ++++ ./tracking/include/pcl/tracking/impl/kld_adaptive_particle_filter.hpp 2012-02-27 19:53:22.815364954 -0500 +@@ -54,7 +54,7 @@ pcl::tracking::KLDAdaptiveParticleFilter + // initializing for sampling without replacement + std::vector a (particles_->points.size ()); + std::vector q (particles_->points.size ()); +- genAliasTable (a, q, particles_); ++ this->genAliasTable (a, q, particles_); + + const std::vector zero_mean (StateT::stateDimension (), 0.0); + +diff -up ./tracking/include/pcl/tracking/impl/kld_adaptive_particle_filter_omp.hpp.gcc47 ./tracking/include/pcl/tracking/impl/kld_adaptive_particle_filter_omp.hpp +--- ./tracking/include/pcl/tracking/impl/kld_adaptive_particle_filter_omp.hpp.gcc47 2012-02-27 20:05:28.374624954 -0500 ++++ ./tracking/include/pcl/tracking/impl/kld_adaptive_particle_filter_omp.hpp 2012-02-27 20:06:40.305196260 -0500 +@@ -8,14 +8,14 @@ pcl::tracking::KLDAdaptiveParticleFilter + { + #pragma omp parallel for schedule (dynamic, threads_) + for (int i = 0; i < particle_num_; i++) +- computeTransformedPointCloudWithoutNormal (particles_->points[i], *transed_reference_vector_[i]); ++ this->computeTransformedPointCloudWithoutNormal (particles_->points[i], *transed_reference_vector_[i]); + + PointCloudInPtr coherence_input (new PointCloudIn); +- cropInputPointCloud (input_, *coherence_input); ++ this->cropInputPointCloud (input_, *coherence_input); + if (change_counter_ == 0) + { + // test change detector +- if (!use_change_detector_ || testChangeDetection (coherence_input)) ++ if (!use_change_detector_ || this->testChangeDetection (coherence_input)) + { + changed_ = true; + change_counter_ = change_detector_interval_; +@@ -54,11 +54,11 @@ pcl::tracking::KLDAdaptiveParticleFilter + #pragma omp parallel for schedule (dynamic, threads_) + for (int i = 0; i < particle_num_; i++) + { +- computeTransformedPointCloudWithNormal (particles_->points[i], *indices_list[i], *transed_reference_vector_[i]); ++ this->computeTransformedPointCloudWithNormal (particles_->points[i], *indices_list[i], *transed_reference_vector_[i]); + } + + PointCloudInPtr coherence_input (new PointCloudIn); +- cropInputPointCloud (input_, *coherence_input); ++ this->cropInputPointCloud (input_, *coherence_input); + + coherence_->setTargetCloud (coherence_input); + coherence_->initCompute (); +diff -up ./tracking/include/pcl/tracking/impl/particle_filter_omp.hpp.gcc47 ./tracking/include/pcl/tracking/impl/particle_filter_omp.hpp +--- ./tracking/include/pcl/tracking/impl/particle_filter_omp.hpp.gcc47 2012-02-27 19:36:30.818287347 -0500 ++++ ./tracking/include/pcl/tracking/impl/particle_filter_omp.hpp 2012-02-27 19:52:33.441585017 -0500 +@@ -8,14 +8,14 @@ pcl::tracking::ParticleFilterOMPTracker< + { + #pragma omp parallel for schedule (dynamic, threads_) + for (int i = 0; i < particle_num_; i++) +- computeTransformedPointCloudWithoutNormal (particles_->points[i], *transed_reference_vector_[i]); ++ this->computeTransformedPointCloudWithoutNormal (particles_->points[i], *transed_reference_vector_[i]); + + PointCloudInPtr coherence_input (new PointCloudIn); +- cropInputPointCloud (input_, *coherence_input); ++ this->cropInputPointCloud (input_, *coherence_input); + if (change_counter_ == 0) + { + // test change detector +- if (!use_change_detector_ || testChangeDetection (coherence_input)) ++ if (!use_change_detector_ || this->testChangeDetection (coherence_input)) + { + changed_ = true; + change_counter_ = change_detector_interval_; +@@ -54,11 +54,11 @@ pcl::tracking::ParticleFilterOMPTracker< + #pragma omp parallel for schedule (dynamic, threads_) + for (int i = 0; i < particle_num_; i++) + { +- computeTransformedPointCloudWithNormal (particles_->points[i], *indices_list[i], *transed_reference_vector_[i]); ++ this->computeTransformedPointCloudWithNormal (particles_->points[i], *indices_list[i], *transed_reference_vector_[i]); + } + + PointCloudInPtr coherence_input (new PointCloudIn); +- cropInputPointCloud (input_, *coherence_input); ++ this->cropInputPointCloud (input_, *coherence_input); + + coherence_->setTargetCloud (coherence_input); + coherence_->initCompute (); diff --git a/pcl.spec b/pcl.spec index 4735062..92da1eb 100644 --- a/pcl.spec +++ b/pcl.spec @@ -1,14 +1,14 @@ Name: pcl -Version: 1.4.0 -Release: 2%{?dist} +Version: 1.5.1 +Release: 1%{?dist} Summary: Library for point cloud processing Group: System Environment/Libraries License: BSD URL: http://pointclouds.org/ -Source0: http://dev.pointclouds.org/attachments/download/610/PCL-1.4.0-Source.tar.bz2 +Source0: http://dev.pointclouds.org/attachments/download/771/PCL-1.5.1-Source.tar.bz2 Patch0: PCL-1.4.0-Source-fedora.patch -Patch1: pcl-1.4.0-gcc47.patch +Patch1: pcl-1.5.1-gcc47.patch BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) # For plain building @@ -133,6 +133,10 @@ done mkdir -p $RPM_BUILD_ROOT%{_libdir}/cmake/pcl mv $RPM_BUILD_ROOT%{_datadir}/%{name}-*/*.cmake $RPM_BUILD_ROOT%{_libdir}/cmake/pcl + +# Remove installed documentation, will add with doc tags later +rm -rf $RPM_BUILD_ROOT%{_datadir}/doc/%{name}-1.5 + #mv $RPM_BUILD_ROOT%{_libdir}/pcl/*.cmake $RPM_BUILD_ROOT%{_libdir}/cmake/pcl #rmdir $RPM_BUILD_ROOT%{_libdir}/pcl @@ -158,7 +162,7 @@ rm -rf $RPM_BUILD_ROOT %defattr(-,root,root,-) %doc AUTHORS.txt LICENSE.txt %{_libdir}/*.so.* -%{_datadir}/%{name}-1.4 +%{_datadir}/%{name}-1.5 %files devel %defattr(-,root,root,-) @@ -180,6 +184,10 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Mon Apr 04 2012 Rich Mattes - 1.5.1-1 +- Update to release 1.5.1 +- Add new patch for gcc-4.7 fixes + * Tue Feb 28 2012 Fedora Release Engineering - 1.4.0-2 - Rebuilt for c++ ABI breakage diff --git a/sources b/sources index b61e0e3..b6623e5 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -63fd633a6306ae9b334131b250a2f893 PCL-1.4.0-Source.tar.bz2 +d96479ab65245c64d91a6fe1d803275a PCL-1.5.1-Source.tar.bz2