灰度图像分辨率变换(灰度级)1

news/2024/10/28 23:21:37/

目的:(1)对一帧8bits 128x128的灰度图像处理为1bits和3bits的128x128灰度图像。

          (2)处理为8bits 64x64和32x32的灰度图像。

一、基本原理

    一幅图像的x和y坐标及幅度可能都是连续的。为了把它转换为数字形式,必须在坐标和幅度上都进行取样操作。数字化坐标值称为取样,数字化幅度值称为量化。

1.1灰度级和空间分辨率(细微结构的分辨率)

单色图像在任何坐标(x0,y0)处的强度为图像在那一点的灰度级(l),即
l=f(x0,y0)
l位于下列范围:
Lmin ≤ l ≤ Lmax、
区间[Lmin,Lmax]称为灰度级,常令该区间[0,L-1]。
数字化过程对于M,N值和每个像素允许的离散灰度级数L需要一个判定。对于M和N,除了必须取正整数外没有其他要求。然而,处于处理、存储和取样硬件的考虑,灰度级典型的取值是2的整数次幂,即

1.2降低图像空间分辨率

  降低图像空间分辨率是从原图像中删去一样的行和列数完成的。例如,512x512图像是从1024x1024图像中每隔一行或一列删去一行或一列得到的。256x256图像是从512x512图像中每隔一行或一列删去一行或一列产生的,以此类推。其灰度级保持在256。

1.3灰度级数变换算法步骤

Step1.把0-255灰度值中小于127的值赋值为0,其他赋值为255,共2个灰度级,输出为1bit图像;

Step2.把0-255灰度值均匀分成2^3=8份,即为8个灰度级,输出为3bit图像。

二、结果分析

可以看出,处理后的图像灰度级减少,灰度级变成2,变成灰度只有0和1的二值图。

可以看出,处理后的图像灰度级减少,灰度级变成23即8个灰度级,此时的图像严重压缩,比原始图像减少了很多信息。

由上图可知,处理后的图像复原到128*128大小,与原图相比,损失了较多细节,整个图像上显示出稍微明显的颗粒,这些颗粒在下图更加明显了。

随着取样密度变小,图像质量变差,图像颗粒非常明显,损失了诸多细节。

三、完整程序

  1. a=imread('123.bmp');
  2. b=rgb2gray(a);
  3. figure(1)
  4. imshow(b);
  5. title('8bits 128x128灰度图像');
  6. [m,n]=size(b);
  7. for i=1:m
  8. for j=1:n
  9. if(b(i,j)>0)&&(b(i,j)<127)
  10. b(i,j)=0;
  11. else
  12. b(i,j)=255;
  13. end
  14. end
  15. end
  16. figure(2)
  17. imshow(b);
  18. title('1bit 128x128图像');
  19. b1=rgb2gray(a);
  20. [m,n]=size(b1);
  21. for i=1:m
  22. for j=1:n
  23. if(b1(i,j)>0)&&(b1(i,j)<32)
  24. b1(i,j)=0;
  25. end
  26. if(b1(i,j)>31)&&(b1(i,j)<64)
  27. b1(i,j)=32;
  28. end
  29. if(b1(i,j)>63)&&(b1(i,j)<96)
  30. b1(i,j)=64;
  31. end
  32. if(b1(i,j)>95)&&(b1(i,j)<128)
  33. b1(i,j)=96;
  34. end
  35. if(b1(i,j)>127)&&(b1(i,j)<160)
  36. b1(i,j)=128;
  37. end
  38. if(b1(i,j)>159)&&(b1(i,j)<192)
  39. b1(i,j)=160;
  40. end
  41. if(b1(i,j)>191)&&(b1(i,j)<224)
  42. b1(i,j)=192;
  43. End
  44. if(b1(i,j)>191)&&(b1(i,j)<224)
  45. b1(i,j)=224;
  46. end
  47. if(b1(i,j)>223)
  48. b1(i,j)=255;
  49. end
  50. end
  51. end
  52. figure(3)
  53. imshow(b1);
  54. title('3bits 128x128图像');
  55. figure(4)
  56. b=rgb2gray(a);
  57. J= b(1:2:end,1:2:end);
  58. imshow(J);
  59. title('8bits 128*128变换为64*64');
  60. figure(5)
  61. J = b(1:2:end,1:2:end);
  62. J=imresize(b,[32,32]);
  63. imshow(J);
  64. title('8bits 128*128变换为32*32');


http://www.ppmy.cn/news/858719.html

相关文章

图像处理基础——灰度级形态学

文章目录 简介膨胀 腐蚀腐蚀膨胀 开运算 闭运算一些基本的灰度级形态学算法形态学平滑形态学梯度顶帽变换 底帽变换 灰度级形态学重建 简介 形态学只适用于Region操作 或者是二值化后的图片 需要延伸到灰度形态学才能广泛应用 拓展到灰度级形态学后 结构元的表达形式可以大致分…

灰度、灰度级、分辨率、像素值

​1、像素点 像素点是最小的图像单元&#xff0c;一张图片由好多的像素点组成。如下图 可以看到上述图片尺寸是500 * 338 的&#xff0c;表示图片是由一个500 * 338的像素点矩阵构成的&#xff0c;这张图片的宽度是500个像素点的长度&#xff0c;高度是338个像素点的长度&#…

数字图像处理:图像缩放和降低灰度级

打开、显示、存储图片 用Python版OpenCV实现 image cv2.imread("images/2_20_a.jpg", cv2.IMREAD_UNCHANGED) cv2.imwrite("images/full.jpg", image, [int(cv2.IMWRITE_JPEG_QUALITY), 100]) cv2.imshow("image", image) cv2.waitKey(0)打开…

(数字图像处理MATLAB+Python)第五章图像增强-第一节:图像增强概述和基于灰度级变换的图像增强

文章目录 一&#xff1a;图像增强概述二&#xff1a;基于灰度级变换的图像增强&#xff08;1&#xff09;线性灰度级变换A&#xff1a;基本线性灰度级变换B&#xff1a;分段线性灰度级变换①&#xff1a;定义②&#xff1a;截取式灰度变换③&#xff1a;窗切片 &#xff08;2&a…

数字图像处理——灰度级分层

灰度级分层的两种基本形式如下&#xff1a; 一&#xff1a;将感兴趣的范围内的灰度值显示为一个值&#xff0c;而其他灰度值显示为另一个值 二&#xff1a;将感兴趣的范围内的灰度值变亮或变暗&#xff0c;而其他灰度值保持不变 Python实现过程如下&#xff1a; 使用的图像…

数字图像处理实验1.1:matlab实现减少图像灰度级

Digital Image Processing 1. Reducing the Number of Gray Levels in an Image 减少图像中的灰度级别的数量 (a)编写一个计算机程序&#xff0c;能够将图像中的灰度数从256减少到2&#xff0c;整数幂为2。所需的灰度级别的数量需要是程序的可变输入。 (b)下载图。2.21(a)&am…

Matlab 读取图像并且显示灰度级 精简 即学即用

程序如下&#xff1a; clc, clear, close all;I imread(ngc6543a.jpg);J rgb2gray(I);figure, imshow(J); clc --- 清除命令窗口命令 clear --- 删除所有之前声明赋值过的变量&#xff0c;并且释放系统内存 close all --- 关闭matlab的弹出来的所有子窗口 imread(path) …

1.求一幅600×800的黑白图像、 16灰度级图像、256灰度级图像,分别需要多少字节的存储空间?

&#xff08;1&#xff09;黑白图像&#xff1a;b600*800480000/8/102458.59KB &#xff08;2&#xff09;16灰度级图像&#xff1a;162^4&#xff0c;即k4&#xff0c;b600*800*41920000b240000B234.37KB &#xff08;3&#xff09;256灰度级图像&#xff1a;2562^8&#xf…