常用方法
方法 | 解释 | 优缺点 |
---|---|---|
双峰法 | 物体和背景区别较大,可以分别形成波峰,这是选择双峰之间的波谷最为阈值 | 只能用于目标和背景的直方图没有重叠时 |
P参数法 | 知道目标占图像的比例,且目标偏暗,背景偏亮 m i n ( ∣ ∑ t = 0 T p ( t ) m ∗ n − P ∣ ) min(\vert\frac{\sum_{t=0}^Tp(t)}{m*n} -P\vert) min(∣m∗n∑t=0Tp(t)−P∣) T:阈值 p(t):直方图 P:目标占图像的比例 | 用于固定分辨率下,目标所占整个图像比例已知的情况 |
最大类间方差法(Otsu) | 基于整幅图的统计特性实现阈值自动选取的,基本思想是,用某一假定的灰度值t将图像的灰度分成两组,当两组的类间方差最大时,此灰度值就是图像二值化的最佳阈值。 将 数 据 分 成 两 组 则 : 两 组 图 像 个 数 在 图 像 中 所 占 比 分 比 : w 0 = ∑ i = 0 T p i w 1 = ∑ i = T + 1 L − 1 p i = 1 − w 0 平 均 灰 度 值 : u 0 = ∑ i = 0 T i p i u 1 = ∑ i = T + 1 L − 1 i p i 图 像 总 的 平 均 灰 度 值 : u = w 0 u 0 + w 1 u 1 类 间 方 差 : g ( t ) = w 0 ( u 0 − u ) 2 + w 1 ( u 1 − u ) 2 = w 0 w 1 ( u 0 − u 1 ) 最 佳 阈 值 : T = a r g m a x ( g ( t ) ) \begin{aligned}将数据分成两组则:\\ 两组图像个数在图像中所占比分比:& w_0 = \sum_{i=0}^Tp_i& w_1 = \sum_{i=T+1}^{L-1}p_i = 1- w_0 \\ 平均灰度值:& u_0 = \sum_{i=0}^{T}ip_i & u_1 = \sum{i=T+1}^{L-1}ip_i \\ 图像总的平均灰度值:& u = w_0u_0 + w_1u_1 \\ 类间方差:& g(t) = w_0(u_0 -u)^2 + w_1(u_1 -u)^2 = w_0w_1(u_0 -u_1) \\ 最佳阈值:& T= argmax(g(t))\end{aligned} 将数据分成两组则:两组图像个数在图像中所占比分比:平均灰度值:图像总的平均灰度值:类间方差:最佳阈值:w0=i=0∑Tpiu0=i=0∑Tipiu=w0u0+w1u1g(t)=w0(u0−u)2+w1(u1−u)2=w0w1(u0−u1)T=argmax(g(t))w1=i=T+1∑L−1pi=1−w0u1=∑i=T+1L−1ipi | 当物体目标和背景灰度差不明显时,会出现无法忍受的大块黑色区域,甚至丢失整幅图像的信息 |
最大熵阈值法 | 直 方 图 的 熵 的 定 义 : H = ∑ i = 0 L − 1 i p i 目 标 ( O ) 类 : p i P t , i = 0 , 1 , . . . , t , 其 中 P t = ∑ i = 0 t p i 背 景 ( B ) 类 : p i 1 − p t , i = t + 1 , . . . , L − 1 目 标 类 的 熵 : H O ( t ) = ∑ i = 0 t p i P t ln p i P t = ln P t + H t P t , 其 中 H t = − ∑ i = 0 t p i ln p i 背 景 类 的 熵 : H B ( t ) = ∑ i = t + 1 L − 1 p i 1 − P t ln p i 1 − P t = ln 1 − P t + H − H t 1 − P t , 其 中 H = − ∑ i = 0 L − 1 p i ln p i 图 像 的 总 熵 : H ( t ) = H O ( t ) + H B ( t ) = ln P t ∗ ( 1 − P t ) + H t P t + H − H t 1 − P t 求 最 佳 阈 值 : T = a r g m a x ( H ( t ) ) \begin{aligned} 直方图的熵的定义:& H = \sum_{i=0}^{L-1}ip_i\\ 目标(O)类:& \frac{p_i}{P_t},i=0,1,...,t,其中P_t = \sum_{i=0}^t p_i \\ 背景(B)类:& \frac{p_i}{1-p_t},i=t+1,...,L-1\\目标类的熵:& H_O(t) = \sum_{i=0}^t{\frac{p_i}{P_t}\ln{\frac{p_i}{P_t}}} = \ln{P_t} + \frac{H_t}{P_t},其中H_t = - \sum_{i=0}{t}p_i\ln{p_i} \\ 背景类的熵:&H_B(t) = \sum_{i=t+1}^{L-1}{\frac{p_i}{1-P_t}\ln{\frac{p_i}{1-P_t}}} = \ln{1-P_t} + \frac{H-H_t}{1-P_t},其中H = - \sum_{i=0}{L-1}p_i\ln{p_i} \\图像的总熵:& H(t) = H_O(t) + H_B(t) = \ln{P_t *(1-P_t)} + \frac{H_t}{P_t} + \frac{H-H_t}{1-P_t}\\求最佳阈值:& T= argmax(H(t))\end{aligned} 直方图的熵的定义:目标(O)类:背景(B)类:目标类的熵:背景类的熵:图像的总熵:求最佳阈值:H=i=0∑L−1ipiPtpi,i=0,1,...,t,其中Pt=i=0∑tpi1−ptpi,i=t+1,...,L−1HO(t)=i=0∑tPtpilnPtpi=lnPt+PtHt,其中Ht=−i=0∑tpilnpiHB(t)=i=t+1∑L−11−Ptpiln1−Ptpi=ln1−Pt+1−PtH−Ht,其中H=−i=0∑L−1pilnpiH(t)=HO(t)+HB(t)=lnPt∗(1−Pt)+PtHt+1−PtH−HtT=argmax(H(t)) | 对于非理想双峰直方图也可以进行很好的分割,缺点是运算速度慢不适合实时,仅仅考虑像素点的灰度信息,没有考虑像素点的空间信息,所以当图像的信噪比较低时,分割效果不理想。 |
迭代法 | 1 选 取 初 始 阈 值 T ( j ) , 通 常 可 以 选 择 整 幅 图 的 平 均 灰 度 值 作 为 初 始 阈 值 , j 为 迭 代 次 数 , 初 始 时 , j = 0 2 用 T ( j ) 分 割 图 像 , 将 图 像 分 为 2 个 区 域 C 1 ( j ) 和 C 2 ( i ) 3. 计 算 平 均 灰 度 值 : u 1 = 1 N 1 ( j ) ∑ f ( x , y ) ∈ C 1 j f ( x , y ) u 2 = 1 N 2 ( j ) ∑ f ( x , y ) ∈ C 2 j f ( x , y ) 其 中 : N 1 ( j ) , N 2 j 属 于 第 j 次 迭 代 时 区 域 C 1 和 C 2 的 像 素 点 数 , f ( x , y ) 表 示 图 中 ( x , y ) 点 的 灰 度 值 4. 计 算 新 的 阈 值 T ( j + 1 ) = u 1 ( j ) + u 2 ( j ) 2 5. 令 j = j + 1 , 重 复 2 − 4 , 直 到 T ( j + 1 ) 和 T ( j ) 的 差 小 于 规 定 值 或 j 达 到 最 大 迭 代 次 数 \begin{aligned} 1& 选取初始阈值T(j),通常可以选择整幅图的平均灰度值作为初始阈值,j为迭代次数,初始时,j=0\\ 2& 用T(j)分割图像,将图像分为2个区域C_1^{(j)和C_2^{(i)}}\\ 3.&计算平均灰度值:u_1 = \frac{1}{N1_(j)}\sum_{f(x,y)\in{C_1^{j}}}{f(x,y)} \qquad u_2 = \frac{1}{N2_(j)}\sum_{f(x,y)\in{C_2^{j}}}{f(x,y)}\\ &其中:N_1^{(j)},N_2^{j}属于第j次迭代时区域C1和C2的像素点数,f(x,y)表示图中(x,y)点的灰度值\\ 4.&计算新的阈值T(j+1)= \frac{u_1^{(j)} + u_2^{(j)}}{2}\\ 5.&令j=j+1,重复2-4,直到T(j+1)和T(j)的差小于规定值或j达到最大迭代次数\end{aligned} 123.4.5.选取初始阈值T(j),通常可以选择整幅图的平均灰度值作为初始阈值,j为迭代次数,初始时,j=0用T(j)分割图像,将图像分为2个区域C1(j)和C2(i)计算平均灰度值:u1=N1(j)1f(x,y)∈C1j∑f(x,y)u2=N2(j)1f(x,y)∈C2j∑f(x,y)其中:N1(j),N2j属于第j次迭代时区域C1和C2的像素点数,f(x,y)表示图中(x,y)点的灰度值计算新的阈值T(j+1)=2u1(j)+u2(j)令j=j+1,重复2−4,直到T(j+1)和T(j)的差小于规定值或j达到最大迭代次数 |
参考链接:https://wenku.baidu.com/view/acc24dcf680203d8ce2f2469.html