图像处理---关于像素坐标矩阵变换(平移,旋转,缩放,错切)

  • 介绍

坐标变换矩阵是一个3*3的矩阵,用来对图形进行坐标变化,将原来的坐标点转移到新的坐标点,因为一个图片是有点阵和每一点上的颜色信息组成的,所以对坐标的变换,就是对每一点进行搬移形成新的图片。具体的说图形的放大缩小,移动,旋转,透视,扭曲这些效果都可以用此矩阵来完成。

图像处理---关于像素坐标矩阵变换(平移,旋转,缩放,错切)_第1张图片

  • 平移

图像处理---关于像素坐标矩阵变换(平移,旋转,缩放,错切)_第2张图片

图像处理---关于像素坐标矩阵变换(平移,旋转,缩放,错切)_第3张图片

  • 旋转

绕原点逆时针旋转θ度角的变换公式是 x’ = xcosθ − ysinθ 与 y。’ = xsinθ + ycosθ

图像处理---关于像素坐标矩阵变换(平移,旋转,缩放,错切)_第4张图片

图像处理---关于像素坐标矩阵变换(平移,旋转,缩放,错切)_第5张图片

  • 缩放

图像处理---关于像素坐标矩阵变换(平移,旋转,缩放,错切)_第6张图片

图像处理---关于像素坐标矩阵变换(平移,旋转,缩放,错切)_第7张图片

  • 错切

图像处理---关于像素坐标矩阵变换(平移,旋转,缩放,错切)_第8张图片

图像处理---关于像素坐标矩阵变换(平移,旋转,缩放,错切)_第9张图片

  • 其他
    图像处理---关于像素坐标矩阵变换(平移,旋转,缩放,错切)_第10张图片

  • Demo

见代码:http://download.csdn.net/detail/jarlen/8564513

  • 关于Android中实现

Matrix类就可以发现,实际上,matrix类本身已经提供了许多类似的方法,我们只要调用,就可以了。

setScale(float sx, float sy, float px, float py) 放大
setSkew(float kx, float ky, float px, float py) 斜切
setTranslate(float dx, float dy) 平移
setRotate(float degrees, float px, float py) 旋转

你可能感兴趣的:(图形处理)