1 #ifndef FACE_DETECTOR_COMMON_H_ 2 #define FACE_DETECTOR_COMMON_H_ 4 #include <pcl/features/integral_image2D.h> 8 namespace face_detection
13 std::vector<boost::shared_ptr<pcl::IntegralImage2D<float, 1> > >
iimages_;
42 stream.write (reinterpret_cast<const char*> (&
row1_),
sizeof(
row1_));
43 stream.write (reinterpret_cast<const char*> (&
col1_),
sizeof(
col1_));
44 stream.write (reinterpret_cast<const char*> (&
row2_),
sizeof(
row2_));
45 stream.write (reinterpret_cast<const char*> (&
col2_),
sizeof(
col2_));
56 stream.read (reinterpret_cast<char*> (&
row1_),
sizeof(
row1_));
57 stream.read (reinterpret_cast<char*> (&
col1_),
sizeof(
col1_));
58 stream.read (reinterpret_cast<char*> (&
row2_),
sizeof(
row2_));
59 stream.read (reinterpret_cast<char*> (&
col2_),
sizeof(
col2_));
69 template<
class FeatureType>
89 const int num_of_sub_nodes =
static_cast<int> (
sub_nodes.size ());
90 stream.write (reinterpret_cast<const char*> (&num_of_sub_nodes),
sizeof(num_of_sub_nodes));
98 stream.write (reinterpret_cast<const char*> (&
value),
sizeof(
value));
101 for (
size_t i = 0; i < 3; i++)
104 for (
size_t i = 0; i < 3; i++)
107 for (
size_t i = 0; i < 3; i++)
108 for (
size_t j = 0; j < 3; j++)
111 for (
size_t i = 0; i < 3; i++)
112 for (
size_t j = 0; j < 3; j++)
115 for (
int sub_node_index = 0; sub_node_index < num_of_sub_nodes; ++sub_node_index)
117 sub_nodes[sub_node_index].serialize (stream);
123 int num_of_sub_nodes;
124 stream.read (reinterpret_cast<char*> (&num_of_sub_nodes),
sizeof(num_of_sub_nodes));
126 if (num_of_sub_nodes > 0)
132 stream.read (reinterpret_cast<char*> (&
value),
sizeof(
value));
135 for (
size_t i = 0; i < 3; i++)
138 for (
size_t i = 0; i < 3; i++)
141 for (
size_t i = 0; i < 3; i++)
142 for (
size_t j = 0; j < 3; j++)
145 for (
size_t i = 0; i < 3; i++)
146 for (
size_t j = 0; j < 3; j++)
151 if (num_of_sub_nodes > 0)
153 for (
int sub_node_index = 0; sub_node_index < num_of_sub_nodes; ++sub_node_index)
155 sub_nodes[sub_node_index].deserialize (stream);
Eigen::Vector3d trans_mean_
Eigen::Matrix3d covariance_rot_
void serialize(std::ostream &stream) const
std::vector< boost::shared_ptr< pcl::IntegralImage2D< float, 1 > > > iimages_
void deserialize(std::istream &stream)
void deserialize(::std::istream &stream)
Eigen::Vector3d rot_mean_
std::vector< RFTreeNode > sub_nodes
void serialize(::std::ostream &stream) const
Eigen::Matrix3d covariance_trans_