官方网站建设报价表,wordpress付费文章插件,微信公众号排名前十,如何对网站做渗透一、论文阅读
1、摘要背景
遥感跨模态文本图像检索以其灵活的输入和高效的查询等优点受到了广泛的关注。然而#xff0c;传统的方法忽略了遥感图像多尺度和目标冗余的特点#xff0c;导致检索精度下降。为了解决遥感多模态检索任务中的多尺度稀缺性和目标冗余问题#xff…一、论文阅读
1、摘要背景
遥感跨模态文本图像检索以其灵活的输入和高效的查询等优点受到了广泛的关注。然而传统的方法忽略了遥感图像多尺度和目标冗余的特点导致检索精度下降。为了解决遥感多模态检索任务中的多尺度稀缺性和目标冗余问题提出了一种新的非对称多模态特征匹配网络(AMFMN)。该模型可适应多尺度特征输入支持多源检索方法并能动态过滤冗余特征。 AMFMN采用多尺度视觉自注意(MVSA)模块提取RS图像的显著特征并利用视觉特征指导文本表示。此外为了缓解RS图像中由于类内相似性强而导致的正样本模糊我们提出了一种基于样本对先验相似性的动态可变裕度三元组损失函数。最后与传统的文本粗糙、类内相似度较高的遥感图像文本数据集不同我们构建了一个粒度更细、更具挑战性的遥感图像文本匹配数据集(RSITMD)该数据集支持通过关键词和句子单独或联合进行遥感图像检索。
2、难点
一般来说RS图像检索方法可分为单模态检索和多模态检索两种。在RS单模态检索中查询数据和RS数据属于同一模态。与RS单模态检索相比RS多模态检索需要将不同的模态数据映射到统一的可测量空间中因此更具挑战性。近年来遥感多模态检索已成为研究热点之一。
跨模态遥感文本图像检索在遥感多模态检索中占有重要地位。在过去的几十年里通常使用手动字幕为每张RS图像提供标签然后将查询文本与标记的字幕进行匹配。随着遥感图像的快速增长人工字幕越来越耗时自动字幕越来越受到研究者的关注。例如Shi和Zou[12]利用全卷积网络构建了一个RS图像标题框架。生成字幕的检索方法虽然解决了人力资源标注的问题但仍然存在一定的检索缺陷。一方面两阶段检索模式难以避免中间阶段大量信息的丢失。另一方面机器生成的粗字幕可能不能很好地表示RS图像。 由于生成的句子相对粗糙在标题生成阶段和文本相似度匹配阶段不可避免的信息丢失降低了检索精度。因此传统的RS文本图像检索方法可能不是跨模态RS图像检索任务的最佳选择。
近年来一些基于深度学习的检索方法被提出它们直接计算图像和文本之间的相似度。然而当这些方法完全应用于跨模态RS文本图像检索时仍然存在三个挑战。
首先具有众多目标的RS图像往往包含大量与描述主体无关的背景内容。然而与RS图像相比自然场景图像往往有突出的物体。自然场景的文本图像检索方法忽略了冗余特征的过滤阻碍了模型对遥感图像内容的理解。因此如何在遥感图像中获取显著特征已成为一个迫切需要解决的问题。同时自然场景下的方法没有充分考虑RS的多尺度信息导致对多尺度特征的利用不足检索精度不理想。由于RS图像的多尺度和目标冗余性我们尝试使用具有多尺度和动态滤波功能的网络来提取显著特征。为了获得更好的文本特征我们首先使用过滤后的图像特征来动态引导文本表示然后将该方法应用于不同的检索任务中以获得更灵活的输入。
第二与自然场景不同RS场景具有很强的类内相似性。一个文本可能对应多个与基础真值非常相似的负样本图像。我们称这种负样本为软正样本。由于软正样本的存在模型在训练过程中会对优化目标产生模糊。我们把这个问题定义为正样本歧义。为了解决上述问题我们将传统方法中的硬边界转化为基于样本对之间先验相似性的软边界可以自适应地改变传统三元损失函数中的固定边界进一步提高检索性能 第三传统RS场景数据集中的文本通常与自然场景进行粗压缩这使得传统数据集类内相似度高不适合文本图像检索任务。为了解决这个问题我们构建了一个细粒度和更具挑战性的数据集来最小化类内相似性。同时我们在数据集中加入了关键词属性增强了对多个检索任务的泛化能力。
3、创新点
1)为了解决遥感多模态检索任务中的多尺度稀缺性和目标冗余问题设计了一种非对称多模态特征匹配网络(AMFMN)。该方法适应多尺度特征输入支持多源检索方法并能动态过滤冗余特征。AMFMN利用多尺度视觉自注意(MVSA)模块提取RS图像的显著特征并利用视觉特征指导文本表示在多个RS图像-文本数据集上取得了比较好的结果。
2)针对RS图像中由于类内相似性较强而导致的正样本模糊基于样本对的先验相似性设计了具有动态变量裕度的三元组损失函数。实验结果验证了我们工作的可行性。
3)与文本粗糙、类内相似度较高的传统遥感图像文本数据集相比构建了一个粒度更细、更具挑战性的遥感图像文本匹配数据集(RSITMD)。RSITMD有更多的场景变化和更高细粒度的字幕。此外新的关键词属性可以进一步应用于RS文本检索任务中
4、前人的一些研究
近年来人们提出了一些直接计算自然场景跨模态相似度的方法。Faghri在对图像和文本进行编码后使用三元组损失函数最小化相似图像和文本之间的距离。Lee等尝试将图像中的区域与标题中的单词对齐来计算相似度。Wang等[36]提出了一种基于秩分解的融合模型来计算图像和文本之间的相似度。即使直接计算图像和文本之间相似度的方法在自然领域已经成熟但在RS场景中这种方法还是很少见的。Abdullah等[37]提出了一种用于RS文本图像嵌入相似度计算的深度双向三重网络。据我们所知这是RS领域唯一的跨模态文本图像检索方法。
1、code
2、Exploring a Fine-Grained Multiscale Method for Cross-Modal Remote Sensing Image Retrieval、 三、文件结构
File Structure:
-- checkpoint # savepath of ckpt and logs
-- data # soorted anns of four datesets-- rsicd_precomp-- train_caps.txt # train anns-- train_filename.txt # corresponding imgs-- test_caps.txt # test anns-- test_filename.txt # corresponding imgs-- images # rsicd images here-- rsitmd_precomp...
-- exec # .sh file
-- layers # models define
-- logs # tensorboard save file
-- option # different config for different datasets and models
-- Rct # calc Lct, which is not published this time
-- util # some script for data processing
-- vocab # vocabs for different datasets
-- seq2vec # some files about seq2vec-- bi_skip.npz-- bi_skip.npz.pkl-- btable.npy-- dictionary.txt-- uni_skip.npz-- uni_skip.npz.pkl-- utable.npy-- data.py # load data
-- engine.py # details about train and val
-- test.py # test k-fold answers
-- test_single.py # test one model
-- train.py # main file
-- utils.py # some tools
-- vocab.py # generate vocabNote:
1. In order to facilitate reproduction, we have provided processed annotations.
2. We prepare some used file::(1)[seq2vec (Password:NIST)][https://pan.baidu.com/s/1FOPldSGO6ctETiXMlPGC8g](2)[RSICD images (Password:NIST)](https://pan.baidu.com/s/1lH5m047P9m2IvoZMPsoDsQ)
3. We found that the split method of the UCM and Sydney datasets has a greater impact on performance due to their small size, so we no longer provide performance support for the above two datasets.二、环境搭建与测试 InstallationWe recommended the following dependencies:
Python 3
PyTorch 0.3
Numpy
h5py
nltk
yamlpip install tensorboard_logger -i https://pypi.tuna.tsinghua.edu.cn/simple# CUDA 10.2
conda install pytorch1.11.0 torchvision0.12.0 torchaudio0.11.0 cudatoolkit10.2 -c pytorch# CUDA 10.2
conda install pytorch1.11.0 torchvision0.12.0 torchaudio0.11.0 cudatoolkit10.2 -c pytorchpip install torch1.11.0cu102 torchvision0.12.0cu102 torchaudio0.11.0 --extra-index-url https://download.pytorch.org/whl/cu102 -f https://download.pytorch.org/whl/torch_stable.html -i http://mirrors.aliyun.com/pypi/simple/ --trusted-host mirrors.aliyun.comStep1:Put the images of different datasets in ./data/{dataset}_precomp/images/
--data--rsitmd_precomp-- train_caps.txt # train anns-- train_filename.txt # corresponding imgs-- test_caps.txt # test anns-- test_filename.txt # corresponding imgs-- images # images here--img1.jpg--img2.jpg...Step2:Modify the corresponding yaml in ./option。
Regard RSITMD_AMFMN.yaml as opt, which you need to change is: opt[‘dataset’][‘data_path’] # change to precomp path opt[‘dataset’][‘image_path’] # change to image path opt[‘model’][‘seq2vec’][‘dir_st’] # some files about seq2vec 修改完毕的配置文件
Step3:Bash the ./sh in ./exec.
Note the GPU define in specific .sh file.cd execbash run_amfmn_rsitmd.shNote: We use k-fold verity to do a fair compare. Other details please see the code itself.
train
CUDA_VISIBLE_DEVICES0 python train.py --path_opt option/RSITMD_AMFMN.yamltest
CUDA_VISIBLE_DEVICES0 python test.py --path_opt option/RSITMD_AMFMN.yaml问题
pip install protobuf3.19.0 -i https://pypi.tuna.tsinghua.edu.cn/simple问题2、 pyyaml版本过高安装低版本pyyaml
pip install pyyaml5.4.1 -i https://pypi.tuna.tsinghua.edu.cn/simple问题3、 解决
pip install skipthoughts -i https://pypi.tuna.tsinghua.edu.cn/simple问题4、 return inverse_modes_mapping[i] KeyError: 90 解决