Commit 2849ebd7 authored by vsooda's avatar vsooda Committed by Davis E. King

fix shape_predictor dlib::searialize and dlib::desearialize error (#156)

* fix shape_predictor dlib::searialize and dlib::desearialize error

* declare shape_predictor searialize and desearialize inline

* fix inline declare issue: declare inline before implement
parent e3281851
......@@ -398,26 +398,9 @@ namespace dlib
return full_object_detection(rect, parts);
}
friend void serialize (const shape_predictor& item, std::ostream& out)
{
int version = 1;
dlib::serialize(version, out);
dlib::serialize(item.initial_shape, out);
dlib::serialize(item.forests, out);
dlib::serialize(item.anchor_idx, out);
dlib::serialize(item.deltas, out);
}
friend void deserialize (shape_predictor& item, std::istream& in)
{
int version = 0;
dlib::deserialize(version, in);
if (version != 1)
throw serialization_error("Unexpected version found while deserializing dlib::shape_predictor.");
dlib::deserialize(item.initial_shape, in);
dlib::deserialize(item.forests, in);
dlib::deserialize(item.anchor_idx, in);
dlib::deserialize(item.deltas, in);
}
friend void serialize (const shape_predictor& item, std::ostream& out);
friend void deserialize (shape_predictor& item, std::istream& in);
private:
matrix<float,0,1> initial_shape;
......@@ -426,6 +409,27 @@ namespace dlib
std::vector<std::vector<dlib::vector<float,2> > > deltas;
};
inline void serialize (const shape_predictor& item, std::ostream& out)
{
int version = 1;
dlib::serialize(version, out);
dlib::serialize(item.initial_shape, out);
dlib::serialize(item.forests, out);
dlib::serialize(item.anchor_idx, out);
dlib::serialize(item.deltas, out);
}
inline void deserialize (shape_predictor& item, std::istream& in)
{
int version = 0;
dlib::deserialize(version, in);
if (version != 1)
throw serialization_error("Unexpected version found while deserializing dlib::shape_predictor.");
dlib::deserialize(item.initial_shape, in);
dlib::deserialize(item.forests, in);
dlib::deserialize(item.anchor_idx, in);
dlib::deserialize(item.deltas, in);
}
// ----------------------------------------------------------------------------------------
class shape_predictor_trainer
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment