一种PCG配置数据的校验方法及装置与流程

摘要: 本公开涉及程序化内容生成(proceduralcontentgeneration,pcg),具体涉及一种pcg配置数据的校验方法及装置。背景技术:1、目前,pc...
一种PCG配置数据的校验方法及装置与流程

本公开涉及程序化内容生成(procedural content generation,pcg),具体涉及一种pcg配置数据的校验方法及装置。

背景技术:

1、目前,pcg技术在建筑可视化、游戏开发、影视制作等领域得到了广泛应用。pcg技术通过算法自动生成三维建筑模型,能够显著提高内容生产效率。近年来,随着人工智能(artificial intelligence,ai)和计算机视觉技术的发展,基于建筑图片自动生成结构化pcg配置数据的方法逐步兴起,ai模型生成的pcg配置数据经解析后即可构建出可交互的三维建筑模型。

2、然而,ai模型生成的pcg配置数据可能存在逻辑错误或虚构组件名称等问题,导致pcg配置数据无法满足三维装配的要求,装配过程容易失败,从而降低工作效率。

3、因此,亟需一种针对pcg配置数据进行校验的方案,以提高pcg配置数据的质量,保障三维装配过程的成功率和效率。

技术实现思路

1、本公开实施例的目的是提供一种pcg配置数据的校验方法及装置,以提高pcg配置数据的质量,保障三维装配过程的成功率和效率。

2、第一方面,本公开实施例提供了一种pcg配置数据的校验方法,该方法包括:获取待校验的建筑pcg配置数据,建筑pcg配置数据包括组件定义信息和楼层列表信息;对建筑pcg配置数据执行多维度校验;其中,多维度校验包括组件唯一性校验、楼层合规性校验和列数一致性校验,组件唯一性校验用于检测组件定义信息中的组件标识符是否重复,楼层合规性校验用于检测楼层列表信息中的楼层参数是否满足预设条件,预设条件包括楼层索引为非负整数、楼层高度为正浮点数且处于预设高度范围内、屋顶类型为预设类型中的至少一种,列数一致性校验用于检测楼层列表信息中各楼层的列数是否一致;在多维度校验通过的情况下,对建筑pcg配置数据执行修正处理,得到修正信息;其中,修正处理包括未知组件替换和/或斜顶参数修正;输出多维度校验的校验结果和修正信息。

3、一个可选的实施方式中,对建筑pcg配置数据执行多维度校验,包括:基于预设执行顺序或动态执行顺序对建筑pcg配置数据执行多维度校验;其中,动态执行顺序为根据各校验维度的历史失败率从高到低排列的顺序;基于预设执行顺序对建筑pcg配置数据执行多维度校验,包括:对建筑pcg配置数据执行组件唯一性校验;在组件唯一性校验通过的情况下,对建筑pcg配置数据执行楼层合规性校验;在楼层合规性校验通过的情况下,对建筑pcg配置数据执行列数一致性校验。

4、一个可选的实施方式中,校验结果包括错误信息;该方法还包括:在组件唯一性校验未通过的情况下,获取组件定义信息中重复的组件标识符及其位置索引,作为错误信息;和/或,在楼层合规性校验未通过的情况下,获取楼层列表信息中不满足预设条件的楼层参数及对应的楼层位置,作为错误信息;和/或,在列数一致性校验未通过的情况下,获取楼层列表信息中列数不一致的楼层位置及对应的列数,作为错误信息。

5、一个可选的实施方式中,修正信息包括未知组件替换信息;对建筑pcg配置数据执行未知组件替换,包括:遍历楼层列表信息中每个楼层的列组件信息,并获取列组件信息中的组件引用信息;在组件定义信息中不存在组件引用信息的情况下,将组件引用信息替换为默认组件信息,并记录组件替换信息。

6、一个可选的实施方式中,修正信息包括斜顶参数修正信息;对建筑pcg配置数据执行斜顶参数修正,包括:检测楼层列表信息中每个楼层的屋顶类型;在屋顶类型为斜顶的情况下,获取斜顶参数,斜顶参数包括倾角和/或悬挑长度;在倾角超出预设角度范围的情况下,将倾角修正为预设角度范围的边界值;和/或,在悬挑长度超出预设长度阈值的情况下,将悬挑长度修正为预设长度阈值,并记录斜顶参数修正信息。

7、一个可选的实施方式中,该方法还包括:响应于用户对建筑pcg配置数据的编辑操作,确定编辑操作对应的编辑类型;确定编辑类型对应的处理,处理包括校验处理和/或修正处理,校验处理包括多维度校验中的至少一种校验;

8、对建筑pcg配置数据执行处理,并输出处理结果。

9、一个可选的实施方式中,该方法还包括:响应于用户的自定义校验注册操作,获取用户的自定义校验逻辑;基于自定义校验逻辑对建筑pcg配置数据执行校验。

10、一个可选的实施方式中,该方法还包括:在多维度校验未通过的情况下,将建筑pcg配置数据和校验结果输入人工智能模型,得到修正建议;输出修正建议,并响应于用户的确认操作,将修正建议应用于建筑pcg配置数据。

11、第二方面,本公开实施例提供了一种pcg配置数据的校验装置,该装置包括:

12、获取模块,用于获取待校验的建筑pcg配置数据,建筑pcg配置数据包括组件定义信息和楼层列表信息;

13、校验模块,用于对建筑pcg配置数据执行多维度校验;其中,多维度校验包括组件唯一性校验、楼层合规性校验和列数一致性校验,组件唯一性校验用于检测组件定义信息中的组件标识符是否重复,楼层合规性校验用于检测楼层列表信息中的楼层参数是否满足预设条件,预设条件包括楼层索引为非负整数、楼层高度为正浮点数且处于预设高度范围内、屋顶类型为预设类型中的至少一种,列数一致性校验用于检测楼层列表信息中各楼层的列数是否一致;

14、修正模块,用于在多维度校验通过的情况下,对建筑pcg配置数据执行修正处理,得到修正信息;其中,修正处理包括未知组件替换和/或斜顶参数修正;

15、输出模块,用于输出多维度校验的校验结果和修正信息。

16、一个可选的实施方式中,校验模块用于:基于预设执行顺序或动态执行顺序对建筑pcg配置数据执行多维度校验;其中,动态执行顺序为根据各校验维度的历史失败率从高到低排列的顺序;基于预设执行顺序对建筑pcg配置数据执行多维度校验,包括:对建筑pcg配置数据执行组件唯一性校验;在组件唯一性校验通过的情况下,对建筑pcg配置数据执行楼层合规性校验;在楼层合规性校验通过的情况下,对建筑pcg配置数据执行列数一致性校验。

17、一个可选的实施方式中,该装置还包括错误信息获取模块,用于在组件唯一性校验未通过的情况下,获取组件定义信息中重复的组件标识符及其位置索引,作为错误信息;和/或,在楼层合规性校验未通过的情况下,获取楼层列表信息中不满足预设条件的楼层参数及对应的楼层位置,作为错误信息;和/或,在列数一致性校验未通过的情况下,获取楼层列表信息中列数不一致的楼层位置及对应的列数,作为错误信息。

18、一个可选的实施方式中,修正信息包括未知组件替换信息;修正模块用于:遍历楼层列表信息中每个楼层的列组件信息,并获取列组件信息中的组件引用信息;在组件定义信息中不存在组件引用信息的情况下,将组件引用信息替换为默认组件信息,并记录组件替换信息。

19、一个可选的实施方式中,修正信息包括斜顶参数修正信息;修正模块用于:检测楼层列表信息中每个楼层的屋顶类型;在屋顶类型为斜顶的情况下,获取斜顶参数,斜顶参数包括倾角和/或悬挑长度;在倾角超出预设角度范围的情况下,将倾角修正为预设角度范围的边界值;和/或,在悬挑长度超出预设长度阈值的情况下,将悬挑长度修正为预设长度阈值,并记录斜顶参数修正信息。

20、一个可选的实施方式中,该装置还包括处理模块,用于响应于用户对建筑pcg配置数据的编辑操作,确定编辑操作对应的编辑类型;确定编辑类型对应的处理,处理包括校验处理和/或修正处理,校验处理包括多维度校验中的至少一种校验;对建筑pcg配置数据执行处理,并输出处理结果。

21、一个可选的实施方式中,该装置还包括自定义模块,用于响应于用户的自定义校验注册操作,获取用户的自定义校验逻辑;基于自定义校验逻辑对建筑pcg配置数据执行校验。

22、一个可选的实施方式中,该装置还包括ai模块,用于在多维度校验未通过的情况下,将建筑pcg配置数据和校验结果输入人工智能模型,得到修正建议;输出修正建议,并响应于用户的确认操作,将修正建议应用于建筑pcg配置数据。

23、第三方面,本公开实施例提供了一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如上述第一方面的pcg配置数据的校验方法的步骤。

24、第四方面,本公开实施例提供了一种计算设备,包括:

25、存储器,用于存储计算机程序产品;

26、处理器,用于执行存储器中存储的计算机程序产品,且该计算机程序产品被执行时,实现如上述第一方面的pcg配置数据的校验方法。

27、在本公开实施例中,首先获取待校验的建筑pcg配置数据,包括组件定义信息和楼层列表信息;之后对建筑pcg配置数据执行多维度校验,其中,多维度校验包括组件唯一性校验、楼层合规性校验和列数一致性校验,组件唯一性校验用于检测组件定义信息中的组件标识符是否重复,楼层合规性校验用于检测楼层列表信息中的楼层参数是否满足预设条件,预设条件包括楼层索引为非负整数、楼层高度为正浮点数且处于预设高度范围内、屋顶类型为预设类型中的至少一种,列数一致性校验用于检测楼层列表信息中各楼层的列数是否一致;在多维度校验通过的情况下,可以对建筑pcg配置数据执行修正处理,得到修正信息,其中,修正处理包括未知组件替换和/或斜顶参数修正;最后,可以输出多维度校验的校验结果和修正信息。

28、这样,通过对建筑pcg配置数据执行组件唯一性校验、楼层合规性校验和列数一致性校验等多维度校验,能够及时发现并记录配置数据中的逻辑错误如组件定义重复、楼层参数不合规、各楼层列数不一致等,避免将有问题的配置数据传递至下游三维装配引擎导致装配失败或几何错误。此外,在校验通过后执行修正处理,能够对配置数据中的未知组件引用进行自动替换、对斜顶参数进行自动修正,避免因组件缺失或参数越界导致的装配流程中断,无需人工介入排查和修复。最终输出的校验结果和修正信息,能够使用户或下游系统了解配置数据的质量状况,从而保障三维装配过程的成功率和效率,减少因配置错误导致的返工成本。