Computer Vision Algorithm Implementations
Participate in Reproducible Research
General Image Processing
- OpenCV
- (C/C++ code, BSD lic) Image manipulation, matrix manipulation, transforms
- Torch3Vision
- (C/C++ code, BSD lic) Basic image processing, matrix manipulation and feature extraction algorithms: rotation, flip, photometric normalisations (Histogram Equalization, Multiscale Retinex, Self-Quotient Image or Gross-Brajovic), edge detection, 2D DCT, 2D FFT, 2D Gabor, PCA to do Eigen-Faces, LDA to do Fisher-Faces. Various metrics (Euclidean, Mahanalobis, ChiSquare, NormalizeCorrelation, TangentDistance, ...)
- GradientShop
- (C/C++ code, GPL lic) GradientShop: A Gradient-Domain Optimization Framework for Image and Video Filtering
- ImLab
- (C/C++ code, MIT lic) A Free Experimental System for Image Processing (loading, transforms, filters, histogram, morphology, ...)
- CIMG
- (C/C++ code, GPL and LGPL lic) CImg Library is an open source C++ toolkit for image processing
- Generic Image Library (GIL) - boost integration
- (C/C++ code, MIT lic) Adobe open source C++ Generic Image Library (GIL)
- SimpleCV a kinder, gentler machine vision library
- (python code, MIT lic) SimpleCV is a Python interface to several powerful open source computer vision libraries in a single convenient package
- PCL, The Point Cloud Library
- (C/C++ code, BSD lic) The Point Cloud Library (or PCL) is a large scale, open project for point cloud processing. The PCL framework contains numerous state-of-the art algorithms including filtering, feature estimation, surface reconstruction, registration, model fitting and segmentation.
- Population, imaging library in C++ for processing, analysing, modelling and visualising
- (C/C++ code, CeCill lic) Population is an open-source imaging library in C++ for processing, analysing, modelling and visualising including more than 200 algorithms designed by V. Tariel.
- qcv
- (C/C++ code, LGPL 3) A computer vision framework based on Qt and OpenCV that provides an easy to use interface to display, analyze and run computer vision algorithms. The library is provided with multiple application examples including stereo, SURF, Sobel and and Hough transform.
- Machine Vision Toolbox
- (MATLAB/C, LGPL lic) image processing, segmentation, blob/line/point features, multiview geometry, camera models, colorimetry.
- BoofCV
- (Java code, Apache lic) BoofCV is an open source Java library for real-time computer vision and robotics applications. BoofCV is organized into several packages: image processing, features, geometric vision, calibration, visualize, and IO.
- Simd
- (C++ code, MIT lic) Simd is free open source library in C++. It includes high performance image processing algorithms. The algorithms are optimized with using of SIMD CPU extensions such as SSE2, SSSE3, SSE4.2 and AVX2.
- Free but not open source - ArrayFire (formely LibJacket) is a matrix library for CUDA
- (CUDA/C++, free lic) ArrayFire offers hundreds of general matrix and image processing functions, all running on the GPU. The syntax is very Matlab-like, with the goal of offering easy porting of Matlab code to C++/ArrayFire.
Image Acquisition, Decoding & encoding
- FFMPEG
- (C/C++ code, LGPL or GPL lic) Record, convert and stream audio and video (lot of codec)
- OpenCV
- (C/C++ code, BSD lic) PNG, JPEG,... images, avi video files, USB webcam,...
- Torch3Vision
- (C/C++ code, BSD lic) Video file decoding/encoding (ffmpeg integration), image capture from a frame grabber or from USB, Sony pan/tilt/zoom camera control using VISCA interface
- lib VLC
- (C/C++ code, GPL lic) Used by VLC player: record, convert and stream audio and video
- Live555
- (C/C++ code, LGPL lic) RTSP streams
- ImageMagick
- (C/C++ code, GPL lic) Loading & saving DPX, EXR, GIF, JPEG, JPEG-2000, PDF, PhotoCD, PNG, Postscript, SVG, TIFF, and more
- DevIL
- (C/C++ code, LGPL lic) Loading & saving various image format
- FreeImage
- (C/C++ code, GPL & FPL lic) PNG, BMP, JPEG, TIFF loading
- VideoMan
- (C/C++ code, LGPL lic) VideoMan is trying to make the image capturing process from cameras, video files or image sequences easier.
Segmentation
- OpenCV
- (C/C++ code, BSD lic) Pyramid image segmentation
- Branch-and-Mincut
- (C/C++ code, Microsoft Research Lic) Branch-and-Mincut Algorithm for Image Segmentation
- Efficiently solving multi-label MRFs (Readme)
- (C/C++ code) Segmentation, object category labelling, stereo
Machine Learning
- Torch
- (C/C++ code, BSD lic) Gradient machines ( multi-layered perceptrons, radial basis functions, mixtures of experts, convolutional networks and even time-delay neural networks), Support vector machines, Ensemble models (bagging, adaboost), Non-parametric models (K-nearest-neighbors, Parzen regression and Parzen density estimator), distributions (Kmeans, Gaussian mixture models, hidden Markov models, input-output hidden Markov models, and Bayes classifier), speech recognition tools
Object Detection
- OpenCV
- (C/C++ code, BSD lic) Viola-jones face detection (Haar features)
- Torch3Vision
- (C/C++ code, BSD lic) MLP & cascade of Haar-like classifiers face detection
- Hough Forests
- (C/C++ code, Microsoft Research Lic) Class-Specific Hough Forests for Object Detection
- Efficient Subwindow Object Detection
- (C/C++ code, Apache Lic) Christoph Lampert "Efficient Subwindow" algorithms for Object Detection
- INRIA Object Detection and Localization Toolkit
- (C/C++ code, Custom Lic) Histograms of Oriented Gradients library for Object Detection
Object Category Labelling
- Efficiently solving multi-label MRFs (Readme)
- (C/C++ code) Segmentation, object category labelling, stereo
- Multi-label optimization
- (C/C++/MATLAB code) The gco-v3.0 library is for optimizing multi-label energies. It supports energies with any combination of unary, pairwise, and label cost terms.
Optical flow
- OpenCV
- (C/C++ code, BSD lic) Horn & Schunck algorithm, Lucas & Kanade algorithm, Lucas-Kanade optical flow in pyramids, block matching.
- GPU-KLT+FLOW
- (C/C++/OpenGL/Cg code, LGPL) Gain-Adaptive KLT Tracking and TV-L1 optical flow on the GPU.
- RLOF
- (C/C++/Matlab code, Custom Lic.) The RLOF library provides GPU / CPU implementation of Optical Flow and Feature Tracking method.
Features Extraction & Matching
- SIFT by R. Hess
- (C/C++ code, GPL lic) SIFT feature extraction & RANSAC matching
- OpenSURF
- (C/C++ code) SURF feature extraction algorihtm (kind of fast SIFT)
- ASIFT (from IPOL)
- (C/C++ code, Ecole Polytechnique and ENS Cachan for commercial Lic) Affine SIFT (ASIFT)
- VLFeat (formely Sift++)
- (C/C++ code) SIFT, MSER, k-means, hierarchical k-means, agglomerative information bottleneck, and quick shift
- SiftGPU
- A GPU Implementation of Scale Invariant Feature Transform (SIFT)
- Groupsac
- (C/C++ code, GPL lic) An enhance version of RANSAC that considers the correlation between data points
Nearest Neighbors matching
- FLANN
- (C/C++ code, BSD lic) Approximate Nearest Neighbors (Fast Approximate Nearest Neighbors with Automatic Algorithm Configuration)
- ANN
- (C/C++ code, LGPL lic) Approximate Nearest Neighbor Searching
Tracking
- OpenCV
- (C/C++ code, BSD lic) Kalman, Condensation, CAMSHIFT, Mean shift, Snakes
- KLT: An Implementation of the Kanade-Lucas-Tomasi Feature Tracker
- (C/C++ code, public domain) Kanade-Lucas-Tomasi Feature Tracker
- GPU_KLT
- (C/C++/OpenGL/Cg code, ) A GPU-based Implementation of the Kanade-Lucas-Tomasi Feature Tracker
- GPU-KLT+FLOW
- (C/C++/OpenGL/Cg code, LGPL) Gain-Adaptive KLT Tracking and TV-L1 optical flow on the GPU
- On-line boosting trackers
- (C/C++, LGPL) On-line boosting tracker, semi-supervised tracker, beyond semi-supervised tracker
Simultaneous localization and mapping
- Real-Time SLAM - SceneLib
- (C/C++ code, LGPL lic) Real-time vision-based SLAM with a single camera
- PTAM
- (C/C++ code, Isis Innovation Limited lic) Parallel Tracking and Mapping for Small AR Workspaces
- GTSAM
- (C/C++ code, BSD lic) GTSAM is a library of C++ classes that implement smoothing and mapping (SAM) in robotics and vision, using factor graphs and Bayes networks as the underlying computing paradigm rather than sparse matrices
Camera Calibration & constraint
- OpenCV
- (C/C++ code, BSD lic) Chessboard calibration, calibration with rig or pattern
- Geometric camera constraint - Minimal Problems in Computer Vision
- Minimal problems in computer vision arise when computing geometrical models from image data. They often lead to solving systems of algebraic equations.
- Camera Calibration Toolbox for Matlab
- (Matlab toolbox) Camera Calibration Toolbox for Matlab by Jean-Yves Bouguet (C implementation in OpenCV)
Multi-View Reconstruction
- Bundle Adjustment - SBA
- (C/C++ code, GPL lic) A Generic Sparse Bundle Adjustment Package Based on the Levenberg-Marquardt Algorithm
- Bundle Adjustment - SSBA
- (C/C++ code, LGPL lic) Simple Sparse Bundle Adjustment (SSBA)
Stereo
- Efficiently solving multi-label MRFs (Readme)
- (C/C++ code) Segmentation, object category labelling, stereo
- LIBELAS: Library for Efficient LArge-scale Stereo Matching
- (C/C++ code) Disparity maps, stereo
Structure from motion
- Bundler
- (C/C++ code, GPL lic) A structure-from-motion system for unordered image collections
- Patch-based Multi-view Stereo Software (Windows version)
- (C/C++ code, GPL lic) A multi-view stereo software that takes a set of images and camera parameters, then reconstructs 3D structure of an object or a scene visible in the images
- libmv - work in progress
- (C/C++ code, MIT lic) A structure from motion library
- Multicore Bundle Adjustment
- (C/C++/GPU code, GPL3 lic) Design and implementation of new inexact Newton type Bundle Adjustment algorithms that exploit hardware parallelism for efficiently solving large scale 3D scene reconstruction problems.
- openMVG
- (C/C++/GPU code, MPL2 lic) OpenMVG (Multiple View Geometry) "open Multiple View Geometry" is a library for computer-vision scientists and especially targeted to the Multiple View Geometry community. It is designed to provide an easy access to the classical problem solvers in Multiple View Geometry and solve them accurately..
Visual odometry
- LIBVISO2: Library for VISual Odometry 2
- (C/C++ code, Matlab, GPL lic) Libviso 2 is a very fast cross-platfrom (Linux, Windows) C++ library with MATLAB wrappers for computing the 6 DOF motion of a moving mono/stereo camera.
Computer Vision Algorithm Implementations的更多相关文章
- Computer Vision Resources
Computer Vision Resources Softwares Topic Resources References Feature Extraction SIFT [1] [Demo pro ...
- CVPapers - Computer Vision Resource
To add links (PDF, project,...) you can use the online tool. Computer Vision Paper Indexes ICCV: 20 ...
- paper 156:专家主页汇总-计算机视觉-computer vision
持续更新ing~ all *.files come from the author:http://www.cnblogs.com/findumars/p/5009003.html 1 牛人Homepa ...
- 计算机视觉和人工智能的状态:我们已经走得很远了 The state of Computer Vision and AI: we are really, really far away.
The picture above is funny. But for me it is also one of those examples that make me sad about the o ...
- Computer Vision Applied to Super Resolution
Capel, David, and Andrew Zisserman. "Computer vision applied to super resolution." Signal ...
- Computer Vision Tutorials from Conferences (3) -- CVPR
CVPR 2013 (http://www.pamitc.org/cvpr13/tutorials.php) Foundations of Spatial SpectroscopyJames Cogg ...
- My Reading List - Machine Learning && Computer Vision
本博客汇总了个人在学习过程中所看过的一些论文.代码.资料以及常用的资源与网站,为了便于记录自身的学习过程,将其整理于博客之中. Machine Learning (1) Machine Learnin ...
- code and dataset resources of computer vision
From:http://rogerioferis.com/VisualRecognitionAndSearch2014/Resources.html Source Code Non-exhaustiv ...
- Computer vision labs
积累记录一些视觉实验室,方便查找 1. 多伦多大学计算机科学系 2. 普林斯顿大学计算机视觉和机器人实验室 3. 牛津大学Torr Vision Group 4. 伯克利视觉和学习中心 Pro ...
随机推荐
- ASP.NET MVC 第三回 Controller与View
这节我们让ASP.NET MVC真正的跑起来 一.新建Controller 首先我们自己新建一个新的Controller在Controllers上点右键,添加,Controller选项 之后出现一 ...
- spring事务回滚无法捕捉
这篇文章讲解了怎么配置才能让spring事务捕捉异常 http://www.360doc.com/content/12/1109/18/6161903_246870991.shtml 需要正确配置sp ...
- 图论——读书笔记(基于BFS广度优先算法的广度优先树)
广度优先树 对于一个图G=(V,E)在跑过BFS算法的过程中会创建一棵广度优先树. 形式化一点的表示该广度 优先树的形成过程是这样的: 对于图G=(V,E)是有向图或是无向图, 和图中的源结点s, 我 ...
- ZBar Installer
ZBar Install.For windows:http://sourceforge.net/projects/zbar/files/zbar/0.10/zbar-0.10-setup.exe/do ...
- iOS菜鸟之FMDB的二次封装简单易用
闲来无事写点东西,希望大家多多指正! 大家先去git下载FMDB,然后将其中source文件夹中的fmdb文件夹拖入自己的项目中.最后就可以引用下面的代码对fmdb进行一次简单的封装. 这样可以更直观 ...
- Java学习----创建对象的数组
1.初始化数组的长度 2.初始化每个元素对象 3.调用每个对象的方法 public class Student { private String name; public Student() {} p ...
- Bootstrap_Javascript_固定定位
Affix 插件可以对任何元素进行固定定位,其中比较简单的方法,就是通过自定义属性 data 来触发.其主要包括两个参数: 1.data-spy:取值 affix,表示元素固定不变的. 2.data- ...
- MySql数据库4【命令行赋权操作】
MySQL 赋予用户权限命令的简单格式可概括为:grant 权限 on 数据库对象 to 用户 一.grant 普通数据用户,查询.插入.更新.删除 数据库中所有表数据的权利. grant selec ...
- 一些CMS网站系统漏洞,练手用(持续更新)
仅供拿shell,提权测试用,请勿恶意破坏 XuSoft系统: 后台万能密码:'or'='or' 可直接登陆,后台地址 /manage/login.asp inurl:ReadArticlemb.a ...
- TatukGIS - GisDefs - ChangeDir 函数
函数名称 ChangeDir 所在单元 GisDefs 函数原型 function ChangeDir(const _path: String): String; 函数说明 如果 _path ...