机器视觉开源代码集合
一、特征提取FeatureExtraction:
§ SIFT [1] [Demo program][SIFT Library] [VLFeat]
§ PCA-SIFT[2] [Project]
§ Affine-SIFT[3] [Project]
§ SURF [4] [OpenSURF] [Matlab Wrapper]
§ AffineCovariant Features [5] [Oxford project]
§ MSER [6] [Oxford project] [VLFeat]
§ GeometricBlur [7] [Code]
§ LocalSelf-Similarity Descriptor [8] [Oxford implementation]
§ Global andEfficient Self-Similarity [9] [Code]
§ Histogramof Oriented Graidents [10] [INRIA Object Localization Toolkit] [OLT toolkit for Windows]
§ GIST [11][Project]
§ ShapeContext [12] [Project]
§ ColorDescriptor [13] [Project]
§ Pyramidsof Histograms of Oriented Gradients [Code]
§ Space-TimeInterest Points (STIP) [14][Project] [Code]
§ BoundaryPreserving Dense Local Regions [15][Project]
§ WeightedHistogram[Code]
§ Histogram-basedInterest Points Detectors[Paper][Code]
§ An OpenCV- C++ implementation of Local Self Similarity Descriptors [Project]
§ FastSparse Representation with Prototypes[Project]
§ CornerDetection [Project]
§ AGASTCorner Detector: faster than FAST and even FAST-ER[Project]
§ Real-timeFacial Feature Detection using Conditional Regression Forests[Project]
§ Global andEfficient Self-Similarity for Object Classification and Detection[code]
§ WαSH:Weighted α-Shapes for Local Feature Detection[Project]
§ HOG[Project]
§ OnlineSelection of Discriminative Tracking Features[Project]
二、图像分割ImageSegmentation:
§ NormalizedCut [1] [Matlab code]
§ Gerg Mori’Superpixel code [2] [Matlab code]
§ EfficientGraph-based Image Segmentation [3] [C++ code] [Matlab wrapper]
§ Mean-ShiftImage Segmentation [4] [EDISON C++ code] [Matlab wrapper]
§ OWT-UCMHierarchical Segmentation [5] [Resources]
§ Turbepixels[6] [Matlab code 32bit] [Matlab code 64bit] [Updated code]
§ Quick-Shift[7] [VLFeat]
§ SLICSuperpixels [8] [Project]
§ Segmentationby Minimum Code Length [9] [Project]
§ BiasedNormalized Cut [10] [Project]
§ SegmentationTree [11-12] [Project]
§ EntropyRate Superpixel Segmentation [13] [Code]
§ FastApproximate Energy Minimization via Graph Cuts[Paper][Code]
§ EfficientPlanar Graph Cuts with Applications in Computer Vision[Paper][Code]
§ IsoperimetricGraph Partitioning for Image Segmentation[Paper][Code]
§ RandomWalks for Image Segmentation[Paper][Code]
§ Blossom V:A new implementation of a minimum cost perfect matching algorithm[Code]
§ AnExperimental Comparison of Min-Cut/Max-Flow Algorithms for Energy Minimizationin Computer Vision[Paper][Code]
§ GeodesicStar Convexity for Interactive Image Segmentation[Project]
§ ContourDetection and Image Segmentation Resources[Project][Code]
§ BiasedNormalized Cuts[Project]
§ Max-flow/min-cut[Project]
§ Chan-VeseSegmentation using Level Set[Project]
§ A Toolboxof Level Set Methods[Project]
§ Re-initializationFree Level Set Evolution via Reaction Diffusion[Project]
§ ImprovedC-V active contour model[Paper][Code]
§ AVariational Multiphase Level Set Approach to Simultaneous Segmentation and BiasCorrection[Paper][Code]
§ Level SetMethod Research by Chunming Li[Project]
§ ClassCutfor Unsupervised Class Segmentation[code]
§ SEEDS:Superpixels Extracted via Energy-Driven Sampling [Project][other]
三、目标检测ObjectDetection:
§ A simpleobject detector with boosting [Project]
§ INRIAObject Detection and Localization Toolkit [1] [Project]
§ DiscriminativelyTrained Deformable Part Models [2] [Project]
§ CascadeObject Detection with Deformable Part Models [3] [Project]
§ Poselet[4] [Project]
§ ImplicitShape Model [5] [Project]
§ Viola andJones’s Face Detection [6] [Project]
§ BayesianModelling of Dyanmic Scenes for Object Detection[Paper][Code]
§ Handdetection using multiple proposals[Project]
§ ColorConstancy, Intrinsic Images, and Shape Estimation[Paper][Code]
§ Discriminativelytrained deformable part models[Project]
§ GradientResponse Maps for Real-Time Detection of Texture-Less Objects: LineMOD [Project]
§ ImageProcessing On Line[Project]
§ RobustOptical Flow Estimation[Project]
§ Where'sWaldo: Matching People in Images of Crowds[Project]
§ ScalableMulti-class Object Detection[Project]
§ Class-SpecificHough Forests for Object Detection[Project]
§ DeformedLattice Detection In Real-World Images[Project]
§ Discriminativelytrained deformable part models[Project]
四、显著性检测SaliencyDetection:
§ Itti,Koch, and Niebur’ saliency detection [1] [Matlab code]
§ Frequency-tunedsalient region detection [2] [Project]
§ Saliencydetection using maximum symmetric surround [3] [Project]
§ Attentionvia Information Maximization [4] [Matlab code]
§ Context-awaresaliency detection [5] [Matlab code]
§ Graph-basedvisual saliency [6] [Matlab code]
§ Saliencydetection: A spectral residual approach. [7] [Matlab code]
§ Segmentingsalient objects from images and videos. [8] [Matlabcode]
§ SaliencyUsing Natural statistics. [9] [Matlab code]
§ DiscriminantSaliency for Visual Recognition from Cluttered Scenes. [10] [Code]
§ Learningto Predict Where Humans Look [11] [Project]
§ GlobalContrast based Salient Region Detection [12] [Project]
§ BayesianSaliency via Low and Mid Level Cues[Project]
§ Top-DownVisual Saliency via Joint CRF and Dictionary Learning[Paper][Code]
§ SaliencyDetection: A Spectral Residual Approach[Code]
五、图像分类、聚类ImageClassification, Clustering
§ PyramidMatch [1] [Project]
§ SpatialPyramid Matching [2] [Code]
§ Locality-constrainedLinear Coding [3] [Project] [Matlab code]
§ SparseCoding [4] [Project] [Matlab code]
§ TextureClassification [5] [Project]
§ MultipleKernels for Image Classification [6] [Project]
§ FeatureCombination [7] [Project]
§ SuperParsing[Code]
§ LargeScale Correlation Clustering Optimization[Matlab code]
§ Detectingand Sketching the Common[Project]
§ Self-TuningSpectral Clustering[Project][Code]
§ UserAssisted Separation of Reflections from a Single Image Using a Sparsity Prior[Paper][Code]
§ Filtersfor Texture Classification[Project]
§ MultipleKernel Learning for Image Classification[Project]
§ SLICSuperpixels[Project]
六、抠图ImageMatting
§ A ClosedForm Solution to Natural Image Matting [Code]
§ SpectralMatting [Project]
§ Learning-basedMatting [Code]
七、目标跟踪ObjectTracking:
§ A Forestof Sensors - Tracking Adaptive Background Mixture Models [Project]
§ ObjectTracking via Partial Least Squares Analysis[Paper][Code]
§ RobustObject Tracking with Online Multiple Instance Learning[Paper][Code]
§ OnlineVisual Tracking with Histograms and Articulating Blocks[Project]
§ IncrementalLearning for Robust Visual Tracking[Project]
§ Real-timeCompressive Tracking[Project]
§ RobustObject Tracking via Sparsity-based Collaborative Model[Project]
§ VisualTracking via Adaptive Structural Local Sparse Appearance Model[Project]
§ OnlineDiscriminative Object Tracking with Local Sparse Representation[Paper][Code]
§ SuperpixelTracking[Project]
§ LearningHierarchical Image Representation with Sparsity, Saliency and Locality[Paper][Code]
§ OnlineMultiple Support Instance Tracking [Paper][Code]
§ VisualTracking with Online Multiple Instance Learning[Project]
§ Objectdetection and recognition[Project]
§ CompressiveSensing Resources[Project]
§ RobustReal-Time Visual Tracking using Pixel-Wise Posteriors[Project]
§ Tracking-Learning-Detection[Project][OpenTLD/C++ Code]
§ the HandVu:vision-based hand gesture interface[Project]
§ LearningProbabilistic Non-Linear Latent Variable Models for Tracking Complex Activities[Project]
八、Kinect:
§ Kinecttoolbox[Project]
§ OpenNI[Project]
§ zouxy09CSDN Blog[Resource]
§ FingerTracker手指跟踪[code]
九、3D相关:
§ 3DReconstruction of a Moving Object[Paper] [Code]
§ Shape FromShading Using Linear Approximation[Code]
§ CombiningShape from Shading and Stereo Depth Maps[Project][Code]
§ Shape fromShading: A Survey[Paper][Code]
§ ASpatio-Temporal Descriptor based on 3D Gradients (HOG3D)[Project][Code]
§ Multi-cameraScene Reconstruction via Graph Cuts[Paper][Code]
§ A FastMarching Formulation of Perspective Shape from Shading under FrontalIllumination[Paper][Code]
§ Reconstruction:3DShape, Illumination, Shading, Reflectance, Texture[Project]
§ MonocularTracking of 3D Human Motion with a Coordinated Mixture of Factor Analyzers[Code]
§ Learning3-D Scene Structure from a Single Still Image[Project]
十、机器学习算法:
§ Matlabclass for computing Approximate Nearest Nieghbor (ANN) [Matlab class providinginterface toANN library]
§ RandomSampling[code]
§ ProbabilisticLatent Semantic Analysis (pLSA)[Code]
§ FASTANNand FASTCLUSTER for approximate k-means (AKM)[Project]
§ FastIntersection / Additive Kernel SVMs[Project]
§ SVM[Code]
§ Ensemblelearning[Project]
§ DeepLearning[Net]
§ DeepLearning Methods for Vision[Project]
§ NeuralNetwork for Recognition of Handwritten Digits[Project]
§ Training adeep autoencoder or a classifier on MNIST digits[Project]
§ THE MNISTDATABASE of handwritten digits[Project]
§ Ersatz:deep neural networks in the cloud[Project]
§ DeepLearning [Project]
§ sparseLM :Sparse Levenberg-Marquardt nonlinear least squares in C/C++[Project]
§ Weka 3:Data Mining Software in Java[Project]
§ Invitedtalk "A Tutorial on Deep Learning" by Dr. Kai Yu (余凯)[Video]
§ CNN -Convolutional neural network class[Matlab Tool]
§ YannLeCun's Publications[Wedsite]
§ LeNet-5,convolutional neural networks[Project]
§ Training adeep autoencoder or a classifier on MNIST digits[Project]
§ DeepLearning 大牛GeoffreyE. Hinton's HomePage[Website]
§ MultipleInstance Logistic Discriminant-based Metric Learning (MildML) and LogisticDiscriminant-based Metric Learning (LDML)[Code]
§ Sparsecoding simulation software[Project]
§ VisualRecognition and Machine Learning Summer School[Software]
十一、目标、行为识别Object,Action Recognition:
§ ActionRecognition by Dense Trajectories[Project][Code]
§ ActionRecognition Using a Distributed Representation of Pose and Appearance[Project]
§ RecognitionUsing Regions[Paper][Code]
§ 2DArticulated Human Pose Estimation[Project]
§ Fast HumanPose Estimation Using Appearance and Motion via Multi-Dimensional BoostingRegression[Paper][Code]
§ EstimatingHuman Pose from Occluded Images[Paper][Code]
§ Quasi-densewide baseline matching[Project]
§ ChaLearnGesture Challenge: Principal motion: PCA-based reconstruction of motionhistograms[Project]
§ Real TimeHead Pose Estimation with Random Regression Forests[Project]
§ 2D ActionRecognition Serves 3D Human Pose Estimation[Project]
§ A HoughTransform-Based Voting Framework for Action Recognition[Project]
§ MotionInterchange Patterns for Action Recognition in Unconstrained Videos[Project]
§ 2Darticulated human pose estimation software[Project]
§ Learningand detecting shape models [code]
§ ProgressiveSearch Space Reduction for Human Pose Estimation[Project]
§ LearningNon-Rigid 3D Shape from 2D Motion[Project]
十二、图像处理:
§ DistanceTransforms of Sampled Functions[Project]
§ TheComputer Vision Homepage[Project]
§ Efficientappearance distances between windows[code]
§ ImageExploration algorithm[code]
§ MotionMagnification 运动放大 [Project]
§ BilateralFiltering for Gray and Color Images 双边滤波器 [Project]
§ A FastApproximation of the Bilateral Filter using a Signal Processing Approach [Project]
十三、一些实用工具:
§ EGT: aToolbox for Multiple View Geometry and Visual Servoing[Project] [Code]
§ adevelopment kit of matlab mex functions for OpenCV library[Project]
§ FastArtificial Neural Network Library[Project]
十四、人手及指尖检测与识别:
§ finger-detection-and-gesture-recognition [Code]
§ Hand andFinger Detection using JavaCV[Project]
§ Hand andfingers detection[Code]
十五、场景解释:
§ NonparametricScene Parsing via Label Transfer [Project]
十六、光流Opticalflow:
§ Highaccuracy optical flow using a theory for warping [Project]
§ DenseTrajectories Video Description [Project]
§ SIFT Flow:Dense Correspondence across Scenes and its Applications[Project]
§ KLT: AnImplementation of the Kanade-Lucas-Tomasi Feature Tracker [Project]
§ TrackingCars Using Optical Flow[Project]
§ Secrets ofoptical flow estimation and their principles[Project]
§ implmentationof the Black and Anandan dense optical flow method[Project]
§ OpticalFlow Computation[Project]
§ BeyondPixels: Exploring New Representations and Applications for Motion Analysis[Project]
§ A Databaseand Evaluation Methodology for Optical Flow[Project]
§ opticalflow relative[Project]
§ RobustOptical Flow Estimation [Project]
§ opticalflow[Project]
十七、图像检索ImageRetrieval:
§ Semi-SupervisedDistance Metric Learning for Collaborative Image Retrieval [Paper][code]
十八、马尔科夫随机场MarkovRandom Fields:
§ MarkovRandom Fields for Super-Resolution [Project]
§ AComparative Study of Energy Minimization Methods for Markov Random Fields withSmoothness-Based Priors [Project]
十九、运动检测Motiondetection:
§ MovingObject Extraction, Using Models or Analysis of Regions [Project]
§ BackgroundSubtraction: Experiments and Improvements for ViBe [Project]
§ ASelf-Organizing Approach to Background Subtraction for Visual SurveillanceApplications [Project]
§ changedetection.net:A new change detection benchmark dataset[Project]
§ ViBe - apowerful technique for background detection and subtraction in video sequences[Project]
§ BackgroundSubtraction Program[Project]
§ MotionDetection Algorithms[Project]
§ StuttgartArtificial Background Subtraction Dataset[Project]
§ ObjectDetection, Motion Estimation, and Tracking[Project]
Feature Detection and Description
General Libraries:
§ VLFeat – Implementation of various featuredescriptors (including SIFT, HOG, and LBP) and covariant feature detectors(including DoG, Hessian, Harris Laplace, Hessian Laplace, Multiscale Hessian,Multiscale Harris). Easy-to-use Matlab interface. See Modern features: Software – Slides providing a demonstration ofVLFeat and also links to other software. Check also VLFeat hands-onsession training
§ OpenCV – Various implementations of modernfeature detectors and descriptors (SIFT, SURF, FAST, BRIEF, ORB, FREAK, etc.)
Fast Keypoint Detectors for Real-timeApplications:
§ FAST – High-speed corner detectorimplementation for a wide variety of platforms
§ AGAST – Even faster than the FAST cornerdetector. A multi-scale version of this method is used for the BRISK descriptor(ECCV 2010).
Binary Descriptors for Real-TimeApplications:
§ BRIEF – C++ code for a fast and accurateinterest point descriptor (not invariant to rotations and scale) (ECCV 2010)
§ ORB – OpenCV implementation of theOriented-Brief (ORB) descriptor (invariant to rotations, but not scale)
§ BRISK – Efficient Binary descriptor invariantto rotations and scale. It includes a Matlab mex interface. (ICCV 2011)
§ FREAK – Faster than BRISK (invariant torotations and scale) (CVPR 2012)
SIFT and SURF Implementations:
§ SIFT: VLFeat, OpenCV, Originalcode byDavid Lowe, GPUimplementation, OpenSIFT
§ SURF: HerbertBay’s code, OpenCV, GPU-SURF
Other Local Feature Detectors andDescriptors:
§ VGG Affine Covariant features – Oxford code for various affinecovariant feature detectors and descriptors.
§ LIOP descriptor – Source code for the Local Intensityorder Pattern (LIOP) descriptor (ICCV 2011).
§ LocalSymmetry Features – Source code for matching of local symmetryfeatures under large variations in lighting, age, and rendering style (CVPR2012).
Global Image Descriptors:
§ GIST – Matlab code for the GIST descriptor
§ CENTRIST – Global visual descriptor for scenecategorization and object detection (PAMI 2011)
Feature Coding and Pooling
§ VGG Feature Encoding Toolkit – Source code for variousstate-of-the-art feature encoding methods – including Standard hard encoding,Kernel codebook encoding, Locality-constrained linear encoding, and Fisherkernel encoding.
§ SpatialPyramid Matching – Source code for feature pooling based on spatialpyramid matching (widely used for image classification)
Convolutional Nets and Deep Learning
§ EBLearn – C++ Library for Energy-BasedLearning. It includes several demos and step-by-step instructions to trainclassifiers based on convolutional neural networks.
§ Torch7 – Provides a matlab-like environmentfor state-of-the-art machine learning algorithms, including a fast implementationof convolutional neural networks.
§ DeepLearning -Various links for deep learning software.
Part-Based Models
§ DeformablePart-based Detector – Library provided by the authors of the originalpaper (state-of-the-art in PASCAL VOC detection task)
§ Efficient Deformable Part-Based Detector – Branch-and-Bound implementation for adeformable part-based detector.
§ AcceleratedDeformable Part Model – Efficient implementation of a method thatachieves the exact same performance of deformable part-based detectors but withsignificant acceleration (ECCV 2012).
§ Coarse-to-FineDeformable Part Model – Fast approach for deformable object detection(CVPR 2011).
§ Poselets – C++ and Matlab versions for objectdetection based on poselets.
§ Part-basedFace Detector and Pose Estimation – Implementation of a unified approachfor face detection, pose estimation, and landmark localization (CVPR 2012).
Attributes and Semantic Features
§ Relative Attributes – Modified implementation of RankSVM totrain Relative Attributes (ICCV 2011).
§ Object Bank – Implementation of object banksemantic features (NIPS 2010). See also ActionBank
§ Classemes, Picodes, and Meta-class features – Software for extracting high-levelimage descriptors (ECCV 2010, NIPS 2011, CVPR 2012).
Large-Scale Learning
§ Additive Kernels – Source code for fast additive kernelSVM classifiers (PAMI 2013).
§ LIBLINEAR – Library for large-scale linear SVMclassification.
§ VLFeat – Implementation for Pegasos SVM andHomogeneous Kernel map.
Fast Indexing and Image Retrieval
§ FLANN – Library for performing fastapproximate nearest neighbor.
§ Kernelized LSH – Source code for KernelizedLocality-Sensitive Hashing (ICCV 2009).
§ ITQBinary codes – Code for generation of small binary codes usingIterative Quantization and other baselines such as Locality-Sensitive-Hashing(CVPR 2011).
§ INRIAImage Retrieval – Efficient code for state-of-the-art large-scaleimage retrieval (CVPR 2011).
Object Detection
§ See Part-based Models and Convolutional Nets above.
§ PedestrianDetection at 100fps – Very fast and accurate pedestrian detector (CVPR2012).
§ Caltech Pedestrian Detection Benchmark – Excellent resource for pedestriandetection, with various links for state-of-the-art implementations.
§ OpenCV – Enhanced implementation ofViola&Jones real-time object detector, with trained models for facedetection.
§ Efficient Subwindow Search – Source code for branch-and-boundoptimization for efficient object localization (CVPR 2008).
3D Recognition
§ Point-CloudLibrary –Library for 3D image and point cloud processing.
Action Recognition
§ ActionBank – Source code for action recognitionbased on the ActionBank representation (CVPR 2012).
§ STIPFeatures –software for computing space-time interest point descriptors
§ IndependentSubspace Analysis – Look for Stacked ISA for Videos (CVPR 2011)
§ Velocity Histories of Tracked Keypoints - C++ code for activity recognitionusing the velocity histories of tracked keypoints (ICCV 2009)
Datasets
Attributes
§ Animalswith Attributes – 30,475 images of 50 animals classes with 6pre-extracted feature representations for each image.
§ aYahooand aPascal – Attribute annotations for images collected fromYahoo and Pascal VOC 2008.
§ FaceTracer – 15,000 faces annotated with 10attributes and fiducial points.
§ PubFig – 58,797 face images of 200 people with73 attribute classifier outputs.
§ LFW – 13,233 face images of 5,749 peoplewith 73 attribute classifier outputs.
§ Human Attributes – 8,000 people with annotatedattributes. Check also this link for another dataset of humanattributes.
§ SUNAttribute Database – Large-scale scene attribute database with ataxonomy of 102 attributes.
§ ImageNet Attributes – Variety of attribute labels for theImageNet dataset.
§ Relative attributes – Data for OSR and a subset of PubFigdatasets. Check also this link for the WhittleSearch data.
§ Attribute Discovery Dataset – Images of shopping categoriesassociated with textual descriptions.
Fine-grained Visual Categorization
§ Caltech-UCSD Birds Dataset – Hundreds of bird categories withannotated parts and attributes.
§ Stanford Dogs Dataset – 20,000 images of 120 breeds of dogsfrom around the world.
§ Oxford-IIITPet Dataset – 37 category pet dataset with roughly 200 imagesfor each class. Pixel level trimap segmentation is included.
§ Leeds Butterfly Dataset – 832 images of 10 species ofbutterflies.
§ Oxford Flower Dataset – Hundreds of flower categories.
Face Detection
§ FDDB – UMass face detection dataset andbenchmark (5,000+ faces)
§ CMU/MIT – Classical face detection dataset.
Face Recognition
§ FaceRecognition Homepage – Large collection of face recognition datasets.
§ LFW – UMass unconstrained face recognitiondataset (13,000+ face images).
§ NISTFace Homepage – includes face recognition grand challenge (FRGC),vendor tests (FRVT) and others.
§ CMUMulti-PIE –contains more than 750,000 images of 337 people, with 15 different views and 19lighting conditions.
§ FERET – Classical face recognition dataset.
§ Deng Cai’s face dataset in Matlab Format – Easy to use if you want play withsimple face datasets including Yale, ORL, PIE, and Extended Yale B.
§ SCFace – Low-resolution face dataset capturedfrom surveillance cameras.
Handwritten Digits
§ MNIST – large dataset containing a trainingset of 60,000 examples, and a test set of 10,000 examples.
Pedestrian Detection
§ Caltech Pedestrian Detection Benchmark – 10 hours of video taken from avehicle,350K bounding boxes for about 2.3K unique pedestrians.
§ INRIAPerson Dataset – Currently one of the most popular pedestriandetection datasets.
§ ETHPedestrian Dataset – Urban dataset captured from a stereo rig mountedon a stroller.
§ TUD-BrusselsPedestrian Dataset – Dataset with image pairs recorded in an crowdedurban setting with an onboard camera.
§ PASCAL Human Detection – One of 20 categories in PASCAL VOCdetection challenges.
§ USC Pedestrian Dataset – Small dataset captured fromsurveillance cameras.
Generic Object Recognition
§ ImageNet – Currently the largest visualrecognition dataset in terms of number of categories and images.
§ Tiny Images – 80 million 32x32 low resolutionimages.
§ Pascal VOC – One of the most influential visualrecognition datasets.
§ Caltech 101 / Caltech256 –Popular image datasets containing 101 and 256 object categories, respectively.
§ MIT LabelMe – Online annotation tool for buildingcomputer vision databases.
Scene Recognition
§ MITSUN Dataset – MIT scene understanding dataset.
§ UIUCFifteen Scene Categories – Dataset of 15 natural scene categories.
Feature Detection and Description
§ VGG Affine Dataset – Widely used dataset for measuringperformance of feature detection and description. CheckVLBenchmarks for an evaluation framework.
Action Recognition
§ Benchmarking Activity Recognition – CVPR 2012 tutorial covering variousdatasets for action recognition.
RGBD Recognition
§ RGB-D Object Dataset – Dataset containing 300 commonhousehold objects