Cleaning up; use regions instead of rects for visible detection