笛卡尔坐标、极坐标互转

  • 1.笛卡尔坐标转为极坐标
  • 2.极坐标转为笛卡尔坐标

1.笛卡尔坐标转为极坐标

函数原型:

void cartToPolar(InputArray x,    //x坐标的数组,且必须是单精度或双精度浮点数组InputArray y,    //y坐标的数组,且必须是单精度或双精度浮点数组OutputArray magnitude,   //输出与x大小和类型相同的幅值数组OutputArray angle,    //输出与x大小和类型相同的角度数组; 角度的范围是弧度(0~2pi)或角度(0~360)bool angleInDegrees = false)   //一个标志,指示角度是以弧度(默认为弧度)还是以度为单位

示例代码1:

#include <opencv2/opencv.hpp>
using namespace std;
using namespace cv;int main()
{vector<Point2f> sides;//建立容器存坐标sides.push_back(Point2f(3, 4));sides.push_back(Point2f(6, 8));sides.push_back(Point2f(1, 1));Mat xpts(sides.size(), 1, CV_32F, &sides[0].x, 2 * sizeof(float));Mat ypts(sides.size(), 1, CV_32F, &sides[0].y, 2 * sizeof(float));cout << "x: " << xpts.t() << endl;cout << "y: " << ypts.t() << endl;Mat magnitude, angle;cartToPolar(xpts, ypts, magnitude, angle);  //调用函数cout << "\nmagnitude: " << magnitude.t();cout << "\nangle: " << angle.t() *180. / CV_PI <<endl;return 0;
}

示例代码2:

#include <opencv2/opencv.hpp>
using namespace std;
using namespace cv;int main()
{Mat x = (Mat_<float>(3, 1) << 3, 6, 1);Mat y = (Mat_<float>(3, 1) << 4, 8, 1);Mat magnitude, angle;cartToPolar(x, y, magnitude, angle);  //调用函数cout << "\nmagnitude: " << magnitude.t();cout << "\nangle: " << angle.t() * 180. / CV_PI << endl;return 0;
}

2.极坐标转为笛卡尔坐标

函数原型:

void polarToCart(InputArray magnitude,   //输入二维矢量幅度的浮点数组;//它可以是一个空矩阵(= Mat()),在这种情况下,该函数假定         所有的幅度都是= 1; //如果不为空,则必须具有与角度相同的大小和类型InputArray angle,   //输入2D向量角度的浮点数组OutputArray x,    //2D向量的x坐标输出数组; 它的大小和类型与角度相同OutputArray y,   //2D向量的y坐标的输出数组; 它的大小和类型与角度相同bool angleInDegrees = false)

示例代码:

#include <opencv2/opencv.hpp>
using namespace std;
using namespace cv;int main()
{Mat magnitude = (Mat_<float>(3, 1) << 5, 10, 1.4142135);Mat angle = (Mat_<float>(3, 1) << 0.92740309, 0.92740309, 0.78523159);Mat x, y;polarToCart(magnitude, angle, x, y);  //调用函数cout << "\nx: " << x.t() << endl;cout << "\ny: " << y.t() << endl;return 0;
}

OpenCV 笛卡尔坐标、极坐标互转相关推荐

  1. python笛卡尔转换极坐标_Go 语言: 极坐标与笛卡尔坐标的互转

    本文记录使用 Go 语言实现 RESTful 的点坐标的转换. 极坐标与笛卡尔坐标的数学关系 假设同一个点使用极坐标表示为 (ρ, θ), 使用笛卡尔坐标表示为(x,y),那么,这些数学符号之间,有如 ...

  2. opencv与PIL互转

    PIL 转 opencv import cv2 import numpy as np from PIL import Image# 这种打开方式也支持中文路径 image = Image.open(& ...

  3. Dlib学习笔记:dlib array2d与 OpenCV Mat互转

    Dlib学习笔记:dlib array2d与 OpenCV Mat互转 [尊重原创,转载请注明出处] http://blog.csdn.net/guyuealian/article/details/7 ...

  4. 【数理知识】极坐标与笛卡尔坐标转换

    极坐标与笛卡尔坐标 极坐标与笛卡尔坐标 笛卡尔坐标系 极坐标系 转换 笛卡尔坐标转换为极坐标 极坐标转换为笛卡尔坐标 但如果 X 和 Y 是负数呢? 总结 极坐标与笛卡尔坐标 笛卡尔坐标系 极坐标系 ...

  5. Dlib学习笔记:解决dlib array2d转 OpenCV Mat时颜色失真

    Dlib学习笔记:解决dlib array2d转 OpenCV Mat时颜色失真 [尊重原创,转载请注明出处] http://blog.csdn.net/guyuealian/article/deta ...

  6. 【Python】opencv展示汉字及与pillow对比

    1.前记 因为opencv不能显示中文(会变成???),所以尝试通过opencv->pillow->opencv这种方式来实现,具体可参考这篇博客. 2.利用pillow展示中文 下面来简 ...

  7. C++常用方法笔记资料

    C++常用方法笔记资料 目录 目录 C++常用方法笔记资料 VS中常用的设置 C++函数注释规范: 使用fprintf保存数据 C++和OpenCV的Debug文件 获得路径中的文件名和文件前缀和后缀 ...

  8. 深度学习项目训练时突然卡住或崩盘问题

    问题1:训练到某个epoch或batch突然停住或报错可能原因如下:前一进程还未处理完,又进入下一个导致互锁,在一个Epoch完了后,或者每次获取一个batch数据后停顿一下: time.sleep( ...

  9. PyTorch 训练时中遇到的卡住停住等问题

    目录 前言 1. PyTorch 训练时在第一个 epoch 的最后一个 batch 卡死 - 问题描述 - 可能的原因 - 解决方法 2. 使用命令行运行时,卡在第一个 epoch - 问题描述 - ...

最新文章

  1. wake_lock_timeout的使用方法【转】
  2. apache camel 相关配置_MyBatis-Plus返回map自动转驼峰配置object-wrapper-factory
  3. 代码智能技术如何应用到日常开发?
  4. ret2dlresolve归纳
  5. 如果可以,我们一起留在竹山。
  6. 1215课后练习----判断字符串位置
  7. 杭电1963 完全背包
  8. prune研究记录(二)
  9. C# WinForm捕获全局异常
  10. windows 下搭建 git 服务器 gogs
  11. mysq命令行导出sql_mysql 命令行导入导出.sql文件
  12. 体脂率在线计算机,在线体脂率计算器 男性15%~18%若体脂率过
  13. 中序遍历 java_java二叉树中序遍历递归和非递归实现
  14. 界面怎么随意设计java,怎么样设计一个图形用户界面(普通登陆框)用java语言中的swing...
  15. 【python】实用tools
  16. 如果细节决定成败,那么什么决定细节
  17. 原理:小程序image图片实现宽度100%,高度自适应
  18. matlab流场可视化后处理
  19. Java web p41
  20. 五金机械行业网站建设方案

热门文章

  1. solidworks如何等比例放大缩小零件
  2. cgb2108-day04
  3. J2EE开发笔记(一)—— J2EE开发环境配置
  4. 二本计算机考研简单吗,二本考生考研一本院校难不难?不要听那些奇怪论调,而要看这些!...
  5. AIOps浅谈《人工智能专栏里》
  6. matlab pca svd,关于使用SVD进行PCA主成分提取的代码问题!也是必须涉及到原理的!...
  7. 2007.9.16 今天
  8. 华为交换机以及基本配置
  9. asp学习入门经验谈
  10. python cache_python 内存cache