Definiensprofessional5ruleset定义20professional 205ruleset_第1页
Definiensprofessional5ruleset定义20professional 205ruleset_第2页
Definiensprofessional5ruleset定义20professional 205ruleset_第3页
Definiensprofessional5ruleset定义20professional 205ruleset_第4页
Definiensprofessional5ruleset定义20professional 205ruleset_第5页
已阅读5页,还剩46页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、Definiens professional 5.0规则设置训练增强的策略,特征值和算法天目创新科技有限公司张春再目录规则设置训练1 用专题层和定制的相关特征分类建筑物11导入数据浏览专题图层12用专题层进行分割13用专题层进行分类14用波普信息,高程信息分类建筑物15用自订制的相关特征优化建筑物的分类结果2 封闭道路网的间隙 21找到所有道路终端的片断 22准备循环和分类道路终端片断对 23封闭间隙3 通过比较两个分类结果进行植被的变化检测 31 不同的变化检测规则的概览 32 创建影像对象层 33 2002年的植被分类 34 从2002到2004年的植被变化分类 35 计算并且输出变化的统

2、计数量1、用专题层和定制的相关特征分类建筑物本单元进行了以下几个训练:导入浏览专题层用专题层进行分割用专题层进行分类除了影像层以外,我们可能会用到专题层进行分割.较清楚的定义对象对于专题层分类的隶属关系,就不会创建影像对象隶属于不同的专题层类。上图是一个区域的影像层,专题层和分类结果的浏览图为了确保这点,当一个专题图层用于分割时,分开的不同的专题类的边框限制了进一步的分割.基于这个原因,专题图层不能赋予不同的权重,而仅仅只能是使用或者不使用.我们可以分割一个影像用一个或多个专题图层.结果是影像的对象正确的描述了不同图层间的交集。 用专题层分割影像,用它们的内容进行分类能够集成外部的信息附加与影

3、像层.在这个单元,专题层的应用说明了如何去利用它们进行影像的分割和分类。11在这节训练课中,我们将一同学习以下内容:在一个工程中装载专题图层为专题层定义别名打开第二个浏览窗口浏览专题层111 创建一个有专题层的工程在这个例子中,我们将一同来研究使用和不使用专题层进行分割的差别.用到的数据集是扫描的高分辨率的航空相片.这个offenberg样例数据可以在offenberg文件夹里找到。1 用offenberg文件夹里的bmp创建一个工程.l offblue.bmpl offelev.bmpl offgreen.bmpl offred.bmp2 给图层名别名并且重新排序如下:l bluel gre

4、enl redl elevation现在不要创建工程,因为还没有导入一个专题图层3 点击insert按钮,选择专题图层列表4 选择cadastre_offnbg.asc作为专题图层.5 选择cadastre_offenbg.txt作为相应的属性表文件,现在,专题图层已经加入工程文件,如下图:6 为专题图层选择一个适当的别名,然后点击ok确定.112 打开第二个浏览窗口并且相互连接打开的两个窗口现在专题图层是和建立的工程文件相关联的.我们可以在另外的窗口里浏览专题层1 从window菜单,选择new window. 打开第二个窗口2 从windows菜单选择link all,连接两个窗口现在,这

5、两个窗口显示相同的区域的数据,如果我们放大或缩小一个窗口,另外一个也跟随放大或缩小。113浏览专题图层1设置第二个窗口为活动窗口,打开浏览设置窗口,进行下边的任何一个操作打开浏览设置窗口:在view setting toolbar 工具栏,点击l 在view菜单里,点击view l setting,弹出以下对话框:3 点击layer弹出一个菜单,在这里设置我们想要显示的信息.4 选择cadastrc.cadastre_offnbf.asc 图层显示在第二个窗口里.这一节,我们学习了以下的内容:在一个工程中装载专题图层为专题层定义别名打开第二个浏览窗口浏览专题层12 用专题图层进行分割在本节,我

6、们将学习以下内容:à 用专题图层进行分割à 比较用和不用专题图层进行分割的区别在本节中用专题图层进行分割,因此附加与影像层,专题图层影响着影像对象的形状.在利用专题图层进行分割之后,它所能提供的信息在后边的训练中,用与分类的过程中。1、 添加一个父规则,并且命名为offenberg2、 插入一个子规则,并且命名为segmentation.3、 选种segmentation规则,插入一个子规则.4、 算法选择multiresolution segmentation 121 算法参数的设置接着,我们进行的分割,不用高程图层,而只用专题图层进行分割.因此高程层的权重设为0而专题图

7、层是被激活,赋予权重1.1、 命名层级别为level12、 影像层中选择高程层,设置权重为0,在进行分割时,高程层将不被使用.3、 对于专题图层,设置yes,现在专题图层是被用于分割的,如果想不使用专题图层,设置为no4、 设置尺度参数为405、 对于形状因子,设置为0.46、 紧滞度参数设置为0.5见下图:7、 运行该规则.现在所有的对象是在使用了专题图层进行分割的.比较这些影像对象的信息.所有的对象是严格限制在专题图层的边界内。122 比较使用和未使用专题图层进行分割的结果打开另外一个没有使用专题图层进行分割的工程文件offenberg_without_thematic_layer.dpr

8、.该工程文件没有使用专题图层进行分割,因此影像对象的边界不受专题图层的边界限制.本节中,我们学习了以下内容:à 用专题图层进行分割à 比较用和不用专题图层进行分割的区别13 用专题图层进行分类在本节中,我们将学习以下内容:à 用专题图层进行分类除了用专题图层进行分割以外,我们可以参照专题图层包含的信息进行分类.本节中仅仅那些对象具备value 20 被分为类cadastre 20.在后边的训练中,将对cadastre 区域进行更深层次的分类,因此影像对象的范围需要仔细设定.在特征列表里, object features栏目的下边有thematic attribut

9、es.à The thematic object Id: 专题图层对象的辨别号.à The number of overlapping thematic objects:仅仅当影像对象和专题层对象有重叠的时候才有效,否则是无效的。à The thematic objects attribute 特征显示了这个专题图层的内容.见下图:131 分析的策略1、添加一个新的父规则,并且命名为classification2、插入一个子规则,并且命名为classify cadastre 20.3、插入一个子规则,并且用thematic attribute value20 进行

10、分类.132 解决方案14 使用波谱信息和高程信息进行建筑物的分类.在本节中,我们将学习以下内容:à 用波谱特征分类建筑物.à 用平均高程特征分类人行道信息.à 用相关性特征进行错分对象的分类.在offenberg示例中,利用光谱信息,我们可以分类出建筑物和未知的区域.为了区别出它们,我们可以用高程信息和纹理信息,同时考虑相关特征去分类出忽略的部分,纠正错分的类。141 分析策略à 找到一个可以描述建筑物和未知区域的波谱特征à 在cadastre20范围内,用这个波谱特征分类所有的未知的区域.à 找到可以区分出建筑物和未知区域的高程临

11、界值à 从未知的区域内分离出建筑物142 解决方案1、 添加一个新的父规则classify buildings in cadastre 20.2、 为classify buildings in cadastre 20插入一个子规则,采用spectral feature 3、 添加第二个规则,利用平均高程从所有的建筑物对象中分类出sealed areas cadastre 20类143 可供选择的另外的一种解决方案规则集的设置在本节中,我们将学习以下内容:à 用波谱特征分类建筑物.à 用平均高程特征分类交通信息.à 用相关性特征进行错分对象的分类.15 用

12、定制的相关特征提炼建筑物分类的结果在本节中,我们将学习以下内容:à 检验通过定制特征工具定制的相关性特征.à 创建一个描述高程差异的相关特征.à 用创建的相关特征剔除错分的建筑物对象.à 用创建的特征分类遗漏的建筑物对象.在offenberg 工程中,存在一些屋顶的部分被遗漏,一些屋顶被错分.定制的相关特征用于分类,描述那些在相同的高度的对象是建筑屋.自定制的特征可以满足不同的需求.集成了软件提供的各种算法和相关的特征,去创建自定制的特征。à 算法特征是由现有的特征组成并且是不变的,是由不同的算法操作组成.算法特征可以由很多的特征组成,但是仅仅

13、作用于一个单一的对象.à 相关特征是用来比较对象的某一个特征与相关的对象之间的距离,相关的对象是指相邻的对象,父对象,子对象或者全部的影像对象层.相关特征是一个单个的特征,这个特征描述了一组相关对象的关系。151 创建一个定制的相关特征通过定制工具,定制相关的特征.确定一个对象的高程信息相对于周围确定的类之间的关系.编辑定制特征的对话框1、 可通过两种方式打开对话框à tools>manage customize features>addà 在feature view 的object features>customized里双击create ne

14、w relational feature. 弹出编辑对话框如下图: 当创建一个新的特征,在处定义特征的名称.在处定义相关特征的类别.在处选择不同的类别,在处有不同的算法操作供选择.在处定义和相关对象的距离.在处选择将要比较的特征.在处选择需要进行相关性评价的类,如果没有限制在一个具体的类上,可以不选择。不同种类的关系特征和操作.列举如下:à 均值( mean)à 标准差( standard deviation)à 均值差(mean difference)à 绝对的平均差(mean absolute difference)à 比率(ratio)&

15、#224; 总和(sum)à 数量(number)à 和最高值的平均差(mean difference to higher values)à 和最低值的平均差(mean difference to lower values)相关特征的示例:确定一个对象和周围的指定的类之间的最小的距离,不受它们之间绝对距离的限制.注意:对于类相关的特征,相关指的是和组层级的相关,意思是如果一个相关特征是和一个类相关的,它就会自动和该类的层级中所有的子类相关.创建一个描述和临近对象的高程差异的特征2、 特征命名为 meandiff_meanelevation_no_buildings

16、.建议命名定制的的特征,采用一个比较清楚的表达规则,例如:calculation><feature><rel-shortcut><distance>to<class>3、 相关功能:平均差4、 相关功能涉及的对象:相邻对象5、 距离:0象素(对象应当邻近)6、 特征选择:objects feature>layer values>mean>elevation.7、 选择的类:buildings cadsstre20(阴影和建筑物相邻的关系应当被确定的)8、 创建新的特征152 用定制的相关特征剔除错分的建筑物对象1、添加新的

17、父规则,命名为refine classification2、找到新定制相关特征的阈值定义错分的对象,例如-10.负值意味着对象的高程值比周围的相临的确定类的对象低。3、插入一个子规则,区分出building cadastre20 里错分的对象上图根据附加的规则,根据错分的建筑物对象的高程差异,区分出错分的对象.区分后的结果如下图:153 遗漏的建筑物屋顶的分类有些建筑物是被漏分的,这些区域的对象和已经分类的建筑物类有相近的高度信息,利用它们之间较小的高程差异,去区分遗漏的建筑物对象。1、 利用feature view 决定一个区分遗漏对象的临界值.因为遗漏的对象有相似的高度信息.1-15的高程

18、阈值范围,可以适合进行分类.可以用membership function 较好的描述出来。2、 创建一个新的roof part 类.3、 插入一个membership function ,应用整个范围函数,设置好两端的边界值.如下图:4、 添加一个新的规则,采用classifications 算法,从cadastre 20类中区分出满足membership function条件的对象为roof parts。建议的解决方案:分类后的结果如下:在本节中,我们已经习以下内容:à 检验通过定制特征工具定制的相关性特征.à 创建一个描述高程差异的相关特征.à 用创建的相关特

19、征剔除错分的建筑物对象.à 用创建的相关特征分出遗漏的建筑物对象.2、封闭道路网之间的间隙à 找出所有的成对的终端道路片断à 准备整个循环过程,分类单终端的片断à 封闭间隙本单元,已经分类的道路之间的间隙将被封闭,解决此问题的策略是首先从道路类中分类出道路终端,然后建立一系列规则程序连接这些道路终端.在连接道路终端时,需要定义一个循环变量值,反复规则所有的道路终端,直到封闭了道路的间隙。第一步、找出所有的终端片断:为了分类出终端片断,首先需要假设这些对象和别的道路对象之间仅仅有一个相邻的影像对象,因此,类相关特征number of neighboring

20、 objects被使用.第二步、选择成双的,具有明显相邻终端的片断.然后,设置一个程序,该程序从一个终端片断开始选择相邻最近的另外的片断终端.第三步、封闭间隙下一步,设置一个循环规则的规则,该规则不断的找出起点和终端,直到最终连接道路片断之间的空隙.第四步、循环规则在第一个间隙闭合之后,该规则树将找出另外一个具有明显相同终端的片断对,进行连接,直到所有的终端片断全部被连接起来.21 找出所有的成对的道路片断本节,我们一块学习以下内容:à 重新分割道路对象,准备分类à 用类相关特征number of neighbors 去分类断开的道路终端.à 分离那些没有对应片断

21、的道路终端道路的终端是隔离的,是下一步分类的基础.它们分别具有一个相邻的道路终端.为了分类出终端片断,首先需要假设这些对象和别的道路对象之间仅仅有一个相邻的影像对象,因此,类相关特征number of neighboring objects被使用.1、 打开在qb_maricopa文件夹下的工程qb_maricopa_closegaps_start.dpr.在该场景中,影像已经被分类,但道路是有间隙的.除了这些,那些非道路的对象已经用棋盘分割规则进行了分割.这点是必须做的,以便于生成较小的对象,能够起到逐渐连接道路终端的作用.2、 设置规则树,添加一个规则规则close gaps同时插入一个子

22、规则find possible end fragments.2.1.1 重新对道路对象进行分割,准备进行分类因为道路对象已经被合并了,因此它们必须被分割开来.主要是获取能够描述终端片断的对象。3、插入一个子规则4、算法选择multiresolution segmentation.5、等级区域:level16、类筛选对象:road算法参数:7、等级设置:选择use current.(分割存在的对象)8、影像层的权重:选择所有的层,除了全色波段9、尺度参数:4010、文理特征:0.8,紧滞度:0.8该规则规则可以描述如下:以尺度参数40,文理参数0.8,紧滞度0.8对level1层级上的道路对象进

23、行分割。212 用类相关特征number of neighbors 对终端片断进行分类.在道路对象已经被分割,终端片断必须被分类.至此,所有的道路对象至少有两个相邻的对象,但是,终端片断只有一个相邻的对象.见下图:在这里,比较适合的特征是类相关特征number of neighbors.创建特征number of road neighbor objects1、在特征浏览窗口里,双击create new number of2、选择road 作为选择的类,保持距离为0,距离0意味着,仅仅规则和直接相邻对象之间的关系.3、点击ok确认添加一个规则进行分类新的规则,从道路类中分出仅有1个相邻的道路对象

24、的对象,作为终端道路片断.1、 添加一个子规则2、 算法选择:assign class3、 类筛选:roads4、 条件:number of road objects(0) is 1算法参数设置:5、 活动的类:end fragments.终端道路片断的分类结果213 排除没有相对应终端的道路片断本节中,存在的两个相邻的终端的对象被封闭,单个的道路终端被排除.可以通过编辑class-related feature number 特征的距离参数进行描述。1、 创建一个新的相邻特征.2、 选择end fragments作为类3、 改变距离参数为80新创建的特征,将在80个像素半径的范围内搜索邻域对

25、象4、 添加一个新的规则,去分类所有的end fragment 对象,找出在80个像素范围内没有一个相邻的道路终端对象的对象,分类为道路。214 浏览规则树序列本节,我们已经学习以下内容:à 重新分割道路对象,准备分类à 用类相关特征number of neighbors 去分类终端的片断.à 分离那些没有对应片断的道路终端22 准备整个循环,单终端的片断本节,我们将学习以下内容:à 设置循环终止的条件à 定义终端片断的邻域对象本节,我们将定一个规则,该规则用来设置循环规则.并且需要设置一个循环终止的条件.下一步,将辨别出道路终端片断对.然后它

26、们之间的间隙将被封闭。221 设置停止循环的条件1、在相同的等级,添加一个新的规则用来找出可能的终端片断,同时选择execute child processes 作为算法.2、设置循环终止的条件为scene feature>class related>number of classified objects,选择end fragment类.并且定义more than 作为操作算子,值设置为0.3、选中loop while something changes2.2.2 定义终端片断的邻域对在开始分析之前,必须要先挑选出第一个相邻的道路片断对.因此,在场景的最左边的首先被选为起点.因此

27、,算法find domain extrema将被使用。1、 插入一个子规则,并且命名为get neighbored end fragments.2、 插入另外一个子规则.3、 选择算法:find domain extrema.4、 类筛选:end fragment.算法参数5、 极值类型:munimum.6、 特征:x maxx (object features>shape>position)7、 accept equal extrema: no (仅仅从一个开始)8、 活动的类:start(创建新类)这些规则可以解释为:分类end fragment的对象,从x的最小值开始。分类下

28、一个相邻的终端片断再使用算法find domain extrema 去找出最接近起始点别的终端片断。1、 添加一个子规则2、 算法选择:find domain extrema3、 分类筛选:end fragment算法参数:4、 极值类型:minimum.5、 特征:distance to start.6、 接受相同的极值:no (仅仅一个末端可用)7、 活动类:end(创建一个新类)这个规则可以描述如下:分类end fragment 的对象,距离start最小的距离,作为end类8、 运行规则 get neighbored end fragments.现在,start类和end类被分类出来.

29、结果如下图:本节,我们已经学习以下内容:à 设置循环终止的条件à 定义终端片断的邻域对象23 封闭间隙在本节,我们将学习以下内容:à 准备循环终止条件,这时道路缝隙被封闭à 分类start类的邻域对象à 分类最接近temp_1的对象为end.à 检查是否已经有一个和end对象公用的边界à 为下一个终端对做准备在本节,一个规则集被创建,用来生成一条从一个终端片断到另一个终端片断的路径.该规则集,当起点和终点相遇的时候,将停止运算.231 准备循环第一步设置循环终止的条件.如果没有start 对象存在,规则循环将终止.1、 在相

30、同的等级,添加一个新的规则,用来获取相邻的end fragments.2、 插入一个子规则,选择缺省的execute child processes 作为算法.3、 设置停止规则的条件:scene feature>class related>number of classified objects,选择start类,定义more than 作为算子,值为0.4、 选中loop while something changes该规则集可以描述如下:只要start对象存在,运行所有的子规则.232 找出start的邻域对象.在跟随的规则过程中,start类对象中邻近的植被和非植被对象将被

31、分类,并且最接近终端的对象被选作新的起点(start point)1、 再插入一个子规则.2、 算法选择:assign class3、 类筛选:植被和非植被4、 条件:relative border to start is more than 05、 活动类:_temp1(创建新类),算法参数:这个规则集可以描述如下:分类所有的植被和非植被对象中与start 相邻的作为_temp1._Temp1是一个临时类,结果存在该类中,以后将重新分为别的类.在这个规则规则集中,它是一个非常强大的工具.6、 运行该规则集.所有start的邻域对象现在被分类为_temp1.Start 对象必须被重新分类为一个

32、新类_temp21、 添加一个规则,它分类已有的start对象为_temp2233 从_temp1对象中找出最接近end的对象.下边,我们将从_temp1的对象中,找出最接近end的对象作为新的start对象。1、 添加一个新的规则2、 算法选择:find domain extrema3、 类筛选:_temp1算法参数:4、 极值类型:minimum5、 特征:distance to end (class related features>relations to neighbors>distance)6、 接受相同的极值:yes.7、 活动的类:start(创建一个新类)该规则集

33、可描述如下:分类最接近end的_temp1对象为start.8、 添加新的规则,分类所有的余下的_temp1对象为unvegetated.234 检查是否有一个和end公用的边界在下边的规则集中,将检查,在新的start对象中,是否和end对象有公用的边界.如果有,它将不再被分类.规则集停止运行。1、 添加一个新的规则,用来分类start对象作为_temp2如果有和end对象有边界.235 准备下一个终端对为新的终端对,准备下一个新的循环,在封闭了间隙以后,end 对象将必须被删除。2、 在相同循环层级上,添加一个新的规则,定义end对象已经被分类为road对象。236 浏览结果和整个规则集在

34、本节,我们已学习以下内容:à 准备循环终止,当间隙被封闭以后à 分类start类的邻域对象à 分类最接近temp_1的对象为end.à 检查是否已经有一个和end对象公用的边界à 为下一个终端对做准备3、 通过比较两个分类,进行植被的变化检测本单元,我们将学习以下内容à 浏览不同的变化检测策略à 创建影像对象层à 分类2002和2004年的植被à 2002到2004年的植被变化分类à 计算并且输出变化的数量在该模块中,介绍了利用QuickBird数据进行变化检测可能用到的策略.导入两个不同的时相

35、的数据作为数据集.第一步,分类2004年的植被.第二步,分类2002年的植被.第三步,通过比较两个分类,进行变化检测。31 浏览不同的变化检测的策略在definiens professional,也会存在别的变化检测分类的策略。比较两个专题图层的变化检测:比较专题图层和影像分类结果之间的变化检测计算定制特征的变化检测32 创建影像对象层变化检测的前两步是分类两个不同时相的植被。三个影像对象层必须被创建.l 一个为变化检测l 一个为2002年的植被分类l 一个为2004年的植被分类然后,两个不同时相的植被被分类.随后,通过检查两个较低的影像对象层级存在的植被信息,在较高的影像对象层级上分类出植被

36、的变化.1、 打开已经建立好的工程文件qb_change_detection_start. 10个影像层被装载进来,并且有下边的别名:l 02_panl 02_bluel 02_greenl 02_redl 02_nirl 04_panl 04_bluel 04_greenl 04_redl 04_nir用两个全色图层进行分割2、 添加一个父规则,并且命名为change detection.3、 插入一个子规则,并且命名为create image object levels.4、 插入一个子规则,对两个全色波段进行multiresolution segmentation 分割拷贝已经生成的影像

37、对象层现在,第一个影像对象层已经创建,下边将拷贝该影像层两次.1、 添加一个新的规则.2、 算法选择:拷贝影像对象层3、 插入层名为level 2002.4、 定义copy the level below.copy the level below,可以为后来的的影像对象合并到上部的层成为可能。5、 添加另外一个规则,再一次拷贝影像对象层below.规则集显示如下:33 分类2002年的植被在本节,我们将学习以下内容:à 定制2002和2004年植被指数特征à 用定制的特征进行植被分类分类2002年的植被,仅仅用到2002年的数据图层.在这个例子中,植被指数是一个定制的特征用

38、于分类的。331 创建2002和2004植被指数的定制特征NDVI 代表 normalized difference vegetation index 并且通过以下公式计算:(nir-red)/(nir+red)在该练习中,不同时相的两个数据集被使用的,因此要建立两个NDVI特征.每个NDVI使用针对的一个时相的数据.1、 创建定制的2002的NDVI特征2、 创建定制的2004的NDVI特征332 用定制的特征进行分类NDVI02用来分类2002影像对象层的植被,NDVI04用来分类2004影像对象层的植被.分类02年的植被1、 在浏览窗口里显示2002层.2、 找到NDVI的临界值,分类2

39、002年影像的植被.3、 创建新类vegetation024、 添加一个新的父规则,并且命名为classification5、 插入一个子规则,用NDVI02分类level2002层上所有的对象,进行植被分类分类植被2004重复前边的步骤,但使用NDVI04特征,作为分类level2004层的特征。在本节,我们已经学习了以下内容:à 创建NDVI2002和NDVI2004特征.à 用定制的特征进行植被的分类.33 从2002 到2004植被变化的分类本例中用到的规则,将在类描述中设置分类的条件.从level1了类中检查有没有植被的子对象存在,并且它们存在哪个结合中.l No change 意味着2002 和2004植被分类是相同的.l Decrease 意味着2002植被存在,但2004植被是不存在的l Increase 意味着2002没有植被,2004有植被.1、 插入三个新的类:Vegetation no change, vegetation decrease and vegetation increase.3.4.1 类相关的特征:existe

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论