问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

用C语言编写灰度图像直方图变换增强

发布网友 发布时间:2022-05-16 13:28

我来回答

1个回答

热心网友 时间:2023-10-23 19:28

参考一下这个程序:

#define IMAGEWIDTH 80
#define IMAGEHEIGHT 80

void Histogram(unsigned char *pImage,int nWidth,int nHeight,float fHisto[256]);
void Enhance(unsigned char *pImage,unsigned char *pImage1,int nWidth,int nHeight,float fHisto[256],float fHisto1[256]);

unsigned char dbImage[IMAGEWIDTH*IMAGEHEIGHT];
unsigned char dbTargetImage[IMAGEWIDTH*IMAGEHEIGHT];
float fHistogram[256],fHistogram1[256];
unsigned char lut[256];

/* 直方图统计程序 */
int main()
{
... //准备一幅灰度图片到dbImage
Histogram(dbImage,IMAGEWIDTH,IMAGEHEIGHT,fHistogram); //做直方图统计
Enhance(dbImage,dbTargetImage,IMAGEWIDTH,IMAGEHEIGHT,fHistogram,fHistogram1); //直方图增强输出到dbTargetImage
...//完成后显示

}

void Histogram(unsigned char *pImage,int nWidth,int nHeight,float fHisto[256])
{
int i,j;
unsigned int uWork;
unsigned char *pWork;

for ( i=0;i<256;i++ ) fHisto[i]=0.0f;
pWork=pImage;
for ( i=0;i<nHeight;i++ )
{
for ( j=0;j<nWidth;j++,pWork++ )
{
uWork=(unsigned int)(*pWork);
fHisto[uWork]++;
}
}
uWork=nWidth*nHeight;
for ( i=0;i<256;i++ )
{
fHisto[i]/=uWork;
fHisto[i]*=100;
}
}

void Enhance(unsigned char *pImage,unsigned char *pImage1,int nWidth,int nHeight,float fHisto[256],float fHisto1[256])
{
int i,j;
unsigned int uWork;
unsigned char *pWork,*pWork1;

for ( i=0;i<256;i++ )
fHisto1[i]=fHisto[i]/100;
for ( i=1;i<256;i++ )
fHisto1[i]+=fHisto1[i-1];
for ( i=0;i<256;i++ )
lut[i]=fHisto1[i]*256;
for ( i=0;i<256;i++ )
if ( lut[i]>=256 )
lut[i]=255;
pWork=pImage; pWork1=pImage1;
for ( i=0;i<nHeight;i++ )
for ( j=0;j<nWidth;j++,pWork++,pWork1++ )
(*pWork1)=lut[(*pWork)];
}来自:求助得到的回答
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
玉米仁子饭产自哪里 中国期货交易所的交易品种有哪些? 历史要怎么读,有啥诀窍 高中历史诀窍 年终会活动策划方案 深度解析:第一财经回放,探索财经新风向 逆水寒手游庄园怎么邀请好友同住 逆水寒手游 逆水寒不同区可以一起组队吗? 逆水寒手游 逆水寒怎么进入好友世界? 逆水寒手游 逆水寒怎么去别人的庄园? wps表格有100元*10个怎么求和 遥感图像的灰度增强 扇贝是冻的直接煮还是先化了再煮?为什么?求详解 课桌,讲台,黑板,各种文具写的童话题目是什么 找靓机上苹果x主板和硬盘是第三方软件是什么意思? 对少先队组织的建议(低碳、环保···) 我是那种散着头发显得脸肉特别多特别圆,这样子适合什么发型?要不要刘海?脸型有点宽和短. 谁知道有种发型就是披散着头发,然后从中间编一个小的麻花辫很像发卡的那种发型怎么弄啊 稀疏的头发适合什么发型 学3年小提琴可以有清华艺术特长生加分水平吗? 有没有披散着头发的新娘发型?最好是带花环的那种。 散头发编什么发型好看图片 上海摩尔酒店管理有这个公司吗? 散头发不好看的原因 头发少又想扎着还想散着那剪个什么发型好看 客厅装修吊顶射灯,大约多少钱呀?? 怎么查高考各题的成绩??? Verilog 哪本教材适合入门? fpga里出现:verilog hdl syntax error at xxx.v near? VERILOG一个if下怎么写多个语句? wps怎样实现公式=SUMIF(Sheet2!$C$1:$C$100,&quot;花生&quot;,Sheet2!$D$1:$D$100) wps表格中同底纹数据如何求和 如何编写函数实现图像灰度变换。包括图像求反,对比度增强,动态范围压缩,灰度级分层并分析图像的变化。 灰度变换的目的和用途,有哪些实现方法 指纹图像 增强对比度 南昌哪里看皮肤好 LDV飞秒激光是否最先进的近视治疗手段?rUo 想做手术(治疗近视) 近视眼做手术 我想做近视治疗手术,了解的麻烦说下,谢谢 做完拱桥式腰部肌肉锻炼后,腰部的肌肉有点酸。是锻炼的结果吗? 海贼王之蜀山剑诀的txt全集下载地址 金庸无双2阿鼻道三刀和缥缈剑诀还有蜀山七圣决谁更厉害 会泄露哪些信息? 微信这几个地方要设置好,不然个人“隐私”容易泄露,快告诉家人 微信里有个设置不关上,隐私要被泄露了,清楚的人不算多,看看 微信这个开关不及时关闭,隐私很容易泄露,学会了很实用,都学学 autocad 文件扩展名 是dwg。请问dwg是什么单词的缩写? 包装机械英语中dwg是drawing的缩写吗 AutoCAD的.dwg扩展名英文单词全写是什么?