目录

  • 图像感知与获取
    • 一个简单的成像模型
  • 图像取样和量化
    • 空间分辨率和灰度分辨率

图像感知与获取

一个简单的成像模型

我们用形如 f(x,y)f(x,y)f(x,y) 的二维函数来表示图像。在空间坐标 (x,y)处f(x, y)处 f(x,y)处f的值是一个标量,其物理意义由图像源决定,其值与物理源(如电磁波)辐射的能量成正比。因此,f(x,y)f(x,y)f(x,y) 一定是非负的和有限的,即
0≤f(x,y)<∞(2.3)0 \leq f(x, y) < \infty \tag{2.3} 0≤f(x,y)<∞(2.3)
函数f(x,y)f(x, y)f(x,y) 由两个分量表征:(1)入射到被观察场景的淘汰照射量;(2)被场景中物体反射的照射量。它们分别称为入射分量反射分量,并分别用i(x,y)和r(x,y)i(x, y) 和 r(x, y)i(x,y)和r(x,y) 表示。这两个函数的乘积形成f(x,y)f(x, y)f(x,y) ,即
f(x,y)=i(x,y)r(x,y)(2.4)f(x, y) = i(x, y) r(x, y) \tag{2.4}f(x,y)=i(x,y)r(x,y)(2.4)
0≤i(x,y)<∞(2.5)0 \leq i(x, y) < \infty \tag{2.5}0≤i(x,y)<∞(2.5)
0≤r(x,y)≤1(2.6)0 \leq r(x, y) \leq 1 \tag{2.6} 0≤r(x,y)≤1(2.6)

于是,反射分量限制在0(全吸收)和1(全反射)之间。i(x,y)i(x, y)i(x,y)的性质取决于照射源,而 r(x,y)r(x, y)r(x,y) 的性质取决被成像物体的特性。

区间[Lmin,Lmax][L_{min}, L_{max}][Lmin​,Lmax​]称为亮度级(或灰度级)

图像取样和量化

def get_circle(height, width):"""creat a circle faded image:param height: input height of the image you want to create:param width: input height of the image you want to create:return: image normalize [0, 1]"""M, N = width, heightu = np.arange(M)v = np.arange(N)u, v = np.meshgrid(u, v)D = np.sqrt((u - (M//2 + 1))**2 + (v - (N//2 + 1))**2)kernel = normalize(D)return kernel
# 图像取样
height, width = 512, 512
mid_h, mid_w = height//2 + 1, width//2 + 1img_ori = np.zeros([height, width], dtype=np.float)
img_ori = (img_ori + 1.0) * 1.
circle = 1 - get_circle(400, 400)img_ori[mid_h-200: mid_h+200, mid_w-200:mid_w+200] = circlef_x_57 = img_ori[57:58, :] # 取样 f(x, 56)plt.figure(figsize=(10, 5))
plt.subplot(121), plt.imshow(img_ori, 'gray'), plt.xticks([]), plt.yticks([])
plt.subplot(122), plt.plot(f_x_57[0]), plt.xticks([]), plt.yticks([])
plt.tight_layout()
plt.show()

空间分辨率和灰度分辨率

空间分辨率是图像中最小可辨别的希腊别人测度。这一测度通常使用点数/英寸(dpi)表示。

灰度分辨率是批在灰度级中可分辨的最小变化。灰度级通常是2的整数次幂。最常用的数是8比特,在一些特定的范围也使用16比特。32比特的灰度量化很少见,有时也会使用10比特和12比特来做数字化图像灰度级的系统。我们常说一幅灰度被量化为256组的图像,其灰度分辨率为8比特。灰度的可分辨变化 不仅受噪声和饱和度的影响,而且受人类分析和解释整个场景内容的感知能力的影响。

def down_sample(image):height, width = image.shape[:2]dst = np.zeros([height//2, width//2])dst = image[::2, ::2]return dst
# 用降采样来模拟降低空间分辨率的效果
img = cv2.imread('DIP_Figures/DIP3E_Original_Images_CH02/Fig0220(a)(chronometer 3692x2812  2pt25 inch 1250 dpi).tif', 0)img_2 = down_sample(img)
img_3 = down_sample(img_2)
img_4 = down_sample(img_3)plt.figure(figsize=(15, 18))
plt.subplot(221), plt.imshow(img, 'gray'), plt.xticks([]), plt.yticks([])
plt.subplot(222), plt.imshow(img_2, 'gray'), plt.xticks([]), plt.yticks([])
plt.subplot(223), plt.imshow(img_3, 'gray'), plt.xticks([]), plt.yticks([])
plt.subplot(224), plt.imshow(img_4, 'gray'), plt.xticks([]), plt.yticks([])
plt.tight_layout()
plt.show()

# 改变灰度值以实现灰度级的不同
# img = cv2.imread('DIP_Figures/DIP3E_Original_Images_CH02/Fig0222(a)(face).tif', 0)
img = get_circle(1000, 1000)img_temp = normalize(img)fig = plt.figure(figsize=(13, 26))
for i in range(8):ax = fig.add_subplot(4, 2, i+1)if i < 7:dst = np.uint(img_temp * (2**(8 - i) - 1))else:dst = np.uint(img_temp * (2))ax.imshow(dst, 'gray')ax.set_title(f'{2**(8 - i)}')ax.set_xticks([])ax.set_yticks([])
plt.tight_layout()
plt.show()

第2章 Python 数字图像处理(DIP) --数字图像基础2 - 图像感知要素 - 图像取样和量化 - 空间分辨率和灰度分辨率相关推荐

  1. 第2章 Python 数字图像处理(DIP) --数字图像基础1 - 视觉感知要素 - 亮度适应与辨别

    数字图像基础1 视觉感知要素 亮度适应与辨别 import sys import numpy as np import cv2 import matplotlib import matplotlib. ...

  2. 第2章 Python 数字图像处理(DIP) --数字图像基础5 -- 算术运算、集合、几何变换、傅里叶变换等

    目录 数字图像处理所有的基本数字工具介绍 算术运算 集合运算和逻辑运算 空间运算 向量与矩阵运算 图像变换 图像和随机变量 数字图像处理所有的基本数字工具介绍 算术运算 # 相加 img_ori = ...

  3. 第2章 Python 数字图像处理(DIP) --数字图像基础4 -- 像素间的一些基本关系 - 邻域 - 距离测试

    目录 像素间的一些基本关系 像素的相信像素 距离测试 import sys import numpy as np import cv2 import matplotlib import matplot ...

  4. 第2章 Python 数字图像处理(DIP) --数字图像基础3 - 图像内插 - 最近邻内插 - 双线性插值 - 双三次内插 - 图像放大

    目录 图像内插 放大图像 图像内插 内插通常在图像放大.缩小.旋转和几何校正等任务中使用.内插并用它来调整图像的大小(缩小和放大),缩小和放大基本上采用图像重取样方法 最近邻内插,这种方法将原图像中最 ...

  5. 第10章 Python 数字图像处理(DIP) - 图像分割 基础知识 标准差分割法

    This Chapter is all about image segmentation. I still not finished whole chapter, but here try to pu ...

  6. 第1章 Python 数字图像处理(DIP) --绪论

    Python 数字图像处理 关于本专栏 此专栏为 Python 数字图像处理(DIP)(冈萨雷斯版),专栏里文章的内容都是来自书里,全部手打,非OCR,因为很多公式,都是用LaTex输入,力求更好看的 ...

  7. 第3章 Python 数字图像处理(DIP) - 灰度变换与空间滤波1 - 灰度变换和空间滤波基础、Sigmoid激活函数

    这里写目录标题 本节的目标 背景 灰度变换和空间滤波基础 本节的目标 了解空间域图像处理的意义,以及它与变换域图像处理的区别 熟悉灰度变换所有的主要技术 了解直方图的意义以及如何操作直方图来增强图像 ...

  8. 第3章 Python 数字图像处理(DIP) - 灰度变换与空间滤波15 - 锐化高通滤波器 -拉普拉斯核(二阶导数)

    目录 锐化(高通)空间滤波器 基础 - 一阶导数和二阶导数的锐化滤波器 二阶导数锐化图像--拉普拉斯 锐化(高通)空间滤波器 平滑通过称为低通滤波 类似于积分运算 锐化通常称为高通滤波 微分运算 高过 ...

  9. 第6章 Python 数字图像处理(DIP) - 彩色图像处理2 - 灰度分层(灰度分割)和彩色编码,灰度值到彩色变换,Gray to RGB

    第6章主要讲的是彩色图像处理,一些彩色模型如RGB,CMK,CMYK,HSI等色彩模型:彩色模型的变换关系:还包含由灰度图像怎样处理成假彩色图像:使用彩色分割图像等.本章比较少理论还有变换的描述,主要 ...

最新文章

  1. python install pip 区别_python conda、pip区别,python 下 faiss 安装
  2. java 支付宝 退款_Java 支付宝支付,退款,单笔转账到支付宝账户(支付宝支付)
  3. WinInet:HTTPS 请求出现无效的证书颁发机构的处理
  4. (bfs)连连看(hdu1175)
  5. kafka 如何做到1秒发布百万级条消息?
  6. windows环境下部署Tomcat到服务器
  7. Oracle -----视图
  8. 10亿数据量只需要100MB内存,redis的位存储为什么这么牛?
  9. TED如何和压力做朋友(第三天)
  10. 软件工程基础 实验3《系统设计》
  11. c语言中指针几个字节,【C++】一个指针占几个字节?为什么呢?
  12. 【css默认设置】---- 关于CSS Reset 那些事(一)之 历史演变与Normalize.css
  13. html项目的致谢词,论文致谢词(精选10篇)
  14. DANN loss/acc振荡
  15. Multi-armed Bandit Experiments
  16. 如何找到自己喜欢的电子书|电子书搜索引擎介绍
  17. JAVA版不祥之兆等级怎么看,袭击队长 - Minecraft Wiki,最详细的官方我的世界百科...
  18. 机器学习导论:什么是机器学习?
  19. lemur代码分析之 #line
  20. 利用VMware搭建centos环境

热门文章

  1. Improving Entity Linking by Modeling Latent Relations between Mentions
  2. MySql 全文检索
  3. 计算机微课用什么音乐,有关微课音乐课堂教学
  4. java读取xml文件报“org.xml.sax.SAXParseException: Premature end of file”
  5. 如何使用Google底部导航栏创建通知徽章
  6. Python-pandas:从万德(wind)获取DataFrame形式的宏观经济数据
  7. 手把手教你ECSHOP去版权与标志
  8. java dozer_java – Dozer双向映射(String,String)与自定义转换器不可能?
  9. 配置CLion clang-format保存时自动格式化
  10. 蓝桥杯CT107D:关于矩阵键盘工作原理及其应用