Jpeg, PNG, GIF -&gt; pixel data array. Как на клиенте получить массив из изображения?
Ставим input type=«file», через который получаем путь к файлу (или можно глянуть в сторону fileapi).
Используя canvas можно загрузить изображение, получить высоту и шырину и получить цвет конкретного пикселя через context.getImageData (см. stackoverflow.com/questions/6735470/get-pixel-color-from-canvas-on-mouseover).
Попробуйте: http://raphaeljs.com/