As you say answering your question is not easy because there are multiple solutions to achieve what you want.
I think you should read about Object Detection especially about Convolutional Neural Nets (CNN). Good libs for the detection task are probably OpenCV and Googles Tensorflow. Also samples in Googles Mobile Vision API can show you how to have a live feed from the camera and manage overlaying it with your paintings. This example I personally found very helpful to see where/how to implement a detector as well as a graphic overlay even if its for Text Recognition. Finally here you have the Android Tensorflow demos.
But as easy as it seems it's still a long way to go. For this kind of implementation with Tensorflow you need to...
- Collect sample images with walls and what is not a wall ;)
- Think about preprocessing e.g. rescale, grayscale and filter and implement it
- Write and tune your Python code for your CNN model
- Train and evaluate your model with Python
- Port your model to Android
- Paint on the appropriate area
Another approach I can think of would be with Edge Detection and Hough Line Transform but I suggest you to use Neural Nets because results are probably better, Tensorflow (Mobile or Lite) is already optimized for Android and it's cutting edge tech ;)
Hope this helps!