Cross-modal-retrieval
Cross-modal-retrieval copied to clipboard
媒体计算实践作业:图像——文本跨模态搜索
跨模态检索:图像——文本检索
媒体计算实践作业:图像——文本跨模态搜索
数据集下载
本项目使用的是Flickr30k数据集,你需要自行先下载。 百度云地址
数据预处理
在Preprocessing下:
data_split_1.py划分训练集、测试集、验证集resize_data_2.py长宽比例不变,将短边拉伸为256count_vocab_3.py统计每个单词的词频convert_annotations_4.py将.txt格式的标注文件转换为.jsonbuild_dictionary_5.py构建单词编号,即查询字典
模型训练
在数据预处理完成后,在config.py中配置各文件的路径以及训练的参数,并且下载在谷歌新闻上预训练的Word2Vec模型
trainStage1.py使用分类损失预训练trainStage2.py使用三元组损失和对抗损失微调
测试界面
在 QueryApp 下的 图文互搜.exe 提供简单的测试界面。(把相关文件放在对应文件夹下使用一键初始化) (修正了不能自己选图像模型的小bug,但是由于环境变换,直接用PyInstaller打包的exe文件较大(提取码1234)main.exe)
需要提前下载预训练模型imgcnn.pth和textcnn.pth到DATA/Checkpoint下方便自动初始化,
captions_database.pkl和images_database.pkl事先提取的图像和文本特征以及其索引到DATA/下,
字典text_info.json到DATA/Flick_10k,
图片数据到DATA/Flick_10k/flick_image_256下。也可以自己选择路径,但是后续检索的时候不支持自动初始化。
测试结果如下:
