更新時(shí)間:2021-05-26 來源:黑馬程序員 瀏覽量:
OpenCV是一款由Intel公司俄羅斯團(tuán)隊(duì)發(fā)起并參與和維護(hù)的一個(gè)計(jì)算機(jī)視覺處理開源軟件庫,支持與計(jì)算機(jī)視覺和機(jī)器學(xué)習(xí)相關(guān)的眾多算法,并且正在日益擴(kuò)展。
OpenCV的優(yōu)勢(shì):
·編程語言
OpenCV基于C++實(shí)現(xiàn),同時(shí)提供python, Ruby, Matlab等語言的接口。OpenCV-Python是OpenCV的Python API,結(jié)合了OpenCV C++ API和Python語言的最佳特性。
·跨平臺(tái)
可以在不同的系統(tǒng)平臺(tái)上使用,包括Windows,Linux,OS X,Android和iOS?;贑UDA和OpenCL的高速GPU操作接口也在積極開發(fā)中
·活躍的開發(fā)團(tuán)隊(duì)
·豐富的API
完善的傳統(tǒng)計(jì)算機(jī)視覺算法,涵蓋主流的機(jī)器學(xué)習(xí)算法,同時(shí)添加了對(duì)深度學(xué)習(xí)的支持。
OpenCV-Python是一個(gè)Python綁定庫,旨在解決計(jì)算機(jī)視覺問題。
Python是一種由Guido van Rossum開發(fā)的通用編程語言,它很快就變得非常流行,主要是因?yàn)樗暮唵涡院痛a可讀性。它使程序員能夠用更少的代碼行表達(dá)思想,而不會(huì)降低可讀性。
與C / C++等語言相比,Python速度較慢。也就是說,Python可以使用C / C++輕松擴(kuò)展,這使我們可以在C / C++中編寫計(jì)算密集型代碼,并創(chuàng)建可用作Python模塊的Python包裝器。這給我們帶來了兩個(gè)好處:首先,代碼與原始C / C++代碼一樣快(因?yàn)樗窃诤笈_(tái)工作的實(shí)際C++代碼),其次,在Python中編寫代碼比使用C / C++更容易。OpenCV-Python是原始OpenCV C++實(shí)現(xiàn)的Python包裝器。
OpenCV-Python使用Numpy,這是一個(gè)高度優(yōu)化的數(shù)據(jù)庫操作庫,具有MATLAB風(fēng)格的語法。所有OpenCV數(shù)組結(jié)構(gòu)都轉(zhuǎn)換為Numpy數(shù)組。這也使得與使用Numpy的其他庫(如SciPy和Matplotlib)集成更容易。
安裝OpenCV之前需要先安裝numpy, matplotlib。
創(chuàng)建Python虛擬環(huán)境cv, 在cv中安裝即可。
先安裝OpenCV-Python, 由于一些經(jīng)典的算法被申請(qǐng)了版權(quán),新版本有很大的限制,所以選用3.4.3以下的版本
pip install opencv-python==3.4.2.17
現(xiàn)在可以測試下是否安裝成功,運(yùn)行以下代碼無報(bào)錯(cuò)則說明安裝成功。
import cv2 # 讀一個(gè)圖片并進(jìn)行顯示(圖片路徑需自己指定) lena=cv2.imread("1.jpg") cv2.imshow("image",lena) cv2.waitKey(0)
如果我們要利用SIFT和SURF等進(jìn)行特征提取時(shí),還需要安裝:
pip install opencv-contrib-python==3.4.2.17
猜你喜歡: