对于图像处理的知识已经有太多的前辈们写过精彩的博文了,我呢只是将自己的学习路线记录下来,对于我学习到的知识进行整理和归纳,欢迎同好交流,更欢迎大家批评指正。
Block diagram of a digital imaging system
图像的形成过程:成像,模数转换,打印
图像分析
niquist采样定律:它为采样率建立了一个足够的条件,该采样率允许离散采样序列从有限带宽的连续时间信号中捕获所有信息。
采样频率≥最高频率的两倍即:
ω s > 2 ω m a x , f s > 2 f m , T s < 1 2 f m = π ω m ω_s >2ω_{max}, f_s >2f_m, T_s < \frac{1}{2f_m}=\frac{\pi}{\omega_m} ωs>2ωmax,fs>2fm,Ts<2fm1=ωmπ
采样的方式:
- 机器直接转换空间内采样
- CCD 进行光电转换
图片采样的质量判断标准:dpi
Resolution
分辨率,取决于空间的,以及采样的质量和分辨率dpi
沿图片的一个轴像素的数量
w = dpi*D 图像的大小
image size = resolution* bit/pixel
计算大小要估计显存和内存的大小
图像的列数在使用位图进行存储时需要为4的倍数,不足的会自动补零
Brightness
brightness也是进行离散化
bit 使用多少位就能表达2^8 的色彩
RGB 3*8 =24 256彩色
each grid is a pixel/voxels
像素的多少反应了分辨率,像素的值反应了亮度
三维图像采集则成为体素
Neighborhood adjacency
领域,4(十字)或者8(米字),全连通(26邻域)
MRI 信号波长短,能量较低,不会电离
PET X-ray 能量更强 发生电离,需要防护
color space
RGB color space 最常见的编码方式
000表示黑色
三维空间模型表达色彩(此处应该有张图)
通过给RGB的述职乘以不同的权重可以将三彩色转为灰度空间中,相反也可以用伪彩色进行图像的增强显示
CMY space
减法三原色 cyan yellow magenta
CMY = [1, 1, 1] - [R, G, B]
和RGB 反色
CMYK space
用K来表示黑色,CMY减去K进行表示,改善了打印的效果,节省墨水
HSV space
hue 色调
saturation 饱和度
intensity 密度
LAB 空间,A B两者是高度无关的
histogram直方图
基本性质
横向:图像分成的区间,表示灰度值
纵向:像素落在区间的数量
灰度直方图反应的是图像灰度的统计性质,不包含空间位置信息
从直方图可以看出图像的总体性质,比如明暗程度、细节是否清晰、动态范围大小
dynamic range 动态范围
图象中最亮的颜色和最亮的颜色的差距有多大,和中间的分布无关
但是范围相同的不一定呈现相同,直方图集中分布的位置也决定了图像的显示质量
contrast 对比度
相近的区域之间密度的差异有多大
对比度整体计算、RMS contrast计算
调整图像改变contrast,改变的范围可以看清楚
改变特征,提取有特征的代表性
CT值
CT成像特有的参数,因为CT是根据组织密度进行成像,所以,密度不同的组织CT值不同
CT值以水为参照,吸收系数比水小的CT值为负,比水大CT值为正值
C T n u m b e r = 1000 ∗ μ − μ w a t e r μ w a t e r CT number = 1000 * \frac{μ - μ_{water}}{μ_{water}} CTnumber=1000∗μwaterμ−μwater
窗口函数:不同的区域窗口函数,可以特异性的放大某个区域的CT值,方便更好的观察图像
从L到M原来的小灰度段称为窗宽,记作W,W = M - L。窗口的中间灰度值成为窗位,W和L的值可以人工设置
从映射曲线斜率可以看出与直方图拉伸、压缩之间的关系
- 当 θ > 45° , 灰度段拉伸,有助于观察
- 当 θ < 45° , 灰度段压缩,有抑制背景的作用
直方图归一化
图像的动态范围的合理选择可以通过直方图的归一化来实现
即将每个灰度对应的像素数与总像素数的比值来确定纵坐标的刻度
p
i
=
n
i
N
p_i = \frac{n_i}{N}
pi=Nni
(
i
=
0
,
1
,
2
,
…
…
,
k
−
1
)
(i = 0, 1, 2, ……, k-1)
(i=0,1,2,……,k−1)
∑
k
−
1
i
=
0
p
i
=
1
\displaystyle\sum_{k-1}^{i = 0} p_i = 1
k−1∑i=0pi=1
医学图像具有低灰度值背景区域较大,所以使用另一种计数方式
q i = α n i n m a x q_i = \alpha\frac{n_i}{n_{max}} qi=αnmaxni
直方图的线性拉伸与压缩
受人眼分辨能力限制,灰度差小于 I m a x / 16 I_{max}/16 Imax/16 就很难分开,所以通过映射的方法将之前的图片分开,成为直方图的拉伸,压缩和拉伸最常使用的方法是线性映射
对于同一图像进行处理可以使用分段线性函数进行处理
插值
最近邻插值:如名字所示,根据最近点的值进行插补,只用到一个点进行插值,模糊较大,快速但误差大
双线性插值法:使用四个点的值,做两方向、共三次插值(R2→R1→P)
特点:一般能得到满意结果,但是具有低通滤波的特性,使图像的高频损失
三次多项式插值:使用多项式对点进行插值,线性插值是一个特例,用n+1个点的信息对n阶多项式进行拟合
sinc函数: c ( x ) = s i n ( π x ) π x c(x) = \frac{sin(\pi x)}{\pi x} c(x)=πxsin(πx)
结果可靠,但是计算量较大
ITK library
可以再Python中调用ITK的包,使用ITK工具包进行图像的处理和调用
simpleITK Python
pip install SimpleITK