OpenCV是一個(gè)基于BSD許可(開(kāi)源)發(fā)行的跨平臺(tái)計(jì)算機(jī)視覺(jué)庫(kù),可以運(yùn)行在Linux、Windows、Android和Mac OS操作系統(tǒng)上。它輕量級(jí)而且高效——由一系列 C 函數(shù)和少量 C++ 類(lèi)構(gòu)成,同時(shí)提供了Python、Ruby、MATLAB等語(yǔ)言的接口,實(shí)現(xiàn)了圖像處理和計(jì)算機(jī)視覺(jué)方面的很多通用算法。
OpenCV用C++語(yǔ)言編寫(xiě),它的主要接口也是C++語(yǔ)言,但是依然保留了大量的C語(yǔ)言接口。該庫(kù)也有大量的Python、Java and MATLAB/OCTAVE(版本2.5)的接口。這些語(yǔ)言的API接口函數(shù)可以通過(guò)在線(xiàn)文檔獲得。如今也提供對(duì)于C#、Ch、Ruby,GO的支持。
OpenCV提供的視覺(jué)處理算法非常豐富,并且它部分以C語(yǔ)言編寫(xiě),加上其開(kāi)源的特性,處理得當(dāng),不需要添加新的外部支持也可以完整的編譯鏈接生成執(zhí)行程序,所以很多人用它來(lái)做算法的移植,OpenCV的代碼經(jīng)過(guò)適當(dāng)改寫(xiě)可以正常的運(yùn)行在DSP系統(tǒng)和ARM嵌入式系統(tǒng)中,這種移植在大學(xué)中經(jīng)常作為相關(guān)專(zhuān)業(yè)本科生畢業(yè)設(shè)計(jì)或者研究生課題的選題。
OpenCV中的Python實(shí)現(xiàn)
OpenCV-Python是一個(gè)Python綁定庫(kù),旨在解決計(jì)算機(jī)視覺(jué)問(wèn)題。
Python是一種由Guido van Rossum開(kāi)發(fā)的通用編程語(yǔ)言,它很快就變得非常流行,主要是因?yàn)樗暮?jiǎn)單性和代碼可讀性。它使程序員能夠用更少的代碼行表達(dá)思想,而不會(huì)降低可讀性。
與C / C++等語(yǔ)言相比,Python速度較慢。也就是說(shuō),Python可以使用C / C++輕松擴(kuò)展,這使我們可以在C / C++中編寫(xiě)計(jì)算密集型代碼,并創(chuàng)建可用作Python模塊的Python包裝器。
這給我們帶來(lái)了兩個(gè)好處:首先,代碼與原始C / C++代碼一樣快(因?yàn)樗窃诤笈_(tái)工作的實(shí)際C++代碼),其次,在Python中編寫(xiě)代碼比使用C / C++更容易。OpenCV-Python是原始OpenCV C++實(shí)現(xiàn)的Python包裝器。
OpenCV-Python使用Numpy,這是一個(gè)高度優(yōu)化的數(shù)據(jù)庫(kù)操作庫(kù),具有MATLAB風(fēng)格的語(yǔ)法。所有OpenCV數(shù)組結(jié)構(gòu)都轉(zhuǎn)換為Numpy數(shù)組。這也使得與使用Numpy的其他庫(kù)(如SciPy和Matplotlib)集成更容易。
編輯:jq
-
Linux
+關(guān)注
關(guān)注
87文章
11207瀏覽量
208714 -
WINDOWS
+關(guān)注
關(guān)注
3文章
3521瀏覽量
88317 -
OpenCV
+關(guān)注
關(guān)注
29文章
624瀏覽量
41214 -
python
+關(guān)注
關(guān)注
55文章
4767瀏覽量
84375 -
BSD
+關(guān)注
關(guān)注
0文章
30瀏覽量
10390
原文標(biāo)題:opencv視覺(jué)軟件
文章出處:【微信號(hào):worldofai,微信公眾號(hào):worldofai】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論