在Python中,我们可以使用一个名为cv2的OpenCV库。Python不包含cv2,因此我们需要单独安装它。
对于Windows:
pip install opencv-python
对于Linux:
sudo apt-get install python-opencv
在下面给出的程序中,我们使用以下三个功能:
imread():
它将图像文件的绝对路径/相对路径作为参数,并返回其对应的图像矩阵。
imshow():
以窗口名称和图像矩阵为参数,以便在具有指定窗口名称的显示窗口中显示图像。
cv2.cvtcolor():
它需要图像矩阵和用于将颜色空间从一种颜色空间更改为另一种颜色的标志(在这种情况下,我们使用BGR2GRAY颜色空间转换),并返回新转换的图像矩阵。
# open-cv库在python中安装为cv2 # 将cv2库导入此程序 import cv2 # read an image using imread() function of cv2 # 我们只需要传递图像的路径 img = cv2.imread(r'C:/Users/user/Desktop/pic1.jpg') # displaying the image using imshow() function of cv2 # 在此:第一个参数是框架的名称 # 第二个参数是图像矩阵 cv2.imshow('original image',img) # 将全彩色图像转换为灰度图像 # 使用的cv2.COLOR_BGR2GRAY参数 # the cvtColor() function of cv2 # 在此: # ist参数是图像矩阵 # 第二个参数是属性 gray_img = cv2.cvtColor(img,cv2.COLOR_BGR2GRAY) # 显示灰度图像 cv2.imshow('Gray scale image',gray_img)
输出结果
主要内容:将彩色图像转换为灰度在前面的章节中,我们讨论了如何读取不同类型的输入图像(二进制,灰度,BGR等)。 在本章中,我们将学习如何将一种图像转换为另一种图像。 包中名为的类提供了将图像从一种颜色转换为另一种颜色的方法。 将彩色图像转换为灰度 使用方法将彩色图像转换为灰度。 以下是此方法的语法。 该方法接受以下参数 - src - 表示来源的矩阵。 dst - 表示目的地的矩阵。 code - 表示转换类型的整数代码,例如
上一节课讲解了纹理贴图的知识点,本节课通过一个把彩色图处理为灰度图的案例进一步认识可编程片元着色器和逐片元的概念。 纹理贴图可以经过渲染管线处理后映射到三维空间中顶点坐标定义的位置,在这个过程中,执行方法texture2D()提取的像素值直接赋值给片元,存入帧缓存的颜色缓冲区中, 显示系统扫描颜色缓冲区中的像素值显示在屏幕上。渲染过线的片元着色器是可编程的,可以执行着色器语言编写的程序,也就是说可
以下程序演示如何将彩色图像读取为灰度并使用JavaFX窗口显示。 在这里通过将标志与带有彩色图像路径的字符串一起传递来读取图像。 假定以下是上述程序中指定的输入图像。那么输出结果应该为一个灰色的图片。
问题内容: 我正在学习使用OpenCV进行实时应用程序的图像处理。我对图像进行了一些阈值处理,并希望将轮廓标记为绿色,但是由于我的图像是黑白图像,所以它们没有显示为绿色。 在程序的早期,我曾经将RGB转换为灰度,但是回过头来,我很困惑,该函数给出了: AttributeError:“模块”对象没有属性“ CV_GRAY2RGB”。 下面的代码似乎不是用绿色绘制轮廓。这是因为它是灰度图像吗?如果是这
我正在学习使用OpenCV进行图像处理的实时应用程序。我对一个图像做了一些阈值化,想要用绿色标记轮廓,但它们没有显示在绿色中,因为我的图像是黑白的。 在程序的早期,我使用将RGB转换为灰度,但回到前面,我感到困惑,函数给出的是: AttributeError:“module”对象没有属性“cv_gray2rgb”。 下面的代码似乎没有用绿色绘制轮廓。这是因为它是灰度图像吗?如果是,我可以将灰度图像
本文向大家介绍彩色图像、灰度图像、二值图像和索引图像区别?相关面试题,主要包含被问及彩色图像、灰度图像、二值图像和索引图像区别?时的应答技巧和注意事项,需要的朋友参考一下 彩色图像:RGB图像。灰度图像:0-255像素值。二值图像:0和1,用于掩膜图像。 索引图像:在灰度图像中,自定义调色板,自定义输出256种颜色值。