C#图像亮度调整的方法
本文实例讲述了C#图像亮度调整的方法。分享给大家供大家参考。具体如下:
//定义数字图象处理之(亮度调整函数)
private static Bitmap BrightnessP(Bitmap a, int v)
{
System.Drawing.Imaging.BitmapData bmpData = a.LockBits(new Rectangle(0, 0, a.Width, a.Height), System.Drawing.Imaging.ImageLockMode.ReadWrite, System.Drawing.Imaging.PixelFormat.Format24bppRgb);
int bytes = a.Width * a.Height * 3;
IntPtr ptr = bmpData.Scan0;
int stride = bmpData.Stride;
unsafe
{
byte* p = (byte*)ptr;
int temp;
for (int j = 0; j < a.Height; j++)
{
for (int i = 0; i < a.Width * 3; i++,p++)
{
temp = (int)(p[0] + v);
temp = (temp > 255) ? 255 : temp < 0 ? 0 : temp;
p[0] = (byte)temp;
}
p += stride - a.Width * 3;
}
}
a.UnlockBits(bmpData);
return a;
}
希望本文所述对大家的C#程序设计有所帮助。
相关推荐
-
C#数字图像处理之图像缩放的方法
本文实例讲述了C#数字图像处理之图像缩放的方法.分享给大家供大家参考.具体如下: //定义图像缩放函数 private static Bitmap ZoomP(Bitmap a, float s, float v) { Bitmap bmp = new Bitmap((int)(a.Width * s), (int)(a.Height * v), System.Drawing.Imaging.PixelFormat.Format24bppRgb); Graphics g = Graphics.F
-
C#图像颜色聚类高效方法实例
本文实例讲述了C#图像颜色聚类高效方法.分享给大家供大家参考.具体分析如下: 图像颜色聚类的方法有很多,但是对于视频监控而言,现有方法很难满足实时性的要求,这里介绍一种位屏蔽压缩的方法实现颜色聚类,可以满足实时性的要求. 位屏蔽法就是在3D的RGB真彩空间中近似均匀采样的颜色压缩方法,即将屏蔽的颜色位置设置为0,具体可以采用移位运算来实现,这里我们以屏蔽RGB颜色分量末6位为例: public Bitmap PCluster(Bitmap a) { try { Rectangle rect =
-
C#图像处理之图像均值方差计算的方法
本文实例讲述了C#图像处理之图像均值方差计算的方法.分享给大家供大家参考.具体如下: //本函数均是基于RGB颜色空间计算 //定义图像均值函数(RGB空间) public double AnBitmap(Bitmap a) { double V = 0; Rectangle rect = new Rectangle(0, 0, a.Width, a.Height); System.Drawing.Imaging.BitmapData bmpData = a.LockBits(rect, Sys
-
C#图像处理之木刻效果实现方法
本文实例讲述了C#图像处理之木刻效果实现方法.分享给大家供大家参考.具体如下: //木刻效果 public Bitmap PFilterMuKe(Bitmap src) { try { Bitmap a = new Bitmap(src); Rectangle rect = new Rectangle(0, 0, a.Width, a.Height); System.Drawing.Imaging.BitmapData bmpData = a.LockBits(rect, System.Draw
-
C#图像处理之图像目标质心检测的方法
本文实例讲述了C#图像处理之图像目标质心检测的方法.分享给大家供大家参考.具体如下: //采用二值化图像,图像中黑色表示背景,白色表示目标 //定义质心计算函数 private int[] CentPoints(Bitmap src) { //定义存储质心坐标的数组变量 int[] CentreP = new int[2]; int M00 = 0, M01 = 0, M10 = 0; Rectangle rect = new Rectangle(0, 0, src.Width, src.Hei
-
C#图像线性变换的方法
本文实例讲述了C#图像线性变换的方法.分享给大家供大家参考.具体如下: //定义图像线性运算函数(y=kx+v) private static Bitmap LinearOP(Bitmap a, double k, double v) { Rectangle rect = new Rectangle(0, 0, a.Width, a.Height); System.Drawing.Imaging.BitmapData srcData = a.LockBits(rect, System.Drawi
-
C#图像对比度调整的方法
本文实例讲述了C#图像对比度调整的方法.分享给大家供大家参考.具体如下: //定义对比度调整函数 private static Bitmap ContrastP(Bitmap a, double v) { System.Drawing.Imaging.BitmapData bmpData = a.LockBits(new Rectangle(0, 0, a.Width, a.Height), System.Drawing.Imaging.ImageLockMode.ReadWrite, Syst
-
C#图像伪彩色处理方法
本文实例讲述了C#图像伪彩色处理方法.分享给大家供大家参考.具体如下: //灰度图转伪彩色图像函数 public Bitmap PGrayToColor(Bitmap src) { try { Bitmap a = new Bitmap(src); Rectangle rect = new Rectangle(0, 0, a.Width, a.Height); System.Drawing.Imaging.BitmapData bmpData = a.LockBits(rect, System.
-
C#图像灰度级拉伸的方法
本文实例讲述了C#图像灰度级拉伸的方法.分享给大家供大家参考.具体如下: //定义图像灰度拉伸函数 private static Bitmap GrayLP (Bitmap a) { Rectangle rect = new Rectangle(0, 0, a.Width, a.Height); System.Drawing.Imaging.BitmapData srcData = a.LockBits(rect, System.Drawing.Imaging.ImageLockMode.Rea
-
C#图像处理之头发检测的方法
本文实例讲述了C#图像处理之头发检测的方法.分享给大家供大家参考.具体如下: //发色检测(YCbCr颜色空间) public Bitmap HairD(Bitmap a) { Rectangle rect = new Rectangle(0, 0, a.Width, a.Height); System.Drawing.Imaging.BitmapData bmpData = a.LockBits(rect, System.Drawing.Imaging.ImageLockMode.ReadWr
-
C#图像透明度调整的方法
本文实例讲述了C#图像透明度调整的方法.分享给大家供大家参考.具体如下: //定义图像透明度调整函数 public Bitmap PTransparentAdjust(Bitmap src,int num) { try { int w = src.Width; int h = src.Height; Bitmap dstBitmap = new Bitmap(src.Width, src.Height, System.Drawing.Imaging.PixelFormat.Format32bpp
随机推荐
- ajax 防止用户反复提交的2种解决方案
- 浅谈TreeSet中的两种排序方式
- javascript文本框内输入文字倒计数的方法
- javascript中的五种基本数据类型
- 备份shell脚本实例代码
- 仿orm自动生成分页SQL分享
- 学好C++必须做到的50条 绝对经典!
- C语言编写银行打印程序实例参考
- MYSQL日志与备份还原问题详解
- php计算几分钟前、几小时前、几天前的几个函数、类分享
- easyui-edatagrid.js实现回车键结束编辑功能的实例
- Java实现调用MySQL存储过程详解
- javascript中数组array及string的方法总结
- 一款域名监控小工具 Domain(IP)Watcher 实现代码
- php封装的mongodb操作类代码
- jQuery前台数据获取实现代码
- js变量作用域及可访问性的探讨
- js实现拖拽 闭包函数详细介绍
- Android adb logcat 命令查看日志详细介绍
- python 获取毫秒数,计算调用时长的方法
