Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
OpenDAS
dlib
Commits
66d11e89
Commit
66d11e89
authored
Feb 03, 2016
by
Davis E. King
Browse files
Merge pull request #73 from patricksnape/drectangle_equality
Drectangle equality
parents
c029600a
86e93291
Changes
6
Show whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
110 additions
and
1 deletion
+110
-1
dlib/geometry/drectangle.h
dlib/geometry/drectangle.h
+13
-0
dlib/geometry/drectangle_abstract.h
dlib/geometry/drectangle_abstract.h
+19
-0
tools/python/src/dlib.cpp
tools/python/src/dlib.cpp
+2
-0
tools/python/src/rectangles.cpp
tools/python/src/rectangles.cpp
+4
-0
tools/python/src/shape_predictor.cpp
tools/python/src/shape_predictor.cpp
+3
-1
tools/python/src/shape_predictor.h
tools/python/src/shape_predictor.h
+69
-0
No files found.
dlib/geometry/drectangle.h
View file @
66d11e89
...
@@ -195,6 +195,19 @@ namespace dlib
...
@@ -195,6 +195,19 @@ namespace dlib
return
*
this
;
return
*
this
;
}
}
bool
operator
==
(
const
drectangle
&
rect
)
const
{
return
(
l
==
rect
.
l
)
&&
(
t
==
rect
.
t
)
&&
(
r
==
rect
.
r
)
&&
(
b
==
rect
.
b
);
}
bool
operator
!=
(
const
drectangle
&
rect
)
const
{
return
!
(
*
this
==
rect
);
}
private:
private:
double
l
;
double
l
;
...
...
dlib/geometry/drectangle_abstract.h
View file @
66d11e89
...
@@ -319,6 +319,25 @@ namespace dlib
...
@@ -319,6 +319,25 @@ namespace dlib
- returns #*this
- returns #*this
!*/
!*/
bool
operator
==
(
const
drectangle
&
rect
)
const
;
/*!
ensures
- if (top() == rect.top() && left() == rect.left() &&
right() == rect.right() && bottom() == rect.bottom()) then
- returns true
- else
- returns false
!*/
bool
operator
!=
(
const
drectangle
&
rect
)
const
;
/*!
ensures
- returns !(*this == rect)
!*/
};
};
// ----------------------------------------------------------------------------------------
// ----------------------------------------------------------------------------------------
...
...
tools/python/src/dlib.cpp
View file @
66d11e89
...
@@ -29,6 +29,8 @@ BOOST_PYTHON_MODULE(dlib)
...
@@ -29,6 +29,8 @@ BOOST_PYTHON_MODULE(dlib)
// since it is full of huge amounts of template clutter.
// since it is full of huge amounts of template clutter.
boost
::
python
::
docstring_options
options
(
true
,
true
,
false
);
boost
::
python
::
docstring_options
options
(
true
,
true
,
false
);
boost
::
python
::
scope
().
attr
(
"__version__"
)
=
"18.18"
;
bind_matrix
();
bind_matrix
();
bind_vector
();
bind_vector
();
bind_svm_c_trainer
();
bind_svm_c_trainer
();
...
...
tools/python/src/rectangles.cpp
View file @
66d11e89
...
@@ -90,6 +90,8 @@ void bind_rectangles()
...
@@ -90,6 +90,8 @@ void bind_rectangles()
.
def
(
"intersect"
,
&::
intersect
<
type
>
,
(
arg
(
"rectangle"
)))
.
def
(
"intersect"
,
&::
intersect
<
type
>
,
(
arg
(
"rectangle"
)))
.
def
(
"__str__"
,
&::
print_rectangle_str
<
type
>
)
.
def
(
"__str__"
,
&::
print_rectangle_str
<
type
>
)
.
def
(
"__repr__"
,
&::
print_rectangle_repr
<
type
>
)
.
def
(
"__repr__"
,
&::
print_rectangle_repr
<
type
>
)
.
def
(
self
==
self
)
.
def
(
self
!=
self
)
.
def_pickle
(
serialize_pickle
<
type
>
());
.
def_pickle
(
serialize_pickle
<
type
>
());
}
}
{
{
...
@@ -112,6 +114,8 @@ void bind_rectangles()
...
@@ -112,6 +114,8 @@ void bind_rectangles()
.
def
(
"intersect"
,
&::
intersect
<
type
>
,
(
arg
(
"rectangle"
)))
.
def
(
"intersect"
,
&::
intersect
<
type
>
,
(
arg
(
"rectangle"
)))
.
def
(
"__str__"
,
&::
print_rectangle_str
<
type
>
)
.
def
(
"__str__"
,
&::
print_rectangle_str
<
type
>
)
.
def
(
"__repr__"
,
&::
print_rectangle_repr
<
type
>
)
.
def
(
"__repr__"
,
&::
print_rectangle_repr
<
type
>
)
.
def
(
self
==
self
)
.
def
(
self
!=
self
)
.
def_pickle
(
serialize_pickle
<
type
>
());
.
def_pickle
(
serialize_pickle
<
type
>
());
}
}
{
{
...
...
tools/python/src/shape_predictor.cpp
View file @
66d11e89
...
@@ -210,7 +210,9 @@ void bind_shape_predictors()
...
@@ -210,7 +210,9 @@ void bind_shape_predictors()
e.g a padding of 0.5 would cause the algorithm to sample pixels from a box that was 2x2 pixels"
)
e.g a padding of 0.5 would cause the algorithm to sample pixels from a box that was 2x2 pixels"
)
.
add_property
(
"random_seed"
,
&
type
::
random_seed
,
.
add_property
(
"random_seed"
,
&
type
::
random_seed
,
&
type
::
random_seed
,
&
type
::
random_seed
,
"The random seed used by the internal random number generator"
);
"The random seed used by the internal random number generator"
)
.
def
(
"__str__"
,
&::
print_shape_predictor_training_options
)
.
def_pickle
(
serialize_pickle
<
type
>
());
}
}
{
{
typedef
shape_predictor
type
;
typedef
shape_predictor
type
;
...
...
tools/python/src/shape_predictor.h
View file @
66d11e89
...
@@ -45,6 +45,75 @@ namespace dlib
...
@@ -45,6 +45,75 @@ namespace dlib
std
::
string
random_seed
;
std
::
string
random_seed
;
};
};
inline
void
serialize
(
const
shape_predictor_training_options
&
item
,
std
::
ostream
&
out
)
{
try
{
serialize
(
item
.
be_verbose
,
out
);
serialize
(
item
.
cascade_depth
,
out
);
serialize
(
item
.
tree_depth
,
out
);
serialize
(
item
.
num_trees_per_cascade_level
,
out
);
serialize
(
item
.
nu
,
out
);
serialize
(
item
.
oversampling_amount
,
out
);
serialize
(
item
.
feature_pool_size
,
out
);
serialize
(
item
.
lambda_param
,
out
);
serialize
(
item
.
num_test_splits
,
out
);
serialize
(
item
.
feature_pool_region_padding
,
out
);
serialize
(
item
.
random_seed
,
out
);
}
catch
(
serialization_error
&
e
)
{
throw
serialization_error
(
e
.
info
+
"
\n
while serializing an object of type shape_predictor_training_options"
);
}
}
inline
void
deserialize
(
shape_predictor_training_options
&
item
,
std
::
istream
&
in
)
{
try
{
deserialize
(
item
.
be_verbose
,
in
);
deserialize
(
item
.
cascade_depth
,
in
);
deserialize
(
item
.
tree_depth
,
in
);
deserialize
(
item
.
num_trees_per_cascade_level
,
in
);
deserialize
(
item
.
nu
,
in
);
deserialize
(
item
.
oversampling_amount
,
in
);
deserialize
(
item
.
feature_pool_size
,
in
);
deserialize
(
item
.
lambda_param
,
in
);
deserialize
(
item
.
num_test_splits
,
in
);
deserialize
(
item
.
feature_pool_region_padding
,
in
);
deserialize
(
item
.
random_seed
,
in
);
}
catch
(
serialization_error
&
e
)
{
throw
serialization_error
(
e
.
info
+
"
\n
while deserializing an object of type shape_predictor_training_options"
);
}
}
string
print_shape_predictor_training_options
(
const
shape_predictor_training_options
&
o
)
{
std
::
ostringstream
sout
;
sout
<<
"shape_predictor_training_options("
<<
"be_verbose="
<<
o
.
be_verbose
<<
","
<<
"cascade_depth="
<<
o
.
cascade_depth
<<
","
<<
"tree_depth="
<<
o
.
tree_depth
<<
","
<<
"num_trees_per_cascade_level="
<<
o
.
num_trees_per_cascade_level
<<
","
<<
"nu="
<<
o
.
nu
<<
","
<<
"oversampling_amount="
<<
o
.
oversampling_amount
<<
","
<<
"feature_pool_size="
<<
o
.
feature_pool_size
<<
","
<<
"lambda_param="
<<
o
.
lambda_param
<<
","
<<
"num_test_splits="
<<
o
.
num_test_splits
<<
","
<<
"feature_pool_region_padding="
<<
o
.
feature_pool_region_padding
<<
","
<<
"random_seed="
<<
o
.
random_seed
<<
")"
;
return
sout
.
str
();
}
// ----------------------------------------------------------------------------------------
// ----------------------------------------------------------------------------------------
namespace
impl
namespace
impl
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment