⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 masmconf-68-1d.hpp

📁 这是个人脸识别程序
💻 HPP
📖 第 1 页 / 共 2 页
字号:
// $masm\masmconf-68-1d.hpp 1.5 milbo$ configuration options for masm.exe and defs that are shared by ms.exe//				 Additional configuration options are in masmconf.cpp//				 The intent is that all model tweaking parameters are here or in masmconf.cpp// Warning: this is raw research code -- expect it to be quite messy.// milbo durban dec05#if !defined(masmconf_hpp)#define masmconf_hpp#define CONF_fGen2dProfs 				0// Comments are prefixed by train, search, or both to tell you if the definition affects training, searching, or both.#define CONF_nSynthesizedEyePoints		0	// train: generate extra right eye points with left eye points, for using extra M4 left eye landmarks (0 to not synthesize points)#define CONF_nFencePosts				0// CONF_nGenLandmarksUsedInternally specifies the number of landmarks internally.//	Allows shapes with different nbrs of landmarks (eg XM2VTS and BioId or AR)//	Use a value of 0 to not use a fixed nbr of landmarks internally//	Search (but not training) uses the number of landmarks in the shape file (and ignores this definition)#define CONF_nGenLandmarksUsedInternally 68 // train#define CONF_fDebug1dProfs				0	// both: works in conjunction with CONF_nSynthesizedEyePoints, m4test.shape, and											//       testImages\m000_21_debugPoint69and77.bmp#define CONF_fDebug2dProfs				0 	// both: works in conjunction with m2test.shape and m000_11t.bmp and m128_12t.bmp// values for CONF_nMethodNormSearchResults#define NormSearchResults_No			 0	// use distance as is#define NormSearchResults_FittedEyeToEye 1	// divide fit results by fitted eye-to-eye dist											// 	(as per Cristinacce PhD thesis)#define NormSearchResults_RefEyeToEye    2	// divide fit results by ref (i.e. ground truth) eye-to-eye dist											//  (as per Cristinacce "Feature Detection and Tracking with Constrained ...")#if CONF_nGenLandmarksUsedInternally != 0#define CONF_fGenExplicitPrevNext		0	// train: 1=use Lands.iPrev and Lands.iNext, 0=use classic Cootes method#define CONF_nMethodNormSearchResults	2	// search: only used for printing results, see above defs#else#define CONF_fGenExplicitPrevNext		0	// train: has to be 0 if not using M3FormatInternally (in current implementation)#define CONF_nMethodNormSearchResults	0	// search: only used for printing results#endif#define CONF_GenSubModel				SM_All	// train: what sub model to generate, use SM_All for full model#define CONF_nAsmFileVersion			0		// both: ASM file version (this is part of the magic nbr at start of ASM file)#define CONF_nMaxLevs					10		// both: code supports up to this many levels in image pyramid												//		 (used for array allocation)#define CONF_nLevs						4		// train: generate this many levels in image pyramid												//		  (4 works well for pyramid ratio of 2)#define CONF_PyrRatio					2.0		// train: size of this image pyramid level versus the next pyramid level#define CONF_PyrReduceMethod 			IM_NEAREST_PIXEL	// train: one of IM_NEAREST_PIXEL=0 IM_BILINEAR=1 IM_AVERAGE_ALL=2#define CONF_nProfWidth1d 				(8*2+1)	// train: nbr of profile points: both sides and center												//        (see 07-1DprofWidthPixSearch.txt)//TODO if I change following to 4*2+1 we get range errors -- why?#define CONF_nProfWidth2d 				(6*2+1)	// train: ditto but in 2 dimensions for 2D profiles												//        (see 08-twoModels-nProfWidth-nTrimCovar.txt)#define CONF_nGenTrimCovar				3		// train: trim the covariance matrices (see 07-2d-nReduceCovar.txt and												//        08-twoModels-nProfWidth-nTrimCovar.txt) and more recently												//        08-2mods-nProfWidth2d-TrimCovar-CovarMinVal.txt  Berea aug06#define CONF_GenCovarMinRatio			0		// train: set to 0 to have no effect (see 10-trimMinVal.txt)#define CONF_MaxShapeAlignDist 			1e-6	// train: used in AlignShapes for convergence test#if CONF_fGen2dProfs#define CONF_fUseOnlyUnobscuredFeats	1		// train: only use landmarks that are visible e.g. use eyes only if no glasses#else#define CONF_fUseOnlyUnobscuredFeats	0		// train: unlike 2D, 0 works best for test set all												//        (but not best for test set qualified)#endif#if CONF_fDebug1dProfs || CONF_fDebug2dProfs#define CONF_nRandomSeed				0		// train: only applies if -ni N non zero: 0 means use 1st N images, else use												//        rand sample with rand seed=CONF_nRandomSeed#else#define CONF_nRandomSeed				4		// train:#endif#define CONF_fEqualizeImages		 	0		// both: 1 to equalize images before taking profile#define CONF_EqualizationMaskMargin 	-1		// both: only used if CONF_fEqualizeImages is true: -1 to get histogram from												//       entire image, else specify ratio of face size to use for histogram#define CONF_fAlignImageToAlignedShape 	0		// train: align image with aligned shape before taking profile,												//        overrides CONF_nGenPrescaleFaceWidth#if CONF_fDebug1dProfs || CONF_fDebug2dProfs#define CONF_nGenPrescaleFaceWidth 		0#else#define CONF_nGenPrescaleFaceWidth 		180		// train: (only used if CONF_fAlignImageToAlignedShape=0)#endif#define CONF_fGenPrescaleBilinear 		1		// train: prescale using nearest-pixel or bilinear (only												//        used if CONF_nGenPrescaleFaceWidth!=0)// These are various techniques for dealing with singular covar matrices// If CONF_fDropProfToPreventSingCovar is true we ignore the following two defs,// namely CONF_fDropEigToPreventSingCovar and CONF_RidgeLambdaForSingCovars#define CONF_fDropProfToPreventSingCovar 0		// train: ignore one profile if if prof normalization causes colinearity#define CONF_fDropEigToPreventSingCovar	 1		// train: if covar mat is singular then invert it using spectral decomposition#define CONF_RidgeLambdaForSingCovars	 0.0 	// train: ridge coef for singular covar mats (0.0 for none),												//        only used if CONF_fDropProfToPreventSingCovar is false#define CONF_MaxEigRatio				0		// train: if non-zero, reconstruct covar mat with small eigs removed (0 to not												//        change covar mat)// defines for the shape model#define CONF_fClipB						1		// search: method for clipping b to make sure generated shape is plausible#define CONF_nEigs						20		// search: number of eig values to use in model during shape search												//         (see 07-nEigs-BMax-detailed.txt says 20,1.8,												//         nEigsBMax_GradLev0.txt says 12,1.0)#define CONF_BMax 						1.8		// search: limit b in shape model to this (this value best for CONF_fClipB)#define CONF_fFancyShapeModel			1		// search#define CONF_nEigsLev0	 				0		// search: 1D nEigs to use at level 0, use 0 for no special handling at level 0#define CONF_BMaxLev0 					0		// search: 1D BMax to use at level 0, only used if CONF_nEigsLev0 != 0#define CONF_nEigsLev0_2d 				26		// search: 2D as above but for 2D, see 2d-nEigsLev0bMaxLev0.txt#define CONF_BMaxLev0_2d 				2.0		// search: as above// defines for CONF_fFancyShapeModel#define CONF_nShapeModelIters			1		// search: 1 is good, compare												//         fancy-nEigsBMaxSame-varynEigsFinalBMaxFinal-1iter.txt to												//         fancy-nEigsBMaxSame-varynEigsFinalBMaxFinal-2iters.txt#define CONF_nEigsFinal 				0	  	// search: nEigs for final iteration of search at each level												//         see fancy-nEigsBMaxSame-varynEigsFinalBMaxFinal-1iter.txt#define CONF_BMaxFinal 					0		// search: note: CONF_nEigsFinal,CONF_BMaxFinal takes precedence over												//         CONF_nEigsLev0,CONF_BMaxLev0 for final iter#define CONF_fRetainOrgB				0		// search:#define CONF_fAffineShapeModelAlign		0		// search: gives worse results#define CONF_fIterativeShapeModelAlign	0		// search:												// following all for the shape model

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -