I did a development for a client, maybe 10 years ago where the requirement was to maintain a library of photos with each given various attributes. It was for a wildlife rangers. They wanted to be able to search for photos by location, species/sub species etc and store other information about the source (photographer), quality, copyright.
The photos were stored on a network server in a folder/subfolder structure with the root folder path stored in the database. The relative path of each photo was stored in the database holding all the tables which also resided on the server with the front end Access database residing on users' PCs.
The import functionality prompted the user to nominate the source of the photos to be cataloged (USB or network), displayed batches of photos for selection/rejection (mostly there were multiple photos of the same thing), copied the photo to the photo storage area, selecting multiple attributes for the photo, then storing those and the photo name and path.
Hope that gives you something useful in your endeavours. BTW, I would never consider having a USB as the main repository of data, only a means of transporting data, if that was what was being suggested.