1 /* 2 * Copyright (C) 2011 The Android Open Source Project 3 * 4 * Licensed under the Apache License, Version 2.0 (the "License"); 5 * you may not use this file except in compliance with the License. 6 * You may obtain a copy of the License at 7 * 8 * http://www.apache.org/licenses/LICENSE-2.0 9 * 10 * Unless required by applicable law or agreed to in writing, software 11 * distributed under the License is distributed on an "AS IS" BASIS, 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 * See the License for the specific language governing permissions and 14 * limitations under the License. 15 */ 16 17 /* $Id: db_utilities_constants.h,v 1.2 2011/06/17 14:03:31 mbansal Exp $ */ 18 19 #ifndef DB_UTILITIES_CONSTANTS 20 #define DB_UTILITIES_CONSTANTS 21 22 /***************************************************************** 23 * Lean and mean begins here * 24 *****************************************************************/ 25 26 /****************Constants********************/ 27 #define DB_E 2.7182818284590452354 28 #define DB_LOG2E 1.4426950408889634074 29 #define DB_LOG10E 0.43429448190325182765 30 #define DB_LN2 0.69314718055994530942 31 #define DB_LN10 2.30258509299404568402 32 #define DB_PI 3.1415926535897932384626433832795 33 #define DB_PI_2 1.57079632679489661923 34 #define DB_PI_4 0.78539816339744830962 35 #define DB_1_PI 0.31830988618379067154 36 #define DB_2_PI 0.63661977236758134308 37 #define DB_SQRTPI 1.7724538509055160272981674833411 38 #define DB_SQRT_2PI 2.506628274631000502415765284811 39 #define DB_2_SQRTPI 1.12837916709551257390 40 #define DB_SQRT2 1.41421356237309504880 41 #define DB_SQRT3 1.7320508075688772935274463415059 42 #define DB_SQRT1_2 0.70710678118654752440 43 #define DB_EPS 2.220446049250313e-016 /* for 32 bit double */ 44 45 /****************Default Parameters********************/ 46 /*Preemptive ransac parameters*/ 47 #define DB_DEFAULT_NR_SAMPLES 500 48 #define DB_DEFAULT_CHUNK_SIZE 100 49 #define DB_DEFAULT_GROUP_SIZE 10 50 51 /*Optimisation parameters*/ 52 #define DB_DEFAULT_MAX_POINTS 1000 53 #define DB_DEFAULT_MAX_ITERATIONS 25 54 #define DB_DEFAULT_IMP_REQ 0.001 55 56 /*Feature standard deviation parameters*/ 57 #define DB_POINT_STANDARDDEV (1.0/(826.0)) /*1 pixel for CIF (fraction of (image width+image height)/2)*/ 58 #define DB_OUTLIER_THRESHOLD 3.0 /*In number of DB_POINT_STANDARDDEV's*/ 59 #define DB_WORST_CASE 50.0 /*In number of DB_POINT_STANDARDDEV's*/ 60 61 /*Front-end parameters*/ 62 #define DB_DEFAULT_TARGET_NR_CORNERS 5000 63 #define DB_DEFAULT_NR_FEATURE_BLOCKS 10 64 #define DB_DEFAULT_ABS_CORNER_THRESHOLD 50000000.0 65 #define DB_DEFAULT_REL_CORNER_THRESHOLD 0.00005 66 #define DB_DEFAULT_MAX_DISPARITY 0.1 67 #define DB_DEFAULT_NO_DISPARITY (-1.0) 68 #define DB_DEFAULT_MAX_TRACK_LENGTH 300 69 70 #define DB_DEFAULT_MAX_NR_CAMERAS 1000 71 72 #define DB_DEFAULT_TRIPLE_STEP 2 73 #define DB_DEFAULT_DOUBLE_STEP 2 74 #define DB_DEFAULT_SINGLE_STEP 1 75 #define DB_DEFAULT_NR_SINGLES 10 76 #define DB_DEFAULT_NR_DOUBLES 1 77 #define DB_DEFAULT_NR_TRIPLES 1 78 79 #define DB_DEFAULT_TRIFOCAL_FOUR_STEPS 40 80 81 #define DB_DEFAULT_EPIPOLAR_ERROR 1 /*in pixels*/ 82 83 ////////////////////////// DOXYGEN ///////////////////// 84 85 /*! 86 * \def DB_DEFAULT_GROUP_SIZE 87 * \ingroup LMRobust 88 * \brief Default group size for db_PreemptiveRansac class. 89 * Group size is the number of observation costs multiplied together 90 * before a log of the product is added to the total cost. 91 */ 92 93 /*! 94 * \def DB_DEFAULT_TARGET_NR_CORNERS 95 * \ingroup FeatureDetection 96 * \brief Default target number of corners 97 */ 98 /*! 99 * \def DB_DEFAULT_NR_FEATURE_BLOCKS 100 * \ingroup FeatureDetection 101 * \brief Default number of regions (horizontal or vertical) that are considered separately 102 * for feature detection. The greater the number, the more uniform the distribution of 103 * detected features. 104 */ 105 /*! 106 * \def DB_DEFAULT_ABS_CORNER_THRESHOLD 107 * \ingroup FeatureDetection 108 * \brief Absolute feature strength threshold. 109 */ 110 /*! 111 * \def DB_DEFAULT_REL_CORNER_THRESHOLD 112 * \ingroup FeatureDetection 113 * \brief Relative feature strength threshold. 114 */ 115 /*! 116 * \def DB_DEFAULT_MAX_DISPARITY 117 * \ingroup FeatureMatching 118 * \brief Maximum disparity (as fraction of image size) allowed in feature matching 119 */ 120 /*! 121 * \def DB_DEFAULT_NO_DISPARITY 122 * \ingroup FeatureMatching 123 * \brief Indicates that vertical disparity is the same as horizontal disparity. 124 */ 125 /////////////////////////////////////////////////////////////////////////////////// 126 /*! 127 * \def DB_E 128 * \ingroup LMBasicUtilities 129 * \brief e 130 */ 131 /*! 132 * \def DB_LOG2E 133 * \ingroup LMBasicUtilities 134 * \brief log2(e) 135 */ 136 /*! 137 * \def DB_LOG10E 138 * \ingroup LMBasicUtilities 139 * \brief log10(e) 140 */ 141 /*! 142 * \def DB_LOG10E 143 * \ingroup LMBasicUtilities 144 * \brief log10(e) 145 */ 146 /*! 147 * \def DB_LN2 148 * \ingroup LMBasicUtilities 149 * \brief ln(2) 150 */ 151 /*! 152 * \def DB_LN10 153 * \ingroup LMBasicUtilities 154 * \brief ln(10) 155 */ 156 /*! 157 * \def DB_PI 158 * \ingroup LMBasicUtilities 159 * \brief Pi 160 */ 161 /*! 162 * \def DB_PI_2 163 * \ingroup LMBasicUtilities 164 * \brief Pi/2 165 */ 166 /*! 167 * \def DB_PI_4 168 * \ingroup LMBasicUtilities 169 * \brief Pi/4 170 */ 171 /*! 172 * \def DB_1_PI 173 * \ingroup LMBasicUtilities 174 * \brief 1/Pi 175 */ 176 /*! 177 * \def DB_2_PI 178 * \ingroup LMBasicUtilities 179 * \brief 2/Pi 180 */ 181 /*! 182 * \def DB_SQRTPI 183 * \ingroup LMBasicUtilities 184 * \brief sqrt(Pi) 185 */ 186 /*! 187 * \def DB_SQRT_2PI 188 * \ingroup LMBasicUtilities 189 * \brief sqrt(2*Pi) 190 */ 191 /*! 192 * \def DB_SQRT2 193 * \ingroup LMBasicUtilities 194 * \brief sqrt(2) 195 */ 196 /*! 197 * \def DB_SQRT3 198 * \ingroup LMBasicUtilities 199 * \brief sqrt(3) 200 */ 201 /*! 202 * \def DB_SQRT1_2 203 * \ingroup LMBasicUtilities 204 * \brief sqrt(1/2) 205 */ 206 #endif /* DB_UTILITIES_CONSTANTS */ 207 208 209