CN106846498A - 激光点云渲染方法和装置 - Google Patents
激光点云渲染方法和装置 Download PDFInfo
- Publication number
- CN106846498A CN106846498A CN201710070077.XA CN201710070077A CN106846498A CN 106846498 A CN106846498 A CN 106846498A CN 201710070077 A CN201710070077 A CN 201710070077A CN 106846498 A CN106846498 A CN 106846498A
- Authority
- CN
- China
- Prior art keywords
- cloud
- point
- rendered
- value
- autocad
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
- G06T19/20—Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
Landscapes
- Engineering & Computer Science (AREA)
- Computer Graphics (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Architecture (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Processing Or Creating Images (AREA)
- Image Generation (AREA)
Abstract
本发明提供的激光点云渲染方法和装置,应用于数据处理领域。所述方法包括:根据所述AutoCAD中的所有格式的点云数据生成标准点云文件,其中,所述标准点云格式包括:PCG格式点云数据、所述AutoCAD的视窗范围和预设的点云显示阈值。根据所述PCG格式点云数据、所述视窗范围和点云显示阈值统计所述三维视窗加载显示的点云中的待渲染点。将所获取的点云中的待渲染点添加到所述AutoCAD点云对象中,渲染所述点云。将不同格式的点云数据转化为标准的PCG格式的点云数据,生成包含所述标准格式的点云数据,并进行点云渲染,达到了多种数据格式兼容的技术问题,提高了生产作业效率。
Description
技术领域
本发明涉及数据处理领域,具体而言,涉及激光点云渲染方法和装置。
背景技术
目前AutoCAD平台支持将第三方点云格式数据转换为自身支持的PCG点云格式进行加载管理和渲染显示。AutoCAD支持多种第三方点云数据格式转换:fls、xyz、xyb、txt、asc、LAS、pts、ptg、ptx、clr、cl3等,上数据无论数据量大小均转换为AutoCAD支持的PCG点云数据文件。AutoCAD在加载PCG点云数据的过程中,会创建AutoCAD点云对象与对应PCG点云文件进行关联,以便于进行数据管理。AutoCAD会针对每个PCG点云对象绑定唯一的渲染器,用于三维视窗中的点云渲染显示浏览过程。
AutoCAD是专业的计算机辅助设计软件,目前很多的企事业单位使用该软件进行建模测图生产作业。目前该软件仅支持PCG格式点云数据管理,生产作业效率较低。
发明内容
本发明提供的激光点云渲染方法和装置,旨在改善上述问题。
本发明提供的一种激光点云渲染方法,用于对基于AutoCAD的三维激光点云渲染。所述方法包括:根据所述AutoCAD中的所有格式的点云数据生成标准点云文件,其中,所述标准点云格式包括:PCG格式点云数据、所述AutoCAD的视窗范围和预设的点云显示阈值。根据所述PCG格式点云数据、所述视窗范围和点云显示阈值统计所述三维视窗加载显示的点云中的待渲染点。将所获取的点云中的待渲染点添加到所述AutoCAD点云对象中,渲染所述点云。
本发明提供的一种激光点云渲染装置,用于对基于AutoCAD的三维激光点云渲染。所述装置包括:根据所述AutoCAD中的所有格式的点云数据生成标准点云文件,其中,所述标准点云格式包括:PCG格式点云数据、所述AutoCAD的视窗范围和预设的点云显示阈值。根据所述PCG格式点云数据、所述视窗范围和点云显示阈值统计所述三维视窗加载显示的点云中的待渲染点。将所获取的点云中的待渲染点添加到所述AutoCAD点云对象中,渲染所述点云。
上述本发明提供的激光点云渲染方法和装置,用于对基于AutoCAD的三维激光点云渲染。将AutoCAD中的所有格式的点云数据转化成标准的PCG格式点云数据,并生成包含所述AutoCAD的视窗范围和预设的点云显示阈值的标准点云文件,可以解决AutoCAD仅支持PCG格式点云数据的技术问题。根据所述标准点云文件中的PCG格式点云数据、所述视窗范围和点云显示阈值统计所述三维视窗加载显示的点云中的待渲染点,将所获取的点云中的待渲染点添加到所述AutoCAD点云对象中,渲染所述点云。将不同格式的点云数据转化为标准的PCG格式的点云数据,生成包含所述标准格式的点云数据,并进行点云渲染,达到了多种数据格式兼容的技术问题,提高了生产作业效率。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1是本发明实施例提供的激光点云渲染方法所应用的激光点云渲染系统的交互示意图;
图2为本发明实施例提供的激光点云渲染方法所应用的计算机的方框示意图;
图3为本发明第一实施例提供的激光点云渲染方法的步骤流程图;
图4为本发明第二实施例提供的激光点云渲染方法的过程示意图;
图5为本发明第三实施例提供的激光点云渲染装置的模块框图。
具体实施方式
本领域技术人员长期以来一直在寻求一种改善该问题的工具或方法。
鉴于此,本发明的设计者通过长期的探索和尝试,以及多次的实验和努力,不断的改革创新,得出本方案所示的较佳激光点云渲染方法和装置。
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参见图1,是本发明实施例提供的激光点云渲染系统的交互示意图。所述激光点云渲染系统可以包括:三维激光扫描仪110、POS设备120、全景相机130和激光点云渲染装置200,所述三维激光扫描仪110、所述POS设备120和所述全景相机130均与所述激光点云渲染装置140连接,以实现数据交互。所述三维激光扫描仪110用户获取激光点云数据。所述POS设备120用于获取姿态位置信息,可以包括:GPS导航仪和惯性制导系统。所述全景相机130用于采集多方位的图像。
请参见图2,是本发明实施例提供的激光点云渲染方法和装置所应用的计算机200的方框示意图。所述计算机200包括激光点云渲染装置140、存储器202、存储控制器203、处理器204、外设接口205、输入输出单元206、显示单元等207。
所述存储器202、存储控制器203、处理器204、外设接口205、输入输出单元206、显示单元207等各元件相互之间直接或间接地电性连接,以实现数据的传输或交互。例如,这些元件相互之间可通过一条或多条通讯总线或信号线实现电性连接。所述激光点云渲染装置140包括至少一个可以软件或固件(firmware)的形式存储于所述存储器中或固化在所述计算机200的操作系统(operating system,OS)中的软件功能模块。所述处理器204用于执行存储器中存储的可执行模块,例如所述激光点云渲染装置140包括的软件功能模块或计算机程序。
其中,存储器202可以是,但不限于,随机存取存储器(Random Access Memory,RAM),只读存储器(Read Only Memory,ROM),可编程只读存储器(Programmable Read-Only Memory,PROM),可擦除只读存储器(Erasable Programmable Read-Only Memory,EPROM),电可擦除只读存储器(Electric Erasable Programmable Read-Only Memory,EEPROM)等。其中,存储器202用于存储程序,所述处理器204在接收到执行指令后,执行所述程序,后述本发明实施例中任一实施例揭示的过程定义的服务器所执行的方法可以应用于处理器204中,或者由处理器204实现。
处理器204可能是一种集成电路芯片,具有信号的处理能力。上述的处理器204可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(DSP)、专用集成电路(ASIC)、现成可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
所述外设接口205将各种输入输出单元206耦合至处理器204以及存储器202。在一些实施例中,外设接口205、处理器204以及存储控制器203可以在单个芯片中实现。在其他一些实例中,他们可以分别由独立的芯片实现。
输入输出单元206用于提供给用户输入数据实现用户与所述服务器的交互。所述输入输出单元206可以是,但不限于,鼠标和键盘等。
显示单元207在所述服务器与用户之间提供一个交互界面,例如用户操作界面,或用于显示图像数据给用户参考。在本实施例中,所述显示单元207可以是液晶显示器或触控显示器。若为触控显示器,其可为支持单点和多点触控操作的电容式触控屏或电阻式触控屏等。支持单点和多点触控操作是指触控显示器能感应到来自该触控显示器上一个或多个位置处同时产生的触控操作,并将该感应到的触控操作交由处理器进行计算和处理。
本实施例提供的激光点云渲染方法,用于进行激光点云渲染。具体可以用于对基于AutoCAD的三维激光点云渲染。当然,本发明实施例的具体应用场景并不作为限定,其他需要激光点云渲染的场景也可应用本实施例。以下为对本发明实施例进行的详细说明。
请参见图3,示出了本发明第一实施例提供的一种激光点云渲染方法的步骤流程图,应用于图1所述的激光点云渲染装置140,用于对基于AutoCAD的三维激光点云渲染。下面将对图3所示的步骤进行具体解释。
步骤S301,根据所述AutoCAD中的所有格式的点云数据生成标准点云文件。其中,所述标准点云格式包括:PCG格式点云数据、所述AutoCAD的视窗范围和预设的点云显示阈值。
AutoCAD中可以处理多种数据格式的点云数据,其主要包括自定义格式点云数据和所述AutoCAD本身定义的标准格式点云数据。所述自定义格式点云数据一般为第三方软件定义的点云数据,所述第三方点云数据格式主要包括:fls、xyz、xyb、txt、asc、LAS、pts、ptg、ptx、clr、cl3等。所述AutoCAD本身定义的标准格式点云数据为PCG格式点云数据。
所述AutoCAD在进行激光点云数据渲染之前,先将所述AutoCAD中的所有格式的点云数据生成标准点云文件,再进行后续的渲染过程。其中,所述标准点云文件包括:所述AutoCAD所支持的PCG格式点云数据、所述AutoCAD的视窗范围和预设的点云显示阈值。所述AutoCAD的视窗范围为软件的三维视窗的可视范围,一般为所述三维窗口的三个端轴的可使用范围数据。所述预设的点云显示阈值,为所述三维视窗可加载显示的点云中的点的数量。在一种实施方式中,优选所述AutoCAD的点云显示阈值为300万点。
在一种实施方式中,根据所有格式的点云数据生成标准点云文件的过程可以参见如下方式:
将所述AutoCAD定义的点云对象与自定义格式的点云对象绑定;
把所述自定义格式的点云对象与所述自定义格式的点云数据关联;
获取所述AutoCAD的三维视窗的视窗范围。
在一种实施方式中,获取所述AutoCAD的三维视窗的视窗范围的方式可以为:
获取所述三维视窗的高宽、焦距、视图中心坐标及坐标转换模型等参数。根据当前的三维视窗的屏幕坐标的范围计算所述三维视窗的横轴坐标和纵轴坐标,进而根据所获取的横轴坐标和纵轴坐标计算所述AutoCAD的三维视窗的视窗范围。
步骤S302,根据所述PCG格式点云数据、所述视窗范围和点云显示阈值统计所述三维视窗加载显示的点云中的待渲染点。
依据上述步骤,将所述AutoCAD的所有格式的点云数据生成标准点云文件之后,进行待渲染点的统计操作。具体地,根据所述标准点云文件中的PCG格式点云数据、所述视窗范围和点云显示阈值统计所述三维视窗加载显示的点云中的待渲染点。在一种实施方式中,统计待渲染点的方式为:
根据所述视窗范围和所述点云显示阈值计算所述三维视窗加载的点云层级。根据所述PCG格式点云数据、所述点云层级和所述点云显示阈值统计所述三维视窗加载显示的点云中的待渲染点。
为了保证不同的硬件配置环境都能够实现点云数据的流畅浏览,需要根据不同的环境设置点云显示阈值,优选地,将所述点云显示阈值设置为150w-1000w。根据当前视窗范围和指定的点云显示阈值,在自定义点云数据文件中进行点云层级过滤,判断出最适合当前视口范围的点云层级,加载对应的点云数据进行显示。
在一种实施方式中,自定义点云文件可以按金字塔形式分层存储。第零层存储原始所有点云,第一层将第零层数据抽稀进行存储,每往上一层都是在当前层的基础上抽稀进行存储。使用时,根据点云显示阈值先判断合适的点云加载层级,再进行加载显示。
例如,当前点云显示阈值设置为250w,即当前视窗范围内最大加载点数不能超过250w个点,在视窗范围变化后,根据视窗范围来控制自定义点云加载范围,计算该空间范围内不超过该点云显示阈值的最小层级。
AutoCAD的三维视窗点云浏览流畅程度和点云显示的数据量成正比,因此需要根据视图范围实时统计需要显示的点云数据进行绘制。获取点云数据的层级数目,遍历每个层级,统计在当前的三维视窗内每个图层的点云点数,选择点云点数与点云显示阈值最接近的点云层级进行数据加载显示。
步骤S303,将所获取的点云中的待渲染点添加到所述AutoCAD点云对象中,渲染所述点云。
依据上述步骤获取所述点云中的待渲染点之后,将所获取的点云中的待渲染点添加到所述AutoCAD点云对象中,根据不同的渲染方式渲染所述待渲染点,进而实现所述点云的渲染。在一种实施方式中,将所获取点云中的待渲染点添加到所述AutoCAD点云对象中,渲染所述点云的方式包括:
遍历所获取的所有点云中的待渲染点,获取所述三维视窗内的点云端点值,根据所述端点值获取所述点云中的待渲染点的颜色,根据所述点云中的待渲染点的颜色渲染所述点云。
进行点云渲染的渲染器可以有多种,其对应的渲染方式也有多种。下面将结合不同的渲染方式,详细描述所述点云的渲染过程。
其一,所述渲染方式包括强度式,即为根据所述三维视窗内点云强度分布范围值进行渲染。上述步骤所述的,获取所述三维视窗内的点云端点值,根据所述端点值获取所述点云中的待渲染点的颜色的步骤,具体包括:
获取所述三维视窗内点云强度分布范围的最大强度值和最小强度值,获取所述点云中的待渲染点,将所述待渲染点的强度值限定到标准强度范围内,根据所述待渲染点的强度值获取所述待渲染点的颜色。
获取所述三维视窗内点云强度分布范围的最大强度值和最小强度值的实施过程可以包括:
把所述点云的强度范围分布值映射到第二标准区间,其中,所述第二标准区间对应第二阈值,通过所述第二阈值过滤所述待渲染点得到第二临时数据,根据所述第二临时数据获取所述最大强度值和最小强度值。
将所述点云中的点加载到所述AutoCAD的三维视窗后,获取所述三维视窗内点云强度分布范围。根据所述三维视窗内点云强度分布范围,确定其最大强度值和最小强度值。为了使点云按照强度渲染时对比度保持平稳,统计强度时需要剔除一些强度特别大和强度特别小的待渲染点。为达到特殊点剔除的目的,根据所述三维视窗内的最大强度值和最小强度值,设置标准强度范围。获取所述点云中的待渲染点,将所述点云强度统计分布范围映射到标准强度范围内。一般地,将所述标准强度范围设置为[0,255]。将所述点云强度分布范围值映射到标准强度范围内,并按照强度值从小到大的顺序进行排序。设定一个对应点云中待渲染点的数量的第一阈值,通过所述第一阈值过滤所述点云中的所有点。在所述第一阈值范围内的点云进行抽稀统计,统计其新的点云强度范围的最大强度值和最小强度值。
其二,所述渲染方式包括端轴式,即为根据所述待渲染点在某一端轴上的颜色比例值和颜色带获取该端轴上渲染点的颜色,根据该待渲染点的颜色进行点云渲染。上述步骤所述的,获取所述三维视窗内的点云端点值,根据所述端点值获取所述点云中的待渲染点的颜色的步骤,具体包括:
获取所述三维视窗内点云在端轴上的最大端轴值和最小端轴值,其中,所述端轴为所述三维视窗所在三维坐标系中的三个端轴中的任一个。根据所述待渲染点在该端轴的坐标和该端轴的最小端轴值的差值,获取所述待渲染点在色带条的色带和颜色比例值,获取所述待渲染点的颜色。
获取所述三维视窗内点云在端轴上的最大端轴值和最小端轴值的步骤包括:
把所述点云在所述端轴上的值映射到第一标准区间,其中,所述第一标准区间对应第一阈值,将映射到所述第一标准区间内的点数累加统计得出第一临时数据,通过所述第一阈值过滤所述第一临时数据,获取对应所述点云在所述端轴上的最大端轴值和最小端轴值。
所述三维视窗所应用的三维坐标系中,包括横轴、纵轴和高程轴,所述横轴可以对应所述三维坐标系的X轴,所述纵轴可以对应所述三维坐标系的Y轴,所述高程轴可以对应所述三维坐标系的Z轴。所述的端轴式渲染方式可以包括:根据横轴渲染,根据纵轴渲染和根据高程轴渲染这三种方式。
如果根据横轴渲染,获取所述三维视窗内点云在横轴上的最大横轴值和最小横轴值。在进行任一待渲染点的颜色获取时,根据该待渲染点在该横轴的坐标和该横轴最小值的差值,获取所述待渲染点在色带条的色带和颜色比例值。在所述色带条中的色带,以及颜色比例值,确定该待渲染点的颜色。
如果根据纵轴渲染,获取所述三维视窗内点云在纵轴上的最大纵轴值和最小纵轴值。在进行任一待渲染点的颜色获取时,根据该待渲染点在该纵轴的坐标和该纵轴最小值的差值,获取所述待渲染点在色带条的色带和颜色比例值。在所述色带条中的色带,以及颜色比例值,确定该待渲染点的颜色。
如果根据高程值渲染,获取所述三维视窗内点云在高程轴上的最大高程轴值和最小高程值。在进行任一待渲染点的颜色时,根据该待渲染点在该高程轴的坐标和该高程轴的最小值的差值,获取所述待渲染点在色带条的色带和颜色比例值。在所述色带条的色带,以及颜色比例值,确定该待渲染点的颜色。
其三,所述渲染方式包括循环色带式。所述端轴值为所述三维坐标系中的高程值。上述步骤所述的,获取所述三维视窗内的点云端点值,根据所述端点值获取所述点云中的待渲染点的颜色的步骤,具体包括:
根据预设的循环步长、待渲染点的高程值和最大高程值的差值,获取所述待渲染点在所述色带条中的颜色待及所述颜色带的比例值,根据所述颜色带和所述颜色带的比例值,获取所述待渲染点的颜色。
预设循环步长,根据循环步长及待渲染点的高程轴值和点云的最大高程值的差值,求出在色带条中的色带,以及该色带的比例值,进而取出点颜色。
首先设置指定方向的循环渲染间距JumpDist,遍历点云中的待渲染点。将待渲染点的高程轴坐标减去最小高程值得到距离,将距离对循环渲染间距JumpDist,进而求模得到M,Dist对JumpDist求余得到L,为保证循环渲染时色彩的对称性对M为奇数的点进行标记,S减去M得到相对循环距离RelativeDist,然后根据RelativeDist求出在色带条中的颜色带及该色带的比例值,进而取出颜色。
在其它实施方式中,所述高程轴也可以为横轴或者纵轴,相应地,所涉及的待渲染点的高程轴坐标替换为横轴坐标值或者纵轴坐标值,用于求距离的最小高程值替换为最小横轴值或者最小纵轴值。
其四,所述渲染方式还可以包括RGB颜色渲染的方式,可以直接读取点云中待渲染点自身的颜色信息。
在上述实施例的基础上,为了使得点云按照端轴和循环色带渲染时颜色保持平稳,统计端轴值时,需要剔除一些值特别大或者特别小的待渲染点。把点云端轴值统计分布范围映射到标准显示区间,设定一个对应该标准显示区间的第二阈值。一般地,将所述标准显示区间设为[0,999]区间。对分布在所述标准显示区间的点数进行累加统计,以所述第二阈值过滤所述标准显示区间内映射的所有点,过滤不再所述第二阈值内的点。统计出点云在高程轴方向上的最大高程值和最小高程值、在横轴方向的最大横轴值和最小横轴值以及在纵轴方向的最大纵轴值和最小纵轴值。在进行后续的渲染过程。
根据不同渲染器所应用的渲染方式获得点云中待渲染点的颜色后,渲染所述点云,即为完成了基于AutoCAD的激光点云的渲染操作。
上述本发明实施例提供的激光点云渲染方法,将AutoCAD中的所有格式的点云数据转化成标准的PCG格式点云数据,并生成包含所述AutoCAD的视窗范围和预设的点云显示阈值的标准点云文件,可以解决AutoCAD仅支持PCG格式点云数据的技术问题。根据所述标准点云文件中的PCG格式点云数据、所述视窗范围和点云显示阈值统计所述三维视窗加载显示的点云中的待渲染点,将所获取的点云中的待渲染点添加到所述AutoCAD点云对象中,渲染所述点云。能将不同格式的点云数据转化为标准的PCG格式的点云数据,生成包含所述标准格式的点云数据,并进行点云渲染,达到了多种数据格式兼容的技术问题,提高了生产作业效率。
请参见图4,为本发明第二实施例提供的激光点云渲染方法的步骤流程图。
步骤S410,创建自定义点云实体,用于管理点云数据。
所述AutoCAD在进行激光点云数据渲染之前,先将所述AutoCAD中的所有格式的点云数据生成标准点云文件,再进行后续的渲染过程。其中,所述标准点云文件包括:所述AutoCAD所支持的PCG格式点云数据、所述AutoCAD的视窗范围和预设的点云显示阈值。所述AutoCAD的视窗范围为软件的三维视窗的可视范围,一般为所述三维窗口的三个端轴的可使用范围数据。
步骤S420,加载点云数据时,创建AutoCAD点云实体绑定自定义点云实体。
将所述AutoCAD定义的点云对象与自定义格式的点云对象绑定,把所述自定义格式的点云对象与所述自定义格式的点云数据关联,获取所述AutoCAD的三维视窗的视窗范围。
步骤S430,构建渐变颜色条。
所述渐变颜色条,即为将不同颜色值通过RGB方式表达后组合成的色带数组。例如:红橙黄绿青蓝紫,在计算机中就可以以一个RGB数组形式存在,也就是构建了一个渐变颜色条。
所述点云不同区域的待渲染点对应不同的颜色,构建对应所述点云的渐变颜色条。
步骤S440,遍历点云数据统计平稳端轴的最大端轴值和最小端轴值。
AutoCAD的三维视窗点云浏览流畅程度和点云显示的数据量成正比,因此需要根据视图范围实时统计需要显示的点云数据进行绘制。获取点云数据的层级数目,遍历每个层级,统计在当前的三维视窗内每个图层的点云点数,选择点云点数与点云显示阈值最接近的点云层级进行数据加载显示。
获取所述三维视窗内点云在端轴上的最大端轴值和最小端轴值,其中,所述端轴为所述三维视窗所在三维坐标系中的三个端轴中的任一个。根据所述待渲染点在该端轴的坐标和该端轴的最小端轴值的差值,获取所述待渲染点在色带条的色带和颜色比例值,获取所述待渲染点的颜色。
获取所述三维视窗内点云在端轴上的最大端轴值和最小端轴值的步骤包括:
所述三维视窗所应用的三维坐标系中,包括横轴、纵轴和高程轴,所述横轴可以对应所述三维坐标系的X轴,所述纵轴可以对应所述三维坐标系的Y轴,所述高程轴可以对应所述三维坐标系的Z轴。
步骤S450,点云视图范围裁切。
步骤S460,遍历裁切点云数据,统计平稳强度的最大强度值和最小强度值。
把所述点云在所述端轴上的值映射到第一标准区间,其中,所述第一标准区间对应第一阈值,将映射到所述第一标准区间内的点数累加统计得出第一临时数据,通过所述第一阈值过滤所述第一临时数据,获取对应所述点云在所述端轴上的最大端轴值和最小端轴值。
步骤S470,点云渲染器配置。
所述点云渲染器对应不同的点云渲染方式,所述点云渲染方式包括端轴式、循环色带式和RGB式。所述的端轴式渲染方式可以包括:根据横轴渲染,根据纵轴渲染和根据高程轴渲染这三种方式。根据所选择的渲染方式配置相应的点云渲染器,选择对应的渲染方式记性点云渲染。
步骤S481,按高程轴渲染,根据待渲染点高程轴坐标和平稳高程轴的最小高程值的差值从色带条中获取所述待渲染点的颜色,执行步骤S490。
如果根据高程值渲染,获取所述三维视窗内点云在高程轴上的最大高程轴值和最小高程值。在进行任一待渲染点的颜色时,根据该待渲染点在该高程轴的坐标和该高程轴的最小值的差值,获取所述待渲染点在色带条的色带和颜色比例值。在所述色带条的色带,以及颜色比例值,确定该待渲染点的颜色。
在其它实施方式中,也可以按照端轴中的横轴或者纵轴渲染。
如果根据横轴渲染,获取所述三维视窗内点云在横轴上的最大横轴值和最小横轴值。在进行任一待渲染点的颜色获取时,根据该待渲染点在该横轴的坐标和该横轴最小值的差值,获取所述待渲染点在色带条的色带和颜色比例值。在所述色带条中的色带,以及颜色比例值,确定该待渲染点的颜色。
如果根据纵轴渲染,获取所述三维视窗内点云在纵轴上的最大纵轴值和最小纵轴值。在进行任一待渲染点的颜色获取时,根据该待渲染点在该纵轴的坐标和该纵轴最小值的差值,获取所述待渲染点在色带条的色带和颜色比例值。在所述色带条中的色带,以及颜色比例值,确定该待渲染点的颜色。
步骤S482,按循环色带渲染,根据待渲染点高程轴坐标和平稳高程轴的最小高程值及循环步长,从色带条中获取所述待渲染点的颜色,执行步骤S490。
根据预设的循环步长、待渲染点的高程值和最大高程值的差值,获取所述待渲染点在所述色带条中的颜色待及所述颜色带的比例值,根据所述颜色带和所述颜色带的比例值,获取所述待渲染点的颜色。
预设循环步长,根据循环步长及待渲染点的高程轴值和点云的最大高程值的差值,求出在色带条中的色带,以及该色带的比例值,进而取出点颜色。
首先设置指定方向的循环渲染间距JumpDist,遍历点云中的待渲染点。将待渲染点的高程轴坐标减去最小高程值得到距离,将距离对循环渲染间距JumpDist,进而求模得到M,Dist对JumpDist求余得到L,为保证循环渲染时色彩的对称性对M为奇数的点进行标记,S减去M得到相对循环距离RelativeDist,然后根据RelativeDist求出在色带条中的颜色带及该色带的比例值,进而取出颜色。
在其它实施方式中,所述高程轴也可以为横轴或者纵轴,相应地,所涉及的待渲染点的高程轴坐标替换为横轴坐标值或者纵轴坐标值,用于求距离的最小高程值替换为最小横轴值或者最小纵轴值。
步骤S483,根据RGB渲染,直接读取点云的颜色信息,步骤S493。
按照RGB颜色渲染的方式,可以直接读取点云中待渲染点自身的颜色信息。
步骤S484,按强度渲染,根据强度值和平稳强度最小值的差值计算所述透明度,根据所述透明度获取待渲染点的颜色,步骤S493。
所述渲染方式包括强度式,即为根据所述三维视窗内点云强度分布范围值进行渲染。上述步骤所述的,获取所述三维视窗内的点云端点值,根据所述端点值获取所述点云中的待渲染点的颜色的步骤,具体包括:
获取所述三维视窗内点云强度分布范围的最大强度值和最小强度值,获取所述点云中的待渲染点,将所述待渲染点的强度值限定到标准强度范围内,根据所述待渲染点的强度值获取所述待渲染点的颜色。
获取所述三维视窗内点云强度分布范围的最大强度值和最小强度值的实施过程可以包括:
把所述点云的强度范围分布值映射到第二标准区间,其中,所述第二标准区间对应第二阈值,通过所述第二阈值过滤所述待渲染点得到第二临时数据,根据所述第二临时数据获取所述最大强度值和最小强度值。
将所述点云中的点加载到所述AutoCAD的三维视窗后,获取所述三维视窗内点云强度分布范围。根据所述三维视窗内点云强度分布范围,确定其最大强度值和最小强度值。为了使点云按照强度渲染时对比度保持平稳,统计强度时需要剔除一些强度特别大和强度特别小的待渲染点。为达到特殊点剔除目的,根据所述三维视窗内的最大强度值和最小强度值,设置标准强度范围。获取所述点云中的待渲染点,将所述点云强度统计分布范围映射到标准强度范围内。一般地,将所述标准强度范围设置为[0,255]。将所述点云强度分布范围值映射到标准强度范围内,并按照强度值从小到大的顺序进行排序。设定一个对应点云中待渲染点的数量的第一阈值,通过所述第一阈值过滤所述点云中的所有点。在所述第一阈值范围内的点云进行抽稀统计,统计其新的点云强度范围的最大强度值和最小强度值。
步骤S490,判断是否加入透明度。
若是则执行步骤S491,先把获取的RGB转为HSV,把透明度信息加入到HSV中,再把HSV转为RGB。
若否则执行步骤S492,直接采用获取到的RGB值。
所述透明度,即为透光的程度。为进一步优化AutoCAD中点云数据的三维视窗的渲染显示过程,增加实时透明度渲染技术。在根据端轴或者循环色带渲染的步骤之后,判断是否加入透明度。此时需要设计到另一种颜色模型,即为HSV,即为一种六角椎体模型,是根据颜色的直观特性创建的一种颜色空间。在所述模型中,颜色的参数分别包括色调(Hue)、饱和度(Saturation)和明度(Value)。
若要加入透明度,则把上述步骤获取的RGB转换为HSV,把透明度信息加入到HSV中,再把HSV转为RGB。若不需要加入透明度,则直接采用获取到的RGB值。
上述的RGB和HSV都是颜色的具体参数表现方式,通过色彩转换方程可以实现两者的互相转换。如果要加入透明度信息,首先先通过色彩转换方程将RGB值转换为HSV值,其次将对应透明度的值除以透明度的存在范围进行百分化,然后将上述HSV中的明度参数使用该百分化值进行加权,再将加权过后的HSV转换为RGB值即实现了色彩透明度的添加过程。
步骤S493,在所述AutoCAD三维视窗中绘制点云。
依据上述步骤获取所述点云中的待渲染点之后,将所获取的点云中的待渲染点添加到所述AutoCAD点云对象中,根据不同的渲染方式渲染所述待渲染点,进而实现所述点云的渲染。
在上述实施例的基础上,点云范围的计算方法可以采用点云视图裁切算法进行确定,也可以利用所述AutoCAD相关视图裁切接口进行点云视图裁切计算。
在上述实施例的基础上,实时计算当前视图需要加载的点云数据量的过程,根据不同计算机配置环境和所述AutoCAD软件版本点云对象渲染器性能,点云显示的阈值可能在150万-1000万之间。
上述本发明实施例提供的激光点云渲染方法,以自定义点云数据的方式,按空间分层分快分包进行文件管理。根据不同场景进行点云视图裁切,实时判断需要加载的空间范围内的点云包数据进行动态加载,数据量较小,加载的效率优于PCG点云数据直接通过内存进行抽稀加载的效率。按空间分数据包加载自定义点云数据,最大程度减少加载数据的冗余量,并能够实现最大程度的点云细节加载呈现。优化AutoCAD点云数据三维视窗渲染显示过程,增加了实时强度透明度渲染技术。利用多种渲染方式,扩大了点云渲染的显示效果。
请参见图5,为本发明第三实施例提供的激光点云渲染装置的结构功能模块图。所述装置包括:标准点云文件生成模块510、待渲染点统计模块520和渲染模块530。
标准点云文件生成模块510,用于根据所述AutoCAD中的所有格式的点云数据生成标准点云文件,其中,所述标准点云格式包括:PCG格式点云数据、所述AutoCAD的视窗范围和预设的点云显示阈值;
待渲染点统计模块520,用于根据所述PCG格式点云数据、所述视窗范围和点云显示阈值统计所述三维视窗加载显示的点云中的待渲染点;
渲染模块530,用于将所获取的点云中的待渲染点添加到所述AutoCAD点云对象中,渲染所述点云。
上述本发明实施例提供的激光点云渲染装置,将AutoCAD中的所有格式的点云数据转化成标准的PCG格式点云数据,并生成包含所述AutoCAD的视窗范围和预设的点云显示阈值的标准点云文件,可以解决AutoCAD仅支持PCG格式点云数据的技术问题。根据所述标准点云文件中的PCG格式点云数据、所述视窗范围和点云显示阈值统计所述三维视窗加载显示的点云中的待渲染点,将所获取的点云中的待渲染点添加到所述AutoCAD点云对象中,渲染所述点云。能将不同格式的点云数据转化为标准的PCG格式的点云数据,生成包含所述标准格式的点云数据,并进行点云渲染,达到了多种数据格式兼容的技术问题,提高了生产作业效率。本实施例提供的激光点云渲染装置的具体实施过程可参照上述方法实施例,在此不再一一赘述。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种激光点云渲染方法,其特征在于,用于对基于AutoCAD的三维激光点云渲染,所述方法包括:
根据所述AutoCAD中的所有格式的点云数据生成标准点云文件,其中,所述标准点云格式包括:PCG格式点云数据、所述AutoCAD的视窗范围和预设的点云显示阈值;
根据所述PCG格式点云数据、所述视窗范围和点云显示阈值统计所述AutoCAD的三维视窗加载显示的点云中的待渲染点;
将所获取的点云中的待渲染点添加到所述AutoCAD点云对象中,渲染所述点云。
2.根据权利要求1所述的方法,其特征在于,所述AutoCAD中的所有格式的点云数据包括自定义格式点云数据和所述AutoCAD定义的标准格式点云数据,根据所述AutoCAD中的所有格式的点云数据生成标准点云文件的步骤包括:
将所述AutoCAD定义的点云对象与自定义格式的点云对象绑定;
把所述自定义格式的点云对象与所述自定义格式的点云数据关联;
获取所述AutoCAD的三维视窗的视窗范围。
3.根据权利要求1所述的方法,其特征在于,根据所述PCG格式点云数据、所述视窗范围和点云显示阈值统计所述三维视窗加载显示的点云中的待渲染点的步骤包括:
根据所述视窗范围和所述点云显示阈值计算所述三维视窗加载的点云层级;
根据所述PCG格式点云数据、所述点云层级和所述点云显示阈值统计所述三维视窗加载显示的点云中的待渲染点。
4.根据权利要求1所述的方法,其特征在于,将所获取的点云中的待渲染点添加到所述AutoCAD点云对象中,渲染所述点云的步骤包括:
遍历所获取的所有点云中的待渲染点,获取所述三维视窗内的点云端点值;
根据所述端点值获取所述点云中的待渲染点的颜色;
根据所述点云中的待渲染点的颜色渲染所述点云。
5.根据权利要求4所述的方法,其特征在于,渲染方式包括强度式,获取所述三维视窗内的点云端点值,根据所述端点值获取所述点云中的待渲染点的颜色的步骤包括:
获取所述三维视窗内点云强度分布范围的最大强度值和最小强度值;
获取所述点云中的待渲染点,将所述待渲染点的强度值限定到标准强度范围内,根据所述待渲染点的强度值获取所述待渲染点的颜色,其中,所述标准强度范围的最大值为所述最大强度值,所述标准强度范围的最小值为所述最小强度值。
6.根据权利要求5所述的方法,其特征在于,获取所述三维视窗内点云强度分布范围的最大强度值和最小强度值的步骤包括:
把所述点云的强度范围分布值映射到第二标准区间,其中,所述第二标准区间对应第二阈值;
通过所述第二阈值过滤所述待渲染点得到第二临时数据;
根据所述第二临时数据获取所述最大强度值和最小强度值。
7.根据权利要求4所述的方法,其特征在于,所述渲染方式包括端轴式,获取所述三维视窗内的点云端点值,根据所述端点值获取所述点云中的待渲染点的颜色的步骤包括:
获取所述三维视窗内点云在端轴上的最大端轴值和最小端轴值,其中,所述端轴为所述三维视窗所在三维坐标系中的三个端轴中的任一个;
根据所述待渲染点在该端轴的坐标和该端轴的最小端轴值的差值,获取所述待渲染点在色带条的色带和颜色比例值,获取所述待渲染点的颜色。
8.根据权利要求7所述的方法,其特征在于,获取所述三维视窗内点云在端轴上的最大端轴值和最小端轴值的步骤包括:
把所述点云在所述端轴上的值映射到第一标准区间,其中,所述第一标准区间对应第一阈值;
将映射到所述第一标准区间内的点数累加统计得出第一临时数据;
通过所述第一阈值过滤所述第一临时数据,获取对应所述点云在所述端轴上的最大端轴值和最小端轴值。
9.根据权利要求7所述的方法,其特征在于,所述端轴值为高程值,渲染方式包括循环色带式,获取所述三维视窗内的点云端点值,根据所述端点值获取所述点云中的待渲染点的颜色的步骤包括:
根据预设的循环步长、待渲染点的高程值和最大高程值的差值,获取所述待渲染点在所述色带条中的颜色带及所述颜色带的比例值;
根据所述颜色带和所述颜色带的比例值,获取所述待渲染点的颜色。
10.一种激光点云渲染装置,其特征在于,用于对基于AutoCAD的三维激光点云渲染,所述装置包括:
根据所述AutoCAD中的所有格式的点云数据生成标准点云文件,其中,所述标准点云格式包括:PCG格式点云数据、所述AutoCAD的视窗范围和预设的点云显示阈值;
根据所述PCG格式点云数据、所述视窗范围和点云显示阈值统计所述AutoCAD的三维视窗加载显示的点云中的待渲染点;
将所获取的点云中的待渲染点添加到所述AutoCAD点云对象中,渲染所述点云。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710070077.XA CN106846498B (zh) | 2017-02-08 | 2017-02-08 | 激光点云渲染方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710070077.XA CN106846498B (zh) | 2017-02-08 | 2017-02-08 | 激光点云渲染方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106846498A true CN106846498A (zh) | 2017-06-13 |
CN106846498B CN106846498B (zh) | 2020-06-05 |
Family
ID=59122334
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710070077.XA Active CN106846498B (zh) | 2017-02-08 | 2017-02-08 | 激光点云渲染方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106846498B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107449378A (zh) * | 2017-07-21 | 2017-12-08 | 辽宁科技大学 | 一种基于三维图像的岩石表面粗糙程度测试及计算方法 |
CN111127610A (zh) * | 2019-12-23 | 2020-05-08 | 武汉真蓝三维科技有限公司 | 一种点云数据三维可视化渲染方法与计算方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101719166A (zh) * | 2010-01-20 | 2010-06-02 | 中国人民解放军国防科学技术大学 | 一种多维时序信息可视化方法 |
CN103955966A (zh) * | 2014-05-12 | 2014-07-30 | 武汉海达数云技术有限公司 | 基于ArcGIS的三维激光点云渲染方法 |
CN104391906A (zh) * | 2014-11-18 | 2015-03-04 | 武汉海达数云技术有限公司 | 车载海量点云数据动态浏览方法 |
CN105488836A (zh) * | 2015-11-16 | 2016-04-13 | 武汉海达数云技术有限公司 | 一种基于高程分布特征的循环色带点云渲染方法 |
US20160299661A1 (en) * | 2015-04-07 | 2016-10-13 | Geopogo, Inc. | Dynamically customized three dimensional geospatial visualization |
-
2017
- 2017-02-08 CN CN201710070077.XA patent/CN106846498B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101719166A (zh) * | 2010-01-20 | 2010-06-02 | 中国人民解放军国防科学技术大学 | 一种多维时序信息可视化方法 |
CN103955966A (zh) * | 2014-05-12 | 2014-07-30 | 武汉海达数云技术有限公司 | 基于ArcGIS的三维激光点云渲染方法 |
CN104391906A (zh) * | 2014-11-18 | 2015-03-04 | 武汉海达数云技术有限公司 | 车载海量点云数据动态浏览方法 |
US20160299661A1 (en) * | 2015-04-07 | 2016-10-13 | Geopogo, Inc. | Dynamically customized three dimensional geospatial visualization |
CN105488836A (zh) * | 2015-11-16 | 2016-04-13 | 武汉海达数云技术有限公司 | 一种基于高程分布特征的循环色带点云渲染方法 |
Non-Patent Citations (3)
Title |
---|
JOSH BECK: "Unlimited Detail Technology: Render Unlimited Amounts of Point Cloud Data in Real-Time", 《2014 FIFTH INTERNATIONAL CONFERENCE ON COMPUTING FOR GEOSPATIAL RESEARCH AND APPLICATION》 * |
赵威成: "三维激光扫描系统点云数据向AutoCAD数据格式的转换", 《测绘工程》 * |
龚书林: "三维激光点云处理软件的若干关键技术", 《测绘通报》 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107449378A (zh) * | 2017-07-21 | 2017-12-08 | 辽宁科技大学 | 一种基于三维图像的岩石表面粗糙程度测试及计算方法 |
CN107449378B (zh) * | 2017-07-21 | 2019-08-20 | 辽宁科技大学 | 一种基于三维图像的岩石表面粗糙程度测试及计算方法 |
CN111127610A (zh) * | 2019-12-23 | 2020-05-08 | 武汉真蓝三维科技有限公司 | 一种点云数据三维可视化渲染方法与计算方法 |
CN111127610B (zh) * | 2019-12-23 | 2023-07-21 | 武汉真蓝三维科技有限公司 | 一种点云数据三维可视化渲染方法与计算方法 |
Also Published As
Publication number | Publication date |
---|---|
CN106846498B (zh) | 2020-06-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108573279A (zh) | 图像标注方法及终端设备 | |
US8570322B2 (en) | Method, system, and computer program product for efficient ray tracing of micropolygon geometry | |
JP5144293B2 (ja) | 情報処理装置、情報処理方法、およびプログラム | |
CN107223269A (zh) | 三维场景定位方法和装置 | |
CN106296779A (zh) | 一种三维模型渲染显示方法及系统 | |
CN107886564A (zh) | 用于实现三维场景显示的方法 | |
CN106204735B (zh) | Unity3D地形数据在Direct3D 11环境中的使用方法 | |
CN106803899A (zh) | 合并图像的方法和装置 | |
GB2567039A (en) | Diffusion coloring using weighted color points | |
CN107958484A (zh) | 纹理坐标计算方法及装置 | |
CN109887093A (zh) | 一种游戏细节层次处理方法及系统 | |
CN110570491B (zh) | 热力图生成方法及装置 | |
CN112489213A (zh) | 三维地形模型生成方法、装置、电子设备及存储介质 | |
CN113538706B (zh) | 基于数字沙盘的房景展示方法、装置、设备及存储介质 | |
CN109584366A (zh) | 一种地形渲染方法、装置、设备及可读存储介质 | |
CN106846498A (zh) | 激光点云渲染方法和装置 | |
CN101789030A (zh) | Vge符号模型及基于该模型的地图符号共享系统和方法 | |
Zhang et al. | Virtual reality design and realization of interactive garden landscape | |
US9454554B1 (en) | View dependent query of multi-resolution clustered 3D dataset | |
CN111009033A (zh) | 一种基于OpenGL的病灶区域的可视化方法和系统 | |
CN108846901A (zh) | 模型导入方法及装置 | |
CN115294277B (zh) | 一种物体的三维重建方法、装置、电子设备及存储介质 | |
CN110517343A (zh) | 一种基于OpenGL着色语言的程序式纹理的优化方法和系统 | |
CN114820968A (zh) | 三维可视化方法和装置、机器人、电子设备和存储介质 | |
CN112802175B (zh) | 大规模场景遮挡剔除方法、装置、设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |