一些重要的算法源码

来源:互联网 发布:eps切割机软件 编辑:程序博客网 时间:2024/04/29 04:24

一些重要的算法源码

http://vision.eecs.ucf.edu/source.html

Source Code

  • [Background Modeling]
  • [Shape from Shading]
  • [Fundamental Matrix]
  • [Mean-Shift Algorithms]
  • [Kernel Density Estimation]
  • [K-Means Algorithm]
  • [Normalized Graph Cut]
  • [Dimension Reduction]
  • [Facial Analysis]
  • [Optical Flow]
  • [Image Registration]
  • [Color Space Transformations]
  • [Image Acquisition]
  • [Miscellaneous]
  • [SPREF]
  • [FRAISE]
  • [Useful Links]

Background Modeling

Bayesian Object   Detection in Dynamic Scenes
  This code performs background modeling and foreground estimation in dynamic   scenes captured by static cameras. The algorithm implemented has three   innovations over existing approaches. First, the correlation in intensities of   spatially proximal pixels is exploited by using a nonparametric density   estimation method over a joint domain-range representation of image pixels,   multimodal spatial uncertainties and complex dependencies between the domain   (location) and range (color). The model of the background is implemented as a   single probability density, as opposed to individual, independent, pixel-wise   distributions.
   Second, temporal persistence is used as a detection criterion. Unlike previous   approaches to object detection which detect objects by building adaptive   models of the background, the foreground is modeled to augment the detection   of objects (without explicit tracking) since objects detected in the preceding   frame contain substantial evidence for detection in the current frame. 
   Finally, the background and foreground models are used competitively in a   MAP-MRF decision framework, stressing spatial context as a condition of   detecting interesting objects and the posterior function is maximized   efficiently by finding the minimum cut of a capacitated graph. 
  This method is useful for moving object detection in scenes containing dynamic   backgrounds, e.g., fountains, fans, and moving trees, etc. The entry point for   background modeling is Main.m.
   Project Page:   /projects/backgroundsub.htm
  Yaser Sheikh and Mubarak Shah,   Bayesian Modelling of Dyanmic Scenes for Object Detection, IEEE   Transactions on PAMI, Vol. 27, Issue 11 (Nov 2005), pp. 1778-1792. 

Shape from Shading

   Zhang-Tsai-Cryer-Shah (C code)
Code from the following   publication: 
Ruo Zhang,Ping-Sing Tsai, James Cryer and Mubarak Shah,    Shape from Shading: A Survey', IEEE Transactions on PAMI, Volume 21,   Number 08, August, 1999, pp 690-706.
Cryer-Tsai-Shah Method (C   code)
Source code for the Cryer-Tsai-Shah method for combining shape from shading   and stereo depth maps. 
Related Publication: James Cryer, Ping-Sing Tsai and Mubarak Shah.   Shape from Shading and Stereo, Pattern Recognition, Volume 28, No. 7, pp   1033-1043, Jul 1995. 
Tsai-Shah Method (C code)
Source code for the Tsai-Shah method for shape from shading. Related   Publication: Ping-sing Tsai and Mubarak Shah,    Shape From Shading Using Linear Approximation, Technical Report, 1992.

Fundamental Matrix

  Fundamental Matrix Code (Matlab)
   normalise2dpts (Matlab)
Computes the fundamental matrix from 8 or more matching points in a stereo   pair of images using the normalized 8 point algorithm. The normalized 8 point   algorithm given by Hartley and Zisserman is used. To achieve accurate results   it is recommended that 12 or more points are used. The code uses the   normalise2dpts.m file also provided. 
On directions to using the code please refer to the code documentation. 
Acknowledgements: The code was provided by Peter Kovesi.    http://www.csse.uwa.edu.au/~pk/Research/MatlabFns/
  Fundamental Matrix Code (C++ code)
Please note that the code requires OpenCV version 1.0 (April Edition) to be   installed on the target system. The package includes sample stereo images   together with the correspondence points. 
Acknowledgements: The code was provided by Paul Smith.    http://www.cs.ucf.edu/~rps43158/index.php

Mean-Shift Algorithms

   Edge Detection and Image SegmentatiON (EDISON) System (C++ source)    (binary) The EDISON system contains the image segmentation/edge preserving   filtering algorithm described in the paper    Mean shift: A robust approach toward feature space analysis and the edge   detection algorithm described in the paper    Edge detection with embedded confidence. There is also Matlab interface   for the EDISON system at the below link. 
Acknowledgements: The source code is also available from Rutgers:    http://www.caip.rutgers.edu/riul/research/robust.html
   Approximate Mean-Shift Method (C++ code)
   For instructions on using the code please refer to the readme.txt file   included in the zip package. Note the code requires OpenCV to be installed on   the target system. 
Acknowledgements: The code was provided by Alper Yilmaz.    http://www.cs.ucf.edu/~yilmaz/

Kernel Density Estimation

            The KDE class is a general matlab class for k-dimensional kernel density   estimation. It is written in a mix of matlab ".m" files and MEX/C++ code.   Thus, to use it you will need to be able to compile C++ code for Matlab. The   kernels supported are Gaussian, Epanetchnikov and Laplacian. There is a   detailed instruction about how to use it at   http://www.ics.uci.edu/~ihler/code/kde.html

K-Means Algorithms for Data Clustering

         K-Means in Statistics Toolbox (Matlab code) 
The goodness of this code is that it provides the options, such as   'distance measure', 'emptyaction', and 'onlinephase'. It is quit slow when   dealing with large datasets and sometimes memory will be overflow. 
Efficient   K-Means using JIT (Matlab code) 
                This code uses the JIT acceleration in Matlab, so it is much faster than   k-means in the Statistics Toolbox. It is very simple and easy to read.
            Acknowledgements: The code was provided by Yi Cao. 
You can also find it at   http://www.mathworks.com/matlabcentral/fileexchange/19344-efficient-k-means-clustering-using-jit
  K-means from VGG ( C code with Matlab interface)
                                This code calls the c code of k-means. It is the fastest one   among these three and can deal with large dimensional matrix. 
Acknowledgements: The code was provided by Mark Everingham.   http://www.comp.leeds.ac.uk/me

Normalized Cuts

                         You can find the code for data clustering and image segmentation   at    http://www.cis.upenn.edu/~jshi/software/, wich was provided by Jianbo Shi. 

Dimension Reduction

  PCA (Matlab code)   Multidimensional Scaling (Matlab code)

Facial Analysis

   Haar Face Detection (C++ code) For instructions on using the code please   refer to the readme.txt file included in the zip package. Note the code   requires OpenCV and fltk (an open source window toolkit) to be installed on   the target system. 
Acknowledgements: The code was provided by Paul Smith.    http://www.cs.ucf.edu/~rps43158/index.php

Optical Flow

   Lucas Kanade Method (matlab)
This code includes the basic Lucas Kanade algorithm and Hierarchical LK   using pyramids. Please refer to the 'readme' file included in the package for   help on using the code. Following is a test sample to demonstrate the use of   this code to calculate the optical flow. 
Acknowledgements: The code was written by Sohaib Khan.   http://www.cs.ucf.edu/~khan/
   Code from Piotr Dollar (matlab)
        It provides three methods to calculate optical flow: Lucas Kanade, Horn &   Schunck and cross-correlation. 
      Acknowledgements: The code was written by Piotr Dollar.    http://vision.ucsd.edu/~pdollar/toolbox/doc/index.html
Brox and Sand   Methods (matlab)
This code implements a variation of the paper   "High accuracy optical flow using a theory for warping", presented at ECCV   2004. Details of implementation, especially the numerics, have been adapted   from the PhD thesis of Dr. Thomas Brox. Extension to different color channels,   and the concept of a local smoothing function, has been adopted from the PhD   thesis of Dr. Peter Sand.
  Acknowledgements: The code was written by Visesh Uday Kumar Chari.    http://perception.inrialpes.fr/~chari/myweb/Software/

Image Registration

  Registration (matlab)
  Please refer to the 'readme' file included in the package for help on using   the code. Following is a test sample to demonstrate the use of this code for   image registration.
Acknowledgements: The code for image registration along with test samples is   provided by Yaser Sheikh.   http://www.cs.ucf.edu/~yaser/ 

Color Space Transformations

RGB to   LUV (matlab)
LUV to   RGB (matlab)
RGB to   LAB (matlab)

Image Acquisition

VFM   (matlab)
        VFM performs frame grabbing from any Video for Windows source. On directions   to using the code please refer to the code documentation. Acknowledgements:   The code was written by Farzad Pezeshkpour, School of Information Systems,   University of East Anglia.

Miscellaneous

Snakes Demo Page   - (Williams-Shah Snakes Algorithm) Interactive java demo of   Williams-Shah snakes algorithm. Code written by   Sebastian van Delden
Deformable Contours (C++   code)         Code for the greedy snake algorithm. 
Writing Video   ApplicationsD irectShow tutorial.

3D SIFT

3D SIFT   code (Matlab)
This MATLAB code is meant for research purposes   only. 
There have been various changes made to the code since the initial   publication.  Some subtle, some not so subtle.  The most significant change is   the use of a tessellation method to calculate the orientation bins.  Our   testing has shown improved results; however, currently rotational invariance   has not been re-implemented.  Rotational invariance is useful in certain   applications, however it is useless in others, for this reason we have focused   our time elsewhere.  Another noteable change is the elimination of some points   due to lack of descriptive information (multiple gradient orientations).  This   is a change which has a flag, and can therefore be turned on or off, however I   suggest leaving it on and writing your frontend in such a way that allows   3DSIFT to refuse points, as this too has proven very effective in our testing. 
Please see the README file for more detailed and up-to-date information. 
Code from the following publication: 
Paul Scovanner, Saad Ali, and Mubarak Shah,    A 3-Dimensional SIFT Descriptor and its Application to Action Recognition,   ACM MM 2007.

SPREF

SPREF   Code (Matlab)
SPatiotemporal REgularity Flow (SPREF) is a new spatiotemporal feature that   represents the directions in which a video or an image is regular, i.e., the   pixel appearances change the least. It has several application, such as video   inpainting and video compression. For more detail, please refer to our project   page SPREF section. 

FRAISE

FRAISE Code (C/C++)
Fast Registration of Aerial Image SEquences (FRAISE) is a lightweight OpenCV   based software system written in C/C++ to register a sequence of aerial images   in near-realtime. A demo test video video sequence and an image sequence with   corresponding FRAISE alignment are included.
Acknowledgements: The code was written by Subhabrata Bhattacharya.    http://www.cs.ucf.edu/~subh/

Useful Links

        CMU Vision Group: http://www.cs.cmu.edu/~cil/v-source.html
            Camera Calibration Toolbox for Matlab:    http://www.vision.caltech.edu/bouguetj/calib_doc/index.html
        MATLAB Functions for Computer Vision and Image Processing:    http://www.csse.uwa.edu.au/~pk/Research/MatlabFns/
        Visual Geometry Group:    http://www.robots.ox.ac.uk/~vgg/software/
      Please Note: We do not guarantee against the existence of bugs in the code   provided on this website.