Python在OpenCV里实现极坐标变换功能


Posted in Python onSeptember 02, 2019

在中学里学习过直角坐标系,也叫做笛卡尔坐标系,它是正交坐标系,不过也学习过极坐标系,这种坐标系比较适合大炮发射的场合。极坐标系的定义如下:

在 平面内取一个定点O, 叫极点,引一条射线Ox,叫做极轴,再选定一个长度单位和角度的正方向(通常取逆时针方向)。对于平面内任何一点M,用ρ表示线段OM的长度,θ表示从Ox到OM的角度,ρ叫做点M的极径,θ叫做点M的极角,有序数对 (ρ,θ)就叫点M的极坐标,这样建立的坐标系叫做极坐标系。

Python在OpenCV里实现极坐标变换功能

极坐标很方便应用到雷达上面,因为雷达不断地转动,反射回来的波计算出距离,再与转动的角度,就构成一个二维图的坐标了。也有人采用这样雷达图来表示公式的销售业绩,这样方便比较不同人的结果,可以看出每个人的差距。下面就使用python和matplotlib实现这样的绘图,让我们对极坐标有一个明确的理解,以便后面展开从直角坐标到极坐标的变换学习,这个例子代码如下:

#python 3.7.4,opencv4.1
#蔡军生 https://blog.csdn.net/caimouse/article/details/51749579
#
import matplotlib.pyplot as plt
import numpy as np
 
plt.rcParams['font.sans-serif']=['SimHei'] #用来正常显示中文标签
plt.rcParams['axes.unicode_minus']=False #用来正常显示负号
 
employee = ["张三", "李四", "蔡大", "庞二", "林五"]
actual = [45, 53, 55, 61, 57, 45]
expected = [50, 55, 60, 65, 55, 50]
 
# 设置图形大小和极坐标方式显示
plt.figure(figsize=(5, 5))
plt.subplot(polar=True)
 
#角度坐标生成
theta = np.linspace(0, 2 * np.pi, len(actual))
 
# 设置极坐标的标记
lines, labels = plt.thetagrids(range(0, 360, int(360/len(employee))), (employee))
 
# 在极坐标显示销售数值
plt.plot(theta, actual)
plt.fill(theta, actual, 'b', alpha=0.1)
 
# 极坐标显示期望销售数值
plt.plot(theta, expected)
 
# 添加标注和标题
plt.legend(labels=('实际值', '期望值'), loc=1)
plt.title("实际值 与 期望值对比")
 
# 显示点到屏幕
plt.show()

输出结果如下:

Python在OpenCV里实现极坐标变换功能

总结

以上所述是小编给大家介绍的Python在OpenCV里实现极坐标变换功能,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Python 相关文章推荐
python 3.6 tkinter+urllib+json实现火车车次信息查询功能
Dec 20 Python
python书籍信息爬虫实例
Mar 19 Python
Python机器学习k-近邻算法(K Nearest Neighbor)实例详解
Jun 25 Python
Python可变和不可变、类的私有属性实例分析
May 31 Python
Python中请不要再用re.compile了
Jun 30 Python
使用python画社交网络图实例代码
Jul 10 Python
Python实现随机生成任意数量车牌号
Jan 21 Python
在python中利用dict转json按输入顺序输出内容方式
Feb 27 Python
python入门之井字棋小游戏
Mar 05 Python
Python接收手机短信的代码整理
Aug 02 Python
Python 实现微信自动回复的方法
Sep 11 Python
python 利用opencv实现图像网络传输
Nov 12 Python
Python 读取用户指令和格式化打印实现解析
Sep 02 #Python
Python操作excel的方法总结(xlrd、xlwt、openpyxl)
Sep 02 #Python
Python目录和文件处理总结详解
Sep 02 #Python
Python3操作Excel文件(读写)的简单实例
Sep 02 #Python
python函数修饰符@的使用方法解析
Sep 02 #Python
python3文件复制、延迟文件复制任务的实现方法
Sep 02 #Python
基于python进行抽样分布描述及实践详解
Sep 02 #Python
You might like
海贼王动画变成“真人”后,凯多神还原,雷利太帅了!
2020/04/09 日漫
php实现博客,论坛图片防盗链的方法
2016/10/15 PHP
用js实现的抽象CSS圆角效果!!
2007/05/03 Javascript
js更优雅的兼容
2010/08/12 Javascript
广泛收集的jQuery拖放插件集合
2012/04/09 Javascript
js setTimeout()函数介绍及应用以倒计时为例
2013/12/12 Javascript
jquery操作下拉列表、文本框、复选框、单选框集合(收藏)
2014/01/08 Javascript
用C/C++来实现 Node.js 的模块(二)
2014/09/24 Javascript
基于jQuery实现网页打印功能
2015/12/01 Javascript
BootStrap selectpicker
2016/06/20 Javascript
JS验证 只能输入小数点,数字,负数的实现方法
2016/10/07 Javascript
Node.js开启Https的实践详解
2016/10/25 Javascript
nodejs基础应用
2017/02/03 NodeJs
JavaScript实现的超简单计算器功能示例
2017/12/23 Javascript
快速了解Node中的Stream流是什么
2019/02/13 Javascript
Python列表推导式的使用方法
2013/11/21 Python
Python中使用异常处理来判断运行的操作系统平台方法
2015/01/22 Python
python使用电子邮件模块smtplib的方法
2016/08/28 Python
python实现两个文件合并功能
2018/04/01 Python
简单实现Python爬取网络图片
2018/04/01 Python
Python实现爬虫设置代理IP和伪装成浏览器的方法分享
2018/05/07 Python
Python爬虫基础之XPath语法与lxml库的用法详解
2018/09/13 Python
Python 处理文件的几种方式
2019/08/23 Python
浅析Python 抽象工厂模式的优缺点
2020/07/13 Python
PyTorch 导数应用的使用教程
2020/08/31 Python
Python使用grequests并发发送请求的示例
2020/11/05 Python
详解px单位html5响应式方案
2018/03/08 HTML / CSS
美国最大的家庭鞋类零售商之一:Shoe Carnival
2017/10/06 全球购物
Sunglasses Shop丹麦:欧洲第一的太阳镜在线销售网站
2017/10/22 全球购物
客服端调用EJB对象的几个基本步骤
2012/01/15 面试题
运动会入场解说词
2014/02/07 职场文书
公务员转正鉴定材料
2014/02/11 职场文书
不听老师话的万能检讨书
2014/10/04 职场文书
集团财务总监岗位职责
2015/04/03 职场文书
2015年建筑工程工作总结
2015/05/13 职场文书
spring boot项目application.properties文件存放及使用介绍
2021/06/30 Java/Android