图生文【学习中】

  1. 一种有监督的实现:CNN先获取picture feature,再使用RNN喂入picture feature和对应的文本caption完成seq2seq。

代码:https://gitee.com/chfengyiliu/image-captioning-text-generation-attention/tree/master

绿色
未经处理的原始静态信息-图像、文本;
湖蓝色
动态变化信息-LSTM的隐藏状态h和细胞状态c、当前关注的图片信息、当前喂入的文本信息。
深红色(不是砖红色):
在decoder过程中模型的喂入input,隐藏状态h、细胞状态c,模型输出output。

除了最下方虚线框出的DECODER部分,其余都是encoder部分。

对于LSTM的h, c,input的理解可以参考LSTM的结构、原理及其数据的输入格式介绍

  1. 待学习

==============================================OCR算法==========================================
根据我从网上搜索到的信息123,最新的OCR算法主要有以下几种:

一种是基于注意力机制的神经字幕模型,它可以让RNN或者LSTM在生成文字描述时更加关注图片中的重要区域,提高了描述的准确性和自然性。
一种是基于变换器(Transformer)的神经字幕模型,它使用了自注意力机制和多头注意力机制来提取图片特征和生成文字描述,避免了RNN或者LSTM的长期依赖问题,提高了效率和质量。
一种是基于视觉语义嵌入(VSE)的神经字幕模型,它使用了一个双向变换器来同时学习图片特征和文字特征,并将它们映射到一个共同的语义空间,实现了图片和文字之间的对齐和匹配。



我可以给你一些关于VSE的实现思路和步骤:

首先,你需要准备一个包含图片和文字描述的数据集,例如Flickr30k或者MSCOCO。
然后,你需要使用一个预训练的卷积神经网络(CNN)来提取图片的特征向量,并使用一个预训练的双向变换器(BERT)来提取文字描述的特征向量。
接着,你需要定义一个损失函数来度量图片特征和文字特征之间的语义相似性,例如余弦相似性或者对比损失。
最后,你需要使用随机梯度下降(SGD)或者其他优化算法来更新CNN和BERT的参数,使得图片特征和文字特征在共同的语义空间中更加接近。
这样就可以实现VSE的基本功能了。当然,还有一些其他的细节和技巧可以提高模型的性能和效果,例如使用数据增强、正则化、注意力机制等。如果你想了解更多,请参考以下论文 。


除了VSE之外,还有一些其他的算法可以实现图片和文字之间的匹配,例如:

一种是基于全局特征表示的一对一匹配方法,它使用CNN和RNN分别提取图片和文字的特征向量,并将它们投影到一个共同空间,使得相似的成对图像文本在空间中的距离接近1。
一种是基于局部特征表示的多对多匹配方法,它使用CNN和RNN分别提取图片和文字的区域特征向量,并使用注意力机制或者双线性池化等方法来计算区域之间的相似性23。
一种是基于深度学习的图像匹配算法,它使用CNN来提取图像中的特征点,并使用神经网络来判断两个特征点是否匹配4。





=================================================图片字幕生成(Image Captioning)、“自动图像注释”、“图像标记”、图像标题”==================================
有的,这种算法一般叫做图片字幕生成(Image Captioning),它是一种多模态的深度学习任务,可以根据图片的内容自动生成一句描述文字1。

图片字幕生成的常用方法是使用一个CNN来提取图片的特征向量,然后使用一个RNN来根据特征向量生成文字序列1。这种方法也叫做编码器-解码器(Encoder-Decoder)模型。

除了编码器-解码器模型之外,还有一些其他的方法可以实现图片字幕生成,例如使用注意力机制、强化学习、对抗生成网络等1。





***************************************飞桨教程****************************************
0、图片字幕生成
https://github.com/yxuansu/MAGIC
https://github.com/yunjey/show-attend-and-tell

kaggle 图像标题生成

1、图像生成、动作生成、迁移学习
https://github.com/PaddlePaddle/PaddleGAN


2、图像识别-图像中的文字识别OCR
https://github.com/PaddlePaddle/PaddleOCR


3、视频处理【学习】
https://github.com/PaddlePaddle/PaddleVideo


4、推荐【学习】
https://github.com/PaddlePaddle/PaddleRec
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值