Ooo Detic looks like what I'm looking for. Being able to differentiate between subclasses of objects is key.
If I was still working as a professional photographer (and if I didn't know anything about programming) I'd pay for this kind of thing for sure. I have enough experience in Python to know it's possible but I didn't want to reinvent the wheel, so to speak.