CN103854275B - 三维模型中的整体空间划分方法和设备及图像处理*** - Google Patents
三维模型中的整体空间划分方法和设备及图像处理*** Download PDFInfo
- Publication number
- CN103854275B CN103854275B CN201210505469.1A CN201210505469A CN103854275B CN 103854275 B CN103854275 B CN 103854275B CN 201210505469 A CN201210505469 A CN 201210505469A CN 103854275 B CN103854275 B CN 103854275B
- Authority
- CN
- China
- Prior art keywords
- entity
- current
- space
- coplanar
- common plane
- 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.)
- Active
Links
Landscapes
- Processing Or Creating Images (AREA)
- Image Analysis (AREA)
Abstract
公开了一种用于确定三维模型中的整体空间划分的方法和设备及包括该设备的图像处理***。该方法包括:第一实体集合识别步骤,对于三维模型中的每个凹入空间,识别三维模型中与该凹入空间具有公共平面且包含该凹入空间的第一实体集合;第二实体集合识别步骤,对于每个凹入空间,识别三维模型中与凹入空间没有公共平面但包含该凹入空间的第二实体集合;以及整体空间确定步骤,将第一实体集合和第二实体集合中的实体与凹入空间确定为整体空间。根据本发明,可以高效地识别与凹入空间具有公共平面和与凹入空间没有公共平面的实体与该凹入空间之间的关系,从而提高了模型分割的效率和合理性。
Description
技术领域
本发明涉及图像处理领域,更具体地,涉及用于确定三维模型中的整体空间划分的方法和设备以及包括该设备的图像处理***。
背景技术
随着计算机技术、CAD(计算机辅助绘图)技术的发展,三维模型的应用越来越广泛。因此,三维模型技术受到广泛关注,其中模型分割作为一项关键技术,可以应用于进行目标检测、部分匹配等领域。在模型分割过程中,需要正确地判定三维模型中的凹入空间(即,洞)与实体的关系,以防止凹入空间被继续分割,从而保持分割后的模型形状。因此,凹入空间与实体之间的关系的确定对于模型分割是至关重要的。
为此,在现有技术中已提出了一些用于分析凹入空间与实体的关系的技术,例如,通过分析凹入空间与实体落在分割面上的闭合区域之间的相互包含关系进而确定凹入空间与实体的包含关系的技术(例如,参见2009年7月8日向中国知识产权局提交的专利申请CN101944239A号)。然而,现有技术中的这种方法通常计算量较大从而效率较低,并且不能正确地分析与凹入空间没有公共平面的这类实体与该凹入空间之间的包含关系。
发明内容
在下文中给出了关于本发明的简要概述,以便提供关于本发明的某些方面的基本理解。但是,应当理解,这个概述并不是关于本发明的穷举性概述。它并不是意图用来确定本发明的关键性部分或重要部分,也不是意图用来限定本发明的范围。其目的仅仅是以简化的形式给出关于本发明的某些概念,以此作为稍后给出的更详细描述的前序。
因此,鉴于上述情形,本发明的目的是提供一种基于所确定的关于三维模型的平面、轮廓等几何信息来分析凹入空间与实体之间的关系的技术,从而在模型分割时将包含凹入空间的实体与该凹入空间划分为一个整体空间,避免了对凹入空间进行进一步分割而无法在分割后保持正确的模型形状。该技术计算量较低且效率较高,并且还能够正确地判定与凹入空间没有公共平面的实体与凹入空间之间的关系,从而进一步提高了模型分割的合理性和正确性。
根据本发明的实施例的第一方面,提供了一种用于确定三维模型中的整体空间划分的方法,该方法包括:第一实体集合识别步骤,对于三维模型中的每个凹入空间,识别三维模型中与该凹入空间具有公共平面且包含该凹入空间的第一实体集合;第二实体集合识别步骤,对于每个凹入空间,识别三维模型中与凹入空间没有公共平面但包含该凹入空间的第二实体集合;以及整体空间确定步骤,将第一实体集合和第二实体集合中的实体与凹入空间确定为整体空间。
根据本发明的优选实施例,第一实体集合识别步骤进一步包括:第一共面实体检测子步骤,对于每个凹入空间,检测三维模型中与该凹入空间具有公共平面的第一共面实体,并将相应公共平面记录为第一公共平面;凸包计算子步骤,对于每个当前第一公共平面,基于与当前第一公共平面对应的当前第一共面实体和凹入空间之间的连接关系,计算当前第一公共平面中与当前第一共面实体和凹入空间相关联的凸包;凸包比较子步骤,将凸包与凹入空间进行比较,以确定凸包与凹入空间是否具有公共点;以及第一实体添加子步骤,如果在凸包比较子步骤中确定凸包与凹入空间没有公共点,则将当前第一共面实体添加到第一实体集合中。
根据本发明的另一优选实施例,第二实体集合识别步骤进一步包括:第二共面实体检测子步骤,从三维模型中除第一实体集合之外的实体中检测与第一实体集合中的各个实体具有公共平面的第二共面实体,并将相应公共平面记录为第二公共平面;交点判断子步骤,对于所检测的每个当前第二共面实体,判断与当前第二共面实体和凹入空间相关联的当前第二公共平面与凹入空间是否存在交点;交点区域确定子步骤,如果在交点判断子步骤中判断存在交点,则确定交点是否在当前第二公共平面中与当前第二共面实体对应的区域内;以及第二实体添加子步骤,如果确定交点在当前第二公共平面中与当前第二共面实体对应的区域内,则将当前第二共面实体添加到第二实体集合中。
根据本发明的另一优选实施例,第一实体集合识别步骤进一步包括:顶点判断子步骤,如果在凸包比较子步骤中确定凸包与凹入空间没有公共点,则判断凹入空间的至少一个顶点是否在当前第一公共平面中与当前第一共面实体对应的区域内,其中,在第一实体添加子步骤中,如果在顶点判断子步骤中判断至少一个顶点在当前第一公共平面中与当前第一共面实体对应的区域内,则将当前第一共面实体添加到第一实体集合中。
根据本发明的另一优选实施例,三维模型以三角形网格来表示。
根据本发明的实施例的另一方面,还提供了一种用于确定三维模型中的整体空间划分的设备,该设备包括:第一实体集合识别单元,被配置成对于三维模型中的每个凹入空间,识别三维模型中与该凹入空间具有公共平面且包含该凹入空间的第一实体集合;第二实体集合识别单元,被配置成对于每个凹入空间,识别三维模型中与凹入空间没有公共平面但包含该凹入空间的第二实体集合;以及整体空间确定单元,被配置成将第一实体集合和第二实体集合中的实体与凹入空间确定为整体空间。
根据本发明的实施例的另一方面,还提供了一种图像处理***,该图像处理***包括上述用于确定三维模型中的整体空间划分的设备。
根据本发明的实施例的又一方面,还提供了一种存储介质,该存储介质包括机器可读的程序代码,当在信息处理设备上执行程序代码时,该程序代码使得信息处理设备执行根据本发明的用于确定三维模型中的整体空间划分的方法。
此外,根据本发明的实施例的再一方面,还提供了一种程序产品,该程序产品包括机器可执行的指令,当在信息处理设备上执行指令时,该指令使得信息处理设备执行根据本发明的用于确定三维模型中的整体空间划分的方法。
因此,根据本发明的实施例,能够简单高效地确定三维模型中与凹入空间具有公共平面的实体与凹入空间之间的关系,并且还能够确定与凹入空间没有公共平面的实体与该凹入空间之间的关系,从而在模型分割时能够正确合理地将相应实体与凹入空间划分为一个整体空间,进而保证分割后的模型形状的正确性。
在下面的说明书部分中给出本发明实施例的其他方面,其中,详细说明用于充分地公开本发明实施例的优选实施例,而不对其施加限定。
附图说明
本发明可以通过参考下文中结合附图所给出的详细描述而得到更好的理解,其中在所有附图中使用了相同或相似的附图标记来表示相同或者相似的部件。所述附图连同下面的详细说明一起包含在本说明书中并形成说明书的一部分,用来进一步举例说明本发明的优选实施例和解释本发明的原理和优点。其中:
图1示出了根据本发明的实施例的用于确定三维模型中的整体空间划分的方法的示例流程图;
图2示出了图1所示的方法中的第一实体集合识别步骤的具体处理示例的流程图;
图3示出了图1所示的方法中的第二实体集合识别步骤的具体处理示例的流程图;
图4示出了与凹入空间具有公共平面的第一类实体的示意图;
图5示出了与凹入空间没有公共平面的第二类实体的示意图;
图6示出了根据本发明的实施例的用于确定三维模型中的整体空间划分的设备的功能配置示例的框图;
图7示出了图6所示的设备中的第一实体集合识别单元的具体功能配置示例的框图;
图8示出了图6所示的设备中的第二实体集合识别单元的具体功能配置示例的框图;以及
图9示出了作为本发明的实施例中所采用的信息处理设备的个人计算机的示例性结构的框图。
具体实施方式
在下文中将结合附图对本发明的示范性实施例进行描述。为了清楚和简明起见,在说明书中并未描述实际实施方式的所有特征。然而,应该了解,在开发任何这种实际实施例的过程中必须做出很多特定于实施方式的决定,以便实现开发人员的具体目标,例如,符合与***及业务相关的那些限制条件,并且这些限制条件可能会随着实施方式的不同而有所改变。此外,还应该了解,虽然开发工作有可能是非常复杂和费时的,但对得益于本公开内容的本领域技术人员来说,这种开发工作仅仅是例行的任务。
在此,还需要说明的一点是,为了避免因不必要的细节而模糊了本发明,在附图中仅仅示出了与根据本发明的方案密切相关的设备结构和/或处理步骤,而省略了与本发明关系不大的其它细节。
以下将参照图1至图8来描述根据本发明的实施例的用于确定三维模型中的整体空间划分的方法和设备。
应指出,在本发明中所使用的诸如平面、轮廓、实体、凹入空间等几何信息,在这里均被视为利用现有技术获得的已知信息,在此不再对这些信息的获取方法进行描述。此外,优选地,输入的三维模型可以以三角形网格来表示。应理解,即使输入的三维模型不是以该格式表示的,也可以在应用本发明的技术之前利用现有技术将三维模型转换为三角形网格表示。
如图1所示,根据本发明的实施例的用于确定三维模型中的整体空间划分的方法可以包括第一实体集合识别步骤S110、第二实体集合识别步骤S112和整体空间确定步骤S114。
在第一实体集合识别步骤S110中,可以对于三维模型中的每个凹入空间,识别三维模型中与该凹入空间具有公共平面且包含该凹入空间的第一实体集合。关于第一实体集合,可以利用根据现有技术的方法来确定(例如,上述专利申请CN101944239A号中描述的方法),也可以利用根据本发明的方法来确定。
以下将参照图2详细描述根据本发明的第一实体集合识别步骤中的详细处理流程。如图2所示,第一实体集合识别步骤可以进一步包括第一共面实体检测子步骤S210、凸包计算子步骤S212、凸包比较子步骤S214以及第一实体添加子步骤S218。此外,优选地,第一实体集合识别步骤还可以包括顶点判断子步骤S216。以下将分别详细描述各个步骤中的处理。
在第一共面实体检测子步骤S210中,可以对于三维模型中的每个凹入空间,检测三维模型中与该凹入空间具有公共平面的第一共面实体,并将相应公共平面记录为第一公共平面。
参照图4,其示出了与凹入空间具有公共平面的第一类实体的示意图,在图4中,从左至右依次为三维模型、检测到的平面以及实体和凹入空间的轮廓图。对于图4中的凹入空间H1,与其具有公共平面的第一共面实体为实体E1和E2,且凹入空间H1与实体E1和E2的公共平面均为P1;而对于凹入空间H2,与其具有公共平面的第一共面实体为实体E1和E2。以下将以凹入空间H1和实体E2为例来详细描述判定二者之间的关系的详细处理。
接下来,返回参照图2,在凸包计算子步骤S212中,对于每个当前第一公共平面,基于与当前第一公共平面对应的当前第一共面实体和凹入空间之间的连接关系,计算当前第一公共平面中与当前第一共面实体和凹入空间相关联的凸包。
优选地,如果在第一共面实体检测子步骤S210中检测到的第一共面实体的数量为1,则确定该实体包含凹入空间并且直接将其添加到第一实体集合中。另一方面,如果在第一共面实体检测步骤S210中检测到的第一共面实体的数量大于1,则在凸包计算子步骤S212中,从所检测到的多个第一共面实体中识别能够通过三角形网格与凹入空间连接的实体,并且利用该实体和凹入空间落入当前第一公共平面内的点来计算凸包。相反,如果确定第一共面实体不能通过三角形网格与凹入空间连接,则确定该第一共面实体不包含该凹入空间。
在图4所示的示例中,实体E2和凹入空间H1能够通过三角形网格连接,因此利用实体E2和凹入空间H1落入其公共平面P1中的点来计算凸包。
接下来,在凸包比较子步骤S214中,可以将所计算的凸包与凹入空间进行比较,以确定该凸包与凹入空间是否具有公共点。
如果在凸包比较子步骤S214中确定存在公共点,则确定与该凸包对应的第一共面实体不包含凹入空间。另一方面,如果在凸包比较子步骤S214中确定不存在公共点,则处理进行到步骤S218。
在第一实体添加子步骤S218中,如果在步骤S214中确定凸包与凹入空间没有公共点,则说明与该凸包对应的第一共面实体包含凹入空间,并且将该第一共面实体添加到第一实体集合中。
优选地,在凸包比较子步骤S214之后并且在第一实体添加子步骤S218之前,该方法还可以包括顶点判断子步骤S216。
在顶点判断子步骤S216中,如果在凸包比较子步骤S214中确定凸包与凹入空间没有公共点,则判断凹入空间的至少一个顶点是否在当前第一公共平面中与当前第一共面实体对应的区域内。执行该顶点判断操作的原因在于,所计算的与实体和凹入空间相关联的凸包通常大于凹入空间的轮廓,因此通过判断凹入空间位于当前公共平面上的一个顶点是否落入公共平面中的相应区域内,可以避免将实际不包含凹入空间的实体错误地添加到第一实体集合中。
优选地,在上述第一实体添加子步骤S218中,如果在顶点判断子步骤中S216中判断凹入空间的至少一个顶点在当前第一公共平面中与当前第一共面实体对应的区域内,则确定当前第一共面实体包含凹入空间并将其添加到第一实体集合中。
在图4的示例中,如果确定所计算的凸包与凹入空间H1没有公共点,则判断凹入空间H1的一个顶点是否落入实体E2在当前第一公共平面P1的区域内。从图4可以看出,凹入空间H1的顶点在公共平面P1中与实体E2对应的区域内,因而判断实体E2包含凹入空间H1。
以此方式,可以分别得到三维模型中与各个凹入空间相关联的第一实体集合。
根据本发明的识别第一实体集合的方式与现有技术相比大大减少了计算量,从而提高了效率。
接下来,返回参照图1,在第二实体集合识别步骤S112中,可以对于每个凹入空间,识别三维模型中与凹入空间没有公共平面但包含该凹入空间的第二实体集合。
如图5所示,在三维模型的实体中,除了与凹入空间(例如H1’)具有公共平面的实体(例如,实体E1’和E2’)之外,还存在与凹入空间没有公共平面的实体(例如,实体E3),而上述处理并未考虑这类实体。在图5中,从左至右依次为三维模型、检测到的平面以及凹入空间和实体的轮廓图。
以下将参照图3详细描述第二实体集合识别步骤的详细处理。如图3所示,第二实体集合识别步骤可以进一步包括第二共面实体检测子步骤S310、交点判断子步骤S312、交点区域确定子步骤S314和第二实体添加子步骤S316。以下将分别详细描述各个步骤中的处理。
在第二共面实体检测子步骤S310中,可以从三维模型中除以上所识别的第一实体集合之外的实体中检测与第一实体集合中的各个实体具有公共平面的第二共面实体,并将相应公共平面记录为第二公共平面。
具体地,仍以图5为例,假设确定实体E1’和E2’为在第一实体集合识别步骤S110中识别的第一实体集合中的实体,则所检测的第二共面实体为实体E3,这是由于其与实体E1’的公共平面为图5的中间所示的左侧平面,并且与实体E2’的公共平面为图5的中间所示的右侧平面。
接下来,在交点判断子步骤S312中,对于在第二共面实体检测子步骤S310中所检测的每个当前第二共面实体,判断与当前第二共面实体和凹入空间相关联的当前第二公共平面与凹入空间是否存在交点。
优选地,如果判断凹入空间的轮廓线穿过当前第二公共平面,即,凹入空间的轮廓线的端点分别处于当前第二公共平面的两侧,则判断当前第二公共平面与凹入空间存在交点。
然后,在交点区域确定子步骤S314中,如果在交点判断子步骤S312中判断当前第二公共平面与凹入空间存在交点,则确定该交点是否在当前第二公共平面中与当前第二共面实体对应的区域内。
接下来,在第二实体添加子步骤S316中,如果确定交点在当前第二公共平面中与当前第二共面实体对应的区域内,则判断当前第二共面实体包含凹入空间,并且将当前第二共面实体添加到第二实体集合中,否则说明当前第二共面实体不包含该凹入空间。
返回参照图1,在整体空间确定步骤S114中,可以将所识别的第一实体集合和第二实体集合中的实体与相应的凹入空间确定为整体空间。
根据以上处理可以看出,通过第一实体集合识别步骤和第二实体集合识别步骤,找到了三维模型中包含各个凹入空间的所有实体集合,包括与凹入空间具有公共平面的实体以及不具有公共平面的实体,从而解决了现有技术无法确定与凹入空间没有公共平面的实体和凹入空间之间的包含关系的问题,使得模型分割更加合理。
此外,虽然上面结合图1至图5详细描述了根据本发明实施例的用于确定三维模型的整体空间划分的方法的示例,但是本领域的技术人员应当明白,附图所示的流程图仅仅是示例性的,并且可以根据实际应用和具体要求的不同,对上述方法流程进行相应的修改。例如,根据需要,可以对上述方法中的某些步骤的执行顺序进行调整,或者可以省去或者添加某些处理步骤。例如,如图2所示,其中的顶点判断子步骤S216以虚线框示出,这表示该步骤是可选的。此外,应理解,以上示例并不构成对本发明的限制,本领域技术人员可以基于所教导的原理,对上述过程进行适当的修改而应用于其它应用场合。
与根据本发明实施例的用于确定三维模型中的整体空间划分的方法相对应,本发明的实施例还提供了一种用于确定三维模型中的整体空间划分的设备。以下将参照图6至图8详细描述根据本发明的用于确定三维模型中的整体空间划分的设备的功能配置示例。
如图6所示,根据本发明的实施例的用于确定三维模型中的整体空间划分的设备可以包括第一实体集合识别单元610、第二实体集合识别单元612和整体空间确定单元614。
第一实体集合识别单元610可以被配置成对于三维模型中的每个凹入空间,识别三维模型中与该凹入空间具有公共平面且包含该凹入空间的第一实体集合。
具体地,参照图7,将描述第一实体集合识别单元610的详细功能配置示例。如图7所示,第一实体集合识别单元610可以进一步包括第一共面实体检测模块710、凸包计算模块712、凸包比较模块714和第一实体添加模块718。优选地,第一实体集合识别单元610还可以包括顶点判断模块716。以下将详细描述各个模块的功能配置示例。
第一共面实体检测模块710可以被配置成对于每个凹入空间,检测三维模型中与凹入空间具有公共平面的第一共面实体,并将相应公共平面记录为第一公共平面。
凸包计算模块712可以被配置成对于每个当前第一公共平面,基于与当前第一公共平面对应的当前第一共面实体和凹入空间之间的连接关系,计算当前第一公共平面中与当前第一共面实体和凹入空间相关联的凸包。
优选地,如果第一共面实体检测模块710检测到的第一共面实体的数量为1,则确定该第一共面实体包含凹入空间并直接将其添加到第一实体集合中。另一方面,如果第一共面实体检测模块710检测到的第一共面实体的数量大于1,则凸包计算模块712可以从所检测的多个第一共面实体中识别能够通过三角形网格与凹入空间连接的实体,并且利用该实体和凹入空间落入当前第一公共平面内的点来计算凸包。相反,如果确定第一共面实体不能通过三角形网格与凹入空间连接,则确定该第一共面实体不包含该凹入空间。
凸包比较模块714可以被配置成将所计算的凸包与凹入空间进行比较,以确定该凸包与凹入空间是否具有公共点。
第一实体添加模块718可以被配置成如果凸包比较模块714确定凸包与凹入空间没有公共点,则说明与凸包对应的第一共面实体包含该凹入空间,于是将该第一共面实体添加到第一实体集合中。
优选地,该设备还可以包括顶点判断模块716,其可以被配置成如果凸包比较模块714确定凸包与凹入空间没有公共点,则判断凹入空间的至少一个顶点是否在当前第一公共平面中与当前第一共面实体对应的区域内。通过顶点判断模块716执行的操作,进一步提高了对于实体与凹入空间之间的关系确定的准确性。
在该情况下,第一实体添加模块718可以被配置成如果顶点判断模块716判断凹入空间的至少一个顶点落入当前第一共面实体在当前第一公共平面的区域内,则确定该第一共面实体包含凹入空间并将其添加到第一实体集合中。
接下来,返回参照图6,第二实体集合识别单元612可以被配置成识别三维模型中与凹入空间没有公共平面但包含该凹入空间的第二实体集合。通过第二实体集合识别单元612执行的操作,可以防止在进行模型分割时将虽然与凹入空间没有公共平面但包含该凹入空间的实体与凹入空间分割开以致破坏原本的模型形状。
以下将参照图8描述第二实体识别单元612的详细功能配置。如图8所示,第二实体集合识别单元612可以进一步包括第二共面实体检测模块810、交点判断模块812、交点区域确定模块814和第二实体添加模块816。接下来将描述各个模块的功能配置示例。
第二共面实体检测模块810可以被配置成从三维模型中除第一实体集合识别单元610识别的第一实体集合之外的实体中检测与第一实体集中的各个实体具有公共平面的第二共面实体,并将相应公共平面记录为第二公共平面。
交点判断模块812可以被配置成对于第二共面实体检测模块810检测的每个当前第二共面实体,判断当前第二共面实体与凹入空间是否存在交点。
优选地,如果交点判断模块812判断凹入空间的轮廓线穿过当前第二公共平面,即,凹入空间的轮廓线的端点分别处于当前第二公共平面的两侧,则判断当前第二公共平面与凹入空间存在交点。
交点区域确定模块814可以被配置成如果交点判断模块812判断当前第二公共平面与凹入空间存在交点,则确定该交点是否在当前第二公共平面中与当前第二共面实体对应的区域内。
第二实体添加模块816可以被配置成如果确定交点在当前第二公共平面中与当前第二共面实体对应的区域内,则判断当前第二共面实体包含该凹入空间,并且将当前第二共面实体添加到第二实体集合中,否则说明当前第二共面实体不包含该凹入空间。
返回参照图6,整体空间确定单元614可以被配置成将第一实体集合识别单元610识别的第一实体集合和第二实体集合识别单元612识别的第二实体集合中的实体与相应的凹入空间确定为整体空间,并且在模型分割时将该整体空间作为一个整体来分割。
应理解,以上描述的设备的框图仅是示例而非限制,并且本领域技术人员可以根据实际情况而对上述框图进行修改,例如,可以省略某些功能模块和/或添加新的功能模块。例如,在图7所示的结构框图中,以虚线框示出的顶点判断模块716是可选的。
需要说明的是,本发明实施例所述的用于确定三维模型中的整体空间划分的设备是与前述方法实施例相对应的,因此,设备实施例中未详述的部分,请参见方法实施例中相应位置的介绍,这里不再赘述。
此外,应理解,包括上述设备的图像处理***也落入本发明的范围内。
根据以上描述的用于确定三维模型中的整体空间划分的方法和设备的实施例,可以以较小的计算量来实现两类实体(即,与凹入空间具有公共平面的实体和与凹入空间没有公共平面的实体)与凹入空间之间的关系的确定,从而提高了模型分割操作的效率和合理性。
另外,还应该指出的是,上述系列处理和设备也可以通过软件和/或固件实现。在通过软件和/或固件实现的情况下,从存储介质或网络向具有专用硬件结构的计算机,例如图9所示的通用个人计算机900安装构成该软件的程序,该计算机在安装有各种程序时,能够执行各种功能等等。
在图9中,中央处理单元(CPU)901根据只读存储器(ROM)902中存储的程序或从存储部分908加载到随机存取存储器(RAM)903的程序执行各种处理。在RAM903中,也根据需要存储当CPU901执行各种处理等等时所需的数据。
CPU901、ROM902和RAM903经由总线904彼此连接。输入/输出接口905也连接到总线904。
下述部件连接到输入/输出接口905:输入部分906,包括键盘、鼠标等等;输出部分907,包括显示器,比如阴极射线管(CRT)、液晶显示器(LCD)等等,和扬声器等等;存储部分908,包括硬盘等等;和通信部分909,包括网络接口卡比如LAN卡、调制解调器等等。通信部分909经由网络比如因特网执行通信处理。
根据需要,驱动器910也连接到输入/输出接口905。可拆卸介质911比如磁盘、光盘、磁光盘、半导体存储器等等根据需要被安装在驱动器910上,使得从中读出的计算机程序根据需要被安装到存储部分908中。
在通过软件实现上述系列处理的情况下,从网络比如因特网或存储介质比如可拆卸介质911安装构成软件的程序。
本领域的技术人员应当理解,这种存储介质不局限于图9所示的其中存储有程序、与设备相分离地分发以向用户提供程序的可拆卸介质911。可拆卸介质911的例子包含磁盘(包含软盘(注册商标))、光盘(包含光盘只读存储器(CD-ROM)和数字通用盘(DVD))、磁光盘(包含迷你盘(MD)(注册商标))和半导体存储器。或者,存储介质可以是ROM902、存储部分908中包含的硬盘等等,其中存有程序,并且与包含它们的设备一起被分发给用户。
还需要指出的是,执行上述系列处理的步骤可以自然地根据说明的顺序按时间顺序执行,但是并不需要一定根据时间顺序执行。某些步骤可以并行或彼此独立地执行。
虽然已经详细说明了本发明及其优点,但是应当理解在不脱离由所附的权利要求所限定的本发明的精神和范围的情况下可以进行各种改变、替代和变换。而且,本发明实施例的术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
根据本发明的实施例,还公开了以下附记:
附记1.一种用于确定三维模型中的整体空间划分的方法,包括:
第一实体集合识别步骤,对于所述三维模型中的每个凹入空间,识别所述三维模型中与所述凹入空间具有公共平面且包含所述凹入空间的第一实体集合;
第二实体集合识别步骤,对于所述每个凹入空间,识别所述三维模型中与所述凹入空间没有公共平面但包含所述凹入空间的第二实体集合;以及
整体空间确定步骤,将所述第一实体集合和所述第二实体集合中的实体与所述凹入空间确定为整体空间。
附记2.根据附记1所述的方法,其中,所述第一实体集合识别步骤进一步包括:
第一共面实体检测子步骤,对于所述每个凹入空间,检测所述三维模型中与所述凹入空间具有公共平面的第一共面实体,并将相应公共平面记录为第一公共平面;
凸包计算子步骤,对于每个当前第一公共平面,基于与所述当前第一公共平面对应的当前第一共面实体和所述凹入空间之间的连接关系,计算所述当前第一公共平面中与所述当前第一共面实体和所述凹入空间相关联的凸包;
凸包比较子步骤,将所述凸包与所述凹入空间进行比较,以确定所述凸包与所述凹入空间是否具有公共点;以及
第一实体添加子步骤,如果在所述凸包比较子步骤中确定所述凸包与所述凹入空间没有公共点,则将所述当前第一共面实体添加到所述第一实体集合中。
附记3.根据附记1所述的方法,其中,所述第二实体集合识别步骤进一步包括:
第二共面实体检测子步骤,从所述三维模型中除所述第一实体集合之外的实体中检测与所述第一实体集合中的各个实体具有公共平面的第二共面实体,并将相应公共平面记录为第二公共平面;
交点判断子步骤,对于所检测的每个当前第二共面实体,判断与所述当前第二共面实体和所述凹入空间相关联的当前第二公共平面与所述凹入空间是否存在交点;
交点区域确定子步骤,如果在所述交点判断子步骤中判断存在交点,则确定所述交点是否在所述当前第二公共平面中与所述当前第二共面实体对应的区域内;以及
第二实体添加子步骤,如果确定所述交点在所述当前第二公共平面中与所述当前第二共面实体对应的区域内,则将所述当前第二共面实体添加到所述第二实体集合中。
附记4.根据附记3所述的方法,其中,在所述交点判断子步骤中,如果所述凹入空间的轮廓线穿过所述当前第二公共平面,则判断所述当前第二公共平面与所述凹入空间存在交点。
附记5.根据附记2所述的方法,其中,所述第一实体集合识别步骤进一步包括:
顶点判断子步骤,如果在所述凸包比较子步骤中确定所述凸包与所述凹入空间没有公共点,则判断所述凹入空间的至少一个顶点是否在所述当前第一公共平面中与所述当前第一共面实体对应的区域内,
其中,在所述第一实体添加子步骤中,如果在所述顶点判断子步骤中判断所述至少一个顶点在所述当前第一公共平面中与所述当前第一共面实体对应的区域内,则将所述当前第一共面实体添加到所述第一实体集合中。
附记6.根据附记2所述的方法,其中,如果在所述第一共面实体检测子步骤中检测到的第一共面实体的数量为1,则将所检测到的第一共面实体添加到所述第一实体集合中。
附记7.根据附记2所述的方法,其中,在所述凸包计算子步骤中,如果所检测到的第一共面实体的数量大于1,则从所检测到的第一共面实体中识别能够通过三角形网格与所述凹入空间连接的实体,并且利用该实体和所述凹入空间落入所述当前第一公共平面内的点来计算所述凸包。
附记8.根据附记1-7中任一项所述的方法,其中,所述三维模型以三角形网格来表示。
附记9.一种用于确定三维模型中的整体空间划分的设备,包括:
第一实体集合识别单元,被配置成对于所述三维模型中的每个凹入空间,识别所述三维模型中与所述凹入空间具有公共平面且包含所述凹入空间的第一实体集合;
第二实体集合识别单元,被配置成对于所述每个凹入空间,识别所述三维模型中与所述凹入空间没有公共平面但包含所述凹入空间的第二实体集合;以及
整体空间确定单元,被配置成将所述第一实体集合和所述第二实体集合中的实体与所述凹入空间确定为整体空间,
附记10.根据附记9所述的设备,其中,所述第一实体集合识别单元进一步包括:
第一共面实体检测模块,被配置成对于所述每个凹入空间,检测所述三维模型中与所述凹入空间具有公共平面的第一共面实体,并将相应公共平面记录为第一公共平面;
凸包计算模块,被配置成对于每个当前第一公共平面,基于与所述当前第一公共平面对应的当前第一共面实体和所述凹入空间之间的连接关系,计算所述当前第一公共平面中与所述当前第一共面实体和所述凹入空间相关联的凸包;
凸包比较模块,被配置成将所述凸包与所述凹入空间进行比较,以确定所述凸包与所述凹入空间是否具有公共点;以及
第一实体添加模块,被配置成如果所述凸包比较模块确定所述凸包与所述凹入空间没有公共点,则将所述当前第一共面实体添加到所述第一实体集合中。
附记11.根据附记9所述的设备,其中,所述第二实体集合识别单元进一步包括:
第二共面实体检测模块,被配置成从所述三维模型中除所述第一实体集合之外的实体中检测与所述第一实体集合中的各个实体具有公共平面的第二共面实体,并将相应公共平面记录为第二公共平面;
交点判断模块,被配置成对于所检测的每个当前第二共面实体,判断与所述当前第二共面实体和所述凹入空间相关联的当前第二公共平面与所述凹入空间是否存在交点;
交点区域确定模块,被配置成如果所述交点判断模块判断存在交点,则确定所述交点是否在所述当前第二公共平面中与所述当前第二共面实体对应的区域内;以及
第二实体添加模块,被配置成如果确定所述交点在所述当前第二公共平面中与所述当前第二共面实体对应的区域内,则将所述当前第二共面实体添加到所述第二实体集合中。
附记12.根据附记11所述的设备,其中,所述交点判断模块进一步被配置成如果所述凹入空间的轮廓线穿过所述当前第二公共平面,则判断所述当前第二公共平面与所述凹入空间存在交点。
附记13.根据附记10所述的设备,其中,所述第一实体集合识别单元进一步包括:
顶点判断模块,被配置成如果所述凸包比较模块确定所述凸包与所述凹入空间没有公共点,则判断所述凹入空间的至少一个顶点是否在所述当前第一公共平面中与所述当前第一共面实体对应的区域内,
其中,所述第一实体添加模块进一步被配置成如果所述顶点判断模块判断所述至少一个顶点在所述当前第一公共平面中与所述当前第一共面实体对应的区域内,则将所述当前第一共面实体添加到所述第一实体集合中。
附记14.根据附记10所述的设备,其中,如果所述第一共面实体检测模块检测到的第一共面实体的数量为1,则将所检测到的第一共面实体添加到所述第一实体集合中。
附记15.根据附记10所述的设备,其中,所述凸包计算模块进一步被配置成如果所检测到的第一共面实体的数量大于1,则从所检测到的第一共面实体中识别能够通过三角形网格与所述凹入空间连接的实体,并且利用该实体与所述凹入空间落入所述当前第一公共平面内的点来计算所述凸包。
附记16.根据附记9-15中任一项所述的设备,其中,所述三维模型以三角形网格来表示。
附记17.一种图像处理***,包括根据附记9-16中任一项所述的用于确定三维模型中的整体空间划分的设备。
Claims (8)
1.一种用于确定三维模型中的整体空间划分的方法,包括:
第一实体集合识别步骤,对于所述三维模型中的每个凹入空间,识别所述三维模型中与所述凹入空间具有公共平面且包含所述凹入空间的第一实体集合;
第二实体集合识别步骤,对于所述每个凹入空间,识别所述三维模型中与所述凹入空间没有公共平面但包含所述凹入空间的第二实体集合;以及
整体空间确定步骤,将所述第一实体集合和所述第二实体集合中的实体与所述凹入空间确定为整体空间,
其中,所述第二实体集合识别步骤进一步包括:
第二共面实体检测子步骤,从所述三维模型中除所述第一实体集合之外的实体中检测与所述第一实体集合中的各个实体具有公共平面的第二共面实体,并将相应公共平面记录为第二公共平面;
交点判断子步骤,对于所检测的每个当前第二共面实体,判断与所述当前第二共面实体和所述凹入空间相关联的当前第二公共平面与所述凹入空间是否存在交点;
交点区域确定子步骤,如果在所述交点判断子步骤中判断存在交点,则确定所述交点是否在所述当前第二公共平面中与所述当前第二共面实体对应的区域内;以及
第二实体添加子步骤,如果确定所述交点在所述当前第二公共平面中与所述当前第二共面实体对应的区域内,则将所述当前第二共面实体添加到所述第二实体集合中。
2.根据权利要求1所述的方法,其中,所述第一实体集合识别步骤进一步包括:
第一共面实体检测子步骤,对于所述每个凹入空间,检测所述三维模型中与所述凹入空间具有公共平面的第一共面实体,并将相应公共平面记录为第一公共平面;
凸包计算子步骤,对于每个当前第一公共平面,基于与所述当前第一公共平面对应的当前第一共面实体和所述凹入空间之间的连接关系,计算所述当前第一公共平面中与所述当前第一共面实体和所述凹入空间相关联的凸包;
凸包比较子步骤,将所述凸包与所述凹入空间进行比较,以确定所述凸包与所述凹入空间是否具有公共点;以及
第一实体添加子步骤,如果在所述凸包比较子步骤中确定所述凸包与所述凹入空间没有公共点,则将所述当前第一共面实体添加到所述第一实体集合中。
3.根据权利要求2所述的方法,其中,所述第一实体集合识别步骤进一步包括:
顶点判断子步骤,如果在所述凸包比较子步骤中确定所述凸包与所述凹入空间没有公共点,则判断所述凹入空间的至少一个顶点是否在所述当前第一公共平面中与所述当前第一共面实体对应的区域内,
其中,在所述第一实体添加子步骤中,如果在所述顶点判断子步骤中判断所述至少一个顶点在所述当前第一公共平面中与所述当前第一共面实体对应的区域内,则将所述当前第一共面实体添加到所述第一实体集合中。
4.根据权利要求1-3中任一项所述的方法,其中,所述三维模型以三角形网格来表示。
5.一种用于确定三维模型中的整体空间划分的设备,包括:
第一实体集合识别单元,被配置成对于所述三维模型中的每个凹入空间,识别所述三维模型中与所述凹入空间具有公共平面且包含所述凹入空间的第一实体集合;
第二实体集合识别单元,被配置成对于所述每个凹入空间,识别所述三维模型中与所述凹入空间没有公共平面但包含所述凹入空间的第二实体集合;以及
整体空间确定单元,被配置成将所述第一实体集合和所述第二实体集合中的实体与所述凹入空间确定为整体空间,
其中,所述第二实体集合识别单元进一步包括:
第二共面实体检测模块,被配置成从所述三维模型中除所述第一实体集合之外的实体中检测与所述第一实体集合中的各个实体具有公共平面的第二共面实体,并将相应公共平面记录为第二公共平面;
交点判断模块,被配置成对于所检测的每个当前第二共面实体,判断与所述当前第二共面实体和所述凹入空间相关联的当前第二公共平面与所述凹入空间是否存在交点;
交点区域确定模块,被配置成如果所述交点判断模块判断存在交点,则确定所述交点是否在所述当前第二公共平面中与所述当前第二共面实体对应的区域内;以及
第二实体添加模块,被配置成如果确定所述交点在所述当前第二公共平面中与所述当前第二共面实体对应的区域内,则将所述当前第二共面实体添加到所述第二实体集合中。
6.根据权利要求5所述的设备,其中,所述第一实体集合识别单元进一步包括:
第一共面实体检测模块,被配置成对于所述每个凹入空间,检测所述三维模型中与所述凹入空间具有公共平面的第一共面实体,并将相应公共平面记录为第一公共平面;
凸包计算模块,被配置成对于每个当前第一公共平面,基于与所述当前第一公共平面对应的当前第一共面实体和所述凹入空间之间的连接关系,计算所述当前第一公共平面中与所述当前第一共面实体和所述凹入空间相关联的凸包;
凸包比较模块,被配置成将所述凸包与所述凹入空间进行比较,以确定所述凸包与所述凹入空间是否具有公共点;以及
第一实体添加模块,被配置成如果所述凸包比较模块确定所述凸包与所述凹入空间没有公共点,则将所述当前第一共面实体添加到所述第一实体集合中。
7.根据权利要求6所述的设备,其中,所述第一实体集合识别单元进一步包括:
顶点判断模块,被配置成如果所述凸包比较模块确定所述凸包与所述凹入空间没有公共点,则判断所述凹入空间的至少一个顶点是否在所述当前第一公共平面中与所述当前第一共面实体对应的区域内,
其中,所述第一实体添加模块进一步被配置成如果所述顶点判断模块判断所述至少一个顶点在所述当前第一公共平面中与所述当前第一共面实体对应的区域内,则将所述当前第一共面实体添加到所述第一实体集合中。
8.一种图像处理***,包括根据权利要求5至7中任一项所述的用于确定三维模型中的整体空间划分的设备。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210505469.1A CN103854275B (zh) | 2012-11-30 | 2012-11-30 | 三维模型中的整体空间划分方法和设备及图像处理*** |
JP2013244713A JP6252133B2 (ja) | 2012-11-30 | 2013-11-27 | 三次元モデル中の一体空間の確定方法、装置及び画像処理システム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210505469.1A CN103854275B (zh) | 2012-11-30 | 2012-11-30 | 三维模型中的整体空间划分方法和设备及图像处理*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103854275A CN103854275A (zh) | 2014-06-11 |
CN103854275B true CN103854275B (zh) | 2017-06-09 |
Family
ID=50861890
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210505469.1A Active CN103854275B (zh) | 2012-11-30 | 2012-11-30 | 三维模型中的整体空间划分方法和设备及图像处理*** |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP6252133B2 (zh) |
CN (1) | CN103854275B (zh) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101807308A (zh) * | 2009-02-12 | 2010-08-18 | 富士通株式会社 | 三维模型分割装置和方法 |
CN101944239A (zh) * | 2009-07-08 | 2011-01-12 | 富士通株式会社 | 三维模型分割方法、装置以及包含该装置的图像处理*** |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2897455A1 (fr) * | 2006-02-13 | 2007-08-17 | Univ Hokkaido Nat Univ Corp | Dispositif, procede et programme de segmentation de donnees de modele en treillis |
-
2012
- 2012-11-30 CN CN201210505469.1A patent/CN103854275B/zh active Active
-
2013
- 2013-11-27 JP JP2013244713A patent/JP6252133B2/ja active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101807308A (zh) * | 2009-02-12 | 2010-08-18 | 富士通株式会社 | 三维模型分割装置和方法 |
CN101944239A (zh) * | 2009-07-08 | 2011-01-12 | 富士通株式会社 | 三维模型分割方法、装置以及包含该装置的图像处理*** |
Non-Patent Citations (3)
Title |
---|
Mesh segmentation using feature point and core extraction;Sagi Katz et al.;《The visual computer》;20050901;第21卷(第8-10期);第865-875页 * |
Partitioning 3D surface meshes using watershed segmentation;Alan P. Mangan et al.;《IEEE Transaction on Visualization and computer graphics》;19991231;第5卷(第4期);第308-321页 * |
Surface Mesh Segmentation and Smooth Surface Extraction through Region Growing;Miguel Vieira et al.;《Computer aided geometric design》;20051231;第22卷(第8期);第771-792页 * |
Also Published As
Publication number | Publication date |
---|---|
CN103854275A (zh) | 2014-06-11 |
JP6252133B2 (ja) | 2017-12-27 |
JP2014110050A (ja) | 2014-06-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8509478B2 (en) | Detection of objects in digital images | |
CN107492091A (zh) | 基于机器视觉的标签外观检测方法及终端设备 | |
CN107918931A (zh) | 图像处理方法及*** | |
CN111310737B (zh) | 一种车道线检测方法及装置 | |
CN110246579B (zh) | 一种病理诊断方法及装置 | |
CN111783844A (zh) | 基于深度学习的目标检测模型训练方法、设备及存储介质 | |
CN113689436B (zh) | 图像语义分割方法、装置、设备及存储介质 | |
CN114511703A (zh) | 面向分割任务的融合Swin Transformer与UNet的迁移学习方法和*** | |
CN113641906A (zh) | 基于资金交易关系数据实现相似目标人员识别处理的***、方法、装置、处理器及其介质 | |
CN111340831A (zh) | 点云边缘检测方法和装置 | |
Milosevic | Different approaches to Imaging Mass Cytometry data analysis | |
Zhao et al. | Building instance segmentation and boundary regularization from high-resolution remote sensing images | |
Hao et al. | VP-Detector: A 3D multi-scale dense convolutional neural network for macromolecule localization and classification in cryo-electron tomograms | |
CN114821541A (zh) | 一种基于网格模型的道路面损伤检测方法及相关设备 | |
Kostopoulou et al. | An effective approach for detection and segmentation of protein spots on 2-d gel images | |
CN103854275B (zh) | 三维模型中的整体空间划分方法和设备及图像处理*** | |
CN116432064A (zh) | 一种数据预处理***及方法 | |
Kalinina et al. | Research of YOLO architecture models in book detection | |
Zeng et al. | A survey of deep learning-based methods for cryo-electron tomography data analysis | |
CN108932459A (zh) | 脸部识别模型训练方法和装置及脸部识别方法 | |
Ruz-Suarez et al. | Convolutional neural network for segmentation of single cell gel electrophoresis assay | |
CN116386038B (zh) | 一种dc细胞检测方法及*** | |
Dekker et al. | Point Cloud Analysis of Railway Infrastructure: A Systematic Literature Review | |
Bhanbhro et al. | Symbol Detection in a Multi-class Dataset Based on Single Line Diagrams using Deep Learning Models | |
Baskar | DeepNet model empowered cuckoo search algorithm for the effective identification of lung cancer nodules |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |