Good point. Computer vision systems are very fickle wrt pixel changes and from my experience trying to make them robust to changes in lighting, shadows or adversarial inputs, very hard to deploy in production systems. Essentially, you need tight control over the environment so that you can minimize out of distribution images and even then it’s good to have a supervising human.
If you’re interesting in reading more about this, I recommend looking up: domain adaptation, open set recognition, adversarial machine learning.