【python】RGB图片到灰度图的转换

在做立体匹配求深度图的时候遇到这个问题,用惯了matlab的rgb2gray,倒是不熟悉python的实现,在网上找到了相关方案,记下来已作备用

RGB到灰度图转换公式:

Y‘ = 0.299 R + 0.587 G + 0.114 B

自定义转换函数:

1 import numpy as np
2
3 def rgb2gray(rgb):
4     return np.dot(rgb[...,:3], [0.299, 0.587, 0.144])

调用:

1 grayPic = rgb2gray(rgbPic)

即可.

 



 
时间: 2024-10-05 06:44:12

【python】RGB图片到灰度图的转换的相关文章

如何使用 python3 将RGB 图片转换为 灰度图

首先,介绍第一种方法, 使用  PIL  库,   PIL库是一种python语言常用的一个图形处理库. 关于   PIL  库的安装本文就不介绍了. from PIL import Image I = Image.open('C:\\Users\\Administrator\\Desktop\\照片\\timg.jpg') I.show() L = I.convert('L') L.show()L.save('C:\\Users\\Administrator\\Desktop\\照片\\tim

mupdf实现常用图片转换为灰度图pnm

我要实现的工作是使用mupdf库转换pdf.jpeg.tif等文件为灰度图,转换完成的灰度图存放到内存中,而不是存为文件,在读取到内存中,主要是嵌入式系统中使用.下面是example.c,我加了我理解的注释,以及自己修改的地方.example.c全文 #include <mupdf/fitz.h> void render(char *filename, int pagenumber, int zoom, int rotation) { // Create a context to hold t

机器学习进阶-图像基本处理-视频的读取与处理 1.cv2.VideoCapture(视频的载入) 2.vc.isOpened(载入的视频是否可以打开) 3.vc.read(视频中一张图片的读取) 4.cv2.cvtColor(将图片转换为灰度图)

1.vc = cv2.VideoCapture('test.mp4') #进行视频的载入 2.vc.isOpened() # 判断载入的视频是否可以打开 3.ret, frame = vc.read()  #进行单张图片的读取,ret的值为True或者Flase, frame表示读入的图片 4.cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)  #表示将图片转换为灰度图 代码: import cv2 vc = cv2.VideoCapture('test.mp4')

RGB图像转为灰度图

最后结论: Grey = (R*38 + G*75 + B*15)>> 7 代码 #include <cv.h> #include <highgui.h> using namespace cv; int main(){ Mat src= imread("C:\\Users\\Poplar\\Pictures\\ff.jpg"); Matgrey(src.rows, src.cols, CV_8UC1, Scalar(0)); for (inty =

C# (灰度)加权平均法将图片转换为灰度图

private Bitmap ToG(string file) { using (Bitmap o = new Bitmap(file)) { Bitmap g = new Bitmap(o.Width, o.Height); for (int i = 0; i < o.Width; i++) { for (int j = 0; j < o.Height; j++) { Color c = o.GetPixel(i, j); //灰度加权平均法公式 int rgb = (int)(c.R *

彩色图到灰度图究竟是怎么变换的

??之前对彩色图与灰度图仅仅停留在前者是3通道后者是单通道的理解上.我也知道计算机看图片是将它们当成数组,但是一直搞不清楚将一张彩色图转变为灰度图是怎么操作的.当然,很多库函数都提供借口,包括OpenCV.PIL等.这里我参考https://blog.csdn.net/saltriver/article/details/79677116 手动实现将一张彩色图转换为灰色图.当然还是以帅气的哈士奇.jpg作为我的练习对象,看到它敲代码都有动力. from PIL import Image impor

QImage Color Convert to Gray 转为灰度图

在Qt中,我们有时需要把QImage类的彩色图片转为灰度图,一开始我想的是用QImage的成员函数convertToFormat(),但是试了好多参数,返现转化的图片都有问题,不是我们想要的灰度图,如果谁用成员函数成功转化成了灰度图,请在评论区将您的方法写下,让博主学习一下.那么还有一种笨办法,就是手动将R,G,B的值平均一下,然后用平均值更新每一个像素值,也能得到灰度图.参见代码如下: // image is the input color image, img is output grey

(4)彩色图像转灰度图以及色调,饱和度等概念相关定义

以下关于定义的内容来自冈萨雷斯——<数字图像处理> RGB彩色模型:图像由三个分量图像组成,每种原色一副分量图像.当送入RGB监视器时,这三幅图像在屏幕上混合生成一副合成的彩色图像. HSI彩色模型:RGB模型的彩色系统对于硬件实现很理想,且与人眼强烈感知红.绿.蓝三原色的事实能很好的匹配.遗憾的是RGB模型和其它类似的彩色模型不能很好的适应实际上人解释的颜色(1).人观察一个彩色物体时,我们用其色调.饱和度和亮度来描述它,这就是HSI彩色模型. (1)原因与人眼中感光细胞对各种原色光的敏感度

OprenCV学习之路一:将彩色图片转换成灰度图

//将一张彩色图片转成灰度图: //////////////////////////// #include<cv.h> #include<cvaux.h> #include<highgui.h> #include<ml.h> #include<iostream> using namespace std; using namespace cv; int main() { IplImage *src=0; src=cvLoadImage("