|
#include "calibfilter.h"
#include <stdio.h>
#include <opencv2/calib3d/calib3d_c.h>
#include <opencv2/core/core_c.h>
#include <float.h>
#include <limits.h>
#include <utility>
Go to the source code of this file.
Macros | |
#define | __BEGIN__ __CV_BEGIN__ |
#define | __END__ __CV_END__ |
#define | cvmMul(src1, src2, dst) cvMatMulAdd( src1, src2, 0, dst ) |
#define | EPS64D 1e-9 |
#define | icvCheckVector_32f(ptr, len) |
#define | icvCheckVector_64f(ptr, len) |
#define | icvTransformVector_64d(matr, src, dst, w, h) icvMulMatrix_64d( matr, w, h, src, 1, w, dst ) |
Typedefs | |
using | CvMatr32f = float * |
using | CvMatr64d = double * |
using | CvPoint2D64d = CvPoint2D64f |
using | CvPoint3D64d = CvPoint3D64f |
typedef enum CvStatus | CvStatus |
using | CvVect32f = float * |
using | CvVect64d = double * |
Functions | |
int | cvComputeEpipolesFromFundMatrix (CvMatr32f fundMatr, CvPoint3D32f *epipole1, CvPoint3D32f *epipole2) |
int | cvComputeEssentialMatrix (CvMatr32f rotMatr, CvMatr32f transVect, CvMatr32f essMatr) |
CV_IMPL void | cvComputePerspectiveMap (const double c[3][3], CvArr *rectMapX, CvArr *rectMapY) |
int | cvConvertEssential2Fundamental (CvMatr32f essMatr, CvMatr32f fundMatr, CvMatr32f cameraMatr1, CvMatr32f cameraMatr2) |
int | cvFindChessBoardCornerGuesses (const void *arr, void *, CvMemStorage *, CvSize pattern_size, CvPoint2D32f *corners, int *corner_count) |
CV_INLINE CvSize | cvGetMatSize (const CvMat *mat) |
CV_IMPL void | cvInitPerspectiveTransform (CvSize size, const CvPoint2D32f quad[4], double matrix[3][3], CvArr *rectMap) |
void | cvProjectPointsSimple (int point_count, CvPoint3D64f *_object_points, double *_rotation_matrix, double *_translation_vector, double *_camera_matrix, double *_distortion, CvPoint2D64f *_image_points) |
double | cvPseudoInverse (const CvArr *src, CvArr *dst) |
CV_INLINE void | icvAddVector_64d (const double *src1, const double *src2, double *dst, int len) |
int | icvComCoeffForLine (CvPoint2D64d point1, CvPoint2D64d point2, CvPoint2D64d point3, CvPoint2D64d point4, CvMatr64d camMatr1, CvMatr64d rotMatr1, CvMatr64d transVect1, CvMatr64d camMatr2, CvMatr64d rotMatr2, CvMatr64d transVect2, CvStereoLineCoeff *coeffs, int *needSwapCamera) |
int | icvCompute3DPoint (double alpha, double betta, CvStereoLineCoeff *coeffs, CvPoint3D64d *point) |
int | icvComputeCoeffForStereo (CvStereoCamera *stereoCamera) |
void | icvComputeeInfiniteProject1 (CvMatr64d rotMatr, CvMatr64d camMatr1, CvMatr64d camMatr2, CvPoint2D32f point1, CvPoint2D32f *point2) |
void | icvComputeeInfiniteProject2 (CvMatr64d rotMatr, CvMatr64d camMatr1, CvMatr64d camMatr2, CvPoint2D32f *point1, CvPoint2D32f point2) |
int | icvComputeRestStereoParams (CvStereoCamera *stereoparams) |
int | icvComputeStereoLineCoeffs (CvPoint3D64d pointA, CvPoint3D64d pointB, CvPoint3D64d pointCam1, double gamma, CvStereoLineCoeff *coeffs) |
void | icvComputeStereoParamsForCameras (CvStereoCamera *stereoCamera) |
int | icvConvertPointSystem (CvPoint3D64d M2, CvPoint3D64d *M1, CvMatr64d rotMatr, CvMatr64d transVect) |
int | icvConvertWarpCoordinates (double coeffs[3][3], CvPoint2D32f *cameraPoint, CvPoint2D32f *warpPoint, int direction) |
int | icvCreateConvertMatrVect (CvMatr64d rotMatr1, CvMatr64d transVect1, CvMatr64d rotMatr2, CvMatr64d transVect2, CvMatr64d convRotMatr, CvMatr64d convTransVect) |
CV_IMPL IplImage * | icvCreateIsometricImage (IplImage *src, IplImage *dst, int desired_depth, int desired_num_channels) |
float | icvDefinePointPosition (CvPoint2D32f point1, CvPoint2D32f point2, CvPoint2D32f point) |
int | icvGetAngleLine (CvPoint2D64d startPoint, CvSize imageSize, CvPoint2D64d *point1, CvPoint2D64d *point2) |
void | icvGetCoefForPiece (CvPoint2D64d p_start, CvPoint2D64d p_end, double *a, double *b, double *c, int *result) |
void | icvGetCrossDirectDirect (CvVect64d direct1, CvVect64d direct2, CvPoint2D64d *cross, int *result) |
int | icvGetCrossLineDirect (CvPoint2D32f p1, CvPoint2D32f p2, float a, float b, float c, CvPoint2D32f *cross) |
int | icvGetCrossLines (CvPoint3D64d point11, CvPoint3D64d point12, CvPoint3D64d point21, CvPoint3D64d point22, CvPoint3D64d *midPoint) |
void | icvGetCrossPieceDirect (CvPoint2D64d p_start, CvPoint2D64d p_end, double a, double b, double c, CvPoint2D64d *cross, int *result) |
void | icvGetCrossPiecePiece (CvPoint2D64d p1_start, CvPoint2D64d p1_end, CvPoint2D64d p2_start, CvPoint2D64d p2_end, CvPoint2D64d *cross, int *result) |
int | icvGetCrossPieceVector (CvPoint2D32f p1_start, CvPoint2D32f p1_end, CvPoint2D32f v2_start, CvPoint2D32f v2_end, CvPoint2D32f *cross) |
void | icvGetCrossRectDirect (CvSize imageSize, double a, double b, double c, CvPoint2D64d *start, CvPoint2D64d *end, int *result) |
void | icvGetCutPiece (CvVect64d areaLineCoef1, CvVect64d areaLineCoef2, CvPoint2D64d epipole, CvSize imageSize, CvPoint2D64d *point11, CvPoint2D64d *point12, CvPoint2D64d *point21, CvPoint2D64d *point22, int *result) |
int | icvGetDirectionForPoint (CvPoint2D64d point, CvMatr64d camMatr, CvPoint3D64d *direct) |
void | icvGetDistanceFromPointToDirect (CvPoint2D64d point, CvVect64d lineCoef, double *dist) |
void | icvGetMiddleAnglePoint (CvPoint2D64d basePoint, CvPoint2D64d point1, CvPoint2D64d point2, CvPoint2D64d *midPoint) |
void | icvGetNormalDirect (CvVect64d direct, CvPoint2D64d point, CvVect64d normDirect) |
void | icvGetPieceLength (CvPoint2D64d point1, CvPoint2D64d point2, double *dist) |
void | icvGetPieceLength3D (CvPoint3D64d point1, CvPoint3D64d point2, double *dist) |
void | icvGetQuadsTransform (CvSize imageSize, CvMatr64d camMatr1, CvMatr64d rotMatr1, CvVect64d transVect1, CvMatr64d camMatr2, CvMatr64d rotMatr2, CvVect64d transVect2, CvSize *warpSize, double quad1[4][2], double quad2[4][2], CvMatr64d fundMatr, CvPoint3D64d *epipole1, CvPoint3D64d *epipole2) |
void | icvGetQuadsTransformStruct (CvStereoCamera *stereoCamera) |
int | icvGetSymPoint3D (CvPoint3D64d pointCorner, CvPoint3D64d point1, CvPoint3D64d point2, CvPoint3D64d *pointSym2) |
CV_IMPL double | icvGetVect (CvPoint2D64d basePoint, CvPoint2D64d point1, CvPoint2D64d point2) |
CV_INLINE void | icvInvertMatrix_64d (double *A, int n, double *invA) |
CV_INLINE void | icvMulMatrix_32f (const float *src1, int w1, int h1, const float *src2, int w2, int h2, float *dst) |
CV_INLINE void | icvMulMatrix_64d (const double *src1, int w1, int h1, const double *src2, int w2, int h2, double *dst) |
void | icvProjectPointToDirect (CvPoint2D64d point, CvVect64d lineCoeff, CvPoint2D64d *projectPoint) |
void | icvProjectPointToImage (CvPoint3D64d point, CvMatr64d camMatr, CvMatr64d rotMatr, CvVect64d transVect, CvPoint2D64d *projPoint) |
int | icvStereoCalibration (int numImages, int *nums, CvSize imageSize, CvPoint2D32f *imagePoints1, CvPoint2D32f *imagePoints2, CvPoint3D32f *objectPoints, CvStereoCamera *stereoparams) |
CV_INLINE void | icvSubVector_64d (const double *src1, const double *src2, double *dst, int len) |
void | icvTestPoint (CvPoint2D64d testPoint, CvVect64d line1, CvVect64d line2, CvPoint2D64d basePoint, int *result) |
CV_INLINE void | icvTransposeMatrix_64d (const double *src, int w, int h, double *dst) |
#define __BEGIN__ __CV_BEGIN__ |
Definition at line 2782 of file calibfilter.cpp.
#define __END__ __CV_END__ |
Definition at line 2783 of file calibfilter.cpp.
#define cvmMul | ( | src1, | |
src2, | |||
dst | |||
) | cvMatMulAdd( src1, src2, 0, dst ) |
Definition at line 517 of file calibfilter.cpp.
#define EPS64D 1e-9 |
Definition at line 508 of file calibfilter.cpp.
#define icvCheckVector_32f | ( | ptr, | |
len | |||
) |
Definition at line 310 of file calibfilter.cpp.
#define icvCheckVector_64f | ( | ptr, | |
len | |||
) |
Definition at line 311 of file calibfilter.cpp.
#define icvTransformVector_64d | ( | matr, | |
src, | |||
dst, | |||
w, | |||
h | |||
) | icvMulMatrix_64d( matr, w, h, src, 1, w, dst ) |
Definition at line 1310 of file calibfilter.cpp.
Definition at line 510 of file calibfilter.cpp.
using CvMatr64d = double* |
Definition at line 514 of file calibfilter.cpp.
using CvPoint2D64d = CvPoint2D64f |
Definition at line 511 of file calibfilter.cpp.
using CvPoint3D64d = CvPoint3D64f |
Definition at line 512 of file calibfilter.cpp.
Definition at line 515 of file calibfilter.cpp.
using CvVect64d = double* |
Definition at line 513 of file calibfilter.cpp.
anonymous enum |
Enumerator | |
---|---|
CV_MAT32F | |
CV_MAT3x1_32F | |
CV_MAT4x1_32F | |
CV_MAT3x3_32F | |
CV_MAT4x4_32F | |
CV_MAT64D | |
CV_MAT3x1_64D | |
CV_MAT4x1_64D | |
CV_MAT3x3_64D | |
CV_MAT4x4_64D |
Definition at line 519 of file calibfilter.cpp.
enum CvStatus |
Definition at line 465 of file calibfilter.cpp.
int cvComputeEpipolesFromFundMatrix | ( | CvMatr32f | fundMatr, |
CvPoint3D32f * | epipole1, | ||
CvPoint3D32f * | epipole2 | ||
) |
Definition at line 3639 of file calibfilter.cpp.
CV_IMPL void cvComputePerspectiveMap | ( | const double | c[3][3], |
CvArr * | rectMapX, | ||
CvArr * | rectMapY | ||
) |
Definition at line 2787 of file calibfilter.cpp.
int cvConvertEssential2Fundamental | ( | CvMatr32f | essMatr, |
CvMatr32f | fundMatr, | ||
CvMatr32f | cameraMatr1, | ||
CvMatr32f | cameraMatr2 | ||
) |
Definition at line 3670 of file calibfilter.cpp.
int cvFindChessBoardCornerGuesses | ( | const void * | arr, |
void * | , | ||
CvMemStorage * | , | ||
CvSize | pattern_size, | ||
CvPoint2D32f * | corners, | ||
int * | corner_count | ||
) |
CV_INLINE CvSize cvGetMatSize | ( | const CvMat * | mat | ) |
CV_IMPL void cvInitPerspectiveTransform | ( | CvSize | size, |
const CvPoint2D32f | quad[4], | ||
double | matrix[3][3], | ||
CvArr * | rectMap | ||
) |
Definition at line 2830 of file calibfilter.cpp.
void cvProjectPointsSimple | ( | int | point_count, |
CvPoint3D64f * | _object_points, | ||
double * | _rotation_matrix, | ||
double * | _translation_vector, | ||
double * | _camera_matrix, | ||
double * | _distortion, | ||
CvPoint2D64f * | _image_points | ||
) |
Definition at line 3045 of file calibfilter.cpp.
double cvPseudoInverse | ( | const CvArr * | src, |
CvArr * | dst | ||
) |
CV_INLINE void icvAddVector_64d | ( | const double * | src1, |
const double * | src2, | ||
double * | dst, | ||
int | len | ||
) |
int icvComCoeffForLine | ( | CvPoint2D64d | point1, |
CvPoint2D64d | point2, | ||
CvPoint2D64d | point3, | ||
CvPoint2D64d | point4, | ||
CvMatr64d | camMatr1, | ||
CvMatr64d | rotMatr1, | ||
CvMatr64d | transVect1, | ||
CvMatr64d | camMatr2, | ||
CvMatr64d | rotMatr2, | ||
CvMatr64d | transVect2, | ||
CvStereoLineCoeff * | coeffs, | ||
int * | needSwapCamera | ||
) |
int icvCompute3DPoint | ( | double | alpha, |
double | betta, | ||
CvStereoLineCoeff * | coeffs, | ||
CvPoint3D64d * | point | ||
) |
Definition at line 579 of file calibfilter.cpp.
int icvComputeCoeffForStereo | ( | CvStereoCamera * | stereoCamera | ) |
int icvComputeRestStereoParams | ( | CvStereoCamera * | stereoparams | ) |
int icvComputeStereoLineCoeffs | ( | CvPoint3D64d | pointA, |
CvPoint3D64d | pointB, | ||
CvPoint3D64d | pointCam1, | ||
double | gamma, | ||
CvStereoLineCoeff * | coeffs | ||
) |
void icvComputeStereoParamsForCameras | ( | CvStereoCamera * | stereoCamera | ) |
Definition at line 2349 of file calibfilter.cpp.
int icvConvertPointSystem | ( | CvPoint3D64d | M2, |
CvPoint3D64d * | M1, | ||
CvMatr64d | rotMatr, | ||
CvMatr64d | transVect | ||
) |
Definition at line 656 of file calibfilter.cpp.
int icvConvertWarpCoordinates | ( | double | coeffs[3][3], |
CvPoint2D32f * | cameraPoint, | ||
CvPoint2D32f * | warpPoint, | ||
int | direction | ||
) |
int icvCreateConvertMatrVect | ( | CvMatr64d | rotMatr1, |
CvMatr64d | transVect1, | ||
CvMatr64d | rotMatr2, | ||
CvMatr64d | transVect2, | ||
CvMatr64d | convRotMatr, | ||
CvMatr64d | convTransVect | ||
) |
Definition at line 621 of file calibfilter.cpp.
CV_IMPL IplImage* icvCreateIsometricImage | ( | IplImage * | src, |
IplImage * | dst, | ||
int | desired_depth, | ||
int | desired_num_channels | ||
) |
Definition at line 2696 of file calibfilter.cpp.
float icvDefinePointPosition | ( | CvPoint2D32f | point1, |
CvPoint2D32f | point2, | ||
CvPoint2D32f | point | ||
) |
Definition at line 3335 of file calibfilter.cpp.
int icvGetAngleLine | ( | CvPoint2D64d | startPoint, |
CvSize | imageSize, | ||
CvPoint2D64d * | point1, | ||
CvPoint2D64d * | point2 | ||
) |
Definition at line 1172 of file calibfilter.cpp.
void icvGetCoefForPiece | ( | CvPoint2D64d | p_start, |
CvPoint2D64d | p_end, | ||
double * | a, | ||
double * | b, | ||
double * | c, | ||
int * | result | ||
) |
Definition at line 1281 of file calibfilter.cpp.
void icvGetCrossDirectDirect | ( | CvVect64d | direct1, |
CvVect64d | direct2, | ||
CvPoint2D64d * | cross, | ||
int * | result | ||
) |
Definition at line 1549 of file calibfilter.cpp.
int icvGetCrossLines | ( | CvPoint3D64d | point11, |
CvPoint3D64d | point12, | ||
CvPoint3D64d | point21, | ||
CvPoint3D64d | point22, | ||
CvPoint3D64d * | midPoint | ||
) |
void icvGetCrossPieceDirect | ( | CvPoint2D64d | p_start, |
CvPoint2D64d | p_end, | ||
double | a, | ||
double | b, | ||
double | c, | ||
CvPoint2D64d * | cross, | ||
int * | result | ||
) |
Definition at line 1588 of file calibfilter.cpp.
void icvGetCrossPiecePiece | ( | CvPoint2D64d | p1_start, |
CvPoint2D64d | p1_end, | ||
CvPoint2D64d | p2_start, | ||
CvPoint2D64d | p2_end, | ||
CvPoint2D64d * | cross, | ||
int * | result | ||
) |
Definition at line 1633 of file calibfilter.cpp.
int icvGetCrossPieceVector | ( | CvPoint2D32f | p1_start, |
CvPoint2D32f | p1_end, | ||
CvPoint2D32f | v2_start, | ||
CvPoint2D32f | v2_end, | ||
CvPoint2D32f * | cross | ||
) |
void icvGetCrossRectDirect | ( | CvSize | imageSize, |
double | a, | ||
double | b, | ||
double | c, | ||
CvPoint2D64d * | start, | ||
CvPoint2D64d * | end, | ||
int * | result | ||
) |
Definition at line 1713 of file calibfilter.cpp.
void icvGetCutPiece | ( | CvVect64d | areaLineCoef1, |
CvVect64d | areaLineCoef2, | ||
CvPoint2D64d | epipole, | ||
CvSize | imageSize, | ||
CvPoint2D64d * | point11, | ||
CvPoint2D64d * | point12, | ||
CvPoint2D64d * | point21, | ||
CvPoint2D64d * | point22, | ||
int * | result | ||
) |
int icvGetDirectionForPoint | ( | CvPoint2D64d | point, |
CvMatr64d | camMatr, | ||
CvPoint3D64d * | direct | ||
) |
Definition at line 1000 of file calibfilter.cpp.
void icvGetDistanceFromPointToDirect | ( | CvPoint2D64d | point, |
CvVect64d | lineCoef, | ||
double * | dist | ||
) |
void icvGetMiddleAnglePoint | ( | CvPoint2D64d | basePoint, |
CvPoint2D64d | point1, | ||
CvPoint2D64d | point2, | ||
CvPoint2D64d * | midPoint | ||
) |
Definition at line 2592 of file calibfilter.cpp.
void icvGetNormalDirect | ( | CvVect64d | direct, |
CvPoint2D64d | point, | ||
CvVect64d | normDirect | ||
) |
void icvGetPieceLength | ( | CvPoint2D64d | point1, |
CvPoint2D64d | point2, | ||
double * | dist | ||
) |
Definition at line 1690 of file calibfilter.cpp.
void icvGetPieceLength3D | ( | CvPoint3D64d | point1, |
CvPoint3D64d | point2, | ||
double * | dist | ||
) |
Definition at line 1700 of file calibfilter.cpp.
void icvGetQuadsTransform | ( | CvSize | imageSize, |
CvMatr64d | camMatr1, | ||
CvMatr64d | rotMatr1, | ||
CvVect64d | transVect1, | ||
CvMatr64d | camMatr2, | ||
CvMatr64d | rotMatr2, | ||
CvVect64d | transVect2, | ||
CvSize * | warpSize, | ||
double | quad1[4][2], | ||
double | quad2[4][2], | ||
CvMatr64d | fundMatr, | ||
CvPoint3D64d * | epipole1, | ||
CvPoint3D64d * | epipole2 | ||
) |
void icvGetQuadsTransformStruct | ( | CvStereoCamera * | stereoCamera | ) |
int icvGetSymPoint3D | ( | CvPoint3D64d | pointCorner, |
CvPoint3D64d | point1, | ||
CvPoint3D64d | point2, | ||
CvPoint3D64d * | pointSym2 | ||
) |
Definition at line 555 of file calibfilter.cpp.
CV_IMPL double icvGetVect | ( | CvPoint2D64d | basePoint, |
CvPoint2D64d | point1, | ||
CvPoint2D64d | point2 | ||
) |
CV_INLINE void icvInvertMatrix_64d | ( | double * | A, |
int | n, | ||
double * | invA | ||
) |
Definition at line 377 of file calibfilter.cpp.
CV_INLINE void icvMulMatrix_32f | ( | const float * | src1, |
int | w1, | ||
int | h1, | ||
const float * | src2, | ||
int | w2, | ||
int | h2, | ||
float * | dst | ||
) |
Definition at line 313 of file calibfilter.cpp.
CV_INLINE void icvMulMatrix_64d | ( | const double * | src1, |
int | w1, | ||
int | h1, | ||
const double * | src2, | ||
int | w2, | ||
int | h2, | ||
double * | dst | ||
) |
Definition at line 351 of file calibfilter.cpp.
void icvProjectPointToDirect | ( | CvPoint2D64d | point, |
CvVect64d | lineCoeff, | ||
CvPoint2D64d * | projectPoint | ||
) |
Definition at line 2668 of file calibfilter.cpp.
void icvProjectPointToImage | ( | CvPoint3D64d | point, |
CvMatr64d | camMatr, | ||
CvMatr64d | rotMatr, | ||
CvVect64d | transVect, | ||
CvPoint2D64d * | projPoint | ||
) |
int icvStereoCalibration | ( | int | numImages, |
int * | nums, | ||
CvSize | imageSize, | ||
CvPoint2D32f * | imagePoints1, | ||
CvPoint2D32f * | imagePoints2, | ||
CvPoint3D32f * | objectPoints, | ||
CvStereoCamera * | stereoparams | ||
) |
Definition at line 3474 of file calibfilter.cpp.
CV_INLINE void icvSubVector_64d | ( | const double * | src1, |
const double * | src2, | ||
double * | dst, | ||
int | len | ||
) |
void icvTestPoint | ( | CvPoint2D64d | testPoint, |
CvVect64d | line1, | ||
CvVect64d | line2, | ||
CvPoint2D64d | basePoint, | ||
int * | result | ||
) |
Definition at line 2631 of file calibfilter.cpp.
CV_INLINE void icvTransposeMatrix_64d | ( | const double * | src, |
int | w, | ||
int | h, | ||
double * | dst | ||
) |