Build a sudoku solver algorithm using Machine Learning with OpenCV in Python. It detects sudoku board from an image and then solves it.