概要:#include "imagesample.h"//添加图像例子头文件,//包含原始的图像文件goldhill[128][128]#define MAX_PIXEL_VALUE 256//包含原始图像像素的最大灰度值#define WIDTH 128#define HEIGHT 128#define ZERO 0//原始图像行和列的像素数int my_result[256];//保存自编函数得到的灰度直方图结果的数组short histogram_output[256];//保存调用库函数得到的灰度直方图结果的数组short my_threshold_val=175;//short my_threshold_val=127;//阈值的设定void my_histogram();//声明自编灰度直方图算法显示函数void main( ){int i;int my_size;short *input;my_size = WIDTH*HEIGHT;//计算所有像素点数input = &goldhill[0][0];//获取原始图像的首地址for(i=
DSP技术实习报告,标签:实习报告怎么写,实习报告范文,http://www.88haoxue.com#include "imagesample.h"
//添加图像例子头文件,
//包含原始的图像文件goldhill[128][128]
#define MAX_PIXEL_VALUE 256
//包含原始图像像素的最大灰度值
#define WIDTH 128
#define HEIGHT 128
#define ZERO 0
//原始图像行和列的像素数
int my_result[256];
//保存自编函数得到的灰度直方图结果的数组
short histogram_output[256];
//保存调用库函数得到的灰度直方图结果的数组
short my_threshold_val=175;
//short my_threshold_val=127;
//阈值的设定
void my_histogram();
//声明自编灰度直方图算法显示函数
void main( )
{
int i;
int my_size;
short *input;
my_size = WIDTH*HEIGHT;
//计算所有像素点数
input = &goldhill[0][0];
//获取原始图像的首地址
for(i= 0;i< MAX_PIXEL_VALUE;i++) histogram_output[i]= 0;
IMG_histogram(input,histogram_output,my_size);
//调用image.lib库函数实现灰度直方图显示
my_histogram();
//自编C语言算法程序实现灰度直方图显示
IMG_threshold( &goldhill[0][0],&goldhill[0][0],WIDTH ,HEIGHT, my_threshold_val );
//调用image.lib库函数实现阈值处理与显示
while(1);
}
void my_histogram()
{
int i,j;
double za=2,zb=128,z1=0,z2=255,fij,gij,zzlba;
short (*p)[128];
//定义了一个指针变量p,
//指向了一个包含128个元素的一维数组,
//即行指针变量p
p=goldhill;
zzlba=(z2-z1)/(double)(log(zb)-log(za));
//获取原始图像的首地址
// for(i=0;i<256;i++) my_result[i]=0;
//初始化灰度直方图结果数组
for (i=0;i<128;i++)
{ for (j=0;j<128;j++)
/* log transform.*/
{
fij=*(*(p+i)+j);
if(fij==0)fij=0.001;
gij=zzlba*(log(fij)-log(za))+z1;
*(*(p+i)+j)=gij+0.5;
}
}
// k=*(*(p+i)+j);
// my_result[k]++;
}
3、锯齿波变换
#include
#include
#include "imagelib.h"
//添加图像和视频处理库头文件
#include "imagesample.h"
//添加图像例子头文件,
//包含原始的图像文件goldhill[128][128]
#define MAX_PIXEL_VALUE 256
//包含原始图像像素的最大灰度值
#define WIDTH 128
#define HEIGHT 128
//原始图像行和列的像素数
int my_result[256];
//保存自编函数得到的灰度直方图结果的数组
short histogram_output[256]; www.88haoxue.com
//保存调用库函数得到的灰度直方图结果的数组
short my_threshold_val=175;
//short my_threshold_val=127;
//阈值的设定
void my_histogram();
//声明自编灰度直方图算法显示函数
void main( )
{
int i;
int my_size;
short *input;
my_size = WIDTH*HEIGHT;
//计算所有像素点数
input = &goldhill[0][0];
//获取原始图像的首地址
for(i= 0;i< MAX_PIXEL_VALUE;i++) histogram_output[i]= 0;
IMG_histogram(input,histogram_output,my_size);
//调用image.lib库函数实现灰度直方图显示
my_histogram();
//自编C语言算法程序实现灰度直方图显示
IMG_threshold(&goldhill[0][0],&goldhill[0][0],WIDTH,HEIGHT, my_threshold_val );
//调用image.lib库函数实现阈值处理与显示
while(1);
}
void my_histogram()
{
int i,j;
float lwidth=128,ratio=128,gg=235;
short (*p)[128];
//定义了一个指针变量p,
//指向了一个包含128个元素的一维数组,
//即行指针变量p
p=goldhill;
//获取原始图像的首地址
// for(i=0;i<256;i++) my_result[i]=0;
//初始化灰度直方图结果数组
for (i=0;i<128;i++)
{ for (j=0;j<128;j++)
{
gg=*(*(p+i)+j);
while(gg>lwidth) gg=gg-lwidth;
*(*(p+i)+j)=gg*ratio+0.5;
}
// k=*(*(p+i)+j);
// my_result[k]++;
}
//自编灰度直方图算法显示函数
}
4、图像剪取
#include
#include
#include "imagelib.h"
//添加图像和视频处理库头文件
#include "imagesample.h"
//添加图像例子头文件,
//包含原始的图像文件goldhill[128][128]
#define MAX_PIXEL_VALUE 256
//包含原始图像像素的最大灰度值
#define WIDTH 128
#define HEIGHT 128
//原始图像行和列的像素数
#define ZERO 0
int my_result[256];
//保存自编函数得到的灰度直方图结果的数组
short histogram_output[256];
//保存调用库函数得到的灰度直方图结果的数组
short my_threshold_val=175;
//short my_threshold_val=127;
//阈值的设定
void my_histogram();
//声明自编灰度直方图算法显示函数
void main( )
{
int i;
int my_size;
short *input;
my_size = WIDTH*HEIGHT;
上一篇:营销专业大学生实习报告
分类导航
最新更新
推荐热门