Blender
V5.0
intern
libmv
libmv
multiview
panography_kernel.h
Go to the documentation of this file.
1
// Copyright (c) 2009 libmv authors.
2
//
3
// Permission is hereby granted, free of charge, to any person obtaining a copy
4
// of this software and associated documentation files (the "Software"), to
5
// deal in the Software without restriction, including without limitation the
6
// rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
7
// sell copies of the Software, and to permit persons to whom the Software is
8
// furnished to do so, subject to the following conditions:
9
//
10
// The above copyright notice and this permission notice shall be included in
11
// all copies or substantial portions of the Software.
12
//
13
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
14
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
15
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
16
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
17
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
18
// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
19
// IN THE SOFTWARE.
20
21
#ifndef LIBMV_MULTIVIEW_PANOGRAPHY_KERNEL_H
22
#define LIBMV_MULTIVIEW_PANOGRAPHY_KERNEL_H
23
24
#include "
libmv/base/vector.h
"
25
#include "
libmv/multiview/conditioning.h
"
26
#include "
libmv/multiview/homography_error.h
"
27
#include "
libmv/multiview/projection.h
"
28
#include "
libmv/multiview/two_view_kernel.h
"
29
#include "
libmv/numeric/numeric.h
"
30
31
namespace
libmv
{
32
namespace
panography
{
33
namespace
kernel
{
34
35
struct
TwoPointSolver
{
36
enum
{
MINIMUM_SAMPLES
= 2 };
37
static
void
Solve
(
const
Mat
& x1,
const
Mat
& x2,
vector<Mat3>
* Hs);
38
};
39
40
typedef
two_view::kernel::
41
Kernel<TwoPointSolver, homography::homography2D::AsymmetricError, Mat3>
42
UnnormalizedKernel
;
43
44
typedef
two_view::kernel::Kernel
<
45
two_view::kernel::NormalizedSolver<TwoPointSolver, UnnormalizerI>
,
46
homography::homography2D::AsymmetricError
,
47
Mat3
>
48
Kernel
;
49
50
}
// namespace kernel
51
}
// namespace panography
52
}
// namespace libmv
53
54
#endif
// LIBMV_MULTIVIEW_PANOGRAPHY_KERNEL_H
libmv::two_view::kernel::Kernel
Definition
two_view_kernel.h:103
conditioning.h
homography_error.h
vector.h
projection.h
libmv::panography::kernel
Definition
panography_kernel.cc:26
libmv::panography::kernel::Kernel
two_view::kernel::Kernel< two_view::kernel::NormalizedSolver< TwoPointSolver, UnnormalizerI >, homography::homography2D::AsymmetricError, Mat3 > Kernel
Definition
panography_kernel.h:48
libmv::panography::kernel::UnnormalizedKernel
two_view::kernel::Kernel< TwoPointSolver, homography::homography2D::AsymmetricError, Mat3 > UnnormalizedKernel
Definition
panography_kernel.h:42
libmv::panography
Definition
panography_kernel.cc:25
libmv
Definition
libmv/autotrack/autotrack.h:30
libmv::Mat3
Eigen::Matrix< double, 3, 3 > Mat3
Definition
numeric.h:75
libmv::Mat
Eigen::MatrixXd Mat
Definition
numeric.h:63
libmv::vector
std::vector< ElementType, Eigen::aligned_allocator< ElementType > > vector
Definition
libmv/libmv/base/vector.h:39
numeric.h
libmv::homography::homography2D::AsymmetricError
Definition
homography_error.h:37
libmv::panography::kernel::TwoPointSolver
Definition
panography_kernel.h:35
libmv::panography::kernel::TwoPointSolver::MINIMUM_SAMPLES
@ MINIMUM_SAMPLES
Definition
panography_kernel.h:36
libmv::panography::kernel::TwoPointSolver::Solve
static void Solve(const Mat &x1, const Mat &x2, vector< Mat3 > *Hs)
Definition
panography_kernel.cc:28
libmv::two_view::kernel::NormalizedSolver
Definition
two_view_kernel.h:34
two_view_kernel.h
Generated on
for Blender by
doxygen
1.16.1