Hi, I want to do a little project that works like “Video Sudoku Solver”
2 vues (au cours des 30 derniers jours)
Hi, I want to do a little project that works like “Video Sudoku Solver”. I plan to use a webcam to watch a Chinese chess( similar to international chess) or chess , Chinese chessman is round with a different Chinese charater on center. (The international chess pieces is different 3 demention object.)
Then record every steps of the whole game. What I plan to do is: at the begin of a game, every chess pieces is in its initial position, so it is easy to detect chess board, and the original chess piece at expected position . After the game begin, I need to find when a plays hand move chess pieces, and follow its move detect the new positon. I guess rocord Chinese chess is simpler than international chess. I hope if after detect the circle, then every chess can be find, then the quesetion is to detect every chinese character in the circle. Because at the beginning, we would find the orignial picture of each pieces, so it seems not hard to find each pieces. Now the question is how to detect plays hand move in and move out? another question is the rotation of chess pieces.Because player usually put each pieces with a little rotation, so how to detect it? It seems hard to record international chess(to detect in 3 demention) If you have any ideas, please not hesitate to tell me! Thank u. This can be expand to a Apple App, or some other little applition in your mobile phone.if some good Artificial Intelligence(not as good as deep blue, but over average standand ) added to give a best advice for each move.
Image Analyst le 28 Nov 2012
I don't know what these pieces look like but I imagine many of them look identical. So to detect which piece moved you're going to have to take snapshots in between every move and then compare the latest snapshot against the prior one to determine which piece moved. You can probably just subtract the two images and then threshold and use bwareaopen to get rid of small noise patches and keep just the largest difference. If you know what pieces were located where at the start then you don't need to figure out what all the pieces are in each image because only one piece can move at a turn. I don't see any need to find every piece in every image, handle piece rotations, read Chinese characters, or use artificial intelligence - you only need to know initial positions and which piece moved from one turn to the next, which is easily determined.