python处理千万级数据_python实现千万级+点云数据三维坐标球面坐标互转
有同学找我帮忙完成一下需求:
实现点云数据的三维坐标球面坐标互转。
通过浏览器找到相关概念,通过python撸代码实现了功能,代码还有很多改进空间,多包涵!
下面简单介绍一下基本概念:
三维直角坐标系&球面坐标系
三维直角坐标系是一种利用直角坐标(x,y,z)来表示一个点 P 在三维空间的位置的三维正交坐标系。
球坐标系是一种利用球坐标(r,θ,φ)来表示一个点 P 在三维空间的位置的三维正交坐标系。
三维空间下直角坐标&球面坐标的相互转换
直角坐标转球坐标
球坐标转直角坐标
基于python的坐标转换实现
三维坐标转球面def xyz2Spherical(x,y,z):r=np.sqrt(pow(x,2)+pow(y,2)+pow(z,2))theta=math.atan(np.sqrt(pow(x,2)+pow(y,2))/z)beta=math.atan(y/x)return float(r),theta,beta
球面转三维坐标def Spherical2xyz(r,theta,beta):x= r*math.sin(theta)*math.cos(beta)y=r*math.sin(theta)*math.sin(beta)z=r*math.cos(theta)return x,y,z
完整代码实现如下:import mathimport numpy as npimport pandas as pd#三维坐标转球面def xyz2Spherical(x,y,z):r=np.sqrt(pow(x,2)+pow(y,2)+pow(z,2))theta=math.atan(np.sqrt(pow(x,2)+pow(y,2))/z)beta=math.atan(y/x)return float(r),theta,beta#球面转三维坐标def Spherical2xyz(r,theta,beta):x= r*math.sin(theta)*math.cos(beta)y=r*math.sin(theta)*math.sin(beta)z=r*math.cos(theta)return x,y,z#读取文件def loadData(fileName):pointData=[]with open(fileName) as txtData:lines=txtData.readlines()for line in lines:lineData=line.strip().split(",")floatLine=list(map(float,lineData))pointData.append(floatLine)return pointDatadef xyz(pointData):x=[]y=[]z=[]for i in range(len(pointData)):x.append(pointData[i][:1])y.append(pointData[i][1:2])z.append(pointData[i][2:3])return np.array(x),np.array(y),np.array(z)if __name__ == "__main__":pointData=loadData("D:\\Users\\Desktop\\2.txt")x=xyz(pointData)[-3]y=xyz(pointData)[-2]z=xyz(pointData)[-1]for i in range(len(x)):c=xyz2Spherical(x[i],y[i],z[i])f= open("D:\\Users\\Desktop\\pointData_conert.txt","a+")f.writelines(str(c)+"\n")f.close()
最终输出pointData_convert.txt文件,就可以导入ArcGIS 或QGIS里进行后续分析可视化工作了。
(球面转三维坐标没有使用,同样直接调用函数Spherical2xyz)
另外,之前有盆友留言因为长时间没更新,没有及时回复抱歉!
最后,代码没有时间review,还有改进空间提高I/O速度!
python处理千万级数据_python实现千万级+点云数据三维坐标球面坐标互转相关推荐
- 如何用python批量下载数据_Python批量下载地理空间数据云数据!Python无所不能!...
模拟登录 这里要用到两个包:requests和json.requests使用前得先安装:pip install requests. In [3]: 进群:548377875 即可获取数十套PDF哦! ...
- 万国数据:“为了全方位保障混合云数据中心的安全,我们连猫都养了十只。”...
"互联网+"时代背景下各大企业都在忙着互联网转型,企业用户出于安全和业务灵活性的考虑,更愿意将数据存放在私有云中,但是同时又希望可以获得公有云的计算资源和稳定性,在这种情况下,将公 ...
- ROS:bag数据包内容提取——雷达点云数据和imu数据
通常在利用ros采集传感器数据时,我们会得到一个包含多个传感器数据的bag数据包,下面将会介绍从bag数据包提取雷达点云数据和imu数据的方法. 系统版本:Ubuntu20.04 ROS版本:Noet ...
- python输出键值列表_Python 键值分组或分区数据
Python 使用键值分组或者分区数据,对分组后的数据做何种归约是没有限制的.数据中可能包含一些自变量或者因变量.可以通过自变量对数据进行分区,然后计算每个分区的各项汇总值,包括最大值.最小值.平均值 ...
- python爬虫教材推荐 豆瓣_Python爬虫爬取豆瓣书籍数据
炎热的夏天,酷暑难挡,难免会心烦意燥,睡前随手拿起枕边看过很多遍的「平凡的世界」.看书,会让躁动的心瞬间安静下来. 生活不能等待别人来安排,要自己去争取和奋斗:而不论其结果是喜是悲,但可以慰藉的是,你 ...
- python处理行情数据_Python获取股票历史、实时数据与更新到数据库
要做量化投资,数据是基础,正所谓"巧妇难为无米之炊" 在免费数据方面,各大网站的财经板块其实已提供相应的api,如新浪.雅虎.搜狐...可以通过urlopen相应格式的网址获取数据 ...
- python覆盖数据库重复数据_Python操作MySQL数据库,插入重复数据
sql = "INSERT INTO test_c(id,name,sex)values(%s,%s,%s)" param = (1,'AJ','MAN') n = cursor. ...
- python 大智慧股票行情数据_Python获取股票历史数据和收盘数据的代码实现
各种股票软件,例如通达信.同花顺.大智慧,都可以实时查看股票价格和走势,做一些简单的选股和定量分析,但是如果你想做更复杂的分析,例如回归分析.关联分析等就有点捉襟见肘,所以最好能够获取股票历史及实时数 ...
- matlab点云数据dem,一种基于点云数据的DEM生成方法
第38卷 第5期 2015年 5月 测绘 与空 间地理信 息 GEOMATICS& SPATIAL INFoRMATIoN TECHNOLOGY Vo1.38.No.5 May.,2015 一 ...
- python 千万级数据处理_Python实现 ! 千万级别数据处理
今天分享一个数据清洗小技巧,可以让你在遇到百万.千万级别数据的时候游刃有余.先来说说问题的背景 现在有一个 csv 格式的数据集,大概 2千万条 左右的样子,存储的是用户的网络交互数据,其中电话号码作 ...
最新文章
- Linux必学的网络操作命令
- 自定义栈-pop-push-min-时间复杂度都为O(1)
- python培训学费多少钱-深圳龙华新区python编程培训机构,从哪几方面选择好学校...
- sql查询两张表的并集union和union all
- 数据库的事务隔离技术 之 MVCC
- 配置防盗链、 访问控制Directory 、访问控制FilesMatch
- Codeforces 845 C. Two TVs 思路:简单贪心算法
- SVD分解.潜语义分析.PythonCode
- 【Visual C++】游戏开发笔记四十 浅墨DirectX教程之八 绘制真实质感的三维世界:光照与材质专场...
- mysql 端口 telnet 不通_3306端口不通,不一定是网络的问题
- Unity MeshBaker 合并网格和材质
- 抽奖啦!量子位原创T恤任性送,夏天就要酷酷的
- WIN7 VS2010下配置 CGAL-4.7
- chromebook开发php,玩转chromebook
- 从零开始一起学习SLAM | 相机成像模型
- MAC硬盘空间减少的隐藏杀手,VM到底是什么?
- QGIS无人机数据分析教程
- 配置管理的目标和主要活动
- 微擎弹出确认授权获取用户头像
- Beego-HelloWorld
热门文章
- 基于python的异方差检验_【Python】统计科学之讲讲异方差的检验
- 肠道菌群失调是II型糖尿病和炎症性肠病的标志物
- sqlite3:深入理解sqlite3_stmt 机制
- 五分钟学会PowerDesigner创建概念数据模型
- MySQL中的alter table命令的基本使用方法及提速优化
- Elasticsearch系列——(1.2)倒排索引 的实现
- C语言编程练习---2021山东理工大学ACM 实验一J---X题解
- 华为自研OS操作系统,今秋是否真的会面市?
- python像数常用函数_八卦象数疗法常见配方
- 计算机网卡接口,5.8.1 计算机网卡(1)