An Overview of Underwater Vision Enhancement: From Traditional Methods to Recent Deep Learning