Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
34 commits
Select commit Hold shift + click to select a range
83801a4
Add header for feature types
sumir0 May 23, 2026
8532442
Move `MomentInvariants` to feature types header
sumir0 May 23, 2026
c698ee5
Move `PrincipalRadiiRSD` to feature types header
sumir0 May 25, 2026
56754ac
Move `Boundary` to feature types header
sumir0 May 25, 2026
97461e9
Move `PrincipalCurvatures` to feature types header
sumir0 May 25, 2026
6749fc6
Move `descriptorSize` to separate header
sumir0 May 26, 2026
2b4bda6
Move `SHOT352` to feature types header
sumir0 May 26, 2026
b7dce5f
Move `SHOT1344` to feature types header
sumir0 May 26, 2026
c9cd01e
Include memory header in feature types
sumir0 May 28, 2026
d262943
Move `ReferenceFrame` to feature types header
sumir0 May 28, 2026
3994784
Optimize point includes in `SHOT` headers
sumir0 May 28, 2026
7e5ba73
Move `ShapeContext1980` to feature types header
sumir0 May 28, 2026
eb36e79
Move `UniqueShapeContext1960` to feature types header
sumir0 May 28, 2026
c2109ff
Move `PFHSignature125` to feature types header
sumir0 May 29, 2026
0a80185
Move `PFHRGBSignature250` to feature types header
sumir0 May 29, 2026
8b74276
Move `PPFSignature` to feature types header
sumir0 May 29, 2026
857c682
Move `CPPFSignature` to feature types header
sumir0 Jun 1, 2026
08ff8af
Move `PPFRGBSignature` to feature types header
sumir0 Jun 1, 2026
29c0af6
Move `NormalBasedSignature12` to feature types header
sumir0 Jun 2, 2026
5351afa
Move `FPFHSignature33` to feature types header
sumir0 Jun 3, 2026
1412ef4
Move `VFHSignature308` to feature types header
sumir0 Jun 3, 2026
f74f3d2
Move `GRSDSignature21` to feature types header
sumir0 Jun 4, 2026
cfe53a0
Move `ESFSignature640` to feature types header
sumir0 Jun 4, 2026
5299a0e
Move `GASDSignature512` to feature types header
sumir0 Jun 4, 2026
7a8dde8
Move `GASDSignature984` to feature types header
sumir0 Jun 4, 2026
06cbb51
Move `GASDSignature7992` to feature types header
sumir0 Jun 4, 2026
467a3c5
Move `GFPFHSignature16` to feature types header
sumir0 Jun 5, 2026
ba02ab0
Move `BRISKSignature512` to feature types header
sumir0 Jun 5, 2026
aaf95b8
Add missing point types include in GASD test
sumir0 Jun 5, 2026
5505be6
Move `Narf36` to feature types header
sumir0 Jun 5, 2026
e1edee5
Move `Histogram<N>` to feature types header
sumir0 Jun 5, 2026
36b2882
Remove `detail::traits` empty namespace from point types
sumir0 Jun 5, 2026
e005deb
Disable MSVC 4201 warning in `feature_types.h`
sumir0 Jun 7, 2026
84da5e0
Move `descriptorSize` to `feature_types.hpp`
sumir0 Aug 29, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@
#include <pcl/features/fpfh.h>
#include <pcl/visualization/pcl_plotter.h>
#include <pcl/visualization/qvtk_compatibility.h>
#include <pcl/point_types.h>
#include <pcl/feature_types.h>

namespace pcl {
namespace cloud_composer {
Expand Down
3 changes: 3 additions & 0 deletions common/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,7 @@ set(range_image_srcs

set(srcs
src/point_types.cpp
src/feature_types.cpp
src/pcl_base.cpp
src/PCLPointCloud2.cpp
src/io.cpp
Expand Down Expand Up @@ -64,6 +65,7 @@ set(incs
include/pcl/point_types_conversion.h
include/pcl/point_representation.h
include/pcl/point_types.h
include/pcl/feature_types.h
include/pcl/for_each_type.h
include/pcl/pcl_tests.h
include/pcl/cloud_iterator.h
Expand Down Expand Up @@ -150,6 +152,7 @@ set(impl_incs
include/pcl/impl/pcl_base.hpp
include/pcl/impl/instantiate.hpp
include/pcl/impl/point_types.hpp
include/pcl/impl/feature_types.hpp
include/pcl/impl/cloud_iterator.hpp
)

Expand Down
163 changes: 163 additions & 0 deletions common/include/pcl/feature_types.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,163 @@
/*
* SPDX-License-Identifier: BSD-3-Clause
* * Point Cloud Library (PCL) - www.pointclouds.org
* Copyright (c) 2026-, Open Perception Inc.
* * All rights reserved
*/

#pragma once


/**
* \file pcl/feature_types.h
* Defines all the PCL implemented PointT feature type structures
* \ingroup common
*/

// Allow nameless structs/unions
#if defined _MSC_VER
#pragma warning(push)
#pragma warning(disable: 4201)
#endif

/** @{*/
namespace pcl
{
/** \brief Members: float j1, j2, j3
* \ingroup common
*/
struct MomentInvariants;

/** \brief Members: float r_min, r_max
* \ingroup common
*/
struct PrincipalRadiiRSD;

/** \brief Members: std::uint8_t boundary_point
* \ingroup common
*/
struct Boundary;

/** \brief Members: float principal_curvature[3], pc1, pc2
* \ingroup common
*/
struct PrincipalCurvatures;

/** \brief Members: float descriptor[352], rf[9]
* \ingroup common
*/
struct SHOT352;

/** \brief Members: float descriptor[1344], rf[9]
* \ingroup common
*/
struct SHOT1344;

/** \brief Members: Axis x_axis, y_axis, z_axis
* \ingroup common
*/
struct ReferenceFrame;

/** \brief Members: float descriptor[1980], rf[9]
* \ingroup common
*/
struct ShapeContext1980;

/** \brief Members: float descriptor[1960], rf[9]
* \ingroup common
*/
struct UniqueShapeContext1960;

/** \brief Members: float pfh[125]
* \ingroup common
*/
struct PFHSignature125;

/** \brief Members: float pfhrgb[250]
* \ingroup common
*/
struct PFHRGBSignature250;

/** \brief Members: float f1, f2, f3, f4, alpha_m
* \ingroup common
*/
struct PPFSignature;

/** \brief Members: float f1, f2, f3, f4, f5, f6, f7, f8, f9, f10, alpha_m
* \ingroup common
*/
struct CPPFSignature;

/** \brief Members: float f1, f2, f3, f4, r_ratio, g_ratio, b_ratio, alpha_m
* \ingroup common
*/
struct PPFRGBSignature;

/** \brief Members: float values[12]
* \ingroup common
*/
struct NormalBasedSignature12;

/** \brief Members: float fpfh[33]
* \ingroup common
*/
struct FPFHSignature33;

/** \brief Members: float vfh[308]
* \ingroup common
*/
struct VFHSignature308;

/** \brief Members: float grsd[21]
* \ingroup common
*/
struct GRSDSignature21;

/** \brief Members: float esf[640]
* \ingroup common
*/
struct ESFSignature640;

/** \brief Members: float gasd[512]
* \ingroup common
*/
struct GASDSignature512;

/** \brief Members: float gasd[984]
* \ingroup common
*/
struct GASDSignature984;

/** \brief Members: float gasd[7992]
* \ingroup common
*/
struct GASDSignature7992;

/** \brief Members: float histogram[16]
* \ingroup common
*/
struct GFPFHSignature16;

/** \brief Members: float scale; float orientation; std::uint8_t descriptor[64]
* \ingroup common
*/
struct BRISKSignature512;

/** \brief Members: float x, y, z, roll, pitch, yaw; float descriptor[36]
* \ingroup common
*/
struct Narf36;

/** \brief Members: float histogram[N]
* \ingroup common
*/
template<int N>
struct Histogram;
} // namespace pcl
/** @} */

#include <pcl/impl/feature_types.hpp>

#if defined _MSC_VER
#pragma warning(pop)
#endif
Loading
Loading