Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/279.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python OpenCv中的单色级别_Python_Opencv - Fatal编程技术网

Python OpenCv中的单色级别

Python OpenCv中的单色级别,python,opencv,Python,Opencv,我必须在Python中更正蓝色级别,就像在Photoshop CTRL+L中一样。我在这个主题中找到了代码:,但这是RGB的,我只需要蓝色的。 请帮忙。TKS.使用分割功能分离通道 b,g,r = cv2.split(img) 还是切片 b = img[:,:,0] 好的,谢谢大家。我已经解决了。这是我的代码: img = cv2.imread("normal.png",1) b,g,r = cv2.split(img) inB

我必须在Python中更正蓝色级别,就像在Photoshop CTRL+L中一样。我在这个主题中找到了代码:,但这是RGB的,我只需要蓝色的。
请帮忙。TKS.

使用分割功能分离通道

b,g,r = cv2.split(img)
还是切片

b = img[:,:,0]

好的,谢谢大家。我已经解决了。这是我的代码:

    img = cv2.imread("normal.png",1)
    b,g,r = cv2.split(img)
    
    
    inBlack  = np.array([0], dtype=np.float32)
    inWhite  = np.array([255], dtype=np.float32)
    inGamma  = np.array([1.0], dtype=np.float32)
    outBlack = np.array([218], dtype=np.float32)
    outWhite = np.array([255], dtype=np.float32)

    b = np.clip( (b - inBlack) / (inWhite - inBlack), 0, 255 )                            
    b = ( b ** (1/inGamma) ) *  (outWhite - outBlack) + outBlack
    b = np.clip( b, 0, 255).astype(np.uint8)
    
    img = cv2.merge((b,g,r))

使用切片选择蓝色通道:image[:,:,0]假设颜色格式是回复的opencv-bgrTanks的默认颜色,这是我第一次尝试,但我得到一个错误:img=np.clip img[:,:,0]-inBlack/inWhite-inBlack,0,255 value错误:操作数无法与形状10241024 3一起广播,这是因为在该线程中,inBlack和inWhite被定义为三维向量,如果只选择蓝色通道inBlack和inWhite应该是Scalars,我已经做了2次尝试:第一次frab回复我已经做了:inBlack=np.array[0,0,0],dtype=np.float32 inWhite=np.array[255],dtype=np.float32 inGamma=np.array[1.0],dtype=np.float32 outBlack=np.array[218],dtype=np.float32 outWhite=np.array[255],dtype=np.float32,但结果是浅灰色img。第二个阿希西回答:我已经把颜色分成了b,g,r;在我的代码中使用了THB颜色,但当我试图在最后合并它们时,我出现了一个错误:类型错误:merge最多使用2个参数。