笛卡尔坐标极坐标转换

时间:2011-04-24 00:22:55

标签: cartesian

您好我正在尝试开发一个在图像中执行特征提取的Java代码。 我从图像中提取了关键点。 下一步是使用对数极坐标系将每个关键点周围的区域划分为非重叠区域。 我浏览了将cartessian坐标转换为log polar的代码,但我只在matlab中获得了代码。 我需要java代码。 任何人都可以帮助我

1 个答案:

答案 0 :(得分:1)

维基百科文章中的解释非常简单:http://en.wikipedia.org/wiki/Log-polar_coordinates

class Polar
{
    public double rho;
    public double theta;

    public void ToPolar(double x, double y)
    {
         rho = Math.log(Math.sqrt(x*x + y*y));
         theta = Math.atan2(y, x);
    }
}

添加你需要的任何其他内容,但它没什么特别的,写起来也很简单。上面假设您的日志是基数e,而您正在以弧度为单位。