在python中使用OpenCV拆分图像

时间:2013-10-04 12:43:05

标签: python opencv python-2.7

我有一个N图像,想在python中使用CV2将它分成三个RGB通道图像。

我还想要一个好的文档,我可以找到openCV的所有功能,因为我是OpenCV的新手。

2 个答案:

答案 0 :(得分:18)

就像使用cv2.imread加载图片然后使用cv2.split一样简单:

>>> import cv2
>>> import numpy as np
>>> img = cv2.imread("foo.jpg")
>>> b,g,r = cv2.split(img)

OpenCV文档可从docs.opencv.org

获得

答案 1 :(得分:3)

documentation tutorial中所述,就性能(时间)而言,cv2.split()是一项昂贵的操作,因此首选numpy索引:

import cv2
import numpy as np
img = cv2.imread("foo.jpg")
b = img[:,:,0]
g = img[:,:,1]
r = img[:,:,2]

请记住,opencv将图像读取为BGR而不是RGB