liuguiyangnwpu / Massimageretrieval
Licence: apache-2.0
This project is intended to solve the task of massive image retrieval.
Stars: ✭ 47
Programming Languages
python
139335 projects - #7 most used programming language
Projects that are alternatives of or similar to Massimageretrieval
Hardnet
Hardnet descriptor model - "Working hard to know your neighbor's margins: Local descriptor learning loss"
Stars: ✭ 350 (+644.68%)
Mutual labels: image-retrieval
Pyretri
Open source deep learning based unsupervised image retrieval toolbox built on PyTorch🔥
Stars: ✭ 795 (+1591.49%)
Mutual labels: image-retrieval
Hierarchical Localization
Visual localization made easy with hloc
Stars: ✭ 997 (+2021.28%)
Mutual labels: image-retrieval
Flask Keras Cnn Image Retrieval
🚀CNN-based image retrieval built on Keras
Stars: ✭ 416 (+785.11%)
Mutual labels: image-retrieval
Cnnimageretrieval Pytorch
CNN Image Retrieval in PyTorch: Training and evaluating CNNs for Image Retrieval in PyTorch
Stars: ✭ 931 (+1880.85%)
Mutual labels: image-retrieval
Artificio
Deep Learning Computer Vision Algorithms for Real-World Use
Stars: ✭ 326 (+593.62%)
Mutual labels: image-retrieval
Watermarkreco
Pytorch implementation of the paper "Large-Scale Historical Watermark Recognition: dataset and a new consistency-based approach"
Stars: ✭ 45 (-4.26%)
Mutual labels: image-retrieval
Lire
Open source library for content based image retrieval / visual information retrieval.
Stars: ✭ 740 (+1474.47%)
Mutual labels: image-retrieval
Mxnet Ir
Image Retrieval Experiment Using Triplet Loss
Stars: ✭ 27 (-42.55%)
Mutual labels: image-retrieval
Cnn For Image Retrieval
🌅The code of post "Image retrieval using MatconvNet and pre-trained imageNet"
Stars: ✭ 597 (+1170.21%)
Mutual labels: image-retrieval
Cbir System
Content-Based Image Retrieval system (KTH DD2476 Project)
Stars: ✭ 9 (-80.85%)
Mutual labels: image-retrieval
Cbir
🏞 A content-based image retrieval (CBIR) system
Stars: ✭ 407 (+765.96%)
Mutual labels: image-retrieval
Mirror
Matchable Image Retrieval by Learning from Surface Reconstruction
Stars: ✭ 44 (-6.38%)
Mutual labels: image-retrieval
Mmt
[ICLR-2020] Mutual Mean-Teaching: Pseudo Label Refinery for Unsupervised Domain Adaptation on Person Re-identification.
Stars: ✭ 345 (+634.04%)
Mutual labels: image-retrieval
Ddsh Tip2018
source code for paper "Deep Discrete Supervised Hashing"
Stars: ✭ 16 (-65.96%)
Mutual labels: image-retrieval
Keras rmac plus
Keras implementation of R-MAC+ descriptors
Stars: ✭ 46 (-2.13%)
Mutual labels: image-retrieval
Deep Fashion
Proposal a new method to retrieval clothing images
Stars: ✭ 44 (-6.38%)
Mutual labels: image-retrieval
Deep Mihash
Code for papers "Hashing with Mutual Information" (TPAMI 2019) and "Hashing with Binary Matrix Pursuit" (ECCV 2018)
Stars: ✭ 13 (-72.34%)
Mutual labels: image-retrieval
模型设计的指导
- 修改采样的方案,通过每隔几轮的更新候选集合进行采样
- 采样中当选择了(x_a, x_p)之后,如何确定选择的x_n是一个可以提升结果的点
- 细化case方案,重新定制损失函数,把损失函数可视化出来
- 设计x_a, x_p, x_n之间的矢量信息,求出夹角方向值,重新设计损失函数
- 通过增大的batch信息,将类内误差和类间误差添加到损失函数中去
问题以及解决?
- 所有的训练样本都是根据随机选择的,其中存在部分数据是很难被直接选择到的,导致10分类的分类器的分类性能下降
- 改进样本构造的方案,使得所有的样本都可以进入分类器进行训练
实验结果
TODOLIST
- [x] 使用Res50提取图像的特征
- [x] 编写孪生网络进行测试
- [x] 编写Triple Loss网络,并进行测试
- [ ] 重新设计Triple Loss网络训练样本的构造
- [x] 添加了基于聚类中心的anchor选择和在给定半径之外的正负样本的选择
- [x] 添加了针对训练样本中
$(x_a, x_p, x_n)$
之间的方向条件进行选择 - [ ] 添加针对Query列表候选集进行训练样本选择的策略
- [ ] 根据TripleModel输入的数据中可以转化成PairWise的排序问题
- [x] 将每次训练出得模型结果保存成文件便于后续分析
- [ ] 结果图中,聚类不够紧凑
- [ ] 针对数据采样策略的修改
- [x] 在采样时使用一个set,保证被采样过的样本不能在被采样一次,直到没有可采样数据后,结束这一轮的训练
- [x] 每一个batch采样时,将记录每个样本被采样的次数,每次会得到一个分布,将分布改成概率p,下一次按照(1-p)去进行采样
- [ ] 损失函数为
max(0, dist loss)
,在训练段记录为0的样本,这些样本对整体训练没有梯度的贡献,进而指导采样 - [ ] 每一轮训练后,会得到全量数据的距离矩阵,将距离矩阵转换成概率矩阵对采样端进行结果指导(MCMC)
- [ ] 修改loss函数策略
- [x] 关注到x_p到x_a的距离的控制
- 是否可以引入EM算法,对进行二维变量的混合高斯估计
- [ ] 当选择的数据sample(x_a, x_p, x_n)为一下情况,样本失效(目标是max(0.0, dist_p - dist_n + margin))
- dist_n too large, dist_p too small
- margin too small
- the categories of positive and negative samples are not close neighbors
- the selection of positive and negative samples is not on the same side
- [ ] 针对数据采样策略的修改
- [x] 添加Hash Loss Function
- [ ] 每次使用2000个Triple样本进行训练,相邻的两个epoch得到的预测结果差异很大,如何较好的控制每次聚类的结果,这个确实很重要?
- [x] 使用SoftMax Loss + Center Loss进行训练,得到模型
Reference List
- Deep Learning of Binary Hash Codes for Fast Image Retrieval
- Deep Relative Distance Learning- Tell the Difference Between Similar Vehicles
- Deep Supervised Discrete Hashing
- Deep Supervised Hashing for Fast Image Retrieval
- FaceNet- A Unified Embedding for Face Recognition and Clustering
- Fast Training of Triplet-based Deep Binary Embedding Networks
- Hard-Aware Deeply Cascaded Embedding
- HashNet: Deep Learning to Hash by Continuation
- Fast Supervised Hashing with Decision Trees for High-Dimensional Data
- Simultaneous Feature Learning and Hash Coding with Deep Neural Networks
- Learning to Hash with Binary Reconstructive Embeddings
Note that the project description data, including the texts, logos, images, and/or trademarks,
for each open source project belongs to its rightful owner.
If you wish to add or remove any projects, please contact us at [email protected].