an automatic computer-vision powered referee for your game of SCRABBLE
Essentially go the standard CMake route. You will have to compile the OpenCV libraries beforehand, also using CMake. After performing the first "Configure" in cmake-gui, most likely the OpenCV libraries will not get found. You will need to find the OpenCV_DIR variable and set it to the path to the OpenCV build directory. Google Test and Google Mock should be downloaded and built automatically.
Make sure you build OpenCV correctly, especially the "WITH" section. We need WITH_GTK and without CUDA and OpenCL for less setup headache.
- Hue / saturation filter to get the red pixels
- k-means clustering to locate the triple word score fields
- excluding the largest (count OR size OR even better the standard deviation from the center of the cluster) cluster to get orientation and exclude the SCRABBLE text
- Locating corner pixels of the corner Triple Word fields
- Finding homography by field edges
- modifying perspective matrix to compensate the thickness of the pieces
- identifying if piecas are in spot by amount of yellow (brute pixel by pixel color difference from a whole yellow block?)?
- piece recognition by SVM/kNN/NN
- ???
- PROFIT
- Creating a snake-like list of clusters
- The head and tail of the list are corners
- The furthest pixels of the opposite corners are the corners of the playfield
build-essential libgtk2.0-dev libjpeg-dev libtiff4-dev libjasper-dev libopenexr-dev cmake python-dev python-numpy python-tk libtbb-dev libeigen2-dev yasm libfaac-dev libopencore-amrnb-dev libopencore-amrwb-dev libtheora-dev libvorbis-dev libxvidcore-dev libx264-dev libqt4-dev libqt4-opengl-dev sphinx-common texlive-latex-extra libv4l-dev libdc1394-22-dev libavcodec-dev libavformat-dev libswscale-dev
libgstreamer0.10-0 libgstreamer0.10-dev gstreamer0.10-tools gstreamer0.10-plugins-base libgstreamer-plugins-base0.10-dev gstreamer0.10-plugins-good gstreamer0.10-plugins-ugly gstreamer0.10-plugins-bad gstreamer0.10-ffmpeg
libavcodec-dev libavformat-dev libswscale-dev
v4l2 libv4l-dev
libv4l-0 libv4l-dev
Something with ffmpeg?
sudo apt-get install build-essential libgtk2.0-dev libjpeg-dev libtiff4-dev libjasper-dev libopenexr-dev cmake python-dev python-numpy python-tk libtbb-dev libeigen2-dev yasm libfaac-dev libopencore-amrnb-dev libopencore-amrwb-dev libtheora-dev libvorbis-dev libxvidcore-dev libx264-dev libqt4-dev libqt4-opengl-dev sphinx-common texlive-latex-extra libv4l-dev libdc1394-22-dev libavcodec-dev libavformat-dev libswscale-dev