自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(19)
  • 收藏
  • 关注

原创 Mesh模型滤波

滤波的方法通常为三种,mesh的均值滤波,拉普拉斯滤波、Taubin滤波。其中均值滤波和拉普拉斯滤波都会使三角网格收缩。Taubin滤波使用了两种不同参数的拉普拉斯器防止网格收缩,在每次迭代中应用两次FilterSmoothLaplacian。

2025-04-14 23:48:38 91

原创 CSF布料算法提取点云地面点

采用CSF算法来选择初始地面种子,取代了以往基于表面插值的局部最小点算法。布料仿真算法通过在三维计算机图形中模拟布料与实体接触的物理过程来对布料进行建模。在CSF算法中,首先在点云反曲面上方覆盖一块柔性布。然后,这块布在重力的作用下下落,直到它固定在相反的点云曲面上。将最后固定好的布作为近似地形面,从而点云中分离出地面点和非地面点。

2025-03-05 19:00:00 181

原创 激光点云电力线提取

【代码】激光点云电力线提取。

2025-02-14 19:30:00 175

原创 c++结构体字段反射

【代码】c++结构体字段反射。

2024-09-08 13:10:55 323

原创 激光点云区域生长

(1)选中的点被添加到名为种子的集合中。(2)对于每一个种子点,找到它的邻近点。(3)算出每个相邻点的法线和当前种子点的法线之间的角度,如果角度小于阈值,则将当前点添加到当前区域。(4)然后计算每个邻居点的曲率值,如果曲率小于阈值,那么这个点被添加到种子中(5)将当前的种子从种子列表中移除(6)如果种子列表变成空的,这意味着该区域生长已完成,继续重复上述过程。

2024-09-03 23:14:03 263

原创 激光点云分类

1、点云的分类器,采用的是梯度提升树(Gradient Boosting Tree),或随机森林。可从标记好的样本数据生成训练模型,进行点云分类时,都可使用该模型。2、可分类出,地面点,高植被,中植被,低植被,建筑物,导线,杆塔,河流,道路,跳线,绝缘串等。3、分类出来的结果,目前还是会有其他噪点,在本次测试的过程中,可能样本的数据不够多。

2024-07-20 14:14:40 342

原创 激光点云高植被单木分割

1、中值滤波,最大值滤波,4连通标记,寻找最大值和轮廓边界等。2、点面点生成DEM,高植被生成CHM。1、高植被激光点云,地面点激光点云。

2024-07-20 13:53:11 550

原创 平面方程点法式

【代码】平面方程点法式。

2024-02-23 22:27:17 440

原创 倾斜摄影osgb转点云数据

5、三角形加密算法,可使点云看起来密点。

2023-12-20 23:12:15 1221 1

原创 osgearth加载大量点云数据,无上限,pagelod+kd树结构

20231024_234235

2023-10-25 00:02:26 519 3

原创 c++继承、多态相关知识

3、多肽构建类时,析构函数只会走到 父类的析构,但是子类没有析构,解决方法:父类析构函数改为虚析构,子类析构函数也改为虚析构。2、重写父类的虚函数时,多肽形式下调用,虚函数都是调用实际类类型,而普通函数调用的是看具体调用的类类型。0、父类的虚函数,不管写到private或publish,子类重写该虚构函数时,都会被重写。1、子类继承父类,子类构建是 先初始化父类,再子类,析构时,是先子类,再父类。

2023-09-02 14:50:04 133 1

原创 点、线、面之间最短距离求法

x1 + Ua (x2-x1) = x3 + Ub (x4-x3) 和 y1 + Ua(y2-y1) = y3 +Ub (y4-y3)即:( P1 - P3 + mua (P2 - P1) - mub (P4 - P3) ) dot (P2 - P1) = 0。则:(Pa - Pb) dot (P2 - P1) = 0,(Pa - Pb) dot (P4 - P3) = 0。通过两个点P1(x1,y1)和P2(x2,y2)定义的直线方程为:P=P1 + u(P2-P1)。Pa到平面法线的投影。

2023-06-12 00:11:20 1198 1

原创 矩阵的几何意义

矩阵相乘的结果,是最终变换的矩阵结果。一步到位的变化,不需要单独乘上左边的矩阵来进行变化。(就像旋转矩阵,先绕X轴旋转,再Y,再Z。一步到位就是向量乘 (X*Y*Z)矩阵)。也可以看出,矩阵乘法不符合交换律。(2)标量矩阵,对角线数值相同,其他为0,标量矩阵 * 任何向量,向量会x,y,z,三个分量等比例缩放。(1)单位矩阵,对角线为1,其他为0, 单位矩阵 * 任何向量,向量不变。矩阵相乘,并不是真正的乘法,假设矩阵。,在二维坐标系中,变为。

2023-06-10 20:55:54 181

原创 直线、线段、射线一般方程

t∈R P为直线上一点,为直线的方向向量,t为参数。,贝塞尔曲线有应用到。

2023-06-10 20:09:48 1081

原创 三维场景拾取原理

拾取操作需要确定射线和对象几何的关系,一般是线线求交,线面求交,对于非解析参数几何需要进行大量迭代计算,这种计算本身是比较耗时的,如果模型对象较多,则会存在性能瓶颈。3. 包围盒计算效率很高,在实际计算中,可以通过包围盒对对象进行过滤;除了常用的AABB包围盒,有条件可以使用OBB紧包围盒。1. 当模型或者场景视图比较固定,我们可以将三维模型投影到二维,二维模型的位置计算量要远小于三维。2. 当对象较多,而且比较分散,则可以使用树结构,常用的八叉树,kd树,BSP树,R树。

2023-06-10 15:03:44 282

原创 矩阵相乘 A*B

3、乘积C的第m行第n列的元素等于矩阵A的第m行的元素与矩阵B的第n列对应元素乘积之和。1、当矩阵A的列数(column)等于矩阵B的行数(row)时,A与B可以相乘。2、矩阵C的行数等于矩阵A的行数,C的列数等于B的列数。AE=EA,A和单位矩阵或数量矩阵满足交换律。AA*=A*A,A和伴随矩阵相乘满足交换律。矩阵乘法在以下两种情况下满足交换律。

2023-06-04 23:45:08 2180 1

原创 异面直线求最短距离及坐标点

再将两向量AB, CD叉乘得到其公垂向量N=(x,y,z),在AB, CD两直线上分别选取点E,F(任意),得到向量M,求向量M在向量N方向的投影即为两异面直线间的距离了(就是最短距离啦)。设两直线与距离的交点分别为S,T,可带入公垂线N的对称式中得到第一个方程,又因为S,T两点分别满足直线AB和CD的方程,所以得到关于S(或T)的第二个方程,联立两个方程分别解出来即可!先将直线方程化为对称式,分别得到两直线方向向量AB=(x1,y1,z1), CD=(x2,y2,z2),

2023-05-31 23:26:05 1708 1

原创 贝塞尔曲线

则一阶式子: B1​(t)=P0​+(P1​−P0​)t。1、一阶推导二阶,三阶类似推导。一阶情况下就是,一条直线。变量t 属于【0,1】

2023-05-31 23:10:37 121 1

原创 向量的使用

2、向量点乘,cosX = 向量a * 向量b / |a| * |b|。4、向量叉乘,a x b = |a| * |b| * sinX。(3)叉乘结果取模长,为两向量 平行四边行面积。乘 0.5 为三角形面积。7、向量上某点坐标求法, 起始向量 + 单位向量 * 距离。(1)向量a在向量b上的投影与b的长度的体积。6、向量单位化,向量各项除以自身模长。(2)向量方向为右手螺旋定则。1、向量具有方向和大小。(1)叉乘依然是向量。(4)可判断向量方向。

2023-05-31 22:53:26 149 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除