I have an image of a chessboard which I segment into its constituent 64 squares. I want to construct a binary classifier which can detect which square contains a piece or not. I know how to do this via CNN's, but I feel like that might be a bit overkill. I was wondering what would the simplest approach be to this problem? Thank you.
If it's a screenshot of a computer game, where each constituent has purely that box, that is by default any given box is white or black. then, any simple matrix operation like, variance of color in that box could be a feature in determining if there is a piece or not.
If it's a hover cam image (Top view), then it's a different problem. you can simply do a kernel multiplication for edge detection, any empty box will have array of 0 as it's output. while it won't be the case if there is a piece.
Each of your squares consists of $x*x$ pixels and each pixel has a color value. Now simply compute the sum of all pixel values from an empty square and you have your classification rule for detecting empty squares. The same method should also work for nonempty squares to find out which figure uses that square.