AffineTransform数值解法与仿射变换应用
AffineTransform 的数值解法,挺适合搞仿射和投影变换的朋友用的,是你用 C 写图像或者坐标变换的时候,比较省心。代码用的是数值计算
里那套解线性方程组的方法,思路还蛮经典的,像高斯消元、矩阵拆解这些全都能用得上。
AffineTransform 的代码里,方程组的构造比较用心,尽量避免出现病态矩阵,嗯,数值稳定性还不错。用的时候,你只要把目标点和源点传进去,剩下的交给它就行了。响应挺快,适合批量图片。
如果你对仿射变换不熟,推荐去看看这篇:笛卡尔坐标系与仿射变换,讲得蛮直白的。还有,像高斯消去法
这种基础方法也可以看看,这篇写得挺清楚的。
用 AffineTransform 图形数据的时候,最好注意输入点的分布,尽量别让点太集中,不然求出来的矩阵会不太稳。如果你想多试试不同解法,像Crout 法
、追赶法
这种也可以试一试,相关资料我帮你找好了,直接戳这里和这里就行了。
哦对了,仿射、投影这种变换在OpenGL
里用得也蛮多,想了解的话,可以看下OpenGL 坐标变换,挺实用的。
14.29KB
文件大小:
评论区