Python OpenCV 彩色與灰度圖像的轉(zhuǎn)換實(shí)現(xiàn)
彩色圖像轉(zhuǎn)換為灰度圖像
第一種方式通過(guò) imread 讀取圖像的時(shí)候直接設(shè)置參數(shù)為 0 ,自動(dòng)轉(zhuǎn)換彩色圖像為灰度圖像
第二種方式,可以通過(guò) split 進(jìn)行通道分離,或者叫做讀取單個(gè)通道,也可以將一個(gè)彩色圖像分離成 3 個(gè)單通道的灰度圖像
今天要學(xué)習(xí)的方法,是通過(guò)一個(gè)叫做 cvtColor 的方法實(shí)現(xiàn)該操作。
cv2.cvtColor() 方法用于將圖像從一種顏色空間轉(zhuǎn)換為另一種顏色空間。
OpenCV 提供了 150 多種 color-space 轉(zhuǎn)換方法。多到用不過(guò)來(lái)~
該方法的語(yǔ)法格式為:
cv2.cvtColor(src, code[, dst[, dstCn]])
參數(shù):
- src:它是要更改其色彩空間的圖像。
- code:它是色彩空間轉(zhuǎn)換代碼。
- dst:它是與 src 圖像大小和深度相同的輸出圖像,可選參數(shù)。
- dstCn:它是目標(biāo)圖像中的頻道數(shù)。如果參數(shù)為 0,則通道數(shù)自動(dòng)從 src 和代碼得出,可選參數(shù)。
參數(shù)翻譯成中文,也找到了
cvtColor(src,dst,code,dstCn) ===> (原圖像,color轉(zhuǎn)化代碼,輸出圖像,輸出通道)
轉(zhuǎn)換灰度圖代碼如下:
import cv2 # path path = './7_1.jpg' # 讀取圖片 src = cv2.imread(path) # 圖片展示窗口名稱 window_name = 'Image' # BGR 轉(zhuǎn)換成灰度圖 image = cv2.cvtColor(src, cv2.COLOR_BGR2GRAY) cv2.imshow(window_name, image) cv2.waitKey()

也看到了 HSV 格式圖片,轉(zhuǎn)換結(jié)果如下,有點(diǎn)嚇人,順便轉(zhuǎn)換了其他的一些格式:
import cv2
import matplotlib.pyplot as plt
# path
path = './7_1.jpg'
# 讀取圖片
src = cv2.imread(path)
# 圖片展示窗口名稱
window_name = 'Image'
# BGR 轉(zhuǎn)換成 RGB
image1 = cv2.cvtColor(src, cv2.COLOR_BGR2RGB)
# BGR 轉(zhuǎn)換成 Gray
image2 = cv2.cvtColor(src, cv2.COLOR_BGR2GRAY)
# BGR 轉(zhuǎn)換成 HSV
image3 = cv2.cvtColor(src, cv2.COLOR_BGR2HSV)
plt.subplot(1, 3, 1)
plt.imshow(image1)
plt.title("RGB")
plt.subplot(1, 3, 2)
plt.imshow(image2,"gray")
plt.title("GRAY")
plt.subplot(1, 3, 3)
plt.imshow(image3,"hsv")
plt.title("hsv")
plt.show()

偽彩色圖像
彩色圖片可以變成灰度圖,那相應(yīng)的灰度圖也可以變成彩色的,當(dāng)然這里說(shuō)的是偽彩色圖像。
這部分內(nèi)容由于目前應(yīng)用場(chǎng)景不明確,給大家貼一下我學(xué)習(xí)過(guò)程中看到的博客吧。
https://blog.csdn.net/kingroc/article/details/101302997
https://blog.csdn.net/sns1991sns/article/details/102838303
https://blog.csdn.net/xiaxuesong666/article/details/79522904
關(guān)于偽彩色圖像的說(shuō)明,在百度百科可以直接查閱到。

感謝大佬方向性的指導(dǎo)
到此這篇關(guān)于Python OpenCV 彩色與灰度圖像的轉(zhuǎn)換實(shí)現(xiàn)的文章就介紹到這了,更多相關(guān)OpenCV彩色與灰度圖像轉(zhuǎn)換內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Pycharm最全報(bào)錯(cuò)的原因與解決方法總結(jié)(推薦!)
這篇文章主要給大家介紹了關(guān)于Pycharm最全報(bào)錯(cuò)的原因與解決方法的相關(guān)資料,文中記錄了Python各種報(bào)錯(cuò)解釋及處理方法,屬于個(gè)人記錄型,需要的朋友可以參考下2022-07-07
python 實(shí)現(xiàn)數(shù)字字符串左側(cè)補(bǔ)零的方法
今天小編就為大家分享一篇python 實(shí)現(xiàn)數(shù)字字符串左側(cè)補(bǔ)零的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-12-12
Numpy將二維數(shù)組添加到空數(shù)組的實(shí)現(xiàn)
今天小編就為大家分享一篇Numpy將二維數(shù)組添加到空數(shù)組的實(shí)現(xiàn),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-12-12
python實(shí)現(xiàn)會(huì)員信息管理系統(tǒng)(List)
這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)會(huì)員信息管理系統(tǒng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-03-03
如何使用Selenium實(shí)現(xiàn)簡(jiǎn)單的網(wǎng)絡(luò)自動(dòng)化操作指南
Selenium是一個(gè)用于Web應(yīng)用測(cè)試的工具,Selenium測(cè)試直接運(yùn)行在瀏覽器中,就像真正的用戶在操作一樣,這篇文章主要給大家介紹了關(guān)于如何使用Selenium實(shí)現(xiàn)簡(jiǎn)單的網(wǎng)絡(luò)自動(dòng)化操作的相關(guān)資料,需要的朋友可以參考下2024-03-03
Python實(shí)現(xiàn)快速多線程ping的方法
這篇文章主要介紹了Python實(shí)現(xiàn)快速多線程ping的方法,實(shí)例分析了Python多線程及ICMP數(shù)據(jù)包的發(fā)送技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-07-07
Python中查看變量的類型內(nèi)存地址所占字節(jié)的大小
這篇文章主要介紹了Python中查看變量的類型,內(nèi)存地址,所占字節(jié)的大小,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-06-06
python調(diào)用Matplotlib繪制分布點(diǎn)并且添加標(biāo)簽
這篇文章主要為大家詳細(xì)介紹了python調(diào)用Matplotlib繪制分布點(diǎn)并且添加標(biāo)簽的方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-05-05
python標(biāo)準(zhǔn)庫(kù)random模塊處理隨機(jī)數(shù)
這篇文章主要介紹了python標(biāo)準(zhǔn)庫(kù)random模塊處理隨機(jī)數(shù),random模塊實(shí)現(xiàn)了各種分布的偽隨機(jī)數(shù)生成器,具體介紹感興趣的小伙伴可以參考一下2022-09-09

