Is it possible for rasa to make a judgement of "whether this input is a picture or not" and "is the slot filled" and how?

The slot filled part is handled natively by Rasa since all slot values are available on the conversation tracker.

Re. whether input is a picture or not: This should be handled by your channel connector; the judgment that it is not text should be happening in the frontend of the channel itself.