Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
E
eos
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Richard Torenvliet
eos
Commits
0fe90e21
Commit
0fe90e21
authored
Aug 31, 2016
by
Patrik Huber
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Updated and added a few doxygen comments
parent
6d4caf9a
Changes
6
Show whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
25 additions
and
8 deletions
+25
-8
include/eos/fitting/affine_camera_estimation.hpp
include/eos/fitting/affine_camera_estimation.hpp
+1
-1
include/eos/fitting/contour_correspondence.hpp
include/eos/fitting/contour_correspondence.hpp
+5
-1
include/eos/fitting/nonlinear_camera_estimation.hpp
include/eos/fitting/nonlinear_camera_estimation.hpp
+11
-2
include/eos/morphablemodel/Blendshape.hpp
include/eos/morphablemodel/Blendshape.hpp
+1
-1
include/eos/render/texture_extraction.hpp
include/eos/render/texture_extraction.hpp
+1
-1
include/eos/render/utils.hpp
include/eos/render/utils.hpp
+6
-2
No files found.
include/eos/fitting/affine_camera_estimation.hpp
View file @
0fe90e21
...
@@ -165,7 +165,7 @@ cv::Mat estimate_affine_camera(std::vector<cv::Vec2f> image_points, std::vector<
...
@@ -165,7 +165,7 @@ cv::Mat estimate_affine_camera(std::vector<cv::Vec2f> image_points, std::vector<
*
*
* Note: Assumes the affine camera matrix only projects from world
* Note: Assumes the affine camera matrix only projects from world
* to clip space, because a subsequent window transform is applied.
* to clip space, because a subsequent window transform is applied.
*
#
Todo: This is outdated, now that we estimate the matrix from world
* Todo: This is outdated, now that we estimate the matrix from world
* to screen space directly.
* to screen space directly.
*
*
* @param[in] vertex A vertex in 3D space. vertex[3] = 1.0f.
* @param[in] vertex A vertex in 3D space. vertex[3] = 1.0f.
...
...
include/eos/fitting/contour_correspondence.hpp
View file @
0fe90e21
...
@@ -50,6 +50,8 @@ std::tuple<std::vector<cv::Vec2f>, std::vector<cv::Vec4f>, std::vector<int>> get
...
@@ -50,6 +50,8 @@ std::tuple<std::vector<cv::Vec2f>, std::vector<cv::Vec4f>, std::vector<int>> get
/**
/**
* @brief Definition of the vertex indices that define the right and left model contour.
*
* This class holds definitions for the contour (outline) on the right and left
* This class holds definitions for the contour (outline) on the right and left
* side of the reference 3D face model. These can be found in the file
* side of the reference 3D face model. These can be found in the file
* share/model_contours.json. The Surrey model's boundaries are conveniently
* share/model_contours.json. The Surrey model's boundaries are conveniently
...
@@ -99,7 +101,7 @@ struct ModelContour
...
@@ -99,7 +101,7 @@ struct ModelContour
/**
/**
* Serialises this class using cereal.
* Serialises this class using cereal.
*
*
* @param[in] ar The archive to serialise to (or to serialise from).
* @param[in] ar
chive
The archive to serialise to (or to serialise from).
*/
*/
template
<
class
Archive
>
template
<
class
Archive
>
void
serialize
(
Archive
&
archive
)
void
serialize
(
Archive
&
archive
)
...
@@ -109,6 +111,8 @@ struct ModelContour
...
@@ -109,6 +111,8 @@ struct ModelContour
};
};
/**
/**
* @brief Defines which 2D landmarks comprise the right and left face contour.
*
* This class holds 2D image contour landmark information. More specifically,
* This class holds 2D image contour landmark information. More specifically,
* it defines which 2D landmark IDs correspond to the right contour and which
* it defines which 2D landmark IDs correspond to the right contour and which
* to the left. These definitions are loaded from a file, for example from
* to the left. These definitions are loaded from a file, for example from
...
...
include/eos/fitting/nonlinear_camera_estimation.hpp
View file @
0fe90e21
...
@@ -58,7 +58,7 @@ struct Frustum
...
@@ -58,7 +58,7 @@ struct Frustum
/**
/**
* Serialises this class using cereal.
* Serialises this class using cereal.
*
*
* @param[in] ar The archive to serialise to (or to serialise from).
* @param[in] ar
chive
The archive to serialise to (or to serialise from).
*/
*/
template
<
class
Archive
>
template
<
class
Archive
>
void
serialize
(
Archive
&
archive
)
void
serialize
(
Archive
&
archive
)
...
@@ -67,6 +67,11 @@ struct Frustum
...
@@ -67,6 +67,11 @@ struct Frustum
};
};
};
};
/**
* @brief Type of a camera (projection).
*
* Currently either orthographic or perspective. Used in RenderingParameters.
*/
enum
class
CameraType
enum
class
CameraType
{
{
Orthographic
,
Orthographic
,
...
@@ -89,6 +94,10 @@ enum class CameraType
...
@@ -89,6 +94,10 @@ enum class CameraType
*
*
* The rotation values are given in radians and estimated using the RPY convention.
* The rotation values are given in radians and estimated using the RPY convention.
* Yaw is applied first to the model, then pitch, then roll (R * P * Y * vertex).
* Yaw is applied first to the model, then pitch, then roll (R * P * Y * vertex).
*
* Todo: This class may need a major overhaul so it supports all our fitting algorithms,
* some of them which use quaternions, others estimate the angles, as well as work with
* both orthographic and perspective projection.
*/
*/
struct
RenderingParameters
struct
RenderingParameters
{
{
...
@@ -110,7 +119,7 @@ struct RenderingParameters
...
@@ -110,7 +119,7 @@ struct RenderingParameters
/**
/**
* Serialises this class using cereal.
* Serialises this class using cereal.
*
*
* @param[in] ar The archive to serialise to (or to serialise from).
* @param[in] ar
chive
The archive to serialise to (or to serialise from).
*/
*/
template
<
class
Archive
>
template
<
class
Archive
>
void
serialize
(
Archive
&
archive
)
void
serialize
(
Archive
&
archive
)
...
...
include/eos/morphablemodel/Blendshape.hpp
View file @
0fe90e21
...
@@ -50,7 +50,7 @@ struct Blendshape
...
@@ -50,7 +50,7 @@ struct Blendshape
/**
/**
* Serialises this class using cereal.
* Serialises this class using cereal.
*
*
* @param[in] ar The archive to serialise to (or to serialise from).
* @param[in] ar
chive
The archive to serialise to (or to serialise from).
*/
*/
template
<
class
Archive
>
template
<
class
Archive
>
void
serialize
(
Archive
&
archive
)
void
serialize
(
Archive
&
archive
)
...
...
include/eos/render/texture_extraction.hpp
View file @
0fe90e21
...
@@ -55,7 +55,7 @@ namespace detail { cv::Mat interpolate_black_line(cv::Mat isomap); }
...
@@ -55,7 +55,7 @@ namespace detail { cv::Mat interpolate_black_line(cv::Mat isomap); }
* Extracts the texture of the face from the given image
* Extracts the texture of the face from the given image
* and stores it as isomap (a rectangular texture map).
* and stores it as isomap (a rectangular texture map).
*
*
* Note/
#
Todo: Only use TextureInterpolation::NearestNeighbour
* Note/Todo: Only use TextureInterpolation::NearestNeighbour
* for the moment, the other methods don't have correct handling of
* for the moment, the other methods don't have correct handling of
* the alpha channel (and will most likely throw an exception).
* the alpha channel (and will most likely throw an exception).
*
*
...
...
include/eos/render/utils.hpp
View file @
0fe90e21
...
@@ -147,11 +147,15 @@ inline bool is_power_of_two(int x)
...
@@ -147,11 +147,15 @@ inline bool is_power_of_two(int x)
return
!
(
x
&
(
x
-
1
));
return
!
(
x
&
(
x
-
1
));
};
};
/**
* @brief Represents a texture for rendering.
*
* Represents a texture and mipmap levels for use in the renderer.
* Todo: This whole class needs a major overhaul and documentation.
*/
class
Texture
class
Texture
{
{
public:
public:
// Todo: This whole class needs a major overhaul and documentation.
std
::
vector
<
cv
::
Mat
>
mipmaps
;
// make Texture a friend class of renderer, then move this to private?
std
::
vector
<
cv
::
Mat
>
mipmaps
;
// make Texture a friend class of renderer, then move this to private?
unsigned
char
widthLog
,
heightLog
;
// log2 of width and height of the base mip-level
unsigned
char
widthLog
,
heightLog
;
// log2 of width and height of the base mip-level
...
...
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