python+opencv圖像處理(二) ----圖像變換 自然界中有很多的顏色,紅紅的花,綠綠的草,藍藍的天,白白的云,多姿多彩的世界,美輪美奐的圖像。 通過手機,照相機就可以定格每一個美的瞬間。 但是,當把這些景象定格的時候,就被采樣、量化成了數(shù)字圖像了。 數(shù)字圖像就是計算機當中處理的圖像,也是我們所處理的圖像。 彩色圖像有很多的理論,RGB三基色理論啊,HSI彩色模型啊,那些我也還搞得不是特別清楚,就不在此班門弄斧了。 1、彩色圖像轉換為灰度圖像 在對圖像進行處理時,很多時候會將彩色圖像轉換為灰度圖像進行處理。 灰度圖像即僅有灰度值的圖像,灰度值也就是從0~255共256種值的圖像,只是灰度我們?nèi)搜鄯值貌⒉皇翘貏e清楚。 果然,古人誠不欺我,世間哪兒有絕對的黑白,你看,圖像中都200多種灰呢,反正我是分不清楚的。 opencv中已有函數(shù): cvtColor() 來進行圖像之間的轉換。此函數(shù)可以在官方文檔上查看其解釋。本文只使用它。 如下圖所示,將就是美女lena變成了灰度圖像。 代碼如下: import cv2 as cv img=cv.imread("E:/image/le.jpg") cv.imshow("le",img) gray=cv.cvtColor(img, cv.COLOR_RGB2GRAY) cv.imshow("gray",gray) 第一行,導入opencv包 第二行,讀入圖像 第三行,顯示圖像 第四行,轉換為灰度圖像 第五行,顯示灰度圖像 2、彩色圖像轉換為二值圖像 二值圖像也是黑白圖像,非黑即白的。 它是在灰度圖像的基礎上,設定一個值,超過這個值為黑,低于這個值為白。 這個值即是網(wǎng)上說的閾值。 Opencv中有函數(shù)threshold可完成此功能。 下圖即將lena的灰度圖像轉換為二值圖像。 代碼如下: import cv2 as cv img=cv.imread("E:/image/le.jpg",0)#也可讀為灰度圖像 cv.imshow("le",img) ret,dst=cv.threshold(img,55,255,cv.THRESH_BINARY) cv.imshow("dst",dst) 函數(shù)threshold的功能也不止這一種,網(wǎng)上隨處可查哦... |
|
來自: pythonjava學習 > 《python圖像處理》