资源简介
用C语言实现了直方图均衡化,内有测试图片。非常好用。
代码片段和文件信息
// May14th2011 Median filter
// zhangxuezhen
// all right reserved
#include
#include
#include
#include
#include
#include
#define IE(imgxy) ((uchar*)(img->imageData + img->widthStep*y))[x]
void hist_equal( IplImage* src IplImage* dst )
{
int nj[256]; // the amount of the gray scale
double pj[256]; // the probability of the gray scale
int gi[256];
double cf=0;
int ij;
int height ;
int width ;
height = src->height;
width = src->width;
for( i=0; i<256 ; i++)
{
nj[i] = 0;
}
for( j = 0; j {
for( i=0; i {
nj[IE(srcij)] = nj[IE(srcij)] + 1;
}
}
for( i=0; i<256; i++)
{
pj[i] = ((double)nj[i])/( width*height ); // 这里容易出错
}
for( i=0; i<256; i++)
{
cf = cf + pj[i] ;
gi[i] = (int)(255*cf) ;
}
for( j = 0; j {
for( i=0; i {
IE(dstij) = (unsigned char)gi[IE(srcij)] ;
}
}
}
int main( int argc char *argv[] )
{
IplImage *src;
IplImage *dst;
src = cvLoadImage(“C:\\Program Files\\MATLAB71\\图像处理\\test_small\\lena_salt.bmp“ 0 );
dst = cvCreateImage(cvGetSize(src) src->depth src->nChannels );
hist_equal( src dst );
cvNamedWindow(“src“ 0 );
cvNamedWindow(“dst“ 0 );
cvShowImage(“src“ src );
cvShowImage(“dst“ dst );
cvWaitKey( -1);
cvDestroyWindow(“src“);
cvDestroyWindow(“dst“);
cvReleaseImage( &src );
cvReleaseImage( &dst );
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 1563 2011-06-06 10:05 Hist_equal.c
文件 4442 2011-06-06 10:05 HIST_EQUAL_MY.dsp
文件 551 2011-05-14 15:57 HIST_EQUAL_MY.dsw
文件 41984 2011-06-06 10:05 HIST_EQUAL_MY.ncb
文件 49664 2011-06-06 10:05 HIST_EQUAL_MY.opt
文件 970 2011-06-06 10:05 HIST_EQUAL_MY.plg
文件 41984 2011-06-06 10:05 Debug\vc60.idb
文件 77824 2011-06-06 10:05 Debug\vc60.pdb
文件 15337 2011-06-06 10:05 Debug\Hist_equal.obj
文件 188522 2011-06-06 10:05 Debug\HIST_EQUAL_MY.exe
文件 427008 2011-06-06 10:05 Debug\HIST_EQUAL_MY.pdb
文件 3105972 2011-06-06 10:05 Debug\HIST_EQUAL_MY.pch
文件 195144 2011-06-06 10:05 Debug\HIST_EQUAL_MY.ilk
目录 0 2011-05-14 15:57 Debug
----------- --------- ---------- ----- ----
4150965 14
- 上一篇:家庭财务管理系统85895
- 下一篇:C++资源管理器(制作步骤详细)
相关资源
- 遥感图像融合程序 C++
- 计算轨道的程序,很有用的
- 用C++编写图像缩放程序,采用双线性
- Visual C++课程设计 屏幕保护程序的开发
- 空间前方交回Qt c++程序
- vc++ 动态创建故障树
- 单片机C语言库 STC89C51/52 AT89C52/51
- 单像空间后方交会程序
- MFC记事本程序
- C++ QQ农场源代码程序
- 基于A*算法的十五数码程序 C语言版
- Sniffer网络抓包程序
- 一个可以自动点广告小程序VisualC++编
- C\\C++ 任意(281016)进制转换为(281
- 解决VC6生成的MFC程序不能在没有安装
- LeetCode题解 C/C++版
- MSP430系列程序,各种例程。
- C语言Windows程序设计 机房收费管理系
- MSP430系列单片机实用C语言程序设计及
- IP包流量分析程序.rar含程序+源码WIN
- 基于C_S结构的Socket程序设计(含源码
- 基于文本内容的垃圾邮件过滤程序
- vc6.0编写的基于API的串口通信程序
- DSP 77个C语言程序 包括FFTFIR IIR等的D
- C++程序设计教材思维导图
- 用c++编写的停车场管理程序
- 基于C++的高斯坐标系下经纬度与大地
- VC++网络聊天室源代码和程序说明
- 地铁售票程序 c++
- 用C++编写的贺卡程序
评论
共有 条评论