Opencv學習筆記——圖片通道的分離與合併

以下均爲github上opencv的個人學習筆記,原路徑如下:

https://github.com/JimmyHHua/opencv_tutorials

源碼示例:

import cv2 as cv 

src = cv.imread("C:/Users/Mark/Desktop/CV/opencv_tutorials-master/opencv_tutorials-master/python/code_008/test.png")
cv.namedWindow("input",cv.WINDOW_AUTOSIZE)
cv.imshow("input", src)

#藍色通道爲零
mv = cv.split(src) //通道的分離
mv[0][:,:] = 0  //[0]表示藍色通道,[:,:]表示所有像素點集合,也就是整張圖像
dst1 = cv.merge(mv) //通道的合併
cv.imshow("output1", dst1)

#綠色通道爲零
mv = cv.split(src) //通道的分離
mv[1][:,:] = 0 //[1]表示藍色通道,[:,:]表示所有像素點集合,也就是整張圖像
dst2 = cv.merge(mv) //通道的合併
cv.imshow("output2", dst2)

#紅色通道爲零
mv = cv.split(src) //通道的分離
mv[2][:,:] = 0 //[2]表示藍色通道,[:,:]表示所有像素點集合,也就是整張圖像
dst3 = cv.merge(mv) //通道的合併
cv.imshow("output3", dst3)

cv.mixChannels(src, dst3, [2,0]) 
cv.imshow("output4", dst3)

cv.waitKey(0)
cv.destroyAllWindows()

函數功能說明:mixChannels主要就是把輸入的矩陣(或矩陣數組)的某些通道拆分複製給對應的輸出矩陣(或矩陣數組)的某些通道中,其中的對應關係就由fromTo參數制定.

mixChannels([src], [dst], fromTo)

src:要拷貝通道的圖像對象列表
dst:要拷貝通道的圖像對象列表
fromTo:從哪個通道拷貝到哪個通道去
這裏需要注意,src與dst在圖像尺寸與格式上必須保持一致

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章