You have a few options. One is take shelter, because you have unwittingly hit on one of the "holy wars" in DBMS theory.
The images in your case are small enough that they should not cause most RDBMSs too many problems with storage, but you should check with your vendor to make sure about the particulars.
Storing images on the filesystem and storing the paths in the database can get tricky. You usually end up having to reconcile what is on the filesystem with what is in the database. And at 30-50 thousand images, you will likely have some sort of random naming system to keep the individual files unique, which can cause headaches when you troubleshoot mapping a row to an image.
Some RDBMSs now come with a hybrid or a dedicated approach to the problem (SQL Server's Filestream, and Oracle's SecureFiles, and DBFS), so this question may very well come down to what database engine are you using.