【数字图像处理】1.1:灰度级

Abstract: 数字图像处理:第1天
Keywords: 灰度级数

本文最初发表于csdn,于2018年2月17日迁移至此

结论一:对于细节较多的图像,当图像大小(N)不变的情况下,灰度级别对于感官质量相对独立;
解释:如果图像细节较多,降低灰度级别,视觉上感觉差别不大
代码编写比较随意,未进行性能优化。只为观察效果:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
#define K 1 //灰度级别
#define STEP (256/(1<<K))
int main(){
//char name[50];
IplImage * image = cvLoadImage("e:\\OpenCV_Image\\airplane.jpg",0);
//IplImage * result = cvCreateImage(cvGetSize(image),8,1);
cvNamedWindow("原图");
cvNamedWindow("变换");
cvShowImage("原图",image);
for(int i=0;i<image->width;i++)
for(int j=0;j<image->height;j++){
int value=cvGetReal2D(image,i,j);
int step=STEP;
while(value>step){
step+=STEP;
}
value=step;
cvSetReal2D(image,i,j,value);
}
cvShowImage("变换",image);
//sprintf(name,"%s%d%s","e:\\OpenCV_Image\\airplane_",K,".jpg");
//cvSaveImage(name,image);
cvWaitKey();
cvReleaseImage(&image);
return 0;

}



以上三张图从左到右从上到下,分别是:原始图像,K=1,2,3,4,5,6,7,8(1阶为二值化图像,8阶为原始图像灰度图)

问题:对于同一分辨率下的图片如何评价其细节的多少。。。

0%