3 #include <pcl/features/integral_image2D.h>
11 namespace face_detection
16 std::vector<pcl::IntegralImage2D<float, 1>::Ptr>
iimages_;
46 stream.write (
reinterpret_cast<const char*
> (&
row1_),
sizeof(
row1_));
47 stream.write (
reinterpret_cast<const char*
> (&
col1_),
sizeof(
col1_));
48 stream.write (
reinterpret_cast<const char*
> (&
row2_),
sizeof(
row2_));
49 stream.write (
reinterpret_cast<const char*
> (&
col2_),
sizeof(
col2_));
60 stream.read (
reinterpret_cast<char*
> (&
row1_),
sizeof(
row1_));
61 stream.read (
reinterpret_cast<char*
> (&
col1_),
sizeof(
col1_));
62 stream.read (
reinterpret_cast<char*
> (&
row2_),
sizeof(
row2_));
63 stream.read (
reinterpret_cast<char*
> (&
col2_),
sizeof(
col2_));
73 template<
class FeatureType>
95 const int num_of_sub_nodes =
static_cast<int> (
sub_nodes.size ());
96 stream.write (
reinterpret_cast<const char*
> (&num_of_sub_nodes),
sizeof(num_of_sub_nodes));
104 stream.write (
reinterpret_cast<const char*
> (&
value),
sizeof(
value));
107 for (std::size_t i = 0; i < 3; i++)
110 for (std::size_t i = 0; i < 3; i++)
113 for (std::size_t i = 0; i < 3; i++)
114 for (std::size_t j = 0; j < 3; j++)
117 for (std::size_t i = 0; i < 3; i++)
118 for (std::size_t j = 0; j < 3; j++)
121 for (
int sub_node_index = 0; sub_node_index < num_of_sub_nodes; ++sub_node_index)
123 sub_nodes[sub_node_index].serialize (stream);
129 int num_of_sub_nodes;
130 stream.read (
reinterpret_cast<char*
> (&num_of_sub_nodes),
sizeof(num_of_sub_nodes));
132 if (num_of_sub_nodes > 0)
138 stream.read (
reinterpret_cast<char*
> (&
value),
sizeof(
value));
141 for (std::size_t i = 0; i < 3; i++)
144 for (std::size_t i = 0; i < 3; i++)
147 for (std::size_t i = 0; i < 3; i++)
148 for (std::size_t j = 0; j < 3; j++)
151 for (std::size_t i = 0; i < 3; i++)
152 for (std::size_t j = 0; j < 3; j++)
157 if (num_of_sub_nodes > 0)
159 for (
int sub_node_index = 0; sub_node_index < num_of_sub_nodes; ++sub_node_index)
161 sub_nodes[sub_node_index].deserialize (stream);
void deserialize(std::istream &stream)
void serialize(std::ostream &stream) const
Eigen::Vector3d rot_mean_
void deserialize(::std::istream &stream)
Eigen::Matrix3d covariance_rot_
std::vector< RFTreeNode > sub_nodes
PCL_MAKE_ALIGNED_OPERATOR_NEW void serialize(::std::ostream &stream) const
Eigen::Vector3d trans_mean_
Eigen::Matrix3d covariance_trans_
std::vector< pcl::IntegralImage2D< float, 1 >::Ptr > iimages_
#define PCL_MAKE_ALIGNED_OPERATOR_NEW
Macro to signal a class requires a custom allocator.
Defines functions, macros and traits for allocating and using memory.
Defines all the PCL and non-PCL macros used.