機器視覺開源處理庫彙總-介紹n款計算機視覺庫/人臉識別開源庫/軟件 -幾種圖像處理類庫的比較-視覺相關網站

原文鏈接: http://www.cnblogs.com/ajian005/archive/2012/11/04/2841171.html

機器視覺開源處理庫彙總


cvchina搞到的機器視覺開源處理庫彙總,轉來了,很給力,還在不斷更新。。。

通用庫/General Library

無需多言。

Recognition And Vision Library. 線程安全。強大的IO機制。包含AAM。

很酷的一個圖像處理包。整個庫只有一個頭文件。包含一個基於PDE的光流算法。

圖像,視頻IO/Image, Video IO

AR相關/Augmented Reality

基於Marker的AR庫

ARToolKit的增強版。實現了更好的姿態估計算法。

實時的跟蹤、SLAM、AR庫。無需Marker,模板,內置傳感器等。

基於特徵點檢測和識別的AR庫。

局部不變特徵/Local Invariant Feature

目前最好的Sift開源實現。同時包含了KD-tree,KD-Forest,BoW實現。

基於Naive Bayesian Bundle的特徵點識別。高速,但佔用內存高。

基於OpenCV的Sift實現。

目標檢測/Object Detection

又一個AdaBoost實現。訓練速度快。

基於Centrist和Linear SVM的快速行人檢測。

(近似)最近鄰/ANN

目前最完整的(近似)最近鄰開源庫。不但實現了一系列查找算法,還包含了一種自動選取最快算法的機制。

另外一個近似最近鄰庫。

SLAM & SFM

monoSLAM庫。由Androw Davison開發。

圖像分割/Segmentation

使用Simple Linear Iterative Clustering產生指定數目,近似均勻分佈的Super Pixel。

目標跟蹤/Tracking

基於Online Random Forest的目標跟蹤算法。

Kanade-Lucas-Tracker

Online Boosting Trackers

直線檢測/Line Detection

基於聯通域連接的直線檢測算法。

基於梯度的,局部直線段檢測算子。

指紋/Finger Print

基於感知的多媒體文件Hash算法。(提取,對比圖像、視頻、音頻的指紋)

視覺顯著性/Visual Salience

Ming-Ming Cheng的視覺顯著性算法。

FFT/DWT

最快,最好的開源FFT。

輕量級的FFT實現。許可證是亮點。

音頻處理/Audio processing

音頻處理,音頻合成。

音頻文件IO。

音頻重採樣。

小波變換

快速小波變換(FWT)

BRIEF: Binary Robust Independent Elementary Feature 一個很好的局部特徵描述子,裏面有FAST corner + BRIEF實現特徵點匹配的DEMO:http://cvlab.epfl.ch/software/brief/

http://code.google.com/p/javacv


Java打包的OpenCV, FFmpeg, libdc1394, PGR FlyCapture, OpenKinect, videoInput, and ARToolKitPlus庫。可以放在Android上用~

 

libHIK,HIK SVM,計算HIK SVM跟Centrist的Lib。http://c2inet.sce.ntu.edu.sg/Jianxin/projects/libHIK/libHIK.htm

 

一組視覺顯著性檢測代碼的鏈接:http://cg.cs.tsinghua.edu.cn/people/~cmm/saliency/



介紹n款計算機視覺庫/人臉識別開源庫/軟件

計算機視覺庫 OpenCV

OpenCV是Intel®開源計算機視覺庫。它由一系列 C 函數和少量 C++ 類構成,實現了圖像處理和計算機視覺方面的很多通用算法。 OpenCV 擁有包括 300 多個C函數的跨平臺的中、高層 API。它不依賴於其它的外部庫——儘管也可以使用某些外部庫。 OpenCV 對非商業...

人臉識別 faceservice.cgi

faceservice.cgi 是一個用來進行人臉識別的 CGI 程序, 你可以通過上傳圖像,然後該程序即告訴你人臉的大概座標位置。faceservice是採用 OpenCV 庫進行開發的。

OpenCV的.NET版 OpenCVDotNet

OpenCVDotNet 是一個 .NET 對 OpenCV 包的封裝。

人臉檢測算法 jViolajones

jViolajones是人臉檢測算法Viola-Jones的一個Java實現,並能夠加載OpenCV XML文件。 示例代碼:http://www.oschina.net/code/snippet_12_2033

Java視覺處理庫 JavaCV

JavaCV 提供了在計算機視覺領域的封裝庫,包括:OpenCV、ARToolKitPlus、libdc1394 2.x 、PGR FlyCapture和FFmpeg。此外,該工具可以很容易地使用Java平臺的功能。 JavaCV還帶有硬件加速的全屏幕圖像顯示(CanvasFrame),易於在多個內核中執行並行代碼(並...

運動檢測程序 QMotion

QMotion 是一個採用 OpenCV 開發的運動檢測程序,基於 QT。

視頻監控系統 OpenVSS

OpenVSS - 開放平臺的視頻監控系統 - 是一個系統級別的視頻監控軟件視頻分析框架(VAF)的視頻分析與檢索和播放服務,記錄和索引技術。它被設計成插件式的支持多攝像頭平臺,多分析儀模塊(OpenCV的集成),以及多核心架構。

手勢識別 hand-gesture-detection

手勢識別,用OpenCV實現

人臉檢測識別 mcvai-tracking

提供人臉檢測、識別與檢測特定人臉的功能,示例代碼 cvReleaseImage( &gray ); cvReleaseMemStorage(&storage); cvReleaseHaarClassifierCascade(&cascade);...

人臉檢測與跟蹤庫 asmlibrary

Active Shape Model Library (ASMLibrary©) SDK, 用OpenCV開發,用於人臉檢測與跟蹤。

Lua視覺開發庫 libecv

ECV 是 lua 的計算機視覺開發庫(目前只提供linux支持)

OpenCV的.Net封裝 OpenCVSharp

OpenCVSharp 是一個OpenCV的.Net wrapper,應用最新的OpenCV庫開發,使用習慣比EmguCV更接近原始的OpenCV,有詳細的使用樣例供參考。

3D視覺庫 fvision2010

基於OpenCV構建的圖像處理和3D視覺庫。 示例代碼: ImageSequenceReaderFactory factory; ImageSequenceReader* reader = factory.pathRegex("c:/a/im_%03d.jpg", 0, 20); //ImageSequenceReader* reader = factory.avi("a.avi"); if (reader == NULL) { ...

基於QT的計算機視覺庫 QVision

基於 QT 的面向對象的多平臺計算機視覺庫。可以方便的創建圖形化應用程序,算法庫主要從 OpenCV,GSL,CGAL,IPP,Octave 等高性能庫借鑑而來。

圖像特徵提取 cvBlob

cvBlob 是計算機視覺應用中在二值圖像裏尋找連通域的庫.能夠執行連通域分析與特徵提取.

實時圖像/視頻處理濾波開發包 GShow

GShow is a real-time image/video processing filter development kit. It successfully integrates DirectX11 with DirectShow framework. So it has the following features: GShow 是實時 圖像/視頻 處理濾波開發包,集成DiretX11。...

視頻捕獲 API VideoMan

VideoMan 提供一組視頻捕獲 API 。支持多種視頻流同時輸入(視頻傳輸線、USB攝像頭和視頻文件等)。能利用 OpenGL 對輸入進行處理,方便的與 OpenCV,CUDA 等集成開發計算機視覺系統。

開放模式識別項目 OpenPR

Pattern Recognition project(開放模式識別項目),致力於開發出一套包含圖像處理、計算機視覺、自然語言處理、模式識別、機器學習和相關領域算法的函數庫。

OpenCV的Python封裝 pyopencv

OpenCV的Python封裝,主要特性包括: 提供與OpenCV 2.x中最新的C++接口極爲相似的Python接口,並且包括C++中不包括的C接口 提供對OpenCV 2.x中所有主要部件的綁定:CxCORE (almost complete), CxFLANN (complete), Cv (complete), CvAux (C++ part almost...

視覺快速開發平臺 qcv

計算機視覺快速開發平臺,提供測試框架,使開發者可以專注於算法研究。

圖像捕獲 libv4l2cam

對函數庫v412的封裝,從網絡攝像頭等硬件獲得圖像數據,支持YUYV裸數據輸出和BGR24的OpenCV  IplImage輸出

計算機視覺算法 OpenVIDIA

OpenVIDIA projects implement computer vision algorithms running on on graphics hardware such as single or multiple graphics processing units(GPUs) using OpenGL, Cg and CUDA-C. Some samples will soon support OpenCL and Direct Compute API'...

高斯模型點集配准算法 gmmreg

實現了基於混合高斯模型的點集配准算法,該算法描述在論文: A Robust Algorithm for Point Set Registration Using Mixture of Gaussians, Bing Jian and Baba C. Vemuri. ,實現了C++/Matlab/Python接口...

模式識別和視覺庫 RAVL

Recognition And Vision Library (RAVL) 是一個通用 C++ 庫,包含計算機視覺、模式識別等模塊。

圖像處理和計算機視覺常用算法庫 LTI-Lib

LTI-Lib 是一個包含圖像處理和計算機視覺常用算法和數據結構的面向對象庫,提供 Windows 下的 VC 版本和 Linux 下的 gcc 版本,主要包含以下幾方面內容: 1、線性代數 2、聚類分析 3、圖像處理 4、可視化和繪圖工具

OpenCV優化 opencv-dsp-acceleration

優化了OpenCV庫在DSP上的速度。

C++計算機視覺庫 Integrating Vision Toolkit

Integrating Vision Toolkit (IVT) 是一個強大而迅速的C++計算機視覺庫,擁有易用的接口和麪向對象的架構,並且含有自己的一套跨平臺GUI組件,另外可以選擇集成OpenCV

計算機視覺和機器人技術的工具包 EGT

The Epipolar Geometry Toolbox (EGT) is a toolbox designed for Matlab (by Mathworks Inc.). EGT provides a wide set of functions to approach computer vision and robotics problems with single and multiple views, and with different vision se...

OpenCV的擴展庫 ImageNets

ImageNets 是對OpenCV 的擴展,提供對機器人視覺算法方面友好的支持,使用Nokia的QT編寫界面。

libvideogfx

視頻處理、計算機視覺和計算機圖形學的快速開發庫。

Matlab計算機視覺包 mVision

Matlab 的計算機視覺包,包含用於觀察結果的 GUI 組件,貌似也停止開發了,拿來做學習用挺不錯的。

Scilab的計算機視覺庫 SIP

SIP 是 Scilab(一種免費的類Matlab編程環境)的圖像處理和計算機視覺庫。SIP 可以讀寫 JPEG/PNG/BMP 格式的圖片。具備圖像濾波、分割、邊緣檢測、形態學處理和形狀分析等功能。

STAIR Vision Library

STAIR Vision Library (SVL) 最初是爲支持斯坦福智能機器人設計的,提供對計算機視覺、機器學習和概率統計模


幾種圖像處理類庫的比較

作者:王先榮

原文;http://www.cnblogs.com/xrwang/archive/2010/01/26/TheComparisonOfImageProcessingLibraries.html

前言

近期需要做一些圖像處理方面的學習和研究,首要任務就是選擇一套合適的圖像處理類庫。目前較知名且功能完善的圖像處理類庫有OpenCvEmguCvAForge.net等等。本文將從許可協議、下載、安裝、文檔資料、易用性、性能等方面對這些類庫進行比較,然後給出選擇建議,當然也包括我自己的選擇。

 

許可協議

類庫 許可協議 許可協議網址 大致介紹
OpenCv BSD www.opensource.org/licenses/bsd-license.html 在保留原來BSD協議聲明的前提下,隨便怎麼用都行
EmguCv GPL v3 http://www.gnu.org/licenses/gpl-3.0.txt 你的產品必須也使用GPL協議,開源且免費
商業授權 http://www.emgu.com/wiki/files/CommercialLicense.txt 給錢之後可以用於閉源的商業產品
AForge.net LGPL v3 http://www.gnu.org/licenses/lgpl.html 如果不修改類庫源代碼,引用該類庫的產品可以閉源和(或)收費

以上三種類庫都可以用於開發商業產品,但是EmguCv需要付費;因爲我只是用來學習和研究,所以這些許可協議對我無所謂。不過鑑於我們身在中國,如果臉皮厚點,去他丫的許可協議。

 

下載

可以很方便的下載到這些類庫,下載地址分別爲:

類庫

下載地址

OpenCv

http://sourceforge.net/projects/opencvlibrary/files/

EmguCv

http://www.emgu.com/wiki/index.php/Download_And_Installation

AForge.net

http://www.aforgenet.com/framework/downloads.html

 

安裝

這些類庫的安裝都比較簡單,直接運行安裝程序,並點“下一步”即可完成。但是OpenCv在安裝完之後還需要一些額外的處理才能在VS2008裏面使用,在http://www.opencv.org.cn有一篇名爲《VC2008 Express下安裝OpenCv 2.0》的文章專門介紹瞭如何安裝OpenCv

類庫

安裝難易度

備註

OpenCv

比較容易

VC下使用需要重新編譯

EmguCv

容易

 

AForge.net

容易

 

相信看這篇文章的人都不會被安裝困擾。

 

文檔資料 

類庫

總體評價

書籍

網站

文檔

示例

社區

備註

OpenCv

中等

中英文

中英文

中英文

較多

中文論壇

有中文資料但不完整

EmguCv

英文

英文

英文論壇

論壇人氣很差

AForge.net

英文

英文

英文論壇

論壇人氣很差

OpenCv有一些中文資料,另外兩種的資料全是英文的;不過EmguCv建立在OpenCv的基礎上,大部分OpenCv的資料可以用於EmguCv;而AForge.net是原生的.net類庫,對GDI+有很多擴展,一些MSDN的資料可以借鑑。如果在查詞典的基礎上還看不懂英文文檔,基本上可以放棄使用這些類庫了。

 

易用性

易用性這玩意,主觀意志和個人能力對它影響很大,下面是我的看法:

類庫

易用性

備註

OpenCv

比較差

OpenCv大多數功能都以C風格函數形式提供,少部分功能以C++類提供。注意:2.0版將更多的功能封裝成類了。

EmguCv

比較好

OpenCv的絕大部分功能都包裝成了.net類、結構或者枚舉。不過文檔不全,還是得對照OpenCv的文檔去看才行。

AForge.net

.net類庫,用起來很方便。

最近幾年一直用的是C# ,把CC++忘記得差不多了,況且本來C/C++我就不太熟,所以對OpenCv的看法恐怕有偏見。


視覺相關網站


這段時間因爲項目的需要,我一直在折騰計算機視覺,尤其是雙目立體視覺,代碼、論文、工具箱等……佔用了我幾乎90%的工作時間,還在一點點地摸索,但進度實在不敢恭維,稍後我會把情況作個總結。

 

今天的主要任務就是和大家分享一些鄙人收藏的認爲相當研究價值的網頁:

 

Oxford大牛:Andrew Zisserman,http://www.robots.ox.ac.uk/~vgg/hzbook/code/,此人主要研究多幅圖像的幾何學,該網站提供了部分工具,相當實用,還有例子

 

西澳大利亞大學的Peter Kovesi:http://www.csse.uwa.edu.au/~pk/research/matlabfns/,提供了一些基本的matlab工具,主要內容涉及Computer Vision, Image Processing

 

CMU:http://www.cs.cmu.edu/afs/cs/project/cil/ftp/html/vision.html,該網站是我的最愛,尤其後面這個地址http://www.cs.cmu.edu/afs/cs/project/cil/ftp/html/v-groups.html,在這裏提供了世界各地機構、大學在Computer Vision所涉及各領域的研究情況,包括Image Processing, Machine Vision,我後來也是通過它連接到了很多國外的網站

 

Cambridge:http://mi.eng.cam.ac.uk/milab.html,這是劍橋大學的機器智能實驗室,裏面有三個小組,Computer Vision & Robotics, Machine Intelligence, Speech,目前爲止,Computer Vision & Robotics的一些研究成果對我日後的幫助可能會比較大,所以在此提及

 

大量計算機視覺方面的原版電子書:http://homepages.inf.ed.ac.uk/rbf/CVonline/books.htm,我今天先下了本Zisserman的書,呵呵,國外的原版書,雖然都是比較老的,但是對於基礎的理解學習還是很有幫助的,至於目前的研究現狀只能通過論文或者一些研究小組的網站

 

stanford:http://ai.stanford.edu/~asaxena/reconstruction3d/,這個網站是Andrew N.G老師和一個印度阿三的博士一起維護的,主要對於單張照片的三維重建,尤其他有個網頁make3d.stanford.edu可以讓你自己上傳你的照片,通過網站來重建三維模型,這個網站對於剛開始接觸Computer Vision的我來說,如獲至寶,但有個致命問題就是make3d已經無法註冊,我也多次給Andrew和印度阿三email,至今未回,鬱悶,要是有這個網站的帳號,那還是相當爽的,不知道是不是由於他們的郵箱把我的email當成垃圾郵件過濾,哎,但這個stanford網站的貢獻主要是代碼,有很多computer vision的基礎工具,貌似40M左右,全都是基於matlab的

 

caltech:http://www.vision.caltech.edu/bouguetj/calib_doc/,這是我們Computer Vision老師課件上的連接,主要是用於攝像機標定的工具集,當然也有涉及對標定圖像三維重建的前期處理過程

 

JP Tarel:http://perso.lcpc.fr/tarel.jean-philippe/,這是他的個人主頁,也是目前爲止我發的email中,唯一一個給我回信的老外,因爲我需要重建練習的正是他的圖片集,我讀過他的論文,但沒有涉及代碼的內容,再加上又是94年以前的論文,很多相關的引文,我都無法下載,在我的再三追問下,Tarel教授只告訴我,你可以按照我的那篇論文對足球進行重建,可是...你知道嗎,你有很多圖像處理的引文都下不了了,我只知道你通過那篇文章做了圖像的預處理,根本不知道具體過程,當然我有幸找到過一篇90左右的論文,講的是region-based segmentation,可是這文章裏所有引文又是找不到的....悲劇的人生

 

開源軟件網站:www.sourceforge.net

 

最後就是我們工大的Computer Vision大牛:sychen.com,我們Computer Vision課的老師,謙虛、低調,很有學者風範

 

總結:目前爲止,我的個人感覺就是國外學者的論文包括刊登的資料大部分都是對原理進行的說明,並不是很在意具體的代碼實現的講解,而我卻過分的關注於代碼的實現,忽視Computer Vision的原理,國外學者對與自己相關領域的研究現狀瞭解相當充分,對自己的工作進度更新也很勤快,很多好的網站我並沒有完全列出來,在這裏只是提了主要的幾個,在這方面,我們國內的研究氛圍有所不及,當然我選擇的一些網站可能更多的是個人小組的研究介紹,不像一些專門從事領域研究的機構,會有那麼多的權威資料,國外的網站有個很好的地方,就是有很多的免費資源,免費的matlab或者openCV工具集,免費的論文下載,課件下載等等,在這方面國內對於研究資源的共享,做得又有所差距,同樣,國外的研究工具很多樣,主要是matlab,一些發佈的demo都使用C++寫的,不過今天看到一個西班牙的研究機構(university of las palmas)用了個XMW的軟件平臺來實現圖片的三維重建,data用的是人臉,而且國外的很多源代碼基本上是在linux平臺下完成的,對於我來說又是不方便,哎,可能要考慮裝VM Ware了,不然雙系統太累.....

 

目前,Computer Vision是全世界範圍內自動化、計算機、數學領域的研究熱點,綜合性高,應用於醫療、軍事、民用等等領域,其中有突出成績的還是一下幾所學校(個人見解):Cambridge(UK), Oxford(UK), CMU(US),Stanford(US),MIT(US),U.C.Berkeley(US),而UK的兩所老牌高校,他們的實際應用領域絲毫不遜於stanford和CMU....

 

世界就是這樣,當你不斷的接觸,不斷的擴展你所能夠及的邊際就會發現自己越來越無知,還有很多很多不知道,發現還有很多自己都想不到但卻已經實現的東西.....

 

革命遠未成功,同志仍須努力,在CV的道路上前進.......


發佈了105 篇原創文章 · 獲贊 13 · 訪問量 26萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章