canvas предоставляет вам низкоуровневое api для манипуляции с пикселами, так что вполне себе возможно. Но для этого нужно понимать как обрабатывать изображение, что бы все работало худо бедно нормально и без лагов, нужно уменьшать количество необходимых вычислений для расчета позиций пикселей...
В помощь: мне когда-то понадобилось нечто схожее (деформация при наведении курсора, что-то типа лупы) и товаристч
@Stdit все
подробно описал.