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
cc0b205d
Commit
cc0b205d
authored
Nov 19, 2012
by
Davis King
Browse files
Moved all the linear algebra/matrix tools onto their own documentation page.
parent
16011071
Changes
11
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
11 changed files
with
1021 additions
and
962 deletions
+1021
-962
docs/docs/algorithms.xml
docs/docs/algorithms.xml
+1
-317
docs/docs/containers.xml
docs/docs/containers.xml
+0
-614
docs/docs/graph_tools.xml
docs/docs/graph_tools.xml
+1
-1
docs/docs/howto_contribute.xml
docs/docs/howto_contribute.xml
+1
-1
docs/docs/imaging.xml
docs/docs/imaging.xml
+3
-3
docs/docs/index.xml
docs/docs/index.xml
+1
-1
docs/docs/linear_algebra.xml
docs/docs/linear_algebra.xml
+983
-0
docs/docs/main_menu.xml
docs/docs/main_menu.xml
+5
-0
docs/docs/metaprogramming.xml
docs/docs/metaprogramming.xml
+1
-1
docs/docs/ml.xml
docs/docs/ml.xml
+1
-1
docs/docs/term_index.xml
docs/docs/term_index.xml
+24
-23
No files found.
docs/docs/algorithms.xml
View file @
cc0b205d
...
...
@@ -86,32 +86,6 @@
<item>
rls_filter
</item>
</section>
<section>
<name>
Geometry
</name>
<item>
border_enumerator
</item>
<item>
rectangle
</item>
<item>
vector
</item>
<item>
point
</item>
<item>
rotate_point
</item>
<item>
point_rotator
</item>
<item>
point_transform
</item>
<item>
point_transform_affine
</item>
<item>
rotation_matrix
</item>
<item>
get_rect
</item>
<item>
centered_rect
</item>
<item>
center
</item>
<item>
dcenter
</item>
<item>
shrink_rect
</item>
<item>
grow_rect
</item>
<item>
translate_rect
</item>
<item>
resize_rect
</item>
<item>
resize_rect_width
</item>
<item>
resize_rect_height
</item>
<item>
move_rect
</item>
<item>
nearest_point
</item>
<item>
distance_to_rect_edge
</item>
</section>
</top>
</menu>
...
...
@@ -284,7 +258,7 @@
<spec_file>
dlib/general_hash/hash_abstract.h
</spec_file>
<description>
This is a set of convenience functions for invoking
<a
href=
"#murmur_hash3"
>
murmur_hash3
</a>
on std::strings, std::vectors, std::maps, or
<a
href=
"
containers
.html#matrix"
>
dlib::matrix
</a>
objects.
on std::strings, std::vectors, std::maps, or
<a
href=
"
linear_algebra
.html#matrix"
>
dlib::matrix
</a>
objects.
<p>
As an aside, the hash() for matrix objects is defined
<a
href=
"dlib/matrix/matrix_utilities_abstract.h.html#hash"
>
here
</a>
.
It has the same interface as all the others.
...
...
@@ -305,54 +279,6 @@
</component>
<!-- ************************************************************************* -->
<component>
<name>
rectangle
</name>
<file>
dlib/geometry.h
</file>
<spec_file>
dlib/geometry/rectangle_abstract.h
</spec_file>
<description>
This object represents a rectangular region inside a Cartesian
coordinate system. It allows you to easily represent and manipulate
rectangles.
</description>
</component>
<!-- ************************************************************************* -->
<component>
<name>
border_enumerator
</name>
<file>
dlib/geometry.h
</file>
<spec_file>
dlib/geometry/border_enumerator_abstract.h
</spec_file>
<description>
This object is an
<a
href=
"containers.html#enumerable"
>
enumerator
</a>
over the border
<a
href=
"#point"
>
points
</a>
of a
<a
href=
"#rectangle"
>
rectangle
</a>
.
</description>
</component>
<!-- ************************************************************************* -->
<component>
<name>
vector
</name>
<file>
dlib/geometry.h
</file>
<spec_file
link=
"true"
>
dlib/geometry/vector_abstract.h
</spec_file>
<description>
This object represents a two or three dimensional vector.
</description>
</component>
<!-- ************************************************************************* -->
<component>
<name>
point
</name>
<file>
dlib/geometry.h
</file>
<spec_file
link=
"true"
>
dlib/geometry/vector_abstract.h
</spec_file>
<description>
This object represents a point inside a Cartesian coordinate system.
</description>
</component>
<!-- ************************************************************************* -->
<component>
...
...
@@ -664,103 +590,6 @@
</component>
<!-- ************************************************************************* -->
<component>
<name>
nearest_point
</name>
<file>
dlib/geometry.h
</file>
<spec_file
link=
"true"
>
dlib/geometry/rectangle_abstract.h
</spec_file>
<description>
This function takes a
<a
href=
"#rectangle"
>
rectangle
</a>
and a
<a
href=
"#point"
>
point
</a>
and returns the point in the given
rectangle that is nearest to the given point.
</description>
</component>
<!-- ************************************************************************* -->
<component>
<name>
distance_to_rect_edge
</name>
<file>
dlib/geometry.h
</file>
<spec_file
link=
"true"
>
dlib/geometry/rectangle_abstract.h
</spec_file>
<description>
This function takes a
<a
href=
"#rectangle"
>
rectangle
</a>
and a
<a
href=
"#point"
>
point
</a>
and returns the Manhattan distance between
the rectangle's edge and the point.
</description>
</component>
<!-- ************************************************************************* -->
<component>
<name>
move_rect
</name>
<file>
dlib/geometry.h
</file>
<spec_file
link=
"true"
>
dlib/geometry/rectangle_abstract.h
</spec_file>
<description>
This function takes a
<a
href=
"#rectangle"
>
rectangle
</a>
and moves
it so that it's upper left corner occupies the given location.
</description>
</component>
<!-- ************************************************************************* -->
<component>
<name>
resize_rect_height
</name>
<file>
dlib/geometry.h
</file>
<spec_file
link=
"true"
>
dlib/geometry/rectangle_abstract.h
</spec_file>
<description>
This function takes a
<a
href=
"#rectangle"
>
rectangle
</a>
and
returns a new rectangle with the given height but otherwise with the
same edge points as the original rectangle.
</description>
</component>
<!-- ************************************************************************* -->
<component>
<name>
resize_rect_width
</name>
<file>
dlib/geometry.h
</file>
<spec_file
link=
"true"
>
dlib/geometry/rectangle_abstract.h
</spec_file>
<description>
This function takes a
<a
href=
"#rectangle"
>
rectangle
</a>
and
returns a new rectangle with the given width but otherwise with the
same edge points as the original rectangle.
</description>
</component>
<!-- ************************************************************************* -->
<component>
<name>
resize_rect
</name>
<file>
dlib/geometry.h
</file>
<spec_file
link=
"true"
>
dlib/geometry/rectangle_abstract.h
</spec_file>
<description>
This function takes a
<a
href=
"#rectangle"
>
rectangle
</a>
and
returns a new rectangle with the given size but with the same upper
left corner as the original rectangle.
</description>
</component>
<!-- ************************************************************************* -->
<component>
<name>
translate_rect
</name>
<file>
dlib/geometry.h
</file>
<spec_file
link=
"true"
>
dlib/geometry/rectangle_abstract.h
</spec_file>
<description>
This function takes a
<a
href=
"#rectangle"
>
rectangle
</a>
and moves
it by a given number of units along the x and y axis relative to
where it was before the move.
</description>
</component>
<!-- ************************************************************************* -->
<component>
...
...
@@ -795,151 +624,6 @@
</component>
<!-- ************************************************************************* -->
<component>
<name>
center
</name>
<file>
dlib/geometry.h
</file>
<spec_file
link=
"true"
>
dlib/geometry/rectangle_abstract.h
</spec_file>
<description>
Returns the center point of a
<a
href=
"#rectangle"
>
rectangle
</a>
.
</description>
</component>
<!-- ************************************************************************* -->
<component>
<name>
dcenter
</name>
<file>
dlib/geometry.h
</file>
<spec_file
link=
"true"
>
dlib/geometry/rectangle_abstract.h
</spec_file>
<description>
Returns the center point of a
<a
href=
"#rectangle"
>
rectangle
</a>
. This
is a version of
<a
href=
"#center"
>
center()
</a>
which returns a double version
of the point rather than one which uses integers to represent the
result. Therefore, it is slightly more accurate.
</description>
</component>
<!-- ************************************************************************* -->
<component>
<name>
centered_rect
</name>
<file>
dlib/geometry.h
</file>
<spec_file
link=
"true"
>
dlib/geometry/rectangle_abstract.h
</spec_file>
<description>
There are various overloads of this function but the basic idea is
that it returns a
<a
href=
"#rectangle"
>
rectangle
</a>
with a given
width and height and centered about a given point.
</description>
</component>
<!-- ************************************************************************* -->
<component>
<name>
shrink_rect
</name>
<file>
dlib/geometry.h
</file>
<spec_file
link=
"true"
>
dlib/geometry/rectangle_abstract.h
</spec_file>
<description>
This function takes a
<a
href=
"#rectangle"
>
rectangle
</a>
object,
shrinks its borders by a given amount, and returns the result.
</description>
</component>
<!-- ************************************************************************* -->
<component>
<name>
grow_rect
</name>
<file>
dlib/geometry.h
</file>
<spec_file
link=
"true"
>
dlib/geometry/rectangle_abstract.h
</spec_file>
<description>
This function takes a
<a
href=
"#rectangle"
>
rectangle
</a>
object,
grows its borders by a given amount, and returns the result.
</description>
</component>
<!-- ************************************************************************* -->
<component>
<name>
rotate_point
</name>
<file>
dlib/geometry.h
</file>
<spec_file
link=
"true"
>
dlib/geometry/vector_abstract.h
</spec_file>
<description>
This is a function that rotates a 2D
<a
href=
"#vector"
>
vector
</a>
or
<a
href=
"#point"
>
point
</a>
object about a given point.
</description>
</component>
<!-- ************************************************************************* -->
<component>
<name>
point_rotator
</name>
<file>
dlib/geometry.h
</file>
<spec_file
link=
"true"
>
dlib/geometry/vector_abstract.h
</spec_file>
<description>
This is an object that rotates a 2D
<a
href=
"#vector"
>
vector
</a>
or
<a
href=
"#point"
>
point
</a>
object about the origin.
</description>
</component>
<!-- ************************************************************************* -->
<component>
<name>
point_transform
</name>
<file>
dlib/geometry.h
</file>
<spec_file
link=
"true"
>
dlib/geometry/vector_abstract.h
</spec_file>
<description>
This is an object that rotates a 2D
<a
href=
"#vector"
>
vector
</a>
or
<a
href=
"#point"
>
point
</a>
object about the origin and then adds a
displacement vector.
</description>
</component>
<!-- ************************************************************************* -->
<component>
<name>
point_transform_affine
</name>
<file>
dlib/geometry.h
</file>
<spec_file
link=
"true"
>
dlib/geometry/vector_abstract.h
</spec_file>
<description>
This is an object that applies an affine transformation to a
<a
href=
"#vector"
>
vector
</a>
or
<a
href=
"#point"
>
point
</a>
.
</description>
</component>
<!-- ************************************************************************* -->
<component>
<name>
rotation_matrix
</name>
<file>
dlib/geometry.h
</file>
<spec_file
link=
"true"
>
dlib/geometry/vector_abstract.h
</spec_file>
<description>
This is a method for creating 2D rotation matrices.
</description>
</component>
<!-- ************************************************************************* -->
<component>
<name>
get_rect
</name>
<file>
dlib/geometry.h
</file>
<spec_file
link=
"true"
>
dlib/geometry/rectangle_abstract.h
</spec_file>
<description>
This is a simple template function that returns a rectangle
representing the size of a 2D container (e.g.
<a
href=
"containers.html#matrix"
>
matrix
</a>
or
<a
href=
"containers.html#array2d"
>
array2d
</a>
).
</description>
</component>
<!-- ************************************************************************* -->
</components>
...
...
docs/docs/containers.xml
View file @
cc0b205d
This diff is collapsed.
Click to expand it.
docs/docs/graph_tools.xml
View file @
cc0b205d
...
...
@@ -303,7 +303,7 @@
<spec_file
link=
"true"
>
dlib/graph_utils/function_objects_abstract.h
</spec_file>
<description>
This is a simple function object that computes squared euclidean distance
between two
<a
href=
"
containers
.html#matrix"
>
matrix
</a>
objects.
between two
<a
href=
"
linear_algebra
.html#matrix"
>
matrix
</a>
objects.
</description>
<examples>
<example>
linear_manifold_regularizer_ex.cpp.html
</example>
...
...
docs/docs/howto_contribute.xml
View file @
cc0b205d
...
...
@@ -233,7 +233,7 @@ Then <a href="mailto:davis@dlib.net">email me</a> the dlibchanges.hg file and I'
or any number of other objects that manage resources such as memory for you. If you want
an array use std::vector (or the checked
<a
href=
"containers.html#std_vector_c"
>
std_vector_c
</a>
).
If you want to make a lookup table use a
<a
href=
"containers.html#map"
>
map
</a>
. If you want
a two dimensional array use
<a
href=
"
containers
.html#matrix"
>
matrix
</a>
or
a two dimensional array use
<a
href=
"
linear_algebra
.html#matrix"
>
matrix
</a>
or
<a
href=
"containers.html#array2d"
>
array2d
</a>
.
</p>
<p>
...
...
docs/docs/imaging.xml
View file @
cc0b205d
...
...
@@ -975,7 +975,7 @@
<spec_file
link=
"true"
>
dlib/image_transforms/equalize_histogram_abstract.h
</spec_file>
<description>
This global function computes an image's histogram and returns it in the
form of a column or row
<a
href=
"
containers
.html#matrix"
>
matrix
</a>
object.
form of a column or row
<a
href=
"
linear_algebra
.html#matrix"
>
matrix
</a>
object.
</description>
</component>
...
...
@@ -1295,7 +1295,7 @@
<spec_file
link=
"true"
>
dlib/image_transforms/interpolation_abstract.h
</spec_file>
<description>
This routine is a tool for transforming images using some kind of point mapping
function (e.g.
<a
href=
"
algorithms
.html#point_transform_affine"
>
point_transform_affine
</a>
)
function (e.g.
<a
href=
"
linear_algebra
.html#point_transform_affine"
>
point_transform_affine
</a>
)
and pixel interpolation tool (e.g.
<a
href=
"#interpolate_quadratic"
>
interpolate_quadratic
</a>
).
An example application of this routine is for image rotation. Indeed, it is how
<a
href=
"#rotate_image"
>
rotate_image
</a>
is implemented.
...
...
@@ -1639,7 +1639,7 @@
<spec_file
link=
"true"
>
dlib/image_processing/box_overlap_testing_abstract.h
</spec_file>
<description>
This object is a simple function object for determining if two
<a
href=
"
algorithms
.html#rectangle"
>
rectangles
</a>
overlap.
<a
href=
"
linear_algebra
.html#rectangle"
>
rectangles
</a>
overlap.
</description>
</component>
...
...
docs/docs/index.xml
View file @
cc0b205d
...
...
@@ -104,7 +104,7 @@
<li><b>
Numerical Algorithms
</b>
<ul>
<li>
A fast
<a
href=
"
containers
.html#matrix"
>
matrix
</a>
object implemented using the expression
<li>
A fast
<a
href=
"
linear_algebra
.html#matrix"
>
matrix
</a>
object implemented using the expression
templates technique and capable of using BLAS and LAPACK libraries when available.
</li>
<li>
Numerous linear algebra and mathematical operations are defined for the matrix object such as the
<a
href=
"dlib/matrix/matrix_la_abstract.h.html#svd"
>
singular value decomposition
</a>
,
...
...
docs/docs/linear_algebra.xml
0 → 100644
View file @
cc0b205d
This diff is collapsed.
Click to expand it.
docs/docs/main_menu.xml
View file @
cc0b205d
...
...
@@ -25,6 +25,11 @@
<link>
ml.html
</link>
<chm_sub>
ml.xml
</chm_sub>
</item>
<item>
<name>
Linear Algebra
</name>
<link>
linear_algebra.html
</link>
<chm_sub>
linear_algebra.xml
</chm_sub>
</item>
<item>
<name>
Bayesian Nets
</name>
<link>
bayes.html
</link>
...
...
docs/docs/metaprogramming.xml
View file @
cc0b205d
...
...
@@ -392,7 +392,7 @@
<spec_file
link=
"true"
>
dlib/is_kind.h
</spec_file>
<description>
This is a template where is_matrix
<
T
>
::value == true when T
is a
<a
href=
"
containers
.html#matrix"
>
matrix
</a>
object or some kind
is a
<a
href=
"
linear_algebra
.html#matrix"
>
matrix
</a>
object or some kind
of matrix expression.
</description>
...
...
docs/docs/ml.xml
View file @
cc0b205d
...
...
@@ -32,7 +32,7 @@
programming approach using C++ templates. In particular, each algorithm is parameterized
to allow a user to supply either one of the predefined dlib kernels (e.g.
<a
href=
"#radial_basis_kernel"
>
RBF
</a>
operating
on
<a
href=
"
containers
.html#matrix"
>
column vectors
</a>
), or a new
on
<a
href=
"
linear_algebra
.html#matrix"
>
column vectors
</a>
), or a new
<a
href=
"using_custom_kernels_ex.cpp.html"
>
user defined kernel
</a>
.
Moreover, the implementations of the algorithms are totally separated from the data on
which they operate. This makes the dlib implementation generic enough to operate on
...
...
docs/docs/term_index.xml
View file @
cc0b205d
...
...
@@ -15,18 +15,20 @@
<term
file=
"dlib/algs.h.html"
name=
"stack_based_memory_block"
/>
<term
file=
"algorithms.html"
name=
"move_rect"
/>
<term
file=
"algorithms.html"
name=
"translate_rect"
/>
<term
file=
"algorithms.html"
name=
"resize_rect"
/>
<term
file=
"algorithms.html"
name=
"resize_rect_width"
/>
<term
file=
"algorithms.html"
name=
"resize_rect_height"
/>
<term
file=
"algorithms.html"
name=
"centered_rect"
/>
<term
file=
"algorithms.html"
name=
"center"
/>
<term
file=
"algorithms.html"
name=
"nearest_point"
/>
<term
file=
"algorithms.html"
name=
"distance_to_rect_edge"
/>
<term
file=
"algorithms.html"
name=
"shrink_rect"
/>
<term
file=
"algorithms.html"
name=
"grow_rect"
/>
<term
file=
"algorithms.html"
name=
"dcenter"
/>
<term
file=
"linear_algebra.html"
name=
"matrix"
/>
<term
file=
"linear_algebra.html"
name=
"move_rect"
/>
<term
file=
"linear_algebra.html"
name=
"translate_rect"
/>
<term
file=
"linear_algebra.html"
name=
"resize_rect"
/>
<term
file=
"linear_algebra.html"
name=
"resize_rect_width"
/>
<term
file=
"linear_algebra.html"
name=
"resize_rect_height"
/>
<term
file=
"linear_algebra.html"
name=
"centered_rect"
/>
<term
file=
"linear_algebra.html"
name=
"center"
/>
<term
file=
"linear_algebra.html"
name=
"nearest_point"
/>
<term
file=
"linear_algebra.html"
name=
"distance_to_rect_edge"
/>
<term
file=
"linear_algebra.html"
name=
"shrink_rect"
/>
<term
file=
"linear_algebra.html"
name=
"grow_rect"
/>
<term
file=
"linear_algebra.html"
name=
"dcenter"
/>
<term
file=
"algorithms.html"
name=
"kalman_filter"
/>
<term
file=
"algorithms.html"
name=
"rls_filter"
/>
...
...
@@ -150,8 +152,8 @@
<term
file=
"algorithms.html"
name=
"randomly_sample_image_features"
/>
<term
file=
"algorithms.html"
name=
"disjoint_subsets"
/>
<term
link=
"algorithms.html#disjoint_subsets"
name=
"union-find"
/>
<term
file=
"
algorithms
.html"
name=
"rectangle"
/>
<term
file=
"
algorithms
.html"
name=
"border_enumerator"
/>
<term
file=
"
linear_algebra
.html"
name=
"rectangle"
/>
<term
file=
"
linear_algebra
.html"
name=
"border_enumerator"
/>
<term
file=
"graph_tools.html"
name=
"edge"
/>
<term
file=
"graph_tools.html"
name=
"is_join_tree"
/>
<term
file=
"graph_tools.html"
name=
"create_join_tree"
/>
...
...
@@ -182,13 +184,13 @@
<term
file=
"graph_tools.html"
name=
"is_clique"
/>
<term
file=
"graph_tools.html"
name=
"is_maximal_clique"
/>
<term
file=
"algorithms.html"
name=
"square_root"
/>
<term
file=
"
algorithms
.html"
name=
"vector"
/>
<term
file=
"
algorithms
.html"
name=
"point"
/>
<term
file=
"
algorithms
.html"
name=
"rotate_point"
/>
<term
file=
"
algorithms
.html"
name=
"point_rotator"
/>
<term
file=
"
algorithms
.html"
name=
"point_transform"
/>
<term
file=
"
algorithms
.html"
name=
"point_transform_affine"
/>
<term
file=
"
algorithms
.html"
name=
"rotation_matrix"
/>
<term
file=
"
linear_algebra
.html"
name=
"vector"
/>
<term
file=
"
linear_algebra
.html"
name=
"point"
/>
<term
file=
"
linear_algebra
.html"
name=
"rotate_point"
/>
<term
file=
"
linear_algebra
.html"
name=
"point_rotator"
/>
<term
file=
"
linear_algebra
.html"
name=
"point_transform"
/>
<term
file=
"
linear_algebra
.html"
name=
"point_transform_affine"
/>
<term
file=
"
linear_algebra
.html"
name=
"rotation_matrix"
/>
<term
file=
"algorithms.html"
name=
"running_stats"
/>
<term
file=
"algorithms.html"
name=
"running_scalar_covariance"
/>
<term
file=
"algorithms.html"
name=
"mean_sign_agreement"
/>
...
...
@@ -369,7 +371,6 @@
<term
file=
"containers.html"
name=
"directed_graph"
/>
<term
file=
"containers.html"
name=
"array"
/>
<term
file=
"containers.html"
name=
"binary_search_tree"
/>
<term
file=
"containers.html"
name=
"matrix"
/>
<term
file=
"containers.html"
name=
"enumerable"
/>
<term
file=
"containers.html"
name=
"map_pair"
/>
<term
file=
"containers.html"
name=
"map"
/>
...
...
@@ -825,7 +826,7 @@
<term
name=
"get_rect"
>
<term
link=
"dlib/gui_widgets/drawable_abstract.h.html#get_rect"
name=
"in drawable object"
/>
<term
link=
"
algorithms
.html#get_rect"
name=
"for general matrix like objects"
/>
<term
link=
"
linear_algebra
.html#get_rect"
name=
"for general matrix like objects"
/>
</term>
<term
file=
"dlib/gui_widgets/drawable_abstract.h.html"
name=
"is_enabled"
/>
...
...
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