资源简介
自己参加竞赛改写的中值滤波C程序,模块程序。可直接嵌入。
代码片段和文件信息
/*************************************************************************
* 函数名称:
* MedianFilter()
* 参数:
* int iFilterH - 滤波器的高度
* int iFilterW - 滤波器的宽度
* int iFilterMX - 滤波器的中心元素X坐标
* int iFilterMY - 滤波器的中心元素Y坐标
* 说明:
* 该函数对DIB图像进行中值滤波。
************************************************************************/
#define iFilterW 1
#define iFilterH 1
#define iFilterMX 1
#define iFilterMY 1
#define WIDTHBYTES(bits) (((bits) + 31) / 32 * 4)
unsigned char GetMedianNum(int * bArray int iFilterLen);
void MedianFilter(unsigned char *pImg1unsigned char *pImgint nWidthint nHeight)
{
unsigned char *lpSrc; // 指向源图像的指针
unsigned char *lpDst; // 指向要复制区域的指针
int aValue[iFilterH*iFilterW]; // 指向滤波器数组的指针
int ijkl; // 循环变量
int lLineBytes; // 图像每行的字节数
lLineBytes = WIDTHBYTES(nWidth * 8);
for ( i=0;i (*pImg)=0;
// 开始中值滤波
// 行(除去边缘几行)
for(i = iFilterMY; i < nHeight - iFilterH + iFilterMY + 1; i++)
{
// 列(除去边缘几列)
for(j = iFilterMX; j < nWidth - iFil
- 上一篇:高斯和概率假设密度滤波gmphd算法实现程序
- 下一篇:媒体播放器qt实现
评论
共有 条评论