All Projects → oke-aditya → Image_similarity

oke-aditya / Image_similarity

Licence: apache-2.0
PyTorch Blog Post On Image Similarity Search

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to Image similarity

Splitbrainauto
Split-Brain Autoencoders: Unsupervised Learning by Cross-Channel Prediction. In CVPR, 2017.
Stars: ✭ 137 (+71.25%)
Mutual labels:  unsupervised-learning, autoencoder
Openunreid
PyTorch open-source toolbox for unsupervised or domain adaptive object re-ID.
Stars: ✭ 250 (+212.5%)
Mutual labels:  unsupervised-learning, image-retrieval
Tybalt
Training and evaluating a variational autoencoder for pan-cancer gene expression data
Stars: ✭ 126 (+57.5%)
Mutual labels:  unsupervised-learning, autoencoder
Calc
Convolutional Autoencoder for Loop Closure
Stars: ✭ 119 (+48.75%)
Mutual labels:  unsupervised-learning, autoencoder
2D-and-3D-Deep-Autoencoder
Convolutional AutoEncoder application on MRI images
Stars: ✭ 57 (-28.75%)
Mutual labels:  autoencoder, unsupervised-learning
Image-Retrieval
Image retrieval program made in Tensorflow supporting VGG16, VGG19, InceptionV3 and InceptionV4 pretrained networks and own trained Convolutional autoencoder.
Stars: ✭ 56 (-30%)
Mutual labels:  autoencoder, image-retrieval
Danmf
A sparsity aware implementation of "Deep Autoencoder-like Nonnegative Matrix Factorization for Community Detection" (CIKM 2018).
Stars: ✭ 161 (+101.25%)
Mutual labels:  unsupervised-learning, autoencoder
Mmt
[ICLR-2020] Mutual Mean-Teaching: Pseudo Label Refinery for Unsupervised Domain Adaptation on Person Re-identification.
Stars: ✭ 345 (+331.25%)
Mutual labels:  unsupervised-learning, image-retrieval
SESF-Fuse
SESF-Fuse: An Unsupervised Deep Model for Multi-Focus Image Fusion
Stars: ✭ 47 (-41.25%)
Mutual labels:  autoencoder, unsupervised-learning
Dual-CNN-Models-for-Unsupervised-Monocular-Depth-Estimation
Dual CNN Models for Unsupervised Monocular Depth Estimation
Stars: ✭ 36 (-55%)
Mutual labels:  autoencoder, unsupervised-learning
Similarity-Adaptive-Deep-Hashing
Unsupervised Deep Hashing with Similarity-Adaptive and Discrete Optimization (TPAMI2018)
Stars: ✭ 18 (-77.5%)
Mutual labels:  unsupervised-learning, image-retrieval
Pyod
A Python Toolbox for Scalable Outlier Detection (Anomaly Detection)
Stars: ✭ 5,083 (+6253.75%)
Mutual labels:  unsupervised-learning, autoencoder
Dmgi
Unsupervised Attributed Multiplex Network Embedding (AAAI 2020)
Stars: ✭ 62 (-22.5%)
Mutual labels:  unsupervised-learning
Concrete Autoencoders
Stars: ✭ 68 (-15%)
Mutual labels:  unsupervised-learning
Weakly Supervised 3d Object Detection
Weakly Supervised 3D Object Detection from Point Clouds (VS3D), ACM MM 2020
Stars: ✭ 61 (-23.75%)
Mutual labels:  unsupervised-learning
Awesome Cbir Papers
📝Awesome and classical image retrieval papers
Stars: ✭ 1,114 (+1292.5%)
Mutual labels:  image-retrieval
Karateclub
Karate Club: An API Oriented Open-source Python Framework for Unsupervised Learning on Graphs (CIKM 2020)
Stars: ✭ 1,190 (+1387.5%)
Mutual labels:  unsupervised-learning
Insta Dm
Learning Monocular Depth in Dynamic Scenes via Instance-Aware Projection Consistency (AAAI 2021)
Stars: ✭ 67 (-16.25%)
Mutual labels:  unsupervised-learning
Collaborative Deep Learning For Recommender Systems
The hybrid model combining stacked denoising autoencoder with matrix factorization is applied, to predict the customer purchase behavior in the future month according to the purchase history and user information in the Santander dataset.
Stars: ✭ 60 (-25%)
Mutual labels:  autoencoder
Dgi
TensorFlow implementation of Deep Graph Infomax
Stars: ✭ 58 (-27.5%)
Mutual labels:  unsupervised-learning

Image Similarity using PyTorch

CI Tests Check Formatting Deploy mkdocs PyPi Release Install Package

Auto-encoder based Image-Similarity Engine

Blog Post is here

Published in Official PyTorch Medium Channel. Thank you PyTorch team !

  • Builds a simple Convolutional Auto-encoder based Image similarity engine.
  • This solves the problem of finding similar images using unsupervised learning. There are no labels for images.

Tasks that it can do.

  • [x] Similar images using Auto-encoders.
  • [x] Similar image search from image features.
  • [x] Clustering similar images.

Repostory Structure.

=== data                        Read data from here. It is in gitignore so it won't appear here.
=== docs                        Documentation using mkdocs.
=== image_similarity
====== cluster_images.py        Clusters the embeddings learnt using PCA and T-SNE.
====== torch_data.py            Contains Dataset class to create PyTorch dataset from folder.
====== torch_model.py           Convolutional Auto-enocder Model.
====== torch_engine.py          Train_step and validation_step for training.
====== torch_train.py           Trainng script. Trains Auto-enocder and saves the embeddings.
====== torch_infer.py           Contains inference code
====== config.py                Configurations of models and paths.
====== torch_inference.ipynb    Inference code in .ipynb to play with.
====== torch_train.ipynb        Stand-alone code to train in Jupyter.
=== tests                       Contains tests for CI

Documentation

Please visit here for documentation.

It contains detailed description of work.

Image similarity Outputs

Some sample outputs of recommendations.

Output 1

Output 2

More outputs can be found in outputs folder.

Models

  • Some models trained using a sample dataset are given in this link.
  • It contains encoder, decoder and numpy embeddings generated from auto-enocoders.
  • These are obtained by running torch_train.py script.
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].