1 INTRODUCTION

2 HAND-CRAFTED METHODS
2.1 Basic Methods
2.2 Statistical Methods
2.3 Local and Global Features Methods
2.4 Content-Based Methods

3 DEEP LEARNING METHODS
3.1 Deep Learning Basic Methods
3.2 Advanced Deep Methods

4 EXPERIMENTAL SETTINGS
4.1 Datasets
4.2 Evaluation Metrics
4.3 Analysis

5 LIMITATION AND CHALLENGES

6 CONCLUSION