Avoid using isrgb and isgray in our own functions so it works in any matrix.
* imperspectivewarp.m, imremap.m, imrotate.m: this functions can also perform
in "normal" matrices that would be invalid images (such as double class with
negative values). By removing this limitation, and instead make a check for
the actual type of matrices that we require, we make them more useful.