资源简介
用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
- 上一篇:家庭财务管理系统
- 下一篇:C++资源管理器(制作步骤详细)
相关资源
- 数字电位器C语言程序
- 通信过程中的RS编译码程序(c语言)
- 简单的C语言点对点聊天程序
- 单片机c语言源程序(51定时器 八个按
- 将图片转换为C语言数组的程序
- 安科瑞智能电能表MODBUS通讯程序 VC6
- C语言实现的一个内存泄漏检测程序
- 用单片机控制蜂鸣器播放旋律程序(
- 电子时钟 有C语言程序,PROTEUS仿真图
- 基于C语言的密码锁程序
- c语言小学生自然数四则运算测试程序
- c语言程序设计报告 程序大全
- 文件传输和聊天程序(c语言实现)
- 连铸温度场计算程序(C++)
- 6自由度机器人运动学正反解C++程序
- 《Linux程序设计》第四版pdf高清电子版
- 使用wxWidgets进行跨平台程序开发
- 基于Arduino的MLX90614温度采集程序
- ADS1263驱动程序+电路图
- 程序案例 利用LabVIEW实现串口通讯
- 物联网GPS跟踪器demo程序
- STM32(神舟III号 串口1发送实验程序)
- STM32429的串口收发程序
- AD5328驱动程序
- PCA9539驱动程序
- ADS1256-STM32参考程序
- Arduino 敲琴MIDI电子琴 程序报告.docx
- 基于arduino的红绿灯程序,包附原理图
- stm32的半导体除湿机程序
- 单片机程序(附初级、中级、高级共
评论
共有 条评论