本方案利用卷积神经网络(CNN)、循环神经网络(RNN)和残差网络(ResNet)进行图像描述生成,提取图像中活动、人物、物体及其他元素的描述。该方法已通过BLEU、CIDEr、METEOR和ROUGE等指标得分予以验证。
研究文章
本方案利用卷积神经网络(CNN)、循环神经网络(RNN)和残差网络(ResNet)进行图像描述生成,提取图像中活动、人物、物体及其他元素的描述。该方法已通过BLEU、CIDEr、METEOR和ROUGE等指标得分予以验证。
图像描述生成旨在为包含图像的内容提供有意义的文本描述,所提取的信息与图像中存在的活动相关。ResNet(残差网络)因其能够对图像进行分类并构建深层的层次化表征而广为人知。本文旨在结合多种智能滤波方法使用ResNet,以实现更深层次的图像分类,从而生成真实且有意义的描述,并在参考描述方面达到高度精确。本研究采用智能滤波技术增强图像,利用卷积神经网络(CNN)对特征进行编码,进行模型训练,随后使用循环神经网络(RNN)对特征进行解码。ResNet是计算机视觉任务中非常有效的模型,尤其适用于物体分类和语义分析。ResNet以其残差连接著称,这种连接也被称为跳跃连接,可解决深度学习中的关键问题——梯度消失问题。本研究采用MSCOCO(Microsoft Common Object in Context)基准数据集进行模型训练,该数据集规模庞大,包含可用于多种计算机视觉任务的参考标注。ResNet有助于提升模型的泛化能力,这对于处理多样化的图像尤其重要。根据实验结果,BLEU得分分别为B1: 0.579、B2: 0.404、B3: 0.279、B4: 0.191;METEOR得分为0.195;ROUGE得分为0.396;CIDEr得分为0.6。
在计算机视觉和自然语言处理领域,图像描述生成是一项关键任务,旨在提取图像内容及其所描绘动作的描述。该模型的目标是理解图像,并将信息转化为有意义的句子或说明文字1。整个过程包含两个重要阶段:第一阶段为特征提取,使用卷积神经网络(CNN)模型;第二阶段为利用循环神经网络(RNN)进行图像描述生成,中间引入ResNet进行语义分析、序列生成以及注意力机制的实现。ResNet与基于模板的方法或基于DenseNet的模块有显著区别,因其采用了跳跃连接结构,在降低执行时间的同时提升了性能。图像描述生成具有广泛的应用,包括辅助视障人士、增强社交媒体平台功能、优化基于图像的搜索引擎、基于图像的人工智能(AI)系统等2。
在计算机视觉中,场景识别是指识别和分类图像的整体上下文或环境,例如海滩、城市景观、森林或办公室。与专注于单个物体的目标识别不同,场景识别通过分析纹理、空间布局以及物体之间的关系来理解更大的上下文信息。该技术采用卷积神经网络(CNN)和视觉Transformer等深度学习模型,这些模型通常在大型数据集(如Places365和ImageNet)上进行训练。应用场景包括安全监控、增强现实与虚拟现实(AR和VR)中的沉浸式体验、机器人系统的环境感知,以及自动驾驶车辆的导航。尽管已有诸多进展,视角变化、遮挡和光照条件改变等问题仍使场景识别成为计算机视觉与人工智能研究中的热点课题。场景识别也是计算机视觉中的另一个基本问题。
EnsCaption 是一种双生成对抗网络模型,被提出用于改进生成-检索集成技术3。该架构支持基于和谐生成的图像描述生成方法,能够生成与现有目标一致的描述文本。其中,基于检索的技术采用位置或评分模型,以在基于图像的查询中更精确地选择最优模型来提取信息。通过使用对象、活动和场景等视觉元素,将图像映射到“语义空间”,并将其与相应的语言模板对齐4。该方法利用图像中发现的相关性和特征来构建短语,使句子能够以丰富、凝练且细腻的方式表达信息。通过引入常识知识,进一步增强了基于模板的描述生成方法,以提升语义理解能力5。该技术将模板的应用范围从直接的图像特征扩展至可推断的关联关系。本研究利用现有的目标检测数据集,为每个标注类别提取了16,000条常识性语句。此外,通过使用 WordNet 实现泛化,能够推导出关于先前未见对象的大量事实6。本文综述了用于图像描述的深度学习技术的系统化分类体系,涵盖注意力机制、强化学习策略以及编码器-解码器框架等主题。同时,还探讨了常用数据集和评估标准,并针对对象幻觉和上下文理解等问题进行了分析。作者指出了未来研究方向,例如改进视觉-语言预训练技术以及降低数据集偏差。研究探索了一种基于卷积神经网络和循环神经网络的语义分析方法,用于图像描述任务7。图像描述是最广为人知的应用之一,使计算机能够生成生动的语言描述以概括图像内容。为了提供高层次且具有重要意义的语义描述,该过程不仅需要识别图像中的对象和场景,还需分析其状态、属性及相互关系。尽管图像描述本身具有内在复杂性和挑战性,研究人员在该领域已取得显著进展。本研究涵盖三种主要的基于深度神经网络的图像描述技术:基于 CNN-RNN 的方法、基于 CNN-CNN 的方法以及强化学习框架。研究提出了一种端到端可训练的图像描述模型,结合计算机视觉与自然语言处理技术,以生成连贯的图像描述8。该模型采用编码器-解码器框架,其中预训练的 CNN 将图像编码为特征向量,随后由 LSTM 将其解码为词序列以生成描述文本。尽管该方法在处理复杂场景时存在局限性,但其对视觉-语言任务的贡献仍具有基础性意义9。
ResNet 是本文所提工作图像描述模型中用于从输入图像中提取丰富视觉信息的卷积神经网络(CNN)。ResNet 作为编码器,生成表示图像的特征向量,通常应用于编码器-解码器架构中。解码器逐词生成描述性字幕,接收这些特征,并通常使用循环神经网络(RNN)实现,例如 LSTM 或 GRU。可引入注意力机制,使解码器在生成每个词时聚焦于图像的特定区域,从而提升模型性能。为最大化字幕生成的准确性,模型使用交叉熵等损失函数,并在 COCO 等数据集上进行端到端训练。通过迁移学习和对 ResNet 进行微调,可增强特征提取能力,进一步强化模型,使其能够针对多种图像生成高质量且上下文恰当的描述。在图像描述任务中,ResNet 通常优于其他模型,因为它能有效解决深度神经网络中常见的梯度消失问题。这得益于其创新的残差学习方法,通过跳跃连接(skip connections)在反向传播过程中促进梯度流动,从而在不牺牲性能的前提下训练更深的网络。多层感知机是一种全连接前馈神经网络,与可训练层相关联。随后,RNN 利用 softmax 层解码生成候选字幕。激活函数为 f(x),前向恒等函数为 f(x) + x,其中 x 被视为恒等映射,如图 1所示。在此情况下,系统在训练过程中使用残差块对模型进行校准,其输入同时经过权重连接和跳跃连接(也称为恒等捷径)传递。

图 1:残差连接网络。 该图展示了残差网络的结构,重点突出了跳跃连接,这种连接可改善梯度流动,缓解深度网络训练过程中的梯度消失问题。请点击此处查看该图的放大版本。
假设 Pl 为输出;l 为残差块的数量;若 ReLU 接近 1,则应视为常规块;但若其不等于 1,则可按如下方式计算:
(1)
此处,b 是随机变量,k 是映射函数。
(2)
其中 sl 被视为所提出系统的生存概率;
(3)
生存概率的相应规则为;
(4)
其中 SL 表示概率存活率,L 表示区块总数。
图像描述生成是一项结合自然语言处理与计算机视觉的具有挑战性的任务,旨在为图像生成描述性的文本说明。为此,必须理解并解释图像的视觉内容,并将其在特定语境下转化为连贯的句子。在该领域中,拥有广泛且多样的数据集对于模型的评估与训练至关重要。这些数据集提供了大量图像及相关注释,对开发和测试图像描述生成算法具有重要作用。最常用的数据集是 MSCOCO 和 Flickr30k,它们包含数百万张图像,并在图像处理方面提出了多种挑战。MSCOCO 的规模远大于 Flickr30k11。MS COCO 数据集被划分为以下几部分:训练集包含 82,783 张图像,验证集包含 40,504 张图像,测试集包含 40,775 张图像。
访问受限。请登录或开始试用以查看此内容。
已使用主模型ResNet-152,结合作为CNN的编码器、作为RNN的解码器,以及来自材料表的资源完成实现。
ResNet-152
ResNet 被认为是图像描述生成中更高效提取特征的骨干网络。相较于其他模型,ResNet 在训练性能上表现更优,因为它解决了梯度消失问题并有效缓解了该问题。图像中可能出现多种不同的物体,模型需要理解它们之间的关系,以实现更准确的描述生成,因此这一过程可被视为一种层次化的特征提取。ResNet-152 能够处理复杂的计算机视觉任务。该模型的主要优势在于有效利用残差连接(或称跳跃连接),在应对梯度消失问题方面表现出色,能够学习到复杂且鲁棒的特征,从而实现更高的准确率。ResNet-152 采用了瓶颈结构设计,降低了计算成本,使其相较于 VGG-16 等其他架构更加高效。它具备强大的迁移学习能力,适合作为预训练模型的骨干网络,广泛应用于目标检测、数据分割等多种任务。跳跃连接加快了训练速度,并提升了训练的稳定性。与基于 Transformer 的模型相比,ResNet 具有显著差异:后者依赖自注意力机制来理解序列数据,虽然能取得有效结果,但需要大量数据以深入理解文本信息,且运行速度相对较慢。选择 ResNet 的动机在于其跳跃连接机制,能够在显著提升性能的同时加快执行速度。在图像描述生成领域,ResNet 被用于提取图像中物体及其所执行动作的特征表示。ResNet 采用残差网络结构,充分利用了跳跃连接。其中,残差块可基于输入 Z 按如下方式计算:
(5)
其中 Z 被视为残差块的输入。
是一个涉及批量归一化、卷积层和 ReLu 激活的残差函数。{xi} 被视为对应层的学习权重。Z 还定义了跳跃连接的恒等映射,从而解决了梯度消失问题。ResNet 通常用作从图像中提取视觉特征映射的特征提取器。此处,I 被视为输入图像,用于将特征图表示为高维视觉特征表示 V。
(6)
在提取特征之前,必须对图像进行预处理以改善特征提取效果。该图像被视为从 MSCOCO 基准数据集中获取的原始图像,因此预处理的第一步是调整图像大小并进行归一化。
(7)
(8)
其中,Hl 为图像的高度,Wl 为图像的宽度,Iresize 为调整大小后的图像。
将像素值从范围 [-1, 1] 或 [0, 1] 进行归一化
(9)
其中,μ 表示像素的均值,σ 表示参考图像的标准差。归一化后的图像将被进一步用于特征提取。
(10)
其中
被视为特征向量。当行标题被分词后,将被转换为数值格式。
(11)
如果标题拆分为单词,则
(12)
在此,词汇起着重要作用,每个词都通过基于整数的索引被唯一标识。
(13)
其中,Vc 被视为一个词汇函数;必须确保所有序列具有偶数长度;因此,最大高度或理想长度被视为 Lmax。
(14)
现在 token 被嵌入为;
(15)
对于 j = 1,2,3, ... ..., Lmax
其中
被视为一个具有 K 个维度的嵌入向量;现在使用解码器基于概率模型对候选字幕进行解码以生成字幕。
(16)
何处 wj 是在时间戳 j 的工作量, w1:j-1 是时间戳处生成的词 j-1 和 ej-1 是与前一个词嵌入的特征 wj-1. 在每个时间戳,网络会预测下一个即将出现的词,或计算词汇表中各词的概率。
(17)
其中woutput为输出权重,boutput为输出偏置。因此,最大概率的计算公式为
(18)
当接收到或识别出类似 的词,或将其识别为诸如 和 之类的特殊标记时,即计算候选字幕的最大长度。束搜索也有助于选择更优的候选字幕,因此该序列为:
(19)
(20)
因此,生成的候选说明是序列 
长短期记忆网络通常用于序列生成。LSTM 使用卷积神经网络(CNN)作为特征提取器,并按顺序生成单词以构成有意义的句子。LSTM 在每个时间戳 T 计算遗忘门。
![figure-protocol-21 LSTM 门函数方程,ft=σ(wf[ht-1,yt]+bf),用于说明神经网络过程。](/files/ftp_upload/71528/71528eq42v2.jpg)
其中 ft 被视为遗忘门,σ 被视为激活函数,wf 被视为权重,bf 被视为偏置,
yt 被视为输入特征向量,ht-1 被视为隐藏状态。
(22)
(23)
Jt 被视为输入,
被视为候选状态,wj & wc 分别被视为输入和候选状态的权重,bj & bc 被视为偏置。
(24)
Ct 被视为当前状态,Ct-1 被视为前一状态。
(25)
Ot 被视为输出,wo 为权重,bo 为偏置。为初始化隐藏状态和细胞状态,需进行以下计算。
(26)
(27)
其中,hi 和 Ci 分别表示隐藏状态和细胞状态,wh 和 wc 分别为隐藏状态和细胞状态的权重,bc 和 bh 表示偏置项,k 表示特征提取器。标题序列的计算方式如下:
(28)
其中 T 为生成字幕的长度。
254 × 254 × 3 是调整大小或预处理后的图像,I 被视为输入图像。
(29)
其中 W 和 b 分别表示权重和偏置,I 表示输入特征,ReLU 为激活函数。这是卷积层的计算过程。接下来可以计算池化层:
(30)
在确定池化层后,全连接层可被映射为:
(31)
其中 wf 和 bf 分别被视为网络的权重和偏置。
(32)
(33)
其中,N 被视为空间区域,d 为特征的维度。
(34)
(35)
其中,wh 和 bh 分别表示隐藏状态的权重和偏置,wc 和 bc 分别表示细胞状态的权重和偏置。字幕可生成如下:
(36)
编码器与解码器
该系统使用卷积神经网络(CNN)对机器翻译的数据进行编码。在此情况下,输入和输出均为序列,但它们的长度可能不同。机器一次处理一个向量,对其进行编码和解码。以一个向量作为起点,机器开始编码和解码过程,并持续计算直至得到最终的条件概率分布。一个示例如下:
(37)
这被认为是概率分布。
该系统能够以矢量图像的形式对数据进行编码,并可在后续进行解码。fcn (I) 被视为用于图像理解的图像模型。
(38)
(39)
(40)
S1 是 S0 的后续迭代,而 S2 是 S1 的后续迭代。可以说,每一层的输入都依赖于前一层的输出。卷积神经网络(CNN)将图像转换为向量并传递至下一层,该层遍历所有向量。在此之后,循环神经网络(RNN)将向量解码为词语,并利用注意力机制将这些词语按顺序排列成有意义的句子。
(41)
其中 T 为输入的长度。
(42)
(43)
k1、k2、k3、k4、……、kt-1 为隐藏的解码状态。

图 2:编码与解码模型。 本图展示了用于图像描述生成的编码器-解码器框架,说明图像特征如何被编码为向量表示,并随后被解码为顺序的文本描述。 请点击此处查看该图的放大版本。
流程模型
参见图3,该图展示了训练模块的流程图,其中首先加载数据集及其对应的真值标注文本。数据经过归一化处理后,用于CNN编码,随后初始化ResNet模型,并利用提取的特征进行训练。接着,可使用RNN以及带有起始和结束标记的特定系统词汇来解码生成文本描述。当检测到最终词汇时,系统完成提取过程,其中N表示候选文本描述中的总词数。

图3:训练模型的流程图。 该图概述了模型训练过程中涉及的各个步骤,包括数据预处理、特征提取、模型学习和优化。请点击此处查看该图的放大版本。
测试模型的流程图如图4所示,系统首先加载编码器和解码器模型,然后加载ResNet模型以及用于生成描述的输入数据。若未出现任何解码错误,则可从第一个词开始逐词进行推理,直至最后一个词。到达最后一个词后,即可获得解码后的词汇,并通过使用注意力机制将这些词汇按有意义的顺序依次排列,从而生成一条完整的描述。训练模型的束搜索大小为5,最大长度为20,批量大小为128,共训练20个轮次。

图 4:模型测试流程图。 该图展示了测试工作流程,说明输入图像如何通过训练好的模型生成标注并评估性能。请点击此处查看该图的放大版本。
ResNet-152 图像描述生成算法
初始化输入和输出参数,此处输入为 MSCOCO 图像集合,表示为 I = (i1, i2, i3, ....... iN),并附带标注 J = (j1, j2, j3, ......... jN),输出为生成的图像描述文本。在第一步中,首先需要输入图像,然后通过调整图像的宽高比对其进行预处理
(44)
其中 w 和 h 是图像的原始宽度和高度,wnew 和 hnew 是调整后的尺寸,Ts 为预定义的目标尺寸(Ts = 224),max(w, h) 定义了最大尺寸,该尺寸已按比例缩放以保持宽高比。
特征提取后,需要声明身份块为
(45)
然后初始化参数,如批量大小、训练轮数,Whidden 表示隐藏层的权重,Woutput表示输出层的权重,以及Bheight、Bbias 表示偏置。完成初始化后,需要计算卷积层的输出。
(46)
如果 bl 等于 1,则可将其视为一个标准的 ReLU 模块;但如果 bl 不等于 1 或等价于 0,则情况将不同。
(47)
然后通过以下方法计算生存可行性
(48)
其中 FK 被视为系统的生存可行性,K 表示模型中模块的总数。然后计算概率分布
(49)
在计算出概率分布后,构建模型以访问该分布,并利用其解码数据。
/9500
k1、k2、k3、k4、......、kt-1 为隐藏的解码状态。
在访问模型时,需要应用注意力机制来生成说明文字,并将候选说明文字与参考说明文字进行比对;随后可使用BLEU、METEOR、CIDEr和ROUGE等指标评估最终结果。
访问受限。请登录或开始试用以查看此内容。
软件与环境配置
实验主要采用 Python 3.10 作为编程语言。开发环境使用 Visual Studio Code(VS Code)进行搭建。本研究中使用的重要库包括用于数据序列化的 Pickle、用于并行处理的 multiprocessing、用于文件操作的 glob,以及用于深度学习模型开发的 PyTorch。硬件配置包括 256 GB 存储空间、8 GB 内存,以及支持 CUDA 的 NVIDIA GTX 系列 GPU,以实现更快速的计算。实验所用计算机搭载 AMD Ryzen 5000 系列处理器或 Intel Core i5 处理器。操作系统为 Windows 10/11。上述配置详情可从表 1中的环境配置表清晰获知。
| 材料 |
访问受限。请登录或开始试用以查看此内容。
在人工智能领域,图像描述生成是一项具有挑战性的任务。图像描述生成已受到大量研究关注,而准确或精确的描述生成仍需要达到最高水平的精度。许多机器学习技术可用于实现图像描述生成的目标,已有大量研究采用了CNN、RNN和ResNet-152。然而,仍需进一步提高精度并缩短处理时间。本文提出的系统采用CNN作为编码器,RNN作为解码器,Torch Vision作为函数库,ResNet作为主要训练模型。ResNet利用跳跃连接技术,有效利用网络层,从而在性能上优于其他传统模型,如Face-CapF、Face-Init、Face-Step、Face-CapL、CSPDN-BiLSTM-SelfAtt、Template-Augmentation、EfficientNetB0、EfficientNetB1、MobileNetV2等10,11,12,13,
访问受限。请登录或开始试用以查看此内容。
作者声明,他们不存在可能影响本文所报告工作的竞争性财务利益或个人关系。
我们感谢 MSCOCO 数据集的创建者提供了本研究中使用的基准数据。作者声明本研究未获得外部资金支持。
访问受限。请登录或开始试用以查看此内容。
| 姓名 | 公司 | 目录编号 | 评论 |
|---|---|---|---|
| AMD 锐龙 5000 系列 | AMD | 100-100000059WOF | AMD 锐龙 5000 系列是 AMD 基于 Zen 3 架构开发的一系列高性能处理器。这些处理器广泛应用于台式机和笔记本电脑中,适用于通用计算以及数据处理和机器学习工作流等高负载任务。 |
| GPU | NVIDIA | 4.71933E+12 | NVIDIA GeForce GTX 是 NVIDIA 开发的一系列图形处理器(GPU),广泛用于游戏以及深度学习和图像处理等通用计算任务。 |
| Intel Core i5 | Intel | BX8071514400F | Intel Core i5 是 Intel 开发的中端处理器系列,广泛应用于个人计算机,适用于通用计算和计算密集型任务。 |
| Python 3.10 | Python 软件基金会 | PEP 619 | Python 是一种高级解释型编程语言,广泛应用于科学计算、数据分析和机器学习领域。其以简洁性、可读性以及丰富的库生态系统而著称。 |
| PyTorch | 26.03-py3 | PyTorch 是由 Meta Platforms(前身为 Facebook)开发的开源深度学习框架,广泛应用于学术研究和工业界中神经网络的构建与训练。 | |
| Visual Studio Code | Microsoft | None | Visual Studio Code(VS Code)是 Microsoft 开发的一款轻量级、开源的代码编辑器,广泛用于软件开发,包括机器学习和深度学习项目。 |
| Windows 11 | Microsoft | KB5083631 | Windows 11 是 Microsoft 开发的操作系统,广泛用于通用计算、软件开发以及机器学习任务。 |
申请许可以重复使用本 JoVE 文章的文本或图表
申请许可