I would suggest you to start by searching articles about USB programming from Linux side, similar to this one http://www.linuxjournal.com/article/4600. Once you’re comfortable with that part of the process you can make the jump to the actual project (programming the optical sensor of your mouse). There are some other great articles about using input devices on your Edison board. Some days ago an internet user called Tahmid posted this great article http://tahmidmc.blogspot.com/2015/12/using-input-device-on-embedded-linux.html on his blog. By coincidence a mouse is being used as the “input device” and the Embedded Linux platform is the Edison Arduino board.