Effectively you need a way to store images and some associated text and be able to search said text to look things up.
My mind immediately went to Andi's last suggestion, which is some kind of photo cataloguing software - except rather than looking up "Auntie Jane's 50th Birthday" you want to look up "1960's Factory". I think the key to it will be creating your categories and naming conventions and sticking rigidly to them to make the look up as efficient as possible. It would be helpful if the software allows multiple options within categories.
Think of the things you'll want to search on; era, country, type (buildings, etc), sub-type (stations), etc. Remembering that there will probably be objects that cover multiple categories or selections.
e.g.
If you choose to categorise by decades then a building might be good for 1940-1960, or even for any era.
A simple bicycle model might be good for any era, any country, etc.
If some software has a simply tag system that allows the adding of, and searching and filtering of those tags, then you could create your own system.
e.g. "Building-Station", "Building-Industrial", "Country-UK", "Country-USA", "Country-Any", "Era-1950's", "Era-1960's", "Era-Any", "Big4-GWR", "Big4-LNER"
You could then add as many of these tags as required and the filtering would allow you to find them again.
So maybe you could tag something: "Building-Station" "Country-UK" "Big4-GWR" "Era-1920's" "Era-1930's" "Era-1940's" "Era-1950's" "Era-1960's"
The key to it would be to have a very solid category set and fixed set of tags before you begin, and only add to that very sparingly and carefully. If you want an example of what happens when you just start adding any old tags to a database take a look at the UKTS File Search Operating Company list!
http://uktrainsim.com/index2.php?form_filelib=search