擅长:python、mysql、java
<p>我想你是在尝试独立地操作频道,因为你有一些算法需要灰度图像。你可以用几种不同的方法来解决这个问题。在</p>
<p>那么,让我们从这幅图开始:</p>
<p><a href="https://i.stack.imgur.com/A0N1N.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/A0N1N.png" alt="enter image description here"/></a></p>
<p>您可以在不将图像分割为其组件通道的情况下,这样做<em>“就地”</em>:</p>
<pre><code>#!/usr/bin/env python3
import cv2
# Load image
img=cv2.imread("start.png",cv2.IMREAD_COLOR)
# In-place, zero the Blue, double the Green and halve the Red channels
img[:,:,0] = 0
img[:,:,1] *= 2
img[:,:,2] //= 2
# Save
cv2.imwrite('result1.png', img)
</code></pre>
<p><strong>输出</strong></p>
<p><a href="https://i.stack.imgur.com/IZZKm.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/IZZKm.png" alt="enter image description here"/></a></p>
<p>或者,您可以将图像分割为其组件通道,分别处理它们(可能并行),然后在最后将它们重新组合为BGR图像:</p>
^{pr2}$
<p><a href="https://i.stack.imgur.com/rCO4Y.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/rCO4Y.png" alt="enter image description here"/></a></p>