File uploads: https://laravel.com/docs/5.6/requests#storing-uploaded-files
Validation: https://laravel.com/docs/5.6/validation
There are a number of validation rules that can be used for images.
Start with just getting the image uploading working, save the image, store the path to the image in the db. After you get that working, then start adding the validation.
You can search for "upload" on the site using the search bar. It's been discussed many times.
After you work on it and if you still need help, then come back and post your code.