2004-Image thresholding using Tsallis entropy

注:博主并非旨在对针对文章中提及论文的实验设计、数据及结果进行逐一还原,而是针对其核心方法论或关键创新点,通过自行设计的实验流程进行验证与探索。若是完整的论文复现,会进行提前说明。

1 论文简介

《Image thresholding using Tsallis entropy》是由 M. Portes de Albuquerque、 I.A. Esquef、 A.R. Gesualdi Mello 和 M. Portes de Albuquerque 于 2004 年发表在期刊《Pattern Recognition Letters》上的一篇论文。该论文针对图像分割中的自动阈值选择这一经典问题,首次将源于非广延统计力学的 Tsallis 熵 概念应用于图像阈值分割。传统的基于 Shannon 熵 (即 Boltzmann-Gibbs-Shannon 统计)的阈值方法(如 Kapur 方法)本质上是 可加 的,适用于像素间相互作用短程、记忆短的系统。然而,许多图像(如具有长程相关性、纹理结构或噪声的影像)包含 非加性 的信息内容。为此,论文借鉴 Tsallis 熵,通过引入一个实数参数 qqq 来表征系统的 非广延性 程度,并基于此构建了一个新的阈值目标函数。

2 算法原理

假设一幅数字图像具有 kkk 个灰度级,其归一化直方图可视为一个概率分布 pi=p1,p2,...,pkp_i = p_1, p_2, \ldots, p_kpi=p1,p2,...,pk,其中 0≤pi≤10 \leq p_i \leq 10≤pi≤1 且 ∑i=1kpi=1\sum_{i=1}^k p_i = 1∑i=1kpi=1。

步骤一:定义前景与背景的概率分布

选择一个灰度级 ttt 作为候选阈值。图像被分为两类:前景(或目标,Class A,灰度级 111 到 ttt),背景(Class B,灰度级 t+1t+1t+1 到 kkk),这两个类别的概率分布分别为:
pA:p1PA,p2PA,...,ptPA p_A: \frac{p_1}{P^A}, \frac{p_2}{P^A}, \ldots, \frac{p_t}{P^A} pA:PAp1,PAp2,...,PApt
pB:pt+1PB,pt+2PB,...,pkPB p_B: \frac{p_{t+1}}{P^B}, \frac{p_{t+2}}{P^B}, \ldots, \frac{p_k}{P^B} pB:PBpt+1,PBpt+2,...,PBpk

其中,PA=∑i=1tpiP^A = \sum_{i=1}^{t} p_iPA=∑i=1tpi, PB=∑i=t+1kpiP^B = \sum_{i=t+1}^{k} p_iPB=∑i=t+1kpi,分别是前景和背景的累积概率。

步骤二:计算前景与背景的 Tsallis 熵

根据 Tsallis 熵的定义:
Sq=1−∑i=1k(pi)qq−1 S_q = \frac{1 - \sum_{i=1}^k (p_i)^q}{q - 1} Sq=q−11−∑i=1k(pi)q

分别计算前景和背景分布的熵值:
SqA(t)=1−∑i=1t(piPA)qq−1 S_q^A(t) = \frac{1 - \sum_{i=1}^{t} \left( \frac{p_i}{P^A} \right)^q}{q - 1} SqA(t)=q−11−∑i=1t(PApi)q
SqB(t)=1−∑i=t+1k(piPB)qq−1 S_q^B(t) = \frac{1 - \sum_{i=t+1}^{k} \left( \frac{p_i}{P^B} \right)^q}{q - 1} SqB(t)=q−11−∑i=t+1k(PBpi)q

这里,qqq 是非广延性参数,是一个实数。当 q→1q \to 1q→1 时, Tsallis 熵收敛为 Shannon 熵。

步骤三:构建基于伪可加性规则的总目标函数

对于统计独立的系统 A 和 B, Tsallis 熵遵循 伪可加性 规则:
Sq(A+B)=Sq(A)+Sq(B)+(1−q)⋅Sq(A)⋅Sq(B) S_q(A + B) = S_q(A) + S_q(B) + (1-q) \cdot S_q(A) \cdot S_q(B) Sq(A+B)=Sq(A)+Sq(B)+(1−q)⋅Sq(A)⋅Sq(B)

因此,以阈值 ttt 分割后,图像的总 Tsallis 熵 Sq(t)S_q(t)Sq(t) 定义为:
Sq(t)=SqA(t)+SqB(t)+(1−q)⋅SqA(t)⋅SqB(t) S_q(t) = S_q^A(t) + S_q^B(t) + (1-q) \cdot S_q^A(t) \cdot S_q^B(t) Sq(t)=SqA(t)+SqB(t)+(1−q)⋅SqA(t)⋅SqB(t)

步骤四:优化阈值

最优阈值 toptt_{opt}topt 是使上述总 Tsallis 熵 Sq(t)S_q(t)Sq(t) 最大化的那个灰度级 ttt:
topt=arg⁡max⁡t[SqA(t)+SqB(t)+(1−q)⋅SqA(t)⋅SqB(t)] t_{opt} = \arg\max_t \left[ S_q^A(t) + S_q^B(t) + (1-q) \cdot S_q^A(t) \cdot S_q^B(t) \right] topt=argtmax[SqA(t)+SqB(t)+(1−q)⋅SqA(t)⋅SqB(t)]

算法遍历所有可能的灰度级 ttt,计算对应的 Sq(t)S_q(t)Sq(t),并找到其最大值对应的 ttt,即为最终分割阈值。参数 qqq 的值需要根据图像特性(如噪声类型、像素间相关性)进行调整,以获得最佳分割效果。

3 实验结果


4 参考文献

1\] De Albuquerque M P, Esquef I A, Mello A R G. Image thresholding using Tsallis entropy\[J\]. Pattern Recognition Letters, 2004, 25(9): 1059-1065. ## 5 MATLAB 代码

相关推荐
再__努力1点4 小时前
【77】积分图像:快速计算矩形区域和核心逻辑
开发语言·图像处理·人工智能·python·算法·计算机视觉
Coding茶水间5 小时前
基于深度学习的草莓健康度检测系统演示与介绍(YOLOv12/v11/v8/v5模型+Pyqt5界面+训练代码+数据集)
图像处理·人工智能·深度学习·yolo·目标检测·机器学习·计算机视觉
c#上位机6 小时前
halcon窗口显示文字
图像处理·c#·halcon
老艾的AI世界13 小时前
最新AI幻脸软件,全面升级可直播,Mirage下载介绍(支持cpu)
图像处理·人工智能·深度学习·神经网络·目标检测·ai
jghhh0115 小时前
基于阈值分割的车牌定位识别
图像处理·opencv·计算机视觉
太爱学习了16 小时前
FPGA图像处理之:图像畸变矫正原理及matlab与fpga实现
图像处理·matlab·fpga开发
SmartBrain17 小时前
对比:Qwen-VL与传统的CNN在图像处理应用
图像处理·人工智能·cnn
Coding茶水间1 天前
基于深度学习的螺栓螺母检测系统演示与介绍(YOLOv12/v11/v8/v5模型+Pyqt5界面+训练代码+数据集)
图像处理·人工智能·深度学习·yolo·目标检测·机器学习·计算机视觉
明洞日记1 天前
【VTK手册027】VTK 颜色连续映射:vtkColorTransferFunction 深度解析与实战指南
c++·图像处理·算法·vtk·图形渲染