Assign metadata to individual photos such as flowers, leaves, fruit

I like the idea of being able to search for photos of a taxon that depict only certain features, but I think it would be better to use a more free form approach than rigid categories like you are proposing. Something like being able to add fields/annotations/tags to individual photos instead of entire observations. Or even go more fine-grained and allow individual photo annotations (like what is being discussed here) to have their own searchable fields and such.