基于图像标签生成有意义的图像描述

Posted

技术标签:

【中文标题】基于图像标签生成有意义的图像描述【英文标题】:Generate meaningful image description based on image labels 【发布时间】:2017-12-09 06:56:28 【问题描述】:

目前我和我的三个朋友正在做一个项目,根据特定图像中的对象生成图像描述(当图像被赋予系统时,必须根据对象和它们之间的关系生成新颖的描述他们)。因此,只需一个人计划识别图像中的对象并使用基于快速区域的 CNN (FRCNN) 对其进行标记。就我而言,我必须通过考虑它们之间的关系,基于这些图像标签(FRCNN 的输出计划作为我的 RNN 的输入)来实现有意义的描述。

目前我正计划实现一个循环神经网络 (RNN) 来生成描述。但是,我怀疑是否可以在仅将一组单词(图像标签名称)作为输入时使用 RNN 生成描述。因为 RNN 主要用于具有序列的用例,如果我只给出标签名称,它是否能够通过考虑它们之间的关系来生成描述?

如果不能,请告诉我什么是最好的实现方式?

PS:我对机器学习很陌生,希望能有一个清晰的想法来找到更好的解决方案。

【问题讨论】:

这被称为图像字幕,你读过任何关于它的最新论文吗? 是的,我已经阅读了几篇研究文章。我最关注的一个是 Andrej Karpathy 关于“用于生成图像描述的深度视觉语义对齐”的研究。但我遇到的问题是 RNN 是否能够仅根据标签名称生成描述。在许多研究论文中,他们使用 CNN 来提取特征并将该特征集(最后一个隐藏层)与经过训练的语言模型嵌入到一个常见的嵌入模态中以生成描述。 我的问题是我无法将 FRCNN 的最后一个隐藏层的输出提供给我的 RNN。因为实现 FRCNN 的人需要将识别的对象输出给用户。据我所知,使用 CNN 识别的对象只能通过 CNN 的最后一层来获取。因此,如果我们移除 CNN 的最后一层,那么该人将无法输出已识别的对象。我说的对吗? 在这种情况下,您必须在 FRCNN 和您的 RNN 之间引入一个中间表示。你只需要编码正确的信息。 所以你的意思是我必须保存从 FRCNN 提取的特征并将其提供到我的 RNN 中?抱歉,我没有正确理解您的解决方案。 【参考方案1】:

其实我现在也在学习RNN。而且我相信,如果图像有意义,可以从一张图片中生成一个句子来描述它。

我会分享一些我认为有用的材料

https://www.google.de/url?sa=t&rct=j&q=&esrc=s&source=web&cd=3&ved=0ahUKEwjf_pKusPLUAhUTrRQKHQjMAlcQFgg2MAI&url=https%3A%2F%2Fcs224d.stanford.edu%2Freports%2Fmsoh.pdf&usg=AFQjCNHqAkpk6haw87Cx3X23TDjRBFN6aA

【讨论】:

感谢易瑞。是的,我认为可以从单个图像生成描述。但是为此我们需要一个 CNN 或任何合适的方法来提取图像特征吗?实际上,我在上面的 2 cmets 中已经详细说明了我的问题。你认为有可能使用 RNN 生成描述吗?

以上是关于基于图像标签生成有意义的图像描述的主要内容,如果未能解决你的问题,请参考以下文章

用 Python 生成的 Tensorflow 数据集在 Tensorflow Java API(标签图像)中有不同的读数

基于MATLAB均值漂移图像分割技术

图像处理

如何使用 heatmap.js 保存由 canvas 标签生成的图像文件?

Python - 创建有意义的崩溃日志/崩溃报告

对视频剪辑应用灰度图像变换+Moviepy生成灰度视频处理遇到几个有意思的问题