GithubHelp home page GithubHelp logo

axeber01 / dold Goto Github PK

View Code? Open in Web Editor NEW
22.0 4.0 4.0 236 KB

Deep Ordinal Regression with Label Diversity

Home Page: https://arxiv.org/abs/2006.15864

License: MIT License

MATLAB 100.00%
machine-learning deep-learning age-estimation head-pose-estimation image-dating ordinal-regression

dold's Introduction

Deep Ordinal Regression with Label Diversity

PWC

PWC

PWC

This is the official codebase for the implementation of Deep Ordinal Regression with Label Diversity, presented at ICPR2020.

Code author: Axel Berg

Dependencies

  • Matlab 2020a with the Deep Learning Toolbox
  • Cuda 10.1

Dataset Preparation

UTKFace Dataset

Download the aligned and cropped images from https://susanqq.github.io/UTKFace/ and run age/data/createCroppedUtkDataset.m after setting the correct path to the dataset in the script.

This will create datastore objects for reading the images.

The train/test split is the same as the one used in "Coral-CNN" and can be found here: https://github.com/Raschka-research-group/coral-cnn

Biwi Dataset

We use protocol 2 as described in the FSA-Net paper, which uses a 70-30 train/test split. You can prepare the dataset yourself using the original code from https://github.com/shamangary/FSA-Net and store the train/test splits as .mat-files.

Historical Images Dataset

Download the dataset from http://graphics.cs.cmu.edu/projects/historicalColor/ and add it set the datapath variable in date/dateParameters.m to point to it.

Training and Evaluation

For each dataset, run the iteration scripts to train the ResNet50 backbone for 10 iterations and output save the mean average error results on the test set in a text file. All the hyperparameters are the same for each method and are defined in a single function.

The following loss functions are supported:

  • L2 - use the standard L2 (mean squares error) loss. This is the regression baseline
  • CE - use the cross entropy loss. This is the RvC baseline.
  • Equal Bins - use the equal bins label diversity method
  • Random Bins - use the random bins label diversity methods.
  • Multiple bins (for the HCI dataset) - uses the multiple bins labels diversity method specified in the paper

Citation

If you find this work useful, please cite our paper:

@inproceedings{berg2021deep,
  title={Deep ordinal regression with label diversity},
  author={Berg, Axel and Oskarsson, Magnus and O'Connor, Mark},
  booktitle={2020 25th International Conference on Pattern Recognition (ICPR)},
  pages={2740--2747},
  year={2021},
  organization={IEEE}
}

References

W. Cao, V. Mirjalili, and S. Raschka (2019). Consistent rank logits for ordinal regression with convolutional neural networks. arXiv preprint arXiv:1901.07884

T.-Y. Yang, Y.-T. Chen, Y.-Y. Lin, and Y.-Y. Chuang, (2019) Fsa-net: Learning fine-grained structure aggregation for head pose estimation from a single image

dold's People

Contributors

axeber01 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

dold's Issues

Open source the pretrained models

Hi Axel,
Thank you for making you code available. Unfortunately, the pretrained weight/parameters are not open sourced.
I would to ask if it is posible to share them, in order to compare SOTA with you results.
Cheers

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.