c++ - 将 "Cartesian coordinates"转换为 "polar coordinates with respect to user specified origin"

标签 c++ opencv image-processing

我正在尝试将图像中的几个点转换为 OpenCV 中的极坐标。我遇到了名为 cartToPolar 的函数,它会为我的点提供相对于 0,0 作为我的原点的极坐标。但是,我想通过将图像中的另一个点作为原点来进行这种转换。谁能帮我这样做?我看到一些帖子说重新映射有助于改变原点,但我不清楚它是如何工作的。

最佳答案

然后你必须将引用点移动到原点:

px -= ref.x;  
py -= ref.y;

现在将 (px,py) 传递给 cartToPolar 函数

关于c++ - 将 "Cartesian coordinates"转换为 "polar coordinates with respect to user specified origin",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18193920/

相关文章:

c++ - push_back(value)自动减少1

c++ - 让合并排序在链表上工作?

c++ - 如何在 C++ 中为私有(private)静态成员编写初始化/清理代码?

opencv - 在特定位置从 cv::Mat 中查找像素颜色

c++ - cvNamedWindow 总是段错误

image - 我怎么知道图像是否为 "Premultiplied Alpha"?

Java:将彩色图像表示为灰度强度值数组

c++ - 如果C++构造函数不返回任何内容,如何在表达式中使用它?

OpenCV正样本尺寸?

python - 使用 OpenCV 进行图像检测