機器視覺開原始碼
一、特徵提取Feature Extraction:
- PCA-SIFT [2] [Project]
- Affine-SIFT [3] [Project]
- Affine Covariant Features [5] [Oxford project]
- Geometric Blur [7] [Code]
- Local Self-Similarity Descriptor [8] [Oxford implementation]
- Global and Efficient Self-Similarity [9] [Code]
- Shape Context [12] [Project]
-
Color Descriptor [13] [
- Pyramids of Histograms of Oriented Gradients [Code]
- Space-Time Interest Points (STIP) [14][Project] [Code]
- Boundary Preserving Dense Local Regions [15][Project]
- Weighted Histogram[Code]
- Histogram-based Interest Points Detectors[Paper][Code]
-
An OpenCV - C++ implementation of Local Self Similarity Descriptors [
- Fast Sparse Representation with Prototypes[Project]
- Corner Detection [Project]
- AGAST Corner Detector: faster than FAST and even FAST-ER[Project]
- Real-time Facial Feature Detection using Conditional Regression Forests[Project]
-
Global and Efficient Self-Similarity for Object Classification and Detection[
- WαSH: Weighted α-Shapes for Local Feature Detection[Project]
- Online Selection of Discriminative Tracking Features[Project]
二、影象分割Image Segmentation:
- Normalized Cut [1] [Matlab code]
- Gerg Mori’ Superpixel code [2] [Matlab code]
- Efficient Graph-based Image Segmentation [3] [C++ code] [Matlab wrapper]
- OWT-UCM Hierarchical Segmentation [5] [Resources]
- Quick-Shift [7] [VLFeat]
- SLIC Superpixels [8] [Project]
- Segmentation by Minimum Code Length [9] [Project]
- Biased Normalized Cut [10] [Project]
- Segmentation Tree [11-12] [Project]
- Entropy Rate Superpixel Segmentation [13] [Code]
- Fast Approximate Energy Minimization via Graph Cuts[Paper][Code]
- Efficient Planar Graph Cuts with Applications in Computer Vision[Paper][Code]
- Isoperimetric Graph Partitioning for Image Segmentation[Paper][Code]
- Random Walks for Image Segmentation[Paper][Code]
- Blossom V: A new implementation of a minimum cost perfect matching algorithm[Code]
- An Experimental Comparison of Min-Cut/Max-Flow Algorithms for Energy Minimization in Computer Vision[Paper][Code]
- Geodesic Star Convexity for Interactive Image Segmentation[Project]
- Contour Detection and Image Segmentation Resources[Project][Code]
- Biased Normalized Cuts[Project]
- Max-flow/min-cut[Project]
- Chan-Vese Segmentation using Level Set[Project]
- A Toolbox of Level Set Methods[Project]
- Re-initialization Free Level Set Evolution via Reaction Diffusion[Project]
- Improved C-V active contour model[Paper][Code]
- A Variational Multiphase Level Set Approach to Simultaneous Segmentation and Bias Correction[Paper][Code]
- Level Set Method Research by Chunming Li[Project]
- ClassCut for Unsupervised Class Segmentation[code]
- SEEDS: Superpixels Extracted via Energy-Driven Sampling [Project][other]
三、目標檢測Object Detection:
- A simple object detector with boosting [Project]
- INRIA Object Detection and Localization Toolkit [1] [Project]
- Discriminatively Trained Deformable Part Models [2] [Project]
- Cascade Object Detection with Deformable Part Models [3] [Project]
- Poselet [4] [Project]
- Implicit Shape Model [5] [Project]
- Viola and Jones’s Face Detection [6] [Project]
- Bayesian Modelling of Dyanmic Scenes for Object Detection[Paper][Code]
- Hand detection using multiple proposals[Project]
- Color Constancy, Intrinsic Images, and Shape Estimation[Paper][Code]
- Discriminatively trained deformable part models[Project]
- Gradient Response Maps for Real-Time Detection of Texture-Less Objects: LineMOD [Project]
- Image Processing On Line[Project]
- Robust Optical Flow Estimation[Project]
- Where’s Waldo: Matching People in Images of Crowds[Project]
- Scalable Multi-class Object Detection[Project]
- Class-Specific Hough Forests for Object Detection[Project]
- Deformed Lattice Detection In Real-World Images[Project]
- Discriminatively trained deformable part models[Project]
四、顯著性檢測Saliency Detection:
- Itti, Koch, and Niebur’ saliency detection [1] [Matlab code]
- Frequency-tuned salient region detection [2] [Project]
- Saliency detection using maximum symmetric surround [3] [Project]
- Attention via Information Maximization [4] [Matlab code]
- Context-aware saliency detection [5] [Matlab code]
- Graph-based visual saliency [6] [Matlab code]
- Saliency detection: A spectral residual approach. [7] [Matlab code]
- Segmenting salient objects from images and videos. [8] [Matlab code]
- Saliency Using Natural statistics. [9] [Matlab code]
- Discriminant Saliency for Visual Recognition from Cluttered Scenes. [10] [Code]
- Learning to Predict Where Humans Look [11] [Project]
- Global Contrast based Salient Region Detection [12] [Project]
- Bayesian Saliency via Low and Mid Level Cues[Project]
- Top-Down Visual Saliency via Joint CRF and Dictionary Learning[Paper][Code]
- Saliency Detection: A Spectral Residual Approach[Code]
五、影象分類、聚類Image Classification, Clustering
- Pyramid Match [1] [Project]
- Spatial Pyramid Matching [2] [Code]
- Locality-constrained Linear Coding [3] [Project] [Matlab code]
- Texture Classification [5] [Project]
- Multiple Kernels for Image Classification [6] [Project]
- Feature Combination [7] [Project]
- SuperParsing [Code]
- Large Scale Correlation Clustering Optimization[Matlab code]
- Detecting and Sketching the Common[Project]
- Self-Tuning Spectral Clustering[Project][Code]
- User Assisted Separation of Reflections from a Single Image Using a Sparsity Prior[Paper][Code]
- Filters for Texture Classification[Project]
- Multiple Kernel Learning for Image Classification[Project]
- SLIC Superpixels[Project]
六、摳圖Image Matting
- A Closed Form Solution to Natural Image Matting [Code]
- Spectral Matting [Project]
- Learning-based Matting [Code]
七、目標跟蹤Object Tracking:
- A Forest of Sensors - Tracking Adaptive Background Mixture Models [Project]
- Object Tracking via Partial Least Squares Analysis[Paper][Code]
- Robust Object Tracking with Online Multiple Instance Learning[Paper][Code]
- Online Visual Tracking with Histograms and Articulating Blocks[Project]
- Incremental Learning for Robust Visual Tracking[Project]
- Real-time Compressive Tracking[Project]
- Robust Object Tracking via Sparsity-based Collaborative Model[Project]
- Visual Tracking via Adaptive Structural Local Sparse Appearance Model[Project]
- Online Discriminative Object Tracking with Local Sparse Representation[Paper][Code]
- Superpixel Tracking[Project]
- Learning Hierarchical Image Representation with Sparsity, Saliency and Locality[Paper][Code]
- Online Multiple Support Instance Tracking [Paper][Code]
- Visual Tracking with Online Multiple Instance Learning[Project]
- Object detection and recognition[Project]
- Compressive Sensing Resources[Project]
- Robust Real-Time Visual Tracking using Pixel-Wise Posteriors[Project]
- the HandVu:vision-based hand gesture interface[Project]
- Learning Probabilistic Non-Linear Latent Variable Models for Tracking Complex Activities[Project]
八、Kinect:
九、3D相關:
- 3D Reconstruction of a Moving Object[Paper] [Code]
- Shape From Shading Using Linear Approximation[Code]
- Combining Shape from Shading and Stereo Depth Maps[Project][Code]
- Shape from Shading: A Survey[Paper][Code]
- A Spatio-Temporal Descriptor based on 3D Gradients (HOG3D)[Project][Code]
- Multi-camera Scene Reconstruction via Graph Cuts[Paper][Code]
- A Fast Marching Formulation of Perspective Shape from Shading under Frontal Illumination[Paper][Code]
- Reconstruction:3D Shape, Illumination, Shading, Reflectance, Texture[Project]
- Monocular Tracking of 3D Human Motion with a Coordinated Mixture of Factor Analyzers[Code]
- Learning 3-D Scene Structure from a Single Still Image[Project]
- Matlab class for computing Approximate Nearest Nieghbor (ANN) [Matlab class providing interface toANN library]
- Random Sampling[code]
- Probabilistic Latent Semantic Analysis (pLSA)[Code]
- FASTANN and FASTCLUSTER for approximate k-means (AKM)[Project]
- Fast Intersection / Additive Kernel SVMs[Project]
- SVM[Code]
- Ensemble learning[Project]
- Deep Learning[Net]
- Deep Learning Methods for Vision[Project]
- Neural Network for Recognition of Handwritten Digits[Project]
- Training a deep autoencoder or a classifier on MNIST digits[Project]
- THE MNIST DATABASE of handwritten digits[Project]
- Ersatz:deep neural networks in the cloud[Project]
- Deep Learning [Project]
- sparseLM : Sparse Levenberg-Marquardt nonlinear least squares in C/C++[Project]
- Weka 3: Data Mining Software in Java[Project]
- Invited talk “A Tutorial on Deep Learning” by Dr. Kai Yu (餘凱)[Video]
- CNN - Convolutional neural network class[Matlab Tool]
- Yann LeCun’s Publications[Wedsite]
- LeNet-5, convolutional neural networks[Project]
- Training a deep autoencoder or a classifier on MNIST digits[Project]
- Deep Learning 大牛Geoffrey E. Hinton’s HomePage[Website]
- Multiple Instance Logistic Discriminant-based Metric Learning (MildML) and Logistic Discriminant-based Metric Learning (LDML)[Code]
- Sparse coding simulation software[Project]
- Visual Recognition and Machine Learning Summer School[Software]
十一、目標、行為識別Object, Action Recognition:
- Action Recognition by Dense Trajectories[Project][Code]
- Action Recognition Using a Distributed Representation of Pose and Appearance[Project]
- Recognition Using Regions[Paper][Code]
- 2D Articulated Human Pose Estimation[Project]
- Fast Human Pose Estimation Using Appearance and Motion via Multi-Dimensional Boosting Regression[Paper][Code]
- Estimating Human Pose from Occluded Images[Paper][Code]
- Quasi-dense wide baseline matching[Project]
- ChaLearn Gesture Challenge: Principal motion: PCA-based reconstruction of motion histograms[Project]
- Real Time Head Pose Estimation with Random Regression Forests[Project]
- 2D Action Recognition Serves 3D Human Pose Estimation[Project]
- A Hough Transform-Based Voting Framework for Action Recognition[Project]
- Motion Interchange Patterns for Action Recognition in Unconstrained Videos[Project]
- 2D articulated human pose estimation software[Project]
- Learning and detecting shape models [code]
- Progressive Search Space Reduction for Human Pose Estimation[Project]
- Learning Non-Rigid 3D Shape from 2D Motion[Project]
十二、影象處理:
- Distance Transforms of Sampled Functions[Project]
- The Computer Vision Homepage[Project]
- Efficient appearance distances between windows[code]
- Image Exploration algorithm[code]
- Motion Magnification 運動放大 [Project]
- Bilateral Filtering for Gray and Color Images 雙邊濾波器 [Project]
- A Fast Approximation of the Bilateral Filter using a Signal Processing Approach [Project]
十三、一些實用工具:
- EGT: a Toolbox for Multiple View Geometry and Visual Servoing[Project] [Code]
- a development kit of matlab mex functions for OpenCV library[Project]
- Fast Artificial Neural Network Library[Project]
十四、人手及指尖檢測與識別:
- finger-detection-and-gesture-recognition [Code]
- Hand and Finger Detection using JavaCV[Project]
- Hand and fingers detection[Code]
十五、場景解釋:
- Nonparametric Scene Parsing via Label Transfer [Project]
十六、光流Optical flow:
- High accuracy optical flow using a theory for warping [Project]
- Dense Trajectories Video Description [Project]
- SIFT Flow: Dense Correspondence across Scenes and its Applications[Project]
- KLT: An Implementation of the Kanade-Lucas-Tomasi Feature Tracker [Project]
- Tracking Cars Using Optical Flow[Project]
- Secrets of optical flow estimation and their principles[Project]
- implmentation of the Black and Anandan dense optical flow method[Project]
- Optical Flow Computation[Project]
- Beyond Pixels: Exploring New Representations and Applications for Motion Analysis[Project]
- A Database and Evaluation Methodology for Optical Flow[Project]
- optical flow relative[Project]
- Robust Optical Flow Estimation [Project]
- optical flow[Project]
十七、影象檢索Image Retrieval:
十八、馬爾科夫隨機場Markov Random Fields:
- Markov Random Fields for Super-Resolution [Project]
- A Comparative Study of Energy Minimization Methods for Markov Random Fields with Smoothness-Based Priors [Project]
十九、運動檢測Motion detection:
- Moving Object Extraction, Using Models or Analysis of Regions [Project]
- Background Subtraction: Experiments and Improvements for ViBe [Project]
- A Self-Organizing Approach to Background Subtraction for Visual Surveillance Applications [Project]
- changedetection.net: A new change detection benchmark dataset[Project]
- ViBe - a powerful technique for background detection and subtraction in video sequences[Project]
- Background Subtraction Program[Project]
- Motion Detection Algorithms[Project]
- Stuttgart Artificial Background Subtraction Dataset[Project]
- Object Detection, Motion Estimation, and Tracking[Project]
Feature Detection and Description
General Libraries:
- VLFeat – Implementation of various feature descriptors (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 of VLFeat and also links to other software. Check also VLFeat hands-on session training
- OpenCV – Various implementations of modern feature detectors and descriptors (SIFT, SURF, FAST, BRIEF, ORB, FREAK, etc.)
Fast Keypoint Detectors for Real-time Applications:
- FAST – High-speed corner detector implementation for a wide variety of platforms
- AGAST – Even faster than the FAST corner detector. A multi-scale version of this method is used for the BRISK descriptor (ECCV 2010).
Binary Descriptors for Real-Time Applications:
- BRIEF – C++ code for a fast and accurate interest point descriptor (not invariant to rotations and scale) (ECCV 2010)
- ORB – OpenCV implementation of the Oriented-Brief (ORB) descriptor (invariant to rotations, but not scale)
- BRISK – Efficient Binary descriptor invariant to rotations and scale. It includes a Matlab mex interface. (ICCV 2011)
- FREAK – Faster than BRISK (invariant to rotations and scale) (CVPR 2012)
SIFT and SURF Implementations:
Other Local Feature Detectors and Descriptors:
- VGG Affine Covariant features – Oxford code for various affine covariant feature detectors and descriptors.
- LIOP descriptor – Source code for the Local Intensity order Pattern (LIOP) descriptor (ICCV 2011).
- Local Symmetry Features – Source code for matching of local symmetry features under large variations in lighting, age, and rendering style (CVPR 2012).
Global Image Descriptors:
- GIST – Matlab code for the GIST descriptor
- CENTRIST – Global visual descriptor for scene categorization and object detection (PAMI 2011)
Feature Coding and Pooling
- VGG Feature Encoding Toolkit – Source code for various state-of-the-art feature encoding methods – including Standard hard encoding, Kernel codebook encoding, Locality-constrained linear encoding, and Fisher kernel encoding.
- Spatial Pyramid Matching – Source code for feature pooling based on spatial pyramid matching (widely used for image classification)
Convolutional Nets and Deep Learning
- EBLearn – C++ Library for Energy-Based Learning. It includes several demos and step-by-step instructions to train classifiers based on convolutional neural networks.
- Torch7 – Provides a matlab-like environment for state-of-the-art machine learning algorithms, including a fast implementation of convolutional neural networks.
- Deep Learning - Various links for deep learning software.
Part-Based Models
- Deformable Part-based Detector – Library provided by the authors of the original paper (state-of-the-art in PASCAL VOC detection task)
- Efficient Deformable Part-Based Detector – Branch-and-Bound implementation for a deformable part-based detector.
- Accelerated Deformable Part Model – Efficient implementation of a method that achieves the exact same performance of deformable part-based detectors but with significant acceleration (ECCV 2012).
- Coarse-to-Fine Deformable Part Model – Fast approach for deformable object detection (CVPR 2011).
- Poselets – C++ and Matlab versions for object detection based on poselets.
- Part-based Face Detector and Pose Estimation – Implementation of a unified approach for face detection, pose estimation, and landmark localization (CVPR 2012).
Attributes and Semantic Features
- Relative Attributes – Modified implementation of RankSVM to train Relative Attributes (ICCV 2011).
- Object Bank – Implementation of object bank semantic features (NIPS 2010). See also ActionBank
- Classemes, Picodes, and Meta-class features – Software for extracting high-level image descriptors (ECCV 2010,