Tsai Camera Calibration(相机矫正) Software,
http://www-2.cs.cmu.edu/~rgw/TsaiCode.html (Tsai 1987).
Easy Camera Calibration Toolkit,(简易相机校准工具包)
http://research.microsoft.com/en-us/um/people/zhang/ Calib/ (Zhang 2000).
Camera Calibration Toolbox for MATLAB,
http://www.vision.caltech.edu/bouguetj/calib doc/ ; a C version is included in OpenCV.
MATLAB functions for multiple view geometry,
http://www.robots.ox.ac.uk/~vgg/hzbook/code/ (Hartley and Zisserman 2004).
第七章:运动重建
SBA: A generic sparse bundle(稀疏束) adjustment C/C++ package based on the Levenberg– Marquardt algorithm, http://www.ics.forth.gr/~lourakis/sba/ (Lourakis and Argyros 2009).
Simple sparse bundle adjustment (SSBA), http://cs.unc.edu/~cmzach/opensource.html .
Bundler, structure from motion for unordered image collections(无序图像集), http://phototour.cs.washington.edu/bundler/ (Snavely, Seitz, and Szeliski 2006).
第八章:稠密运动估计
光流, http://www.cs.brown.edu/~black/code.html (Black and Anan- dan 1996).
Optical ?ow(光流) using total variation(全变量差) and conjugate gradient descent(共轭梯度下降), http://people.csail.mit.edu/celiu/OpticalFlow/ (Liu 2009).
TV-L1 optical ?ow on the GPU, http://cs.unc.edu/~cmzach/opensource.html (Zach,Pock, and Bischof 2007a).
elastix: a toolbox for rigid(刚性) and nonrigid(非刚性) registration of images(配准图像), http://elastix.isi.uu.nl/ (Klein, Staring, and Pluim 2007).
Deformable image registration(可变形的配准图像) using discrete optimization(离散最优化), http://www.mrf-registration.net/deformable/index.html (Glocker, Komodakis, Tziritas et al. 2008).
第九章:图像缝合
Microsoft Research Image Compositing Editor for stitching images,(图像拼接,图像合成) http://research.microsoft.com/en-us/um/redmond/groups/ivm/ice/ .
第十章:计算机摄影学
HDRShop software for combining bracketed exposures(包围式曝光) into high-dynamic range radiance images, http://projects.ict.usc.edu/graphics/HDRShop/.
Super-resolution(超分辨率) code,
http://www.robots.ox.ac.uk/~vgg/software/SR/ (Pickup 2007;Pickup, Capel, Roberts et al. 2007, 2009).
第十一章:立体对应
StereoMatcher, standalone C++ stereo matching code,
http://vision.middlebury.edu/stereo/code/ (Scharstein and Szeliski 2002).
Patch-based multi-view stereo software (PMVS Version 2),
http://grail.cs.washington.edu/software/pmvs/ (Furukawa and Ponce 2011).
第十二章:3D重建
Scanalyze: a system for aligning and merging range data,
http://graphics.stanford.edu/software/scanalyze/ (Curless and Levoy 1996).
MeshLab: software for processing, editing, and visualizing unstructured 3D triangular meshes, http://meshlab.sourceforge.net/.
VRML viewers (various) are also a good way to visualize texture-mapped 3D models.
节 12.6.4: Whole body modeling and tracking(全身建模和追踪)
Bayesian 3D person tracking(贝叶斯3D人体追踪), http://www.cs.brown.edu/~black/code.html (Sidenbladh,Black, and Fleet 2000; Sidenbladh and Black 2003).
HumanEva: baseline code for the tracking of articulated human motion, http://vision.cs.brown.edu/humaneva/ (Sigal, Balan, and Black 2010).
节 14.1.1: Face detection(人脸检测)
Sample face detection code and evaluation tools,
http://vision.ai.uiuc.edu/mhyang/face-detection-survey.html.
节 14.1.2: Pedestrian detection(行人追踪)
A simple object detector with boosting,
http://people.csail.mit.edu/torralba/shortCourseRLOC/boosting/boosting.html (Hastie, Tibshirani, and Friedman 2001; Torralba, Murphy, and Freeman 2007).
Discriminatively(有区别) trained deformable(可变形) part models,
http://people.cs.uchicago.edu/~pff/latent/ (Felzenszwalb, Girshick, McAllester et al. 2010).
Upper-body detector(上身检测),
http://www.robots.ox.ac.uk/~vgg/software/UpperBody/ (Ferrari,Marin-Jimenez, and Zisserman 2008).
2D articulated human pose estimation software,
http://www.vision.ee.ethz.ch/~calvin/articulated_human_pose_estimation_code/ (Eichner and Ferrari 2009).
节 14.2.2: Active appearance and 3D shape models
AAMtools: An active appearance modeling toolbox,
http://cvsp.cs.ntua.gr/software/AAMtools/ (Papandreou and Maragos 2008).
节 14.3: Instance recognition
FASTANN and FASTCLUSTER for approximate k-means (AKM),
http://www.robots.ox.ac.uk/~vgg/software/ (Philbin, Chum, Isard et al. 2007).
Feature matching using fast approximate nearest neighbors,
http://people.cs.ubc.ca/~mariusm/index.php/FLANN/FLANN (Muja and Lowe 2009).
节 14.4.1: Bag of words(词袋)
Two bag of words classi?ers, http://people.csail.mit.edu/fergus/iccv2005/bagwords.html (Fei-Fei and Perona 2005; Sivic, Russell, Efros et al. 2005).
Bag of features and hierarchical(分层) k-means, http://www.vlfeat.org/ (Nist′ er and Stew′ enius2006; Nowak, Jurie, and Triggs 2006).
节 14.4.2: Part-based models
A simple parts and structure object detector,
http://people.csail.mit.edu/fergus/iccv2005/partsstructure.html
(Fischler and Elschlager 1973; Felzenszwalb and Huttenlocher 2005).
节 14.5.1: Machine learning software
Support vector machines (SVM) software (
http://www.support-vector-machines.org/SVM soft.html ) 包含很多支持向量机的库,
SVMlight http://svmlight.joachims.org/ ;
LIBSVM, http://www.csie.ntu.edu.tw/~cjlin/libsvm/ (Fan, Chen,and Lin 2005);
LIBLINEAR, http://www.csie.ntu.edu.tw/~cjlin/liblinear/ (Fan,Chang, Hsieh et al. 2008).
Kernel Machines: links to SVM, Gaussian processes, boosting, and other machine learning algorithms, http://www.kernel-machines.org/software .
Multiple kernels for image classi?cation,
http://www.robots.ox.ac.uk/~vgg/software/MKL
(Varma and Ray 2007; Vedaldi, Gulshan, Varma et al. 2009).
附录 A.1–A.2: Matrix decompositions(矩阵分解) and linear least squares(线性最小乘)
BLAS (Basic Linear Algebra Subprograms基本线性代数子程序), http://www.netlib.org/blas/ (Blackford,Demmel, Dongarra et al. 2002).
LAPACK (Linear Algebra(线性代数) PACKage),
http://www.netlib.org/lapack/ (Anderson, Bai,Bischof et al. 1999).
GotoBLAS, http://www.tacc.utexas.edu/tacc-projects/.
ATLAS (Automatically Tuned Linear Algebra Software),
http://math-atlas.sourceforge.net/ (Demmel, Dongarra, Eijkhout et al. 2005).
Intel Math Kernel Library (MKL), http://software.intel.com/en-us/intel-mkl/.
AMD CoreMath Library (ACML),
http://developer.amd.com/cpu/Libraries/acml/Pages/default.aspx .
Robust PCA code(鲁棒主成分分析), http://www.salle.url.edu/~ftorre/papers/rpca2.html (De la Torre and Black 2003).
Appendix A.3: Non-linear least squares非线性最小二乘
MINPACK, http://www.netlib.org/minpack/.
levmar: Levenberg–Marquardt nonlinear least squares algorithms, 非线性最小二乘 http://www.ics.forth.gr/~lourakis/levmar/ (Madsen, Nielsen, and Tingleff 2004).
附录 A.4–A.5: Direct(直接) and iterative(迭代) sparse matrix(稀疏矩阵) solvers
SuiteSparse (various reordering algorithms, 各种各样的重排算法CHOLMOD) and SuiteSparse QR, http://www.cise.ufl.edu/research/sparse/SuiteSparse/ (Davis 2006, 2008).
PARDISO (iterative and sparse direct solution), http://www.pardiso-project.org/.
TAUCS (sparse direct, iterative, out of core, preconditioners), http://www.tau.ac.il/~stoledo/taucs/ .
HSL Mathematical Software Library, http://www.hsl.rl.ac.uk/index.html .
Templates for the solution of linear systems(线性系统解决问题的模板),
http://www.netlib.org/linalg/html templates/Templates.html (Barrett, Berry, Chan et al. 1994). Download the PDF for instructions(说明) on how to get the software.
ITSOL,MIQR, and other sparse solvers,
http://www-users.cs.umn.edu/~saad/software/ (Saad 2003).
ILUPACK, http://www-public.tu-bs.de/~bolle/ilupack/ .
附录 B: Bayesian modeling and inference(贝叶斯建模和推断)
Middlebury source code for MRF minimization(隐马尔科夫随机场最小化), http://vision.middlebury.edu/MRF/code/ (Szeliski, Zabih, Scharstein et al. 2008).
C++ code for ef?cient belief propagation for early vision,
http://people.cs.uchicago.edu/~pff/bp/ (Felzenszwalb and Huttenlocher 2006).
FastPD MRF optimization(最优化) code,
http://www.csd.uoc.gr/~komod/FastPD (Komodakisand Tziritas 2007a; Komodakis, Tziritas, and Paragios 2008)
算法 C.1 C algorithm for Gaussian random noise generation, using the Box–Muller transform. C描述的利用Box–Muller 变换产生高斯随机噪声 double urand() {
return ((double) rand()) / ((double) RAND MAX); }
void grand(double& g1, double& g2) {
#ifndef M_PI
#define M_PI 3.14159265358979323846 #endif // M_PI
double n1 = urand(); double n2 = urand();
double x1 = n1 + (n1 == 0); /* guard against log(0) */ double sqlogn1 = sqrt(-2.0 * log (x1)); double angl = (2.0 * M PI) * n2; g1 = sqlogn1 * cos(angl);

