python-compute-vision

所属分类:模式识别(视觉/语音等)
开发工具:Python
文件大小:2276KB
下载次数:40
上传日期:2011-01-09 15:58:35
上 传 者sunbo
说明:  基于python和opencv的机器视觉程序
(Python and opencv based on machine vision program)

文件列表:
CHANGES.txt (4124, 2008-09-01)
LICENSE.txt (37245, 2008-09-01)
pycv (0, 2008-09-01)
pycv\cs (0, 2008-09-01)
pycv\cs\cg (0, 2008-09-01)
pycv\cs\cg\cg.py (5223, 2008-09-01)
pycv\cs\cg\info.py (1236, 2008-09-01)
pycv\cs\cg\setup.py (5529, 2008-09-01)
pycv\cs\cg\tests (0, 2008-09-01)
pycv\cs\cg\tests\test_cg.py (2919, 2008-09-01)
pycv\cs\cg\__init__.py (1175, 2008-09-01)
pycv\cs\cs.py (1934, 2008-09-01)
pycv\cs\cv (0, 2008-09-01)
pycv\cs\cv\cv.py (3416, 2008-09-01)
pycv\cs\cv\data (0, 2008-09-01)
pycv\cs\cv\data\cvpr07.jpg (323937, 2008-09-01)
pycv\cs\cv\data\face-detection-cascade-fastest.txt (77955, 2008-09-01)
pycv\cs\cv\data\testface.jpg (26784, 2008-09-01)
pycv\cs\cv\data\testface2.jpg (18009, 2008-09-01)
pycv\cs\cv\data\testface3.jpg (135954, 2008-09-01)
pycv\cs\cv\detect.py (21406, 2008-09-01)
pycv\cs\cv\face (0, 2008-09-01)
pycv\cs\cv\face\frontalface_dset.py (10579, 2008-09-01)
pycv\cs\cv\face\info.py (1240, 2008-09-01)
pycv\cs\cv\face\setup.py (4316, 2008-09-01)
pycv\cs\cv\face\tests (0, 2008-09-01)
pycv\cs\cv\face\tests\test_frontalface_dset.py (2952, 2008-09-01)
pycv\cs\cv\face\__init__.py (1189, 2008-09-01)
pycv\cs\cv\features (0, 2008-09-01)
pycv\cs\cv\features\haar.py (12778, 2008-09-01)
pycv\cs\cv\features\info.py (1865, 2008-09-01)
pycv\cs\cv\features\setup.py (7056, 2008-09-01)
pycv\cs\cv\features\sr.py (7023, 2008-09-01)
pycv\cs\cv\features\tests (0, 2008-09-01)
pycv\cs\cv\features\tests\test_haar.py (1974, 2008-09-01)
pycv\cs\cv\features\tests\test_sr.py (1346, 2008-09-01)
pycv\cs\cv\features\__init__.py (1195, 2008-09-01)
pycv\cs\cv\imageview.py (4608, 2008-09-01)
pycv\cs\cv\info.py (1229, 2008-09-01)
pycv\cs\cv\integralimage.py (5337, 2008-09-01)
... ...

.. -*- rest -*- ========================================================================================= PyCV - A Computer Vision Package for Python Incorporating Fast Training of Face Detection ========================================================================================= :Website: http://www.ntu.edu.sg/home5/pham0004/pycv/ :Authors: Minh-Tri Pham , Viet-Dung D. Hoang , Tat-Jen Cham :Version: 0.3.0 (devel) :Released: September 2008 .. Contents:: Overview ======== PyCV is a package of C++ and Python modules implementing various algorithms that are useful in computer vision, and augments the capabilities of OpenCV. In particular, PyCV provides implementations for: - Fast training and selection of Haar-like features for a weak classifier [Pham2007b]_. This is currently the world's fastest method for training a face detector. It runs in just a few hours, while most existing methods run in days or weeks. - Multi-exit Asymmetric Boosting [Pham2008]_: a variant of AdaBoost that learns a cascade more optimally than traditional cascade learning methods. - Asymmetric Online Boosting [Pham2007a]_: a variant of AdaBoost that learns incrementally using an asymmetric goal as the learning criterion. Additionally, PyCV contains many useful modules for computer vision and machine learning, specially boosting techniques, Haar-like features, and face detection. The package is primarily developed by Minh-Tri Pham, as part of his PhD research on face detection. This research is being carried out in the Centre for Multimedia & Network Technology (CeMNet), School of Computer Engineering, Nanyang Technological University, Singapore. Copyright 2007 Nanyang Technological University, Singapore. :Founding Contributors: Minh-Tri Pham -- Primary author Viet-Dung D. Hoang -- Contributing author Tat-Jen Cham -- Supervising faculty Features ======== The main features of PyCV are: - Interface: - A Python interface to OpenCV (improved from Gary Bishop's version) - Face Detection: - Haar-like features and their generalized Sparse Rectangular features - Integral image - Cascade for Object detection and Multi-exit Boosted Classifier [Pham2008]_ - Face detection - Fast training of Haar-like weak classifier for object detection [Pham2007b]_ - Boosting: - Offline boosting: AdaBoost, Viola-Jones’ AdaBoost [Viola2002]_, AdaBoost skewness balancing [Pham2007a]_, and Multi-exit Asymmetric Boosting [Pham2008]_ - Online boosting: Oza-Russel’s Online Boosting [Oza2005]_, Asymmetric Online Boosting [Pham2007a]_ - Linear Discriminant Analysis, Stump, Naive Bayes classifier Download ======== Release 0.2.2 is the current Stable Release of PyCV. It comes with three file releases: - Source installation for Linux/ Windows (32-bit) - Install `PyCV 0.2.2 tarball `_ - Binary installation for Windows (32-bit) - Install `PyCV 0.2.2 for Python 2.5 `_ - Source release of a demo package of PyCV - Install `demo for PyCV 0.2.2 tarball `_ Release 0.3.0 is the current Development Release of PyCV. It is available at sourceforge, in the Download section: https://sourceforge.net/project/showfiles.php?group_id=211653 What's New? =========== Please find the release notes in file 'CHANGES.txt' in the package. Installation ============ Requirements ------------ - **OpenCV 1.0.0**, but only the DLLs (Windows), or SOs (Linux), or dylibs (MacOS) are needed. PyCV interfaces with OpenCV via CVtypes of Gary Bishop. Note that for Windows, CVtypes needs to locate the following files of OpenCV: - cxcore100.dll - cv100.dll - highgui100.dll - libguide40.dll Therefore, the path to these files must be included in your system's PATH environment variable. The fastest way is just to copy these files to your \SYSTEM32 folder. Similarly, for Linux and MacOS, you should have the path to the dynamically linked libraries included in your system's PATH environment variable. - **Python 2.5 or later** - **SciPy 0.6.0 or later** - **NumPy 1.0.3 or later** It is highly recommended that you should install an optimized implementation of BLAS like ATLAS or GotoBLAS along with your NumPy. PyCV can detect, and heavily use if available, the BLAS implementation in your NumPy. - **Gcc or MinGW for a source release** If you install from a source release, a standard C99-compliant C++ compiler is needed. Currently, only gcc and mingw are supported. msvc and icc will be supported in the near future, when SciPy can be robustly built with them. PyCV always uses the default C++ compiler that SciPy uses for compiling C++ source files. If you install from a binary release, no C++ compiler is needed. However, the binary release was compiled using MinGW (gcc 4.2.1) with no optimized BLAS. Thus, the running speed may not be that fast for optimized C++ functions using BLAS. Operating Systems ----------------- - Windows (tested on XP and Vista) - Linux (tested on Ubuntu 7.04) - Support for MacOS is only partially supported, mainly due to not being well-supported by SciPy, OpenCV and CVtypes. We are still experimenting PyCV with MacOS. PyCV uses SciPy's setuptools(distutils) to install and distribute the package. For more information of how to distribute or install a package using distutils, we refer to Python's distutils module at http://docs.python.org/lib/module-distutils.html For example, to install from a source release:: python setup.py install After installing, remember to go to another folder. Just like NumPy and SciPy, PyCV cannot be run directly from its source folder. Demo ==== A separate package called pycv_demo can be downloaded, and run with:: python demo.py If you run on Linux, you might experience a blank screen in the video demo session. This is because OpenCV for Linux uses a single thread for both processing and rendering. Hence, it does not render fast enough when cvWaitKey() is called. To avoid this from happening, try:: python demo.py –d 10 The command runs the video demo session with 10 milliseconds delay per frame. Replace 10 with a larger number if the problem persists. Documentation ============= PyCV has been being documented directly in the source code using docstring, the same way that a large number of packages, like NumPy and SciPy, use. We are currently converting existing docstrings to the new reStructuredText format and write them for those that currently lack docstrings. To get help of a module, type:: help(module_name) in your Python interpreter. - `PyCV API Documentation `_ –- autogenerated using `epydoc `_ - A tutorial on using PyCV to train and run a face detector -- coming soon. We are in a process of simplifying PyV's interface so that you can use as few calls as possible to train and run a face detector. This will take a while but we hope it will be worth waiting. Testing ======= There are various unit tests for different modules in the package. Unit tests for module xyzt.py, for instance, are located in module tests\test_xyzt.py of the same folder. If you need examples of using the package, check these unit test modules. At the time we released PyCV 0.3.0, the SciPy community had released NumPy 1.1.1 and SciPy 0.6.0 and was about to release NumPy 1.2.0. However, since NumPy 1.2.0, the SciPy community has decided to use a different package called 'nose' for a robust testing system. This has improved the way unit tests are run, but requires user to install the package to run tests. More details can be found at this link:: http://www.scipy.org/scipy/scipy/wiki/TestingGuidelines To cope with the future releases of SciPy/NumPy, we decided to utilize NumPy 1.2.0 and later in PyCV starting from version 0.3.0. Therefore, the commands for running PyCV's tests are slightly different from those of previous versions. Before running a test, you need to install `package nose `_. You would not need to install it if you decided not to run a test. For a simple and fast test:: python -c "import pycv; pycv.test()" For a thorough test that can take up to an hour:: python -c "import pycv; pycv.test('full')" The tests may give many warnings but do not panic. Most of them are harmless. If you do not observe any Error or Exception returned, then PyCV can be safely used in your platform. You do not need to run a thorough test. It is useful for developers only. License ======= Currently, PyCV is released under the GNU General Public License version 3 as follows: *PyCV is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.* *PyCV is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.* *You should have received a copy of the GNU General Public License along with PyCV. If not, see .* *In addition, some source files of PyCV require extra attributive terms regarding published results. Please read them carefully before using.* Contact us ========== Email your inquiries to Minh-Tri Pham at mtpham@ntu.edu.sg (mtpham at ntu dot edu dot sg) References ========== .. [Pham2008] Minh-Tri Pham and Viet-Dung D. Hoang and Tat-Jen Cham. Detection with Asymmetric Boosting. In Proc. IEEE Computer Society Conference on Computer Vision and Pattern Recognition (CVPR'08), Anchorage, AK, 2008. .. [Pham2007a] Minh-Tri Pham and Tat-Jen Cham. Online Learning Asymmetric Boosted Classifiers for Object Detection. In Proc. IEEE Computer Society Conference on Computer Vision and Pattern Recognition (CVPR'07), Minneapolis, MN, 2007. .. [Pham2007b] Minh-Tri Pham and Tat-Jen Cham. Fast Training and Selection of Haar features using Statistics in Boosting-based Face Detection. In Proc. 11th IEEE International Conference on Computer Vision (ICCV'07), Rio de Janeiro, Brazil, 2007. .. [Oza2005] N. Oza. Online bagging and boosting. In Int. Conf. on Systems, Man and Cybernetics, volume 3, pages 2340–2345, 2005. .. [Viola2002] P. Viola and M. Jones. Fast and robust classification using asymmetric adaboost and a detector cascade. In NIPS. MIT Press, Cambridge, MA, 2002.

近期下载者

相关文件


收藏者