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 * 0.299 + c.G * 0.587 + c.B * 0.114);
                        g.SetPixel(i, j, Color.FromArgb(rgb, rgb, rgb));
                    }
                }
                return g;
            }
        }
时间: 2024-11-08 01:46:35

C# (灰度)加权平均法将图片转换为灰度图的相关文章

机器学习进阶-图像基本处理-视频的读取与处理 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')

如何使用 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

IOS 将图片转换为圆角图

UIImage+wiRoundedRectImage.h #import <UIKit/UIKit.h> @interface UIImage (wiRoundedRectImage) + (id)createRoundedRectImage:(UIImage*)image size:(CGSize)size radius:(NSInteger)r; @end UIImage+wiRoundedRectImage.m #import "UIImage+wiRoundedRectIma

python 图片识别灰度

# -*- coding: cp936 -*- from skimage import io,transform,color import numpy as np def convert_gray(f,**args):#图片处理与格式化的函数 rgb=io.imread(f) #读取图片 gray=color.rgb2gray(rgb) #将彩色图片转换为灰度图片 dst=transform.resize(gray,(48,90)) #调整大小,图像分辨率为64*64 return dst da

c# winform 把彩色图片转换为灰色的图片,变灰,灰度图片,速度很快,safe,unsafe

把彩色图片转换为灰色的图片,直接用.net接口遍历每个像素点转换的效率非常低,800K的图片65万像素我的电脑要用5分钟,而用了unsafe,速度提高了几千倍,同样的图片只用了0.几秒 附一个常用的遍历像素点转换的代码 构造函数 C#代码   public Tphc() { InitializeComponent(); this.pictureBox1.ImageLocation = "F:\\黑色头发.jpg"; } 按钮单击事件 C#代码   private void button

Java图片的灰度处理方法

通过看网上各种大牛的总结,和自己亲身测试总结一下Java图片的灰度处理方法 (1)我们熟知的图片中的像素点有RGB值. (2)图片灰度化的方式大概分为四种,第一种是最大值法(取颜色RGB中的最大值作为灰度值):第二种是最小值法(取颜色RGB的最小值作为灰度值):第三种是均值法(取颜色的RGB的平均值作为灰度值):第四种是加权法灰度化(怎么加权最合适,效果最好,百度百科说的很全面). (3)废话不多说,记录一下我按照上述四种方法实现的效果和代码: 原图 按照上述四种方式分别灰度化后的效果如下面四图

c语言实现BMP图像转换为灰度图

当初是自己要装X,非要用c来写信息隐藏作业,装了X,就得付出实践.查了好久资料,到期末才把作业交了,这里总结一下. 这道题是将真彩图转换为灰度图. 关于BMP文件结构,这是困扰了我好久的问题,上网查了很久图片的知识才弄明白 BMP文件包括以下几部分(具体结构在程序中说明): 位图文件头 位图信息头 调色板 位图数据 结构体内存对齐原则 每个成员存储的起始位置要从该成员大小的整数倍开始 成员是结构体时相对与起始偏移是其内部最大元素大小的整数倍 结构体的总大小是其内部最大成员的整数倍 因此在定义头结

从视频文件中读入数据--&gt;将数据转换为灰度图--&gt;对图像做candy边缘检测

//从视频文件中读入数据-->将数据转换为灰度图-->对图像做candy边缘检测 //作者:sandy //时间:2015-10-10 #include <cv.h> #include <highgui.h> int main(int argc, char *argv[]){ //预备工作 CvCapture* capture=cvCreateFileCapture("E:\\Videos\\xx.avi");//让capture变量指向视频文件 i