由彩色到黑白

转载 2006年06月23日 14:00:00
                         mythma
彩色图转换为灰度图公式很简单:
Y=0.3RED+0.59GREEN+0.11 Blue

用GDI+实现的方式由两种:
1. 直接用上述公式修改象素点
2. 用ColorMatrix。

下面是用ColorMatrix实现示例:

using namespace Gdiplus;
    Image img(wszFileName);
    Graphics graphics(GetDC()
->GetSafeHdc());
    ColorMatrix cm
= {0.3f0.3f0.3f00,
        
0.59f,0.59f,0.59f,00,
        
0.11f,0.11f,0.11f,00,
        
0,    0,    0,    10,
        
0,    0,    0,    01}
;
    ImageAttributes ia;
    ia.SetColorMatrix(
&cm);

    
float x = (float)img.GetWidth();
    
float y = (float)img.GetHeight();
    graphics.DrawImage(
&img, 
        RectF(
0.0f,0.0f,x,y,
        
0.0f,0.0f,x,y, 
        UnitPixel,
        
&ia);

相关文章推荐

C# 实现的 批量彩色图片转黑白图片的小工具 (附源码)

因为工作需要将大量的彩色图片转换成黑白图片,所以索性自己花了点时间,自己写了一个,为了图方便,就用C#开发,代码很简单,实现了选择源路径,目标路径,覆盖源路径,有进度条显示。没有专门学过C#,所以代码...

matlab黑白图片彩色化

  • 2014-12-05 01:30
  • 62KB
  • 下载

黑白图,灰度图,彩色图的理解

图像中的单个点称为像素(pixel),每个像素都有一个值,称为像素值,它表示特定颜色的强度。 对于黑白图,是指每个像素的颜色用二进制的1位来表示,那末颜色只有“1”和“0”这两个值。这也就是说,要么...

ImagesUtil java图片操作 缩放图像、切割图像、图像类型转换、彩色转黑白、文字水印、图片水印等

import java.awt.AlphaComposite; import java.awt.Color; import java.awt.Font; import java.awt.Graphic...

上传图片java中用到的图片(等比缩放、切割、彩色转黑白、添加水印)等操作

import java.awt.AlphaComposite; import java.awt.Color; import java.awt.Font; import java.awt.Graphic...

PS 图像黑白调整算法(彩色图转灰度图)(VC++)

本篇文章参考了博客http://blog.csdn.net/matrix_space/article/details/22992833和博客http://blog.csdn.net/maozefa/a...

总结Android图片彩色转黑白遇到的问题

项目中有需求,需要把彩色图片转成黑白图片,而美工又没有给黑白图片, 像我这么帅的人就不去和美工小姑娘撕了,自己动手吧. 首先我们需要写一个静态方法来把彩色图片转换为Bitmap格式的灰白 图片 ...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)