/oneshot_siamese

Siamese neural networks for one-shot logo recognition

Primary LanguagePython

One-Shot Logo Recognition Based on Siamese Neural Networks

This code presents a Siamese Neural networks assessment for different embedded models using the QMUL-OpenLogo dataset, following the paper: One Shot Logo Recognition Based on Siamese Neural Networks.

Requirements

Usage

Use the misc/data_prep.py script to preprocess the QMUL-OpenLogo dataset (crop and data split) by defining the python openlogo_path, python train_dir and python train_dir variables. Set the python params/config.py file to define the architecture to train and training parameters. Run the python main.py file to train/test the defined configuration.

Results

Embedded CNN TPR FPR acc Pr F1 AUC
AlexNet 0.74 0.20 0.77 0.78 0.76 0.84
vgg 0.74 0.22 0.75 0.76 0.75 0.82
Koch 0.70 0.33 0.68 0.67 0.69 0.74
Resnet 0.59 0.26 0.66 0.69 0.63 0.72
denseNet 0.67 0.27 0.70 0.71 0.69 0.76

Reference

https://dl.acm.org/doi/abs/10.1145/3372278.3390734

Examples

(Showing the resulting dissimilarity metric for each pair of images)

- d = 0.014

- d = 0.344

- d = 0.837

- d = 0.397

- d = 0.999