猿问

直接将图像numpy数组转换为灰度数组而不保存图像

img_array我有一个图像维度的NumPy 数组(h,w,3),它是某个函数的结果。我想将这个 NumPy 数组直接转换为灰度。

可能的解决方案:img_array使用 将图像 另存为图像cv2.imwrite(path)。然后再读一遍cv2.imread(path, cv2.GRAYSCALE)

但是,我正在寻找这样的东西:

def convert_array_to_grayscale_array(img_array):
        do something...
                return grayscare_version

我已经尝试过cv2.imread(img_array, CV2.GRAYSCALE),但它抛出img_array必须是文件路径名的错误。

我认为保存单独的图像会占用更多的磁盘空间。使用或不使用 OpenCV 库函数是否有更好的方法来做到这一点。


四季花海
浏览 140回答 1
1回答

叮当猫咪

scikit-image具有颜色转换功能:from skimage.color import rgb2graygrayscale = rgb2gray(img_array)
随时随地看视频慕课网APP

相关分类

Python
我要回答