OpenCV是一個基于BSD許可(開源)發行的跨平臺計算機視覺庫,可以運行在Linux、Windows、Android和Mac OS操作系統上。它輕量級而且高效——由一系列 C 函數和少量 C++ 類構成,同時提供了Python、Ruby、MATLAB等語言的接口,實現了圖像處理和計算機視覺方面的很多通用算法。
OpenCV用C++語言編寫,它的主要接口也是C++語言,但是依然保留了大量的C語言接口。該庫也有大量的Python、Java and MATLAB/OCTAVE(版本2.5)的接口。這些語言的API接口函數可以通過在線文檔獲得。如今也提供對于C#、Ch、Ruby,GO的支持。
OpenCV提供的視覺處理算法非常豐富,并且它部分以C語言編寫,加上其開源的特性,處理得當,不需要添加新的外部支持也可以完整的編譯鏈接生成執行程序,所以很多人用它來做算法的移植,OpenCV的代碼經過適當改寫可以正常的運行在DSP系統和ARM嵌入式系統中,這種移植在大學中經常作為相關專業本科生畢業設計或者研究生課題的選題。
OpenCV中的Python實現
OpenCV-Python是一個Python綁定庫,旨在解決計算機視覺問題。
Python是一種由Guido van Rossum開發的通用編程語言,它很快就變得非常流行,主要是因為它的簡單性和代碼可讀性。它使程序員能夠用更少的代碼行表達思想,而不會降低可讀性。
與C / C++等語言相比,Python速度較慢。也就是說,Python可以使用C / C++輕松擴展,這使我們可以在C / C++中編寫計算密集型代碼,并創建可用作Python模塊的Python包裝器。
這給我們帶來了兩個好處:首先,代碼與原始C / C++代碼一樣快(因為它是在后臺工作的實際C++代碼),其次,在Python中編寫代碼比使用C / C++更容易。OpenCV-Python是原始OpenCV C++實現的Python包裝器。
OpenCV-Python使用Numpy,這是一個高度優化的數據庫操作庫,具有MATLAB風格的語法。所有OpenCV數組結構都轉換為Numpy數組。這也使得與使用Numpy的其他庫(如SciPy和Matplotlib)集成更容易。
編輯:jq
-
Linux
+關注
關注
87文章
11232瀏覽量
208958 -
WINDOWS
+關注
關注
3文章
3526瀏覽量
88451 -
OpenCV
+關注
關注
30文章
628瀏覽量
41274 -
python
+關注
關注
56文章
4783瀏覽量
84473 -
BSD
+關注
關注
0文章
30瀏覽量
10400
原文標題:opencv視覺軟件
文章出處:【微信號:worldofai,微信公眾號:worldofai】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論