python 的 pointcloud 计算
数据读取

def read_data_file(filename, Separator):data = [[], [], []]f = open(filename,'r') #读取文件line = f.readline() num = 0while line:  #按行读入点云c,d,e = line.split(Separator)data[0].append(c)  #X坐标data[1].append(d)  #Y坐标data[2].append(e)  #Z坐标num = num + 1line = f.readline()f.close() #string型转float型 x = [ float(data[0] )/1000 for data[0] in data[0] ] #因为此处计算按照米的距离数据,我们精确到毫米y = [ float(data[1] )/1000 for data[1] in data[1] ]z = [ float(data[2] )/1000 for data[2] in data[2] ]#print("读入点的个数为:{}个。".format(num))point =pd.DataFrame([x,y,z]).Treturn point

该图片来自于tof生成的距离数据
按照数据的意义:此处需要对数据滤波处理,有时我们要根据实际的情况,加噪声,有时我们需要根据实际情况去噪声。
此处加高斯噪声(白噪声、椒盐噪声,因此处经过测试发现加高斯噪声,效果较好):

def jitter_point(point, sigma=0.01, clip=0.05):assert(clip > 0)point = np.array(point)point = point.reshape(-1,3)Row, Col = point.shapejittered_point = np.clip(sigma * np.random.randn(Row, Col), -1*clip, clip)jittered_point += pointreturn jittered_point

点云数据去噪方法:
双边滤波、高斯滤波、分箱去噪、KD-Tree、直通滤波、随机采样一致性滤波等
此处我们采用均值滤波以及小波变化对数据消噪处理;

coor = np.zeros((int(len(add_data[:,0])/3),3))
for i in range(len(coor[:,0])):coor[i,0] = np.sum(add_data[3*i:3*(i+1),0])coor[i,1] = np.sum(add_data[3*i:3*(i+1),1])coor[i,2] = np.sum(add_data[3*i:3*(i+1),2])

最终我们形成如下的图形:
均值滤波后的深度数据得出的结果。
下一讲我们继续考虑小波变化的方法去除噪声

python 的 pointcloud 计算探路相关推荐

  1. 使用Python、OpenCV计算轮廓的中心

    1. 使用Python.OpenCV计算轮廓的中心并标记 2. 使用Python.OpenCV检测轮廓的形状并标记 3. 使用颜色通道统计信息来标记形状的实际颜色并标记 本博客的目标:(1)检测图像中 ...

  2. 使用Python,OpenCV计算图像直方图(cv2.calcHist)

    使用Python,OpenCV计算图像直方图(cv2.calcHist 1. 效果图 2. 原理 2.1 什么是图像直方图? 2.2 计算直方图 2.3 可视化蒙版区域 3. 源码 参考 这篇博客将介 ...

  3. python使用pandas计算dataframe中每个分组的分位数极差、分组数据的分位数极差(range)、使用groupby函数和agg函数计算分组的两个分位数

    python使用pandas计算dataframe中每个分组的分位数极差.分组数据的分位数极差(range).使用groupby函数和agg函数计算分组的两个分位数 目录

  4. python使用pandas计算dataframe中每个分组的极差、分组数据的极差(range)、使用groupby函数和agg函数计算分组的最大值和最小值

    python使用pandas计算dataframe中每个分组的极差.分组数据的极差(range).使用groupby函数和agg函数计算分组的最大值和最小值 目录

  5. python题目关于企业利润_【每日一练】巧用python实现利润计算

    原标题:[每日一练]巧用python实现利润计算 相信很多小伙伴都遇到过阶梯利率的问题,比如说银行的利息计算,不同阶段的本金有不同的利率:税务的税费计算,不同的营收有不同的缴纳率:个人的提成,不同的销 ...

  6. python输入数字翻译成星期几-Python练习笔记——计算输入日期为改年的第几天、星期几...

    # 输入年月日,如:1995年12月10日,计算是该年的第几天? # 同时计算出当天是星期几? print("请依据提示依次输入您想查询的年 月 日") # 第一段代码块(年月日输 ...

  7. python科学计算基础教程pdf下载-用Python做科学计算 高清晰PDF

    用Python做科学计算一书介绍如何用Python开发科学计算的应用程序,除了介绍数值计算之外,我们还将着重介绍如何制作交互式的2D.3D图像:如何设计精巧的程序界面:如何和C语言所编写的高速计算程序 ...

  8. python科学计算基础教程pdf下载-用Python做科学计算 pdf版

    本书将介绍如何用Python开发科学计算的应用程序,除了介绍数值计算之外,我们还将着重介绍如何制作交互式的2D.3D图像:如何设计精巧的程序界面:如何和C语言所编写的高速计算程序结合:如何编写声音.图 ...

  9. 使用Python进行科学计算:NumPy入门

    原创2016-08-07Jamal Moir编程派 编程派微信号:codingpy 本文由 Python 翻译组 最新翻译出品,原作者为 Jamal Moir,译者为 cystone,并由编程派作者  ...

最新文章

  1. npm ERR! code ELIFECYCLE
  2. 密码篇——非对称加密
  3. python正则表达式模块_Python正则表达式模块(re模块)
  4. SAP Spartacus cxOutlet 里的 templatesRefs 的填充逻辑
  5. ECharts 点击非图表区域的点击事件不触发问题
  6. c语言math函数 sgn,常用矩阵计算C语言代码
  7. Spring中常用注解的介绍
  8. 日志组件logback的介绍及配置使用方法(一)
  9. EF-CodeFirst-3搞事
  10. 宾馆管理系统(做了ppt忘记发博客了)
  11. 代码review总结
  12. 语义分析(输出四元式)
  13. 键盘连不上计算机,电脑键盘失灵的解决办法
  14. Mac搭建本地局域网SVN服务(Cornerstone)
  15. MacBook 快捷键个人总结和设置
  16. JSFL批量删除fla文件中超出某个宽度的原件
  17. 用Java实现递归与分治系列(二)
  18. 在线安装计算机应用软件,计算机应用与网络基础教程 常用软件安装new.ppt
  19. 重磅更新 | zData数据库一体机 v4.9
  20. 0丢失之谜:解决Oracle中0开头小数被截断的问题

热门文章

  1. 快播3.5不升级版常见问题
  2. 漂白android软件,原本图片漂白软件(图片漂白处理工具)V1.1 最新版
  3. Android开发者选项 介绍
  4. 谷歌浏览器点击任意部分都会出现黑色光标
  5. 新华三“智・行中国2022”|大厂行动,如何擘画“内循环”的数字未来?
  6. 戴森空气净化器php00使用,戴森空气净化器好用吗?有什么使用技巧?
  7. 78系列79系列稳压芯片
  8. 数据恢复软件(列表)
  9. 一些常用的postman测试脚本
  10. 用AI技术防止幼儿园虐待儿童,中国研究员研发视频流分析模型