OpenCV基本操作——OpenCV安裝及圖片讀取
一、OpenCV-Python的安裝
OpenCV是圖像預(yù)處理的重要工具,提供了眾多的支持Python的API,其安裝步驟如下:
配置Python環(huán)境
鍵盤輸入Windows+R鍵,輸入cmd,回車
在命令行中輸入pip install opencv-python(在輸入pip install opencv-python==x.x.x可以安裝指定版本的OpenCV-Pyhton包),按下回車鍵,等待安裝即可
測(cè)試:在命令行下或者對(duì)應(yīng)環(huán)境的IDE中輸入以下代碼后執(zhí)行:
import cv2 as cv image = cv.imread("C:\Users\27914\Desktop\images\test1.jpeg")#路徑下必須有圖片 cv.imshow("image",image) cv.waitKey(0) cv.destroyAllWindows()
若能成功顯示圖片說明安裝成功
二、圖像讀取與色彩空間
1.圖像讀取與展示
OpenCV默認(rèn)的讀取的API是imread(),參數(shù)中第一個(gè)參數(shù)是圖片的路徑,第二參數(shù)是讀取的圖片的顏色類型(為可選參數(shù)),這里第二個(gè)參數(shù)flags主要會(huì)用到的三個(gè)類型:
cv.IMREAD_GRAYSCALE:返回原圖的灰度圖
cv.IMREAD_ANYDEPTH:保持原圖的通道數(shù)不變
cv.IMREAD_COLOR:返回一個(gè)彩色圖
圖像展示使用的API是imshow(),第一個(gè)參數(shù)是要展示的窗口名稱,第二個(gè)參數(shù)是要是的圖片對(duì)象
具體如下:
import cv2 as cv path1 = "C:\Users\2 path1 = "C:\Users\27914\Desktop\images\test1.jpeg" image = cv.imread(path1) cv.namedWindow("image",cv.WINDOW_AUTOSIZE)#開啟一個(gè)窗口 cv.imshow("image",image) cv.waitKey(0) cv.destroyAllWindows()
若flags參數(shù)選定,如:
image = cv.imread(path1,cv.IMREAD_GRAYSCALE) cv.namedWindow("image",cv.WINDOW_AUTOSIZE)#開啟一個(gè)窗口 cv.imshow("image",image) cv.waitKey(0) cv.destroyAllWindows()
一般最多只會(huì)用到cv.IMREAD_GRAYSCALE。
waitKey(0)表示讓程序暫停,等待指令,0表示一直等待直到關(guān)閉;
destoryAllWindows(),表示關(guān)閉所有窗口。
2.圖像色彩空間的轉(zhuǎn)換
色彩空間轉(zhuǎn)換的API是cvtColor(),參數(shù)src是指要處理的原始圖像,參數(shù)code是指要轉(zhuǎn)換的色彩空間,在OpenCV中默認(rèn)讀取的色彩空間是BGR,故在初次轉(zhuǎn)換色彩空間時(shí)一般由BGR轉(zhuǎn)出,詳細(xì)代碼如下:
import cv2 as cv path1 = "C:\Users\27914\Desktop\images\test1.jpeg" image = cv.imread(path1) gray = cv.cvtColor(image,cv.COLOR_BGR2GRAY) hsv = cv.cvtColor(image,cv.COLOR_BGR2HSV) hls = cv.cvtColor(image,cv.COLOR_BGR2HLS) lab = cv.cvtColor(image,cv.COLOR_BGR2LAB) luv = cv.cvtColor(image,cv.COLOR_BGR2LUV) cv.imshow("image",image) cv.imshow("gray",gray) cv.imshow("hsv",hsv) cv.imshow("hls",hls) cv.imshow("lab",lab) cv.imshow("luv",luv) cv.waitKey(0) cv.destroyAllWindows()
gray:
hsv:
這里只列出了比較重要的兩種色彩空間的輸出。
這里淺談一下hsv色彩空間:
在BGR色彩空間中,BGR代表的是顏色通道(B為藍(lán)色通道,G為綠色通道,R是紅色通道),在這個(gè)色彩空間只是生產(chǎn)了人類所能感知的顏色的種類,而并沒有注重顏色的深淺明暗,在圖像預(yù)處理中,我們要盡可能地得到圖像更加全方面的信息,而hsv色彩空間剛好可以滿足這個(gè)要求,hsv中h代表的是色彩,s代表深淺,v代表亮度,我們可以通過對(duì)h、s、v進(jìn)行閾值的分割得到不同亮度深淺的顏色,在色彩分割能夠起到很好的效果。
API OpenCV
版權(quán)聲明:本文內(nèi)容由網(wǎng)絡(luò)用戶投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔(dān)相應(yīng)法律責(zé)任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實(shí)的內(nèi)容,請(qǐng)聯(lián)系我們jiasou666@gmail.com 處理,核實(shí)后本網(wǎng)站將在24小時(shí)內(nèi)刪除侵權(quán)內(nèi)容。