图像基本变换---直方图
2016-05-11 14:09
239 查看
图像直方图计算函数
[算法说明]图像直方图描述的是图像中具有相同灰度级的像素的个数,它是图像灰度的函数。在平面坐标系中,如果用横坐标表示灰度级(0-255),则纵坐标就代表该灰度级的像素的个数。用公式表示如下:
其中hi表示灰度直方图的分布函数,i表示灰度级,ni表示对应灰度级i的像素数目(这里取8位灰度图)。
Fig.1直方图示意图
在图Fig.1中,左边描述的是整个图像像素的灰度级,右上边的表格中,第二行描述的是第一行中灰度级像素出现的个数,依据这个表格绘制直方图如Fig.1中右下图所示。
[函数代码]
///
/// Get the array of histrgram.
///
/// The source image.
///
public static int[] GetHistogramArray(WriteableBitmap src) ////34 图像直方图计算
{
if (src != null)
{
int[] histogram = new int[256];
int gray = 0;
byte[] temp = src.PixelBuffer.ToArray();
for (int i = 0; i < temp.Length; i += 4)
{
gray = (int)(temp[i] * 0.114 + temp[i + 1] * 0.587 + temp[i + 2] * 0.299);
histogram[gray]++;
}
return histogram;
}
else
{
return null;
}
}
}
}
demo 下载: http://www.zealfilter.com/forum.php?mod=viewthread&tid=20&extra=page%3D2
相关文章推荐
- google分享审请AppID、AppSecret注意问题
- source insight 添加注释,添加环境变
- Dart入门—集合类型
- beta分布
- Apple Pay市场再扩大: 全面登陆加拿大地区
- 如果你来投票决定百度的生死,你会如何抉择?
- Percona-tookit学习笔记(四)
- Android 百度地图+Fragment冲突
- unity 用鼠标控制相机绕着物体旋转脚本
- Hue 可视化的Hadoop架构工具
- Spring & Mybatis整合
- 图像基本变换---二值图像距离变换(欧氏距离+棋盘距离+城市街区距离)
- Twitter分享审请appid、AppSecret注意问题
- android常用动画
- 错误:Unsupported major.minor version 51.0(jdk版本错误)
- 图像基本变换--- 平移、旋转、缩放、仿射变换、镜像
- Android APK反编译02
- swiper插件制作轮播图swiper2.x和3.x差别
- GDB/LLDB调试指令
- hdoj Machine 5670 (模拟)水