Halcon图像坐标由行(Row)和列(Column)表示,以图像左上点为原点,往下↓为Row坐标,往右→为Column坐标。根据右手定则,由(Row,Column)表示的坐标系旋转正方向是逆时针。
问题:
在(Row,Column)坐标系上的任意一点A,假设坐标为(Row1,Column1),另有一点B,坐标为(Row2,Column2),求解B绕A旋转θ角度后的坐标点。
方法一:
利用几何数学,使用C#算法代码如下:
(double row, double column) RotatePP(double row1, double column1, double row2, double column2, double theta)
{
var dx = row2 - row1;
var dy = column2 - column1;
var len = Math.Sqrt(dx * dx + dy * dy);
var phi = Math.Atan2(dy, dx);
var drow = len * Math.Cos(phi + theta);
var dcol = len * Math.Sin(phi + theta);
return (row1 + drow, column1 + dcol);
}
原文:https://www.cnblogs.com/chenwentong/p/14009753.html