使用python和open的图像转换函数

2024-10-05 12:17:32 发布

您现在位置:Python中文网/ 问答频道 /正文

最近我开始学习opencv和python来进行图像处理,我在编写函数时遇到了一些问题。你知道吗

我的任务如下:

在python中编写一个函数来打开彩色图像并将图像转换为灰度。

您需要编写一个函数color\u grayscale(filename,g),它包含两个参数:

  a. filename: a color image (Test color image is in folder “Task1_Practice/test_images”. Pick first image to perform the experiment.)

  b. g: an integer

如果g=1,程序输出应为灰度图像,否则为彩色图像。

我写的代码如下:

import cv2

def color_grayscale(filename,g):

    filename = cv2.imread("a15.jpg")
    " Enter Value of g:"
    if g == 1:
        gray = cv2.cvtColor(filename, cv2.COLOR_BGR2GRAY)
        img = cv2.imshow("gray",gray)
    else:
        img = cv2.imshow("original",filename)
    return(img)

color_grayscale("a15.jpg",1)

运行时的代码没有任何输出。你知道吗


Tags: 函数代码图像imageimgfilenamecv2彩色图像
1条回答
网友
1楼 · 发布于 2024-10-05 12:17:32

cv2.imshow后面应该跟waitKey函数,该函数显示指定毫秒的图像。否则,它不会显示图像。例如,waitKey(0)将无限显示窗口,直到按任意键(它适合于图像显示)。waitKey(25)将显示一帧25毫秒,之后显示将自动关闭。(如果你把它放在一个循环中阅读视频,它会逐帧显示视频)

只需在返回cv2.waitKey(0)之前添加img,它就会显示灰度图像

相关问题 更多 >

    热门问题