更新時(shí)間:2021-05-26 來(lái)源:黑馬程序員 瀏覽量:
OpenCV是一款由Intel公司俄羅斯團(tuán)隊(duì)發(fā)起并參與和維護(hù)的一個(gè)計(jì)算機(jī)視覺(jué)處理開(kāi)源軟件庫(kù),支持與計(jì)算機(jī)視覺(jué)和機(jī)器學(xué)習(xí)相關(guān)的眾多算法,并且正在日益擴(kuò)展。
OpenCV的優(yōu)勢(shì):
·編程語(yǔ)言
OpenCV基于C++實(shí)現(xiàn),同時(shí)提供python, Ruby, Matlab等語(yǔ)言的接口。OpenCV-Python是OpenCV的Python API,結(jié)合了OpenCV C++ API和Python語(yǔ)言的最佳特性。
·跨平臺(tái)
可以在不同的系統(tǒng)平臺(tái)上使用,包括Windows,Linux,OS X,Android和iOS?;贑UDA和OpenCL的高速GPU操作接口也在積極開(kāi)發(fā)中
·活躍的開(kāi)發(fā)團(tuán)隊(duì)
·豐富的API
完善的傳統(tǒng)計(jì)算機(jī)視覺(jué)算法,涵蓋主流的機(jī)器學(xué)習(xí)算法,同時(shí)添加了對(duì)深度學(xué)習(xí)的支持。
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)集成更容易。
安裝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)在可以測(cè)試下是否安裝成功,運(yùn)行以下代碼無(wú)報(bào)錯(cuò)則說(shuō)明安裝成功。
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
猜你喜歡: