Hashing an image “expensive”?

I’m considering only allowing unique images to save storage space, and, to do this I will:

  1. Hash image on upload
  2. Check a database of images, to see if there is a hash match.

I have concerns though of hashing uploaded images slowing down the application.

Is this a recommended practice? Or do people tend to allow duplicate image uploads as storage is cheap?