一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

点云截面的数据排序方法、装置、电子设备及存储介质与流程

2022-12-09 19:52:50 来源:中国专利 TAG:


1.本发明涉及数据处理技术领域,尤其涉及一种点云截面的数据排序方法、装置、电子设备及存储介质。


背景技术:

2.近年来,通过三维激光扫描技术获取点云,并进行三维重建已成为逆向工程领域的研究热点。而在三维重建的曲面重构过程中,最重要的就是对通过切段投影获取的点云截面数据进行排序,同时得到点云截面数据的外轮廓,因此截面数据的排序是逆向工程数据预处理中必不可少的一步。
3.点云截面数据分为单轮廓与多轮廓两种,而现有的对截面数据排序的研究大多针对的是单轮廓,包括双向最近点收缩方法、顺序连接方法、360度扫描方法、最小凸包方法等。对多轮廓的研究较少,主要分为两类,一类是先通过相应方法将多轮廓分割为一个个单轮廓,在分别进行排序;另一类是直接对多轮廓数据排序。而多轮廓数据的分割通常需要进行交互操作,因此效率往往比较低,而直接排序方法往往适用性不高,无法解决一些复杂点云截面多轮廓数据的排序问题。
4.现有的直接排序方法主要是通过距离与极坐标进行分离与排序,因此只适用于一些轮廓边界比较光滑、几何中心在轮廓内部的简单多轮廓截面数据。现有的点云截面多轮廓数据排序方法,无法解决逆向工程领域点云截面数据预处理中的复杂多轮廓数据排序问题,如轮廓边界呈现锯齿状,几何中心在轮廓外部的情况的数据排序。


技术实现要素:

5.本发明提供一种点云截面的数据排序方法、装置、电子设备及存储介质,用以解决现有技术中,无法解决逆向工程领域的点云截面复杂多轮廓数据排序问题,实现点云截面复杂多轮廓数据的排序。
6.第一方面,本发明提供一种点云截面的数据排序方法,包括:
7.对点云截面上单轮廓区域内的数据点进行粗排序,得到单轮廓凸包;
8.在所述单轮廓凸包上,选取满足目标长度的凸包边,作为目标凸包边,并基于所述目标凸包边,从剩余点中选取新凸包点;其中,所述剩余点为,所述点云截面除去所述单轮廓凸包后剩余的数据点;
9.将所述新凸包点插入所述目标凸包边的两端凸包点之间;
10.基于轮廓距离阈值,从待定数据点中选取数据点组成新点集,并将所述新点集输出,以用于排序;其中,所述待定数据点为,所述剩余点中除去所述新凸包点后剩余的数据点。
11.在一个实施例中,所述从剩余点中,选取新凸包点,包括:
12.基于所述目标凸包边,得到剩余点筛选区域,并从所述剩余点筛选区域中,选取与所述目标凸包边距离最近的剩余点作为所述新凸包点。
13.在一个实施例中,所述基于所述目标凸包边,得到剩余点筛选区域,包括:
14.基于所述目标凸包边,得到圆形剩余点筛选区域;其中,所述目标凸包边,为所述圆形剩余点筛选区域的直径。
15.在一个实施例中,所述对点云截面上单轮廓区域内的数据点进行粗排序,得到单轮廓凸包,包括:
16.基于所述点云截面的数据点对应的目标扫描区域和目标扫描方向,对所述点云截面的数据点进行粗排序,得到所述单轮廓凸包。
17.在一个实施例中,所述基于所述点云截面的数据点对应的目标扫描区域和目标扫描方向,对所述点云截面的数据点进行粗排序,得到所述单轮廓凸包,包括:
18.在所述点云截面中选取初始数据点;
19.将当前数据点至前一数据点的方向,作为扫描起始方向,并将轮廓距离阈值作为扫描半径,基于所述目标扫描方向进行扫描,将所述扫描半径对应的目标扫描区域中,最先扫描到的数据点作为后一数据点。
20.在一个实施例中,所述在所述点云截面中选取初始数据点,包括:
21.在目标坐标系下,从所述点云截面中选取横坐标或者纵坐标最小的数据点,作为所述初始数据点。
22.在一个实施例中,所述基于所述点云截面的数据点对应的目标扫描区域和目标扫描方向,对所述点云截面的数据点进行粗排序,得到所述单轮廓凸包,还包括:
23.在所述当前数据点与所述初始数据点相同的情况下,结束对所述点云截面的数据点的粗排序。
24.第二方面,本发明提供一种点云截面的数据排序装置,包括:
25.粗排序模块,用于对点云截面上单轮廓区域内的数据点进行粗排序,得到单轮廓凸包;
26.新凸包点查找模块在所述单轮廓凸包上,选取满足目标长度的凸包边,作为目标凸包边,并基于所述目标凸包边,从剩余点中选取新凸包点;其中,所述剩余点为,所述点云截面除去所述单轮廓凸包后剩余的数据点;
27.精排序模块,用于将所述新凸包点插入所述目标凸包边的两端凸包点之间;
28.轮廓分割模块,用于基于轮廓距离阈值,从待定数据点中选取数据点组成新点集,并将所述新点集输出,以用于排序;其中,所述待定数据点为,所述剩余点中除去所述新凸包点后剩余的数据点。
29.第三方面,本发明提供一种电子设备,包括处理器和存储有计算机程序的存储器,所述处理器执行所述计算机程序时实现上述任一种所述点云截面的数据排序方法的步骤。
30.第四方面,本发明提供一种处理器可读存储介质,所述处理器可读存储介质存储有计算机程序,所述计算机程序用于使所述处理器执行上述任一种所述点云截面的数据排序方法的步骤。
31.本发明提供的点云截面的数据排序方法、装置、电子设备及存储介质,先对点云截面上单轮廓区域内的数据点进行粗排序,得到单轮廓凸包,再将新凸包点插入目标凸包边的两端凸包点之间,进行精排序,最后在点云截面的数据点满足多轮廓条件的情况下,可以基于轮廓距离阈值,从待定数据点中选取数据点组成新点集,实现对点云截面上其他轮廓
数据点的分割,并对新点集中的数据点,也即是其他轮廓的数据点进行排序,完成多轮廓数据点的排序。
32.相比现有技术方案,本发明提供的方法中,先对一个单轮廓凸包范围内的数据进行排序,再基于轮廓距离阈值,对其他轮廓的数据点进行分割后再排序,实现了直接对多轮廓数据进行排序,免去交互操作,具有更高的效率;同时,相比其它直接排序方法,本发明提供的方法可以处理一些复杂的点云截面多轮廓数据排序问题,如轮廓边界呈现锯齿状,几何中心在轮廓外部等情况,具有更高的适用性。
附图说明
33.为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
34.图1是本发明提供的点云截面的数据排序方法的流程示意图之一;
35.图2是本发明提供的凸包构建结果图;
36.图3是本发明提供的凸包迭代结果图;
37.图4是本发明提供的凸包轮廓分离后的最终结果图;
38.图5是本发明提供的点云截面的数据排序方法的流程示意图之二;
39.图6是本发明提供的点云截面的数据排序装置的原理框图;
40.图7是本发明提供的电子设备的结构示意图。
具体实施方式
41.为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
42.下面结合图1-图7描述本发明的点云截面的数据排序方法、装置、电子设备及存储介质。
43.本发明提供一种点云截面的数据排序方法,如图1所示,点云截面的数据排序方法包括:
44.步骤110、对点云截面上单轮廓区域内的数据点进行粗排序,得到单轮廓凸包。
45.单轮廓区域,也即是一个凸包轮廓区内。凸包(convex hull)是一个计算几何(图形学)中的概念,包含集合x的所有凸集的交集。
46.步骤120、在单轮廓凸包上,选取满足目标长度的凸包边,作为目标凸包边,并基于所述目标凸包边,从剩余点中选取新凸包点;其中,剩余点为,点云截面除去单轮廓凸包后剩余的数据点。
47.需要说明的是,凸包边也即是单轮廓凸包的边,单轮廓凸包由多个依次连接的凸包边构成。
48.可以理解的是,在单轮廓凸包上,目标凸包边的数量可以是多个,可以依次选取多
个新凸包点
49.步骤130、将新凸包点插入目标凸包边的两端凸包点之间。
50.在通过上述得到新凸包点之后,将新凸包点的顺序插入目标凸包边的两端凸包点之间,完成一次精确排序,再继续循环执行上述步骤,直至完成所有新凸包点的插入排序。
51.步骤140、基于轮廓距离阈值,从待定数据点中选取数据点组成新点集,并将新点集输出,以用于排序;其中,待定数据点为,剩余点中除去新凸包点后剩余的数据点。
52.需要说明的是,步骤140在点云截面的数据点满足多轮廓条件的情况下执行。
53.待定数据点中选取的数据点也即是轮廓点,轮廓点是,与单轮廓凸包之间的距离大于轮廓距离阈值的待定数据点。
54.可以理解的是,轮廓距离阈值可以自行设定,表征两个不同轮廓数据点之间的间距,轮廓也即是凸包轮廓。
55.点云截面上存在多个轮廓时,可以将多轮廓的数据点分开处理,将其中一个单轮廓所包含的数据点进行粗排序。
56.并将新点集输出,以用于排序,基于新点集的数据点,继续执行步骤110、步骤120、步骤130和步骤140,对新点集的数据点进行排序。
57.点云截面的数据点满足多轮廓条件的情况,包括:
58.在一个单轮廓凸包对应的数据点排序完成之后,计算点云截面上每个待定数据点与该单轮廓凸包上每个凸包点的距离,对于单个待定点而言,从中选取待定点与单轮廓凸包上每个凸包点之间的最大距离值,若该最大距离值大于轮廓分离阈值,则确定该待定点属于另一个轮廓,称为轮廓点;若存在多个轮廓点,则可以确定点云截面的数据点满足多轮廓条件。
59.单轮廓凸包对应的数据点排序完成,可以是,在单轮廓凸包的每条凸包边均不满足目标长度,或者剩余点筛选区域内没有剩余点,则确定该单轮廓凸包对应的数据点排序完成。
60.在一些实施例中,从剩余点中,选取新凸包点,包括:
61.基于目标凸包边,得到剩余点筛选区域,并从剩余点筛选区域中,选取与目标凸包边距离最近的剩余点作为新凸包点。
62.在一些实施例中,基于目标凸包边,得到剩余点筛选区域,包括:
63.基于目标凸包边,得到圆形剩余点筛选区域;其中,目标凸包边,为圆形剩余点筛选区域的直径。
64.在一些实施例中,对点云截面上单轮廓区域内的数据点进行粗排序,得到单轮廓凸包,包括:
65.基于点云截面的数据点对应的目标扫描区域和目标扫描方向,对点云截面的数据点进行粗排序,得到单轮廓凸包。
66.通过该步骤得到的单轮廓凸包,与实际结果相比仍存在较大误差,因此只能称为粗排序。
67.可以理解的是,点云截面上有多个数据点,不同数据点的目标扫描区域和目标扫描方向均不相同。
68.在确定一个数据点之后,基于该数据点的目标扫描区域,按照目标扫描方向,例如
顺时针方向或者逆时针方向进行扫描,将最先扫描到的数据点最为后面一个数据点,重复执行该动作,得到多个数据点的排序,将排序后的多个数据点依次连接后,就得到了单轮廓凸包。
69.在一些实施例中,基于点云截面的数据点对应的目标扫描区域和目标扫描方向,对点云截面的数据点进行粗排序,得到单轮廓凸包,包括:
70.在点云截面中选取初始数据点;
71.将当前数据点至前一数据点的方向,作为扫描起始方向,并将轮廓距离阈值作为扫描半径,基于目标扫描方向进行扫描,将扫描半径对应的目标扫描区域中,最先扫描到的数据点作为后一数据点。因此,基于轮廓距离阈值,可以确定单轮廓区域。
72.需要说明的是,将轮廓距离阈值作为扫描半径进行扫描,可以确保扫描到的数据点,与当前数据点属于同一个单轮廓。
73.可以理解的是,扫描半径对应的目标扫描区域,也即是以当前数据点为原点,当前数据点与前一数据点之间的距离为半径的圆形区域。
74.在一些实施例中,在点云截面中选取初始数据点,包括:
75.在目标坐标系下,从点云截面中选取横坐标或者纵坐标最小的数据点,作为初始数据点。
76.在一些实施例中,基于点云截面的数据点对应的目标扫描区域和目标扫描方向,对点云截面的数据点进行粗排序,得到单轮廓凸包,还包括:
77.在当前数据点与初始数据点相同的情况下,结束对点云截面的数据点的粗排序。
78.可以理解的是,实现单轮廓凸包的数据点排序,首先要根据截面上的数据情况,确定一个能够分离轮廓的距离阈值d,根据距离阈值d完成凸包的构建,凸包构建的示意图如图2所示,具体步骤如下:
79.1.选择初始数据点。在点云截面上的所有数据点中,横坐标或者纵坐标最小数据点必定是凸包上的点,记为p0。
80.2.以p0为中心点,横坐标正半轴方向为初始方向,距离阈值d为半径,逆时针方向进行扫描,扫描到的第一个数据点即为下一个数据点(该数据点也是凸包点),记为当前点pi。
81.3.将当前数据点pi的上一数据点记为p
i-1
,以pi为中心点,pip
i-1
为初始方向,距离阈值d为半径,逆时针方向进行扫描,扫描到的第一个数据点即为下一个数据点(该数据点也是凸包点),记为新的当前数据点pi。
82.4.判断当前数据点pi的坐标是否与初始数据点p0相同。若是,则该单轮廓的凸包构建完成;否则转第3步。
83.进一步地,单轮廓凸包,与实际结果相比仍存在较大误差,因此只能称作粗排序,精确排序依靠凸包迭代实现,迭代的凸包如图3所示,首先需要输入迭代阈值d,迭代阈值d是凸包是否继续迭代的依据,具体步骤如下:
84.在单轮廓凸包上选择一条凸包边,计算该边的长度是否大于迭代阈值,若大于,则确定该凸包边满足目标长度,则搜索以该边中点为中心点,边长为直径的圆形区域(即:剩余点筛选区域)内的剩余点,从该剩余点中选出与该边距离最近的点为新凸包点,并插入构成该边的两端点中间,最后计算单轮廓凸包的下一条凸包边,直到所有凸包边计算完毕即
为第一次迭代。
85.对凸包边继续迭代,直到凸包上的每条凸包边的边长都小于迭代阈值,即所有凸包边都不满足目标长度,或该凸包边对应的圆形区域内没有剩余点为止,最终得到该单轮廓的精确排序结果。
86.将剩余点中的轮廓点存入一个新点集,并对该新点集进行新一轮凸包构建、凸包迭代与轮廓分离,直到剩余点中不存在新的轮廓点为止,至此,完成截面多轮廓数据排序,结果如图4所示。
87.本发明提供的方法,假设在平面上有n个点,最小凸包就是包含平面上所有点的面积最小的凸多边形。本发明提供的方法,可以分为凸包构建、凸包迭代、轮廓分离三部分,其中凸包构建与凸包迭代分别实现点云截面数据中单个轮廓的粗排序与精确排序,轮廓分离负责判断单个轮廓排序完成后的剩余点中是否存在另一个轮廓,若存在,则开始循环,方法整体流程如图5所示。
88.综上所述,本发明提供的点云截面的数据排序方法,先对点云截面上单轮廓区域内的数据点进行粗排序,得到单轮廓凸包,再将新凸包点插入目标凸包边的两端凸包点之间,进行精排序,最后在点云截面的数据点满足多轮廓条件的情况下,可以基于轮廓距离阈值,从待定数据点中选取数据点组成新点集,实现对点云截面上其他轮廓数据点的分割,并对新点集中的数据点,也即是其他轮廓的数据点进行排序,完成多轮廓数据点的排序。
89.相比现有技术方案,本发明提供的方法中,先对一个单轮廓凸包范围内的数据进行排序,再基于轮廓距离阈值,对其他轮廓的数据点进行分割后再排序,实现了直接对多轮廓数据进行排序,免去交互操作,具有更高的效率;同时,相比其它直接排序方法,本发明提供的方法可以处理一些复杂的点云截面多轮廓数据排序问题,如轮廓边界呈现锯齿状,几何中心在轮廓外部等情况,具有更高的适用性。
90.下面对本发明提供的点云截面的数据排序装置进行描述,下文描述的点云截面的数据排序装置与上文描述的点云截面的数据排序方法可相互对应参照。
91.如图6所示,点云截面的数据排序装置600包括:粗排序模块610、新凸包点查找模块620、精排序模块630和轮廓分割模块640。
92.粗排序模块610用于对点云截面上单轮廓区域内的数据点进行粗排序,得到单轮廓凸包。
93.新凸包点查找模块620在单轮廓凸包上,选取满足目标长度的凸包边,作为目标凸包边,并基于所述目标凸包边,从剩余点中选取新凸包点;其中,剩余点为点云截面除去单轮廓凸包后剩余的数据点。
94.精排序模块630用于将新凸包点插入目标凸包边的两端凸包点之间。
95.轮廓分割模块640用于基于轮廓距离阈值,从待定数据点中选取数据点组成新点集,并将新点集输出,以用于排序;其中,待定数据点为,剩余点中除去新凸包点后剩余的数据点。
96.需要说明的是,轮廓分割模块640在对新点集中的数据点进行排序时,将新点集输入至粗排序模块610,由粗排序模块610、新凸包点查找模块620、精排序模块630和轮廓分割模块640,继续执行对新点集中的数据点的排序。
97.在一些实施例中,新凸包点查找模块620进一步用于基于目标凸包边,得到剩余点
筛选区域,并从剩余点筛选区域中,选取与目标凸包边距离最近的剩余点作为新凸包点。
98.在一些实施例中,新凸包点查找模块620进一步用于基于目标凸包边,得到圆形剩余点筛选区域;其中,目标凸包边,为圆形剩余点筛选区域的直径。
99.在一些实施例中,粗排序模块610进一步用于基于点云截面的数据点对应的目标扫描区域和目标扫描方向,对点云截面的数据点进行粗排序,得到单轮廓凸包。
100.在一些实施例中,粗排序模块610包括:初始点确定单元和扫描单元。
101.初始点确定单元用于在点云截面中选取初始数据点。
102.扫描单元用于将当前数据点至前一数据点的方向,作为扫描起始方向,并将轮廓距离阈值作为扫描半径,基于目标扫描方向进行扫描,将扫描半径对应的目标扫描区域中,最先扫描到的数据点作为后一数据点。
103.在一些实施例中,初始点确定单元进一步用于在目标坐标系下,从点云截面中选取横坐标或者纵坐标最小的数据点,作为初始数据点。
104.在一些实施例中,粗排序模块610还包括:排序结束单元。
105.排序结束单元用于在当前数据点与初始数据点相同的情况下,结束对点云截面的数据点的粗排序。
106.下面对本发明提供的电子设备及存储介质进行描述,下文描述的电子设备及存储介质与上文描述的点云截面的数据排序方法可相互对应参照。
107.图7示例了一种电子设备的实体结构示意图,如图7所示,该电子设备可以包括:处理器(processor)710、通信接口(communication interface)720、存储器(memory)730和通信总线740,其中,处理器710,通信接口720,存储器730通过通信总线740完成相互间的通信。处理器710可以调用存储器730中的计算机程序,以执行点云截面的数据排序方法的步骤,例如包括:
108.步骤110、对点云截面上单轮廓区域内的数据点进行粗排序,得到单轮廓凸包;
109.步骤120、在单轮廓凸包上,选取满足目标长度的凸包边,作为目标凸包边,并基于所述目标凸包边,从剩余点中选取新凸包点;其中,剩余点为,点云截面除去单轮廓凸包后剩余的数据点;
110.步骤130、将新凸包点插入目标凸包边的两端凸包点之间;
111.步骤140、基于轮廓距离阈值,从待定数据点中选取数据点组成新点集,并将新点集输出,以用于排序;其中,待定数据点为,剩余点中除去新凸包点后剩余的数据点。
112.此外,上述的存储器30中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。
113.另一方面,本发明还提供一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序
指令被计算机执行时,计算机能够执行上述各方法所提供的点云截面的数据排序方法,该方法包括:
114.步骤110、对点云截面上单轮廓区域内的数据点进行粗排序,得到单轮廓凸包;
115.步骤120、在单轮廓凸包上,选取满足目标长度的凸包边,作为目标凸包边,并基于所述目标凸包边,从剩余点中选取新凸包点;其中,剩余点为,点云截面除去单轮廓凸包后剩余的数据点;
116.步骤130、将新凸包点插入目标凸包边的两端凸包点之间;
117.步骤140、基于轮廓距离阈值,从待定数据点中选取数据点组成新点集,并将新点集输出,以用于排序;其中,待定数据点为,剩余点中除去新凸包点后剩余的数据点。
118.另一方面,本技术实施例还提供一种处理器可读存储介质,所述处理器可读存储介质存储有计算机程序,所述计算机程序用于使所述处理器执行上述各实施例提供的方法,例如包括:
119.步骤110、对点云截面上单轮廓区域内的数据点进行粗排序,得到单轮廓凸包;
120.步骤120、在单轮廓凸包上,选取满足目标长度的凸包边,作为目标凸包边,并基于所述目标凸包边,从剩余点中选取新凸包点;其中,剩余点为,点云截面除去单轮廓凸包后剩余的数据点;
121.步骤130、将新凸包点插入目标凸包边的两端凸包点之间;
122.步骤140、基于轮廓距离阈值,从待定数据点中选取数据点组成新点集,并将新点集输出,以用于排序;其中,待定数据点为,剩余点中除去新凸包点后剩余的数据点。
123.所述处理器可读存储介质可以是处理器能够存取的任何可用介质或数据存储设备,包括但不限于磁性存储器(例如软盘、硬盘、磁带、磁光盘(mo)等)、光学存储器(例如cd、dvd、bd、hvd等)、以及半导体存储器(例如rom、eprom、eeprom、非易失性存储器(nandflash)、固态硬盘(ssd))等。
124.以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
125.通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
126.最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献