CN118071941B - 三维扫描方法、装置、设备及存储介质 - Google Patents
三维扫描方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN118071941B CN118071941B CN202410495674.7A CN202410495674A CN118071941B CN 118071941 B CN118071941 B CN 118071941B CN 202410495674 A CN202410495674 A CN 202410495674A CN 118071941 B CN118071941 B CN 118071941B
- Authority
- CN
- China
- Prior art keywords
- image data
- model
- scanning
- frame
- locked
- 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
- 238000000034 method Methods 0.000 title claims abstract description 65
- 230000008569 process Effects 0.000 claims abstract description 20
- 238000005457 optimization Methods 0.000 claims description 16
- 238000004590 computer program Methods 0.000 claims description 15
- 239000003550 marker Substances 0.000 claims description 3
- 239000000758 substrate Substances 0.000 claims 1
- 230000000694 effects Effects 0.000 abstract description 7
- 238000010586 diagram Methods 0.000 description 13
- 238000005259 measurement Methods 0.000 description 8
- 238000004891 communication Methods 0.000 description 6
- 238000012217 deletion Methods 0.000 description 5
- 230000037430 deletion Effects 0.000 description 5
- 230000006870 function Effects 0.000 description 5
- 230000004927 fusion Effects 0.000 description 5
- 230000003287 optical effect Effects 0.000 description 5
- 230000009471 action Effects 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 230000009286 beneficial effect Effects 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 3
- 239000011159 matrix material Substances 0.000 description 3
- 230000009466 transformation Effects 0.000 description 3
- 238000012935 Averaging Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000000605 extraction Methods 0.000 description 2
- 239000013307 optical fiber Substances 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 230000011218 segmentation Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 238000001514 detection method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 210000000887 face Anatomy 0.000 description 1
- 230000001815 facial effect Effects 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 238000011835 investigation Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 210000000214 mouth Anatomy 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2200/00—Indexing scheme for image data processing or generation, in general
- G06T2200/04—Indexing scheme for image data processing or generation, in general involving 3D image data
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- Medical Informatics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Artificial Intelligence (AREA)
- Computing Systems (AREA)
- Evolutionary Computation (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Data Mining & Analysis (AREA)
- Health & Medical Sciences (AREA)
- Databases & Information Systems (AREA)
- General Health & Medical Sciences (AREA)
- Multimedia (AREA)
- Computer Graphics (AREA)
- Geometry (AREA)
- Image Analysis (AREA)
Abstract
本公开实施例涉及一种三维扫描方法、装置、设备及存储介质,其中,该方法包括:获取目标对象的第一区域对应的第一扫描图像数据;基于所述第一扫描图像数据生成第一模型,其中,所述第一模型中的至少部分区域被锁定;在对所述目标对象继续扫描过程中,至少获取所述目标对象中不同于所述第一模型中被锁定区域的第二区域所对应的第二扫描图像数据;基于所述第二扫描图像数据和所述第一模型生成目标模型;基于所述第一模型中被锁定区域所对应的第一扫描图像数据对所述第二扫描图像数据进行实时优化,并更新所述目标模型。根据本公开实施例能够优化第二扫描图像数据以提高其质量,进而降低出现拼接错位的风险,提高三维扫描效果。
Description
技术领域
本公开实施例涉及计算机技术领域,尤其涉及一种三维扫描方法、装置、设备及存储介质。
背景技术
三维扫描能够对物体空间外形和结构及色彩进行扫描,以获得物体对应的三维模型,广泛应用于医疗、教育、工业等领域。
随着用户对三维扫描需求的发展,在一些口腔扫描、面部扫描、人物扫描、假肢扫描、文物扫描、工业扫描、建筑扫描等三维扫描场景(例如)中,可能会存在二次扫描的情况,但是,在将第一次扫描图像数据和第二次扫描图像数据进行拼接时可能会出现拼接错位的问题。因此,目前亟需一种能够降低出现拼接错位风险的三维扫描方法。
发明内容
为了解决上述技术问题或者至少部分地解决上述技术问题,本公开实施例提供了一种三维扫描方法、装置、设备及存储介质。
本公开实施例的第一方面提供了一种三维扫描方法,该方法包括:
获取目标对象的第一区域对应的第一扫描图像数据;
基于第一扫描图像数据生成第一模型,其中,第一模型中的至少部分区域被锁定;
在对目标对象继续扫描过程中,至少获取目标对象中不同于第一模型中被锁定区域的第二区域所对应的第二扫描图像数据;
基于第二扫描图像数据和第一模型生成目标模型;
基于第一模型中被锁定区域所对应的第一扫描图像数据对第二扫描图像数据进行实时优化,并更新目标模型。
本公开实施例的第二方面提供了一种三维扫描装置,该装置包括:
第一获取模块,用于获取目标对象的第一区域对应的第一扫描图像数据;
第一生成模块,用于基于第一扫描图像数据生成第一模型,其中,第一模型中的至少部分区域被锁定;
第二获取模块,用于在对目标对象继续扫描过程中,至少获取目标对象中不同于第一模型中被锁定区域的第二区域所对应的第二扫描图像数据;
第二生成模块,用于基于第二扫描图像数据和第一模型生成目标模型;
第一优化模块,用于基于第一模型中被锁定区域所对应的第一扫描图像数据对第二扫描图像数据进行实时优化,并更新目标模型。
本公开实施例的第三方面提供了一种电子设备,该服务器包括:处理器和存储器,其中,所述存储器中存储有计算机程序,当所述计算机程序被所述处理器执行时,所述处理器执行上述第一方面的方法。
本公开实施例的第四方面提供了一种计算机可读存储介质,该存储介质中存储有计算机程序,当该计算机程序被处理器执行时,可以实现上述第一方面的方法。
本公开实施例提供的技术方案与现有技术相比具有如下优点:
本公开实施例,能够获取目标对象的第一区域对应的第一扫描图像数据;基于第一扫描图像数据生成第一模型,其中,第一模型中的至少部分区域被锁定;在对目标对象继续扫描过程中,至少获取目标对象中不同于第一模型中被锁定区域的第二区域所对应的第二扫描图像数据;基于第二扫描图像数据和第一模型生成目标模型;基于第一模型中被锁定区域所对应的第一扫描图像数据对第二扫描图像数据进行实时优化,并更新目标模型。可见,采用上述技术方案,能够优化第二扫描图像数据以提高其质量,进而降低出现拼接错位的风险,提高三维扫描效果。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。
为了更清楚地说明本公开实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本公开实施例提供的一种三维扫描方法的流程图;
图2是本公开实施例提供的一种第一区域对应的完整三维模型的示意图;
图3是本公开实施例提供的一种第一区域和新区域对应的三维模型的示意图;
图4是本公开实施例提供的另一种三维扫描方法的流程图;
图5是本公开实施例提供的一种三维扫描装置的结构示意图;
图6是本公开实施例中的一种电子设备的结构示意图。
具体实施方式
为了能够更清楚地理解本公开的上述目的、特征和优点,下面将对本公开的方案进行进一步描述。需要说明的是,在不冲突的情况下,本公开的实施例及实施例中的特征可以相互组合。
在下面的描述中阐述了很多具体细节以便于充分理解本公开,但本公开还可以采用其他不同于在此描述的方式来实施;显然,说明书中的实施例只是本公开的一部分实施例,而不是全部的实施例。
图1是本公开实施例提供的一种三维扫描方法的流程图,该方法可以由一种电子设备来执行。该方法适用于口腔扫描仪、面部扫描仪、工业扫描仪、专业扫描仪、手持扫描仪、固定扫描仪等三维扫描仪,可实现对牙齿、人脸、人身、工业产品、工业设备、文物、艺术品、假肢、医疗器具、建筑等物品或场景的三维重建等场景。该电子设备可以示例性的理解为诸如三维扫描仪、手机、平板电脑、笔记本电脑、台式机、智能电视等设备。如图1所示,本实施例提供的方法包括如下步骤:
S110、获取目标对象的第一区域对应的第一扫描图像数据。
在本公开实施例中,用户可以采用三维扫描仪对目标对象的第一区域进行扫描得到第一扫描图像数据,如此,电子设备可以获取到第一扫描图像数据。需要说明的是,第一区域可以为目标对象上的任意区域,本公开对此不作限定。
S120、基于第一扫描图像数据生成第一模型,其中,第一模型中的至少部分区域被锁定。
在本公开实施例中,电子设备获取到第一扫描图像数据后,可以基于第一扫描图像数据生成第一模型。
具体地,第一模型为三维模型。可以采用任意可知的方式基于第一扫描图像数据生成第一模型,例如可以采用融合(比如前后帧跟踪融合等)、AI生成等方式,但并不限于此。
示例性的,图2是本公开实施例提供的一种第一区域对应的完整三维模型的示意图。参见图2,在种植杆扫描场景中,采用三维扫描仪对第一区域(种植杆所在区域之外的其它区域)进行扫描,电子设备基于获取到的第一扫描图像数据进行融合,得到第一区域对应的完整三维模型。
具体地,第一模型中的至少部分区域被锁定,即被锁定区域保持不变,也即被锁定区域所对应的第一扫描图像数据(也即用于重建出被锁定区域的第一扫描图像数据)保持不变,因此,被锁定区域所对应的第一扫描图像数据即被锁定的数据。
具体地,“被锁定区域所对应的第一扫描图像数据”具体为哪些数据,下面就典型示例进行说明,但并不构成对本公开的限定。
在一些实施例中,第一模型中被锁定区域所对应的第一扫描图像数据,包括:
第一扫描图像数据中的全部数据;或者;
第一扫描图像数据中被用户选择锁定的数据;或者;
第一扫描图像数据中感兴趣区域对应的数据。
具体地,用户可以采用任意可能的方式从第一扫描图像数据选择被锁定的数据,例如,用户可以通过鼠标、键盘、或触控面板等从第一扫描图像数据中选中至少部分数据,如此,电子设备可以将选中的数据确定为被锁定的数据,但并不限于此。
具体地,感兴趣区域为目标对象中,包含一个目标物体、一种特征、或者任何需要进一步研究、测量、识别或操作的部分的区域。感兴趣区域可以记载在扫描订单中,但并不限于此。
具体地,可以采用任意可能的方式确定出感兴趣区域,例如针对第一扫描图像数据,可以采用AI识别、特征提取与匹配、或阈值分割等方式从中确定出感兴趣区域对应的数据。
例如,在口腔扫描场景中,扫描订单中记载了感兴趣区域为1号牙,则电子设备可以对第一扫描图像数据进行AI识别确定出1号牙对应的数据,并将该部分数据锁定。又例如,在工业扫描场景中,扫描订单中记载了感兴趣区域为工业设备A,则电子设备可以对第一扫描图像数据进行AI识别确定出工业设备A对应的数据,并将该部分数据锁定。又例如,在建筑大场景扫描中,扫描订单中记载了感兴趣区域为1号楼,则电子设备可以对第一扫描图像数据进行AI识别确定出1号楼对应的数据,并将该部分数据锁定。
可以理解的是,通过设置第一扫描图像数据中的全部数据被锁定,使得被锁定的数据的确定方式简单、快捷。通过设置第一扫描图像数据中被用户选择的数据被锁定,使得用户能够灵活地选择被锁定的数据,进而使得被锁定的数据更符合用户需求。通过设置第一扫描图像数据中感兴趣区域对应的数据被锁定,使得更值得关注的区域对应的数据被锁定,便于用户后续对感兴趣区域进行进一步研究。
S130、在对目标对象继续扫描过程中,至少获取目标对象中不同于第一模型中被锁定区域的第二区域所对应的第二扫描图像数据。
在本公开实施例中,用户在采用三维扫描仪对目标对象的第一区域扫描后,可以继续对第二区域进行扫描,在对第二区域进行扫描的过程中得到第二扫描图像数据,如此,电子设备可以获取到第二扫描图像数据。
可选地,第二区域可以包括:目标对象中不同于第一区域的新区域;和/或;第一区域中未被锁定区域。
具体地,新区域与第一区域无重叠区域,二者为目标对象中的两个不同区域。
具体地,第一区域中未被锁定区域指的是,第一区域中,除了“与被锁定区域在目标对象上所对应的区域”之外的剩余区域。
可选地,S130可以包括:在对目标对象继续扫描过程中,实时得到当前扫描帧;
若当前扫描帧全部对应于第一模型中被锁定区域,则确定当前扫描帧不参与更新第一模型;
若当前扫描帧存在部分数据对应于第一模型中被锁定区域,则确定当前扫描帧对应于第一模型中被锁定区域的部分数据不参与更新第一模型,并确定当前扫描帧除对应于第一模型中被锁定区域的部分数据外的剩余数据为第二扫描图像数据;
若当前扫描帧不存在数据对应于第一模型中被锁定区域,则确定当前扫描帧为第二扫描图像数据。
具体地,若当前扫描帧在目标对象上所对应的区域,属于被锁定区域在目标对象上所对应的区域,则当前扫描帧全部对应于第一模型中被锁定区域。此时,当前扫描帧不参与更新第一模型,可以删除当前扫描帧,当然,也可以保留当前扫描帧。
具体地,若当前扫描帧在目标对象上所对应的区域,与被锁定区域在目标对象上所对应的区域,存在重叠区域,也存在非重叠区域,则当前扫描帧中重叠区域对应的数据对应于第一模型中被锁定区域,不参与更新第一模型,当前扫描帧中非重叠区域对应的数据(即剩余数据)不对应于第一模型中被锁定区域,属于第二扫描图像数据。
具体地,若当前扫描帧在目标对象上所对应的区域,与被锁定区域在目标对象上所对应的区域完全不重叠,则当前扫描帧不对应于第一模型中被锁定区域。此时,当前扫描帧中的所有数据均属于第二扫描图像数据。
可以理解的是,在对目标对象继续扫描过程中,有可能还会获取到第一区域对应的扫描帧,本公开实施例中,通过设置判断当前扫描帧是否对应于被锁定区域,并将与被锁定区域不对应的数据确定为第二扫描图像数据,如此,可使第二扫描图像数据中不包括被锁定区域对应的数据,有利于提高第二扫描图像数据的准确性。
S140、基于第二扫描图像数据和第一模型生成目标模型。
在本公开实施例中,在第一扫描图像数据中被锁定的数据保持不变的情况下,电子设备可以将第一扫描图像数据中被锁定的数据、以及第二扫描图像数据拼接起来,换句话说,基于第二扫描图像数据对第一模型中除被锁定区域之外的区域进行更新,从而生成目标模型。
在一些实施例中,第二区域仅包括目标对象中不同于第一区域的新区域,此时,S140包括:S141、在保持第一模型中被锁定区域不变的情况下,基于目标对象中不同于第一区域的新区域所对应的第二扫描图像数据更新第一模型,从而生成目标模型。
在另一些实施例中,第二区域仅包括第一区域中未被锁定区域,此时,S140包括:S142、基于第一区域中未被锁定区域所对应的第二扫描图像数据更新第一模型,从而生成目标模型。
在又一些实施例中,第二区域包括目标对象中不同于第一区域的新区域和第一区域中未被锁定区域,此时,S140包括:S143、在保持第一模型中被锁定区域不变的情况下,基于目标对象中不同于第一区域的新区域所对应的第二扫描图像数据更新第一模型,并且基于第一区域中未被锁定区域所对应的第二扫描图像数据更新第一模型,从而生成目标模型。
S150、基于第一模型中被锁定区域所对应的第一扫描图像数据对第二扫描图像数据进行实时优化,并更新目标模型。
在本公开实施例中,在第一扫描图像数据中被锁定的数据保持不变的情况下,电子设备可以基于第一扫描图像数据中被锁定的数据对第二扫描图像数据进行实时优化。并且,电子设备可以将第一扫描图像数据中被锁定的数据和实时优化后的第二扫描图像数据拼接起来,以更新目标模型。
具体地,可以采用任意可能的方式对第二扫描图像数据进行优化,例如可以采用AI优化的方式对第二扫描图像数据进行优化,但并不限于此。
具体地,可以采用任意可知的方式将第一扫描图像数据中被锁定的数据和实时优化后的第二扫描图像数据拼接起来。例如,可以采用融合(比如前后帧跟踪融合等)、AI拼接等方式将第一扫描图像数据中被锁定的数据和实时优化后的第二扫描图像数据进行拼接,但并不限于此。
可以理解的是,如果没有对第二扫描图像数据进行优化,随着对目标对象的不断扫描会有累积误差,累积误差由已扫的扫描图像数据累积起来的,比如扫描的第十帧数据,会累积前面所有已扫描的9帧数据的误差,所以累积误差会越来越大,如果累计误差较大的话,新来的扫描图像数据和已扫的扫描图像数据拼接时,可能会拼接失败,影响扫描流畅性。在本公开实施例中,增加对第二扫描图像数据的实时优化,如此,可以减少或消除累积误差,降低新来的扫描图像数据和已扫的扫描图像数据拼接时拼接失败的风险,提高扫描流畅性。
示例性的,图3是本公开实施例提供的一种第一区域和新区域对应的三维模型的示意图。参见图3,在对第一区域扫描完成之后,继续采用三维扫描模型对种植杆所在区域(即新区域)进行扫描,电子设备接收三维扫描仪发送的新区域对应的第二扫描图像数据,并基于第一扫描图像数据中被锁定的数据对第二扫描图像数据进行优化,基于实时优化后的第二扫描图像数据更新目标模型,使得目标模型中包括种植杆所在区域对应的区域,从图3中可以看出第一区域和新区域拼接效果较佳,无拼接错位问题。
本公开实施例,能够将第一扫描图像数据中被锁定区域保持不变,对第二扫描图像数据进行优化,如此,可提高新区域对应的扫描图像数据(即第二扫描图像数据)的质量,进而降低第一区域和新区域出现拼接错位的风险,提高三维扫描效果。
在一些实施例中,在将第一模型中被锁定区域锁定之前,还包括:删除第一模型中的至少部分区域所对应的第一扫描图像数据。
可选地,第一模型中被删除区域所对应的第一扫描图像数据包括:
第一扫描图像数据中被用户选择删除的数据;和/或;
第一扫描图像数据中目标对象的预设忽略区域所对应的数据。
具体地,用户可以采用任意可能的方式从第一扫描图像数据选择被删除的数据,例如,用户可以通过鼠标、键盘、或触控面板等从第一扫描图像数据中选中至少部分数据,如此,电子设备可以将选中的数据确定为被删除的数据,但并不限于此。
具体地,可以采用任意可能的方式从第一扫描图像数据中确定出预设忽略区域所对应的数据,例如针对第一扫描图像数据,可以采用AI识别、特征提取与匹配、或阈值分割等方式从中确定出预设忽略区域对应的数据。
具体地,删除第一模型中的至少部分区域所对应的第一扫描图像数据之后,第一模型中被锁定区域所对应的第一扫描图像数据,包括:
剩余第一扫描图像数据中的全部数据;或者;
剩余第一扫描图像数据中被用户选择删除的数据;或者;
剩余第一扫描图像数据中感兴趣区域对应的数据。
可以理解的是,通过设置被锁定区域之前,先删除第一模型中的至少部分区域所对应的第一扫描图像数据,可将部分第一扫描图像数据删除,便于后续设置被锁定区域。
在一些实施例中,在将第一模型中被锁定区域锁定之后且获取第二扫描图像之前,删除第一模型中除被锁定区域之外的其它区域中的至少部分区域所对应的第一扫描图像数据。
具体地,关于“第一模型中被删除区域所对应的第一扫描图像数据”的理解,请参见前文,此处不再赘述。
可以理解的是,通过在设置被锁定区域之后,删除第一模型中除被锁定区域之外的至少部分区域所对应的第一扫描图像数据,可将无用的第一扫描图像数据删除,以免减少对存储资源的占用。
在一些实施例中,该方法还包括:
保存对被锁定区域进行锁定之前的第一模型;和/或;
保存对被删除区域进行删除之前的第一模型;和/或;
保存获取第二扫描图像数据之前的第一模型。
可以理解的是,通过将各个阶段的第一模型保存下来,便于后续对各个阶段的第一模型进行追溯和分析,保存的步骤可以是实时的,也可以是不实时进行的。
在一些实施例中,该方法还包括:
显示基于第一扫描图像数据生成的第一模型;和/或;
在第一模型发生更新后,实时显示更新后的第一模型;和/或;
显示基于第一模型和第二扫描图像数据生成的目标模型;和/或;
在目标模型更新后,实时显示更新后的目标模型。
可以理解的是,通过实时基于第一扫描图像数据进行融合得到第一模型,并显示该第一模型,可使用户可以直观、形象、实时地看到第一区域的扫描效果。并且,在第一模型由于对被删除区域进行删除等原因发生更新时,实时显示更新后的第一模型,可使用户可以直观、形象、实时地看到第一模型的变化。
可以理解的是,通过实时基于第一模型和第二扫描图像数据生成目标模型,并显示该目标模型,可使用户可以直观、形象、实时地看到第二区域的扫描效果,并且方便用户了解当前扫描进度。并且,在目标模型由于第二扫描图像数据的优化发生更新时,实时显示更新后的目标模型,可使用户可以直观、形象、实时地看到目标模型的变化。
图4是本公开实施例提供的另一种三维扫描方法的流程示意图。本公开实施例在上述实施例的基础上进行优化,本公开实施例可以与上述一个或者多个实施例中各个可选方案结合。
如图4所示,该三维扫描方法可以包括如下步骤。
S410、获取目标对象的第一区域对应的第一扫描图像数据。
在本公开实施例中,在对第一区域进行扫描的过程中,三维扫描仪中的相机可以对目标对象的第一区域进行图像采集得到多帧第一扫描帧,三维扫描仪中的位姿测量模块(例如惯性测量单元测量等)可以测量每帧第一扫描帧对应的位姿(称之为第一测量位姿),如此,电子设备可以接收三维扫描仪发送的多帧第一扫描帧、以及多帧第一扫描帧对应的第一测量位姿。例如:位姿可以表示当前扫描帧从局部坐标系(相机坐标系)到世界坐标系(全局坐标系)的位姿转换矩阵即RT。
具体地,第一位姿可以是第一测量位姿,也可以是对第一测量位姿进行优化后得到的位姿,本申请对此不作限定。
此外,S410与S110中类似的内容,此处不再赘述。
S420、基于第一扫描图像数据生成第一模型,其中,第一模型中的至少部分区域被锁定。
具体地,基于获取到的第一扫描帧、以及其对应的第一位姿进行融合,得到第一模型。
此外,S420与S120中类似的内容,此处不再赘述。
S430、在对目标对象继续扫描过程中,至少获取目标对象中不同于第一模型中被锁定区域的第二区域所对应的第二扫描图像数据。
在本公开实施例中,在对目标对象的第一区域扫描完成后,可以继续对第二区域进行扫描,在对第二区域进行扫描的过程中,三维扫描仪中的相机可以对目标对象的第二区域进行图像采集得到至少一帧第二扫描帧,三维扫描仪中的位姿测量模块可以获取每帧第二扫描帧对应的位姿(即第二位姿),如此,电子设备可以接收相机发送的至少一帧第二扫描帧、以及每帧第二扫描帧对应的第二位姿。
此外,S430与S130中类似的内容,此处不再赘述。
S440、基于第二扫描图像数据和第一模型生成目标模型。
具体地,S440与S140类似,此处不再赘述。
S450、基于第一扫描图像数据和第二扫描图像数据,确定第二扫描帧的帧间误差。
具体地,一帧第二扫描帧的帧间误差用于表征该第二扫描帧和与其对应的关联扫描帧中的特征点对之间的整体距离远近,其中,关联扫描帧与该第二扫描帧之间存在重叠的图像区域,一帧第二扫描帧的关联扫描帧可以包括第一扫描帧和/或第二扫描帧。
在一些实施例中,S450可以包括:将第二扫描帧和与其对应的关联扫描帧输入预先训练好的帧间误差检测模型,获取第二扫描帧的帧间误差。
在另一些实施例中,S450可以包括:S451、针对第二扫描帧和与其对应的每帧关联扫描帧,基于第二扫描帧对应的第二位姿和关联扫描帧对应的位姿,确定二者之间的子帧间误差。
具体地,一帧第二扫描帧的子帧间误差用于表征该第二扫描帧和与其对应的一帧关联扫描帧中的特征点对之间的距离远近。
在一个示例中,关联扫描帧包括第一关联扫描帧,相应的,S451、可以包括:S4511、针对第二扫描帧和与其对应的每帧第一关联扫描帧,基于第二扫描帧对应的第二位姿和第一关联扫描帧对应的第二位姿,确定二者之间的子帧间误差。
具体地,第一关联扫描帧为与第二扫描帧具有重叠的图像区域的其它第二扫描帧。第一关联扫描帧的具体数量,本领域技术人员可根据实际情况设置,此处不作限定。例如,一帧第二扫描帧对应的第一关联扫描帧为:与其前相邻的N1帧第二扫描帧,和/或,与其后相邻的N2帧第二扫描帧,其中,N1和N2均为正整数。
在另一个示例中,关联扫描帧包括第二关联扫描帧,相应的,S451、可以包括:S4512、针对第二扫描帧和与其对应的每帧第二关联扫描帧,基于第二扫描帧对应的第二位姿和第二关联扫描帧对应的第二位姿,确定二者之间的子帧间误差。
具体地,第二关联扫描帧为与第二扫描帧具有重叠的图像区域的第一扫描帧。第二关联扫描帧的具体数量,本领域技术人员可根据实际情况设置,此处不作限定。
在又一个示例中,关联扫描帧包括第一关联扫描帧和第二关联扫描帧,相应的,S451、可以包括:S4511和S4512。
可选地,基于第二扫描帧对应的第二位姿和关联扫描帧对应的位姿,确定二者之间的子帧间误差,包括:基于第二扫描帧对应的第二位姿和关联扫描帧对应的位姿,确定二者中的特征点对之间的距离,并基于距离确定子帧间误差。
进一步可选地,特征点对包括标志点特征点对、纹理特征点对、和/或几何特征点对。相应地,基于第二扫描帧对应的第二位姿和关联扫描帧对应的位姿,确定二者中的特征点对之间的距离可以包括:基于第二扫描帧对应的第二位姿和关联扫描帧对应的位姿,计算二者中的标志点特征点对的第一距离、纹理特征点对的第二距离、和/或几何特征点对的第三距离;若特征点对仅包括标志点特征点对(纹理特征点对、或几何特征点对),则将第一距离(第二距离、或第三距离)作为子帧间误差;若特征点对包括标志点特征点对和纹理特征点对,则将第一距离和第二距离进行直接加和、或权重加和,得到子帧间误差;若特征点对包括标志点特征点对和几何特征点对,则将第一距离和第三距离进行直接加和、或权重加和,得到子帧间误差;若特征点对包括纹理特征点对和几何特征点对,则将第二距离和第三距离进行直接加和、或权重加和,得到子帧间误差;若特征点对包括标志点特征点对、纹理特征点对和几何特征点对,则将第一距离、第二距离和第三距离进行直接加和、或权重加和,得到子帧间误差。
具体地,标志点特征点对由目标对象上预先粘贴的标志点构成。
具体地,纹理特征点对由目标对象上的纹理特征点构成,例如,纹理特征可以是颜色特征。
具体地,几何特征点对由目标对象上的几何特征点构成,例如,几何特征可以是目标对象的点云特征。
具体地,第一距离、第二距离以及第三距离可以是欧几里得距离或点到切平面的距离或特征距离。
可以理解的是,利用至少一种特征点对进行距离计算并融合各种特征点对的距离,这种计算方式能够保证子帧间误差的计算精度,同时提高了计算方式的灵活。
S452、基于第二扫描帧和与其对应的各关联扫描帧之间的子帧间误差,确定第二扫描帧的帧间误差。
在一个示例中,关联扫描帧包括第一关联扫描帧,相应地,S452可以包括:将第二扫描帧和与其对应的各第一关联扫描帧之间的子帧间误差直接进行加和、或者进行权重加和,得到第二扫描帧的帧间误差。
在另一个示例中,关联扫描帧包括第二关联扫描帧,相应地,S452可以包括:将第二扫描帧和与其对应的各第二关联扫描帧之间的子帧间误差直接进行加和、或者进行权重加和,得到第二扫描帧的帧间误差。
在又一个示例中,关联扫描帧包括第一关联扫描帧和第二关联扫描帧,相应地,S452可以包括:将第二扫描帧和与其对应的各第一关联扫描帧之间的子帧间误差直接进行加和、或者进行权重加和,得到第一加和值;将第二扫描帧和与其对应的各第二关联扫描帧之间的子帧间误差直接进行加和、或者进行权重加和,得到第二加和值;将第一加和值和第二加和值直接进行加和、或者进行权重加和、再求平均值、得到第二扫描帧的帧间误差。
在又一个示例中,关联扫描帧包括第一关联扫描帧和第二关联扫描帧,相应地,S452可以包括:将第二扫描帧和与其对应的各第一关联扫描帧和第二关联扫描帧之间的子帧间误差直接求平均值、进行加和、或者进行权重加和,得到第二扫描帧的帧间误差。
可以理解是,在计算第二扫描帧的帧间误差时,确定该第二扫描帧与每个关联扫描帧之间的子帧间误差,并融合该第二扫描帧与各关联扫描帧之间的子帧间误差得到该第二扫描帧的帧间误差,这种计算方式能够保证帧间误差的计算精度,同时降低了计算难度。
S460、基于各第二扫描帧的帧间误差,确定全局误差。
具体地,全局误差为各第二扫描帧对应的帧间误差的平均值或总和。
具体地,将各第二扫描帧的帧间误差进行求平均值、直接加和、或权重加和,得到全局误差。
S470、若全局误差大于预设误差阈值,则基于第一模型中被锁定区域所对应的第一扫描图像数据对第二扫描图像数据进行实时优化,并更新目标模型。
具体地,本领域技术人员可根据实际情况设置预设误差阈值的具体值,本公开对此不作限定。
在一些示例中,基于第一模型中被锁定区域所对应的第一扫描图像数据对第二扫描图像数据进行实时优化可以包括:调整第二位姿,直至全局误差小于等于预设误差阈值。
具体地,计算调整第二位姿,并基于第一扫描图像数据和调整第二位姿后的第二扫描图像数据,重新确定全局误差,判断优化后对应的全局误差是否小于等于预设误差阈值,若不满足,则继续计算调整第二位姿,直至调整后的第二位姿对应的全局误差小于等于预设误差阈值,得到优化后的第二扫描图像数据。其中,计算调整第二位姿包括基于全局误差重新计算第二扫描图像数据中各个第二扫描帧与与其对应的各关联扫描帧之间帧间相对坐标转换矩阵(帧间相对RT),来调整每个第二扫描帧的坐标转换矩阵(整体RT)。
在另一些示例中,将第一扫描图像数据和第二扫描图像数据输入预先训练好的优化模型,以使优化模型基于第一模型中被锁定区域所对应的第一扫描图像数据对第二扫描图像数据进行实时优化。
本公开实施例,能够基于第一扫描图像数据和第二扫描图像数据,确定全局误差,若全局误差大于预设误差阈值,基于第一扫描图像数据中被锁定的数据和第二扫描图像数据对第二位姿进行优化,使得可及时对第二位姿进行优化,避免全局误差由于不断累计越来越大,如此,可及时基于优化后的第二扫描图像数据重新进行融合,得到新区域对应的优化后的三维模型,为用户提供高质量的扫描效果。其中,新区域对应的优化后的三维模型可以是独立显示的,也可以和所述第一模型中被锁定区域进行缝合,得到并显示一个整体的全新的三维模型。
图5是本公开实施例提供的一种三维扫描装置的结构示意图,该三维扫描装置可以被理解为上述电子设备或者上述电子设备中的部分功能模块。如图5所示,该三维扫描装置500包括:
第一获取模块510,用于获取目标对象的第一区域对应的第一扫描图像数据;
第一生成模块520,用于基于第一扫描图像数据生成第一模型,其中,第一模型中的至少部分区域被锁定;
第二获取模块530,用于在对目标对象继续扫描过程中,至少获取目标对象中不同于第一模型中被锁定区域的第二区域所对应的第二扫描图像数据;
第二生成模块540,用于基于第二扫描图像数据和第一模型生成目标模型;
第一优化模块550,用于基于第一模型中被锁定区域所对应的第一扫描图像数据对第二扫描图像数据进行实时优化,并更新目标模型。
在一些实施例中,第一模型中被锁定区域所对应的第一扫描图像数据,包括:
第一扫描图像数据中的全部数据;或者;
第一扫描图像数据中被用户选择锁定的数据;或者;
第一扫描图像数据中感兴趣区域对应的数据。
在一些实施例中,第二区域包括:
目标对象中不同于第一区域的新区域;和/或;
第一区域中未被锁定区域。
在一些实施例中,第二获取模块530具体用于,在对目标对象继续扫描过程中,实时得到当前扫描帧;
若当前扫描帧全部对应于第一模型中被锁定区域,则确定当前扫描帧不参与更新第一模型;
若当前扫描帧存在部分数据对应于第一模型中被锁定区域,则确定当前扫描帧对应于第一模型中被锁定区域的部分数据不参与更新第一模型,并确定当前扫描帧除对应于第一模型中被锁定区域的部分数据外的剩余数据为第二扫描图像数据;
若当前扫描帧不存在数据对应于第一模型中被锁定区域,则确定当前扫描帧为第二扫描图像数据。
在一些实施例中,第二生成模块540具体用于,在保持第一模型中被锁定区域不变的情况下,基于第一区域中未被锁定区域所对应的第二扫描图像数据更新第一模型,和/或,基于目标对象中不同于第一区域的新区域所对应的第二扫描图像数据更新第一模型,从而生成目标模型。
在一些实施例中,该装置还包括删除模块,具体用于:
在将第一模型中被锁定区域锁定之前,删除第一模型中的至少部分区域所对应的第一扫描图像数据;或者;
在将第一模型中被锁定区域锁定之后且获取第二扫描图像之前,删除第一模型中除被锁定区域之外的其它区域中的至少部分区域所对应的第一扫描图像数据。
在一些实施例中,第一模型中被删除区域所对应的第一扫描图像数据包括:
第一扫描图像数据中被用户选择删除的数据;和/或;
第一扫描图像数据中目标对象的预设忽略区域所对应的数据。
在一些实施例中,该装置还包括保存模块,具体用于:
保存对被锁定区域进行锁定之前的第一模型;和/或;
保存对被删除区域进行删除之前的第一模型;和/或;
保存获取第二扫描图像数据之前的第一模型。
在一些实施例中,该装置还包括显示模块,具体用于:
显示基于第一扫描图像数据生成的第一模型;和/或;
在第一模型发生更新后,实时显示更新后的第一模型;和/或;
显示基于第二扫描图像数据和第一模型生成的目标模型;和/或;
在目标模型更新后,实时显示更新后的目标模型。
在一些实施例中,第一扫描图像数据包括多帧第一扫描帧、以及多帧第一扫描帧对应的第一位姿,第二扫描图像数据包括至少一帧第二扫描帧、以及至少一帧第二扫描帧对应的第二位姿;
其中,第一优化模块550包括:
第一确定子模块,用于基于第一扫描图像数据和第二扫描图像数据,确定第二扫描帧的帧间误差;
第二确定子模块,用于基于各第二扫描帧的帧间误差,确定全局误差;
第一优化子模块,用于若全局误差大于预设误差阈值,则基于第一模型中被锁定区域所对应的第一扫描图像数据对第二扫描图像数据进行实时优化。
在一些实施例中,第一确定子模块包括:
第一确定单元,用于针对第二扫描帧和与其对应的每帧关联扫描帧,基于第二扫描帧对应的第二位姿和关联扫描帧对应的位姿,确定二者之间的子帧间误差,其中,关联扫描帧包括:第一关联扫描帧和/或第二关联扫描帧,第一关联扫描帧为与第二扫描帧具有重叠的图像区域的其它第二扫描帧,第二关联扫描帧为与第二扫描帧具有重叠的图像区域的第一扫描帧;
第二确定单元,用于基于第二扫描帧和与其对应的各关联扫描帧之间的子帧间误差,确定第二扫描帧的帧间误差。
在一些实施例中,第一确定单元具体用于,针对第二扫描帧和与其对应的每帧关联扫描帧,基于第二扫描帧对应的第二位姿和关联扫描帧对应的位姿,确定二者中的特征点对之间的距离,并基于距离确定子帧间误差。
在一些实施例中,特征点对包括标志点特征点对、纹理特征点对、和/或几何特征点对。
第一优化子模块,具体用于若全局误差大于预设误差阈值,则调整第二位姿,直至全局误差小于等于预设误差阈值。
本实施例提供的装置能够执行上述任一实施例的方法,其执行方式和有益效果类似,在这里不再赘述。
本公开实施例还提供了一种电子设备,该电子设备包括:存储器,存储器中存储有计算机程序;处理器,用于执行所述计算机程序,当所述计算机程序被所述处理器执行时可以实现上述任一实施例的方法。
示例的,图6是本公开实施例中的一种电子设备的结构示意图。下面具体参考图6,其示出了适于用来实现本公开实施例中的电子设备600的结构示意图。本公开实施例中的电子设备600可以包括但不限于诸如移动电话、笔记本电脑、数字广播接收器、PDA(个人数字助理)、PAD(平板电脑)、PMP(便携式多媒体播放器)、车载终端(例如车载导航终端)等等的移动终端以及诸如数字TV、台式计算机等等的固定终端。图6示出的电子设备仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
如图6所示,电子设备600可以包括处理装置(例如中央处理器、图形处理器等)601,其可以根据存储在只读存储器(ROM)602中的程序或者从存储装置608加载到随机访问存储器(RAM)603中的程序而执行各种适当的动作和处理。在RAM 603中,还存储有电子设备600操作所需的各种程序和数据。处理装置601、ROM 602以及RAM 603通过总线604彼此相连。输入/输出(I/O)接口605也连接至总线604。
通常,以下装置可以连接至I/O接口605:包括例如触摸屏、触摸板、键盘、鼠标、摄像头、麦克风、加速度计、陀螺仪等的输入装置606;包括例如液晶显示器(LCD)、扬声器、振动器等的输出装置607;包括例如磁带、硬盘等的存储装置608;以及通信装置609。通信装置609可以允许电子设备600与其他设备进行无线或有线通信以交换数据。虽然图6示出了具有各种装置的电子设备600,但是应理解的是,并不要求实施或具备所有示出的装置。可以替代地实施或具备更多或更少的装置。
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在非暂态计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信装置609从网络上被下载和安装,或者从存储装置608被安装,或者从ROM 602被安装。在该计算机程序被处理装置601执行时,执行本公开实施例的方法中限定的上述功能。
需要说明的是,本公开上述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、RF(射频)等等,或者上述的任意合适的组合。
在一些实施方式中,客户端、服务器可以利用诸如HTTP(HyperText TransferProtocol,超文本传输协议)之类的任何当前已知或未来研发的网络协议进行通信,并且可以与任意形式或介质的数字数据通信(例如,通信网络)互连。通信网络的示例包括局域网(“LAN”),广域网(“WAN”),网际网(例如,互联网)以及端对端网络(例如,ad hoc端对端网络),以及任何当前已知或未来研发的网络。
上述计算机可读介质可以是上述电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。
上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该电子设备:
获取目标对象的第一区域对应的第一扫描图像数据;
基于第一扫描图像数据生成第一模型,其中,第一模型中的至少部分区域被锁定;
在对目标对象继续扫描过程中,至少获取目标对象中不同于第一模型中被锁定区域的第二区域所对应的第二扫描图像数据;
基于第二扫描图像数据和第一模型生成目标模型;
基于第一模型中被锁定区域所对应的第一扫描图像数据对第二扫描图像数据进行实时优化,并更新目标模型。
可以以一种或多种程序设计语言或其组合来编写用于执行本公开的操作的计算机程序代码,上述程序设计语言包括但不限于面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本公开实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。其中,单元的名称在某种情况下并不构成对该单元本身的限定。
本文中以上描述的功能可以至少部分地由一个或多个硬件逻辑部件来执行。例如,非限制性地,可以使用的示范类型的硬件逻辑部件包括:现场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、片上系统(SOC)、复杂可编程逻辑设备(CPLD)等等。
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
本公开实施例还提供一种计算机可读存储介质,所述存储介质中存储有计算机程序,当所述计算机程序被处理器执行时可以实现上述任一实施例的方法,其执行方式和有益效果类似,在这里不再赘述。
需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述仅是本公开的具体实施方式,使本领域技术人员能够理解或实现本公开。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本公开的精神或范围的情况下,在其它实施例中实现。因此,本公开将不会被限制于本文所述的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (16)
1.一种三维扫描方法,其特征在于,包括:
获取目标对象的第一区域对应的第一扫描图像数据;
基于所述第一扫描图像数据生成第一模型,其中,所述第一模型中的至少部分区域被锁定;
在对所述目标对象继续扫描过程中,至少获取所述目标对象中不同于所述第一模型中被锁定区域的第二区域所对应的第二扫描图像数据;
基于所述第二扫描图像数据和所述第一模型生成目标模型;
基于所述第一模型中被锁定区域所对应的第一扫描图像数据对所述第二扫描图像数据进行实时优化,并更新所述目标模型;
所述基于所述第二扫描图像数据和所述第一模型生成目标模型,包括:将所述第一扫描图像数据中被锁定的数据、以及所述第二扫描图像数据拼接起来,对所述第一模型中除被锁定区域之外的区域进行更新,生成所述目标模型;
所述基于所述第一模型中被锁定区域所对应的第一扫描图像数据对所述第二扫描图像数据进行实时优化,包括:调整所述第二扫描图像数据中的第二位姿,直至全局误差小于等于预设误差阈值,所述全局误差基于所述第一扫描图像数据和所述第二扫描图像数据计算得到;
所述方法还包括:在获取所述第二扫描图像数据之前,删除所述第一模型中除被锁定区域之外的其它区域中的至少部分区域所对应的第一扫描图像数据。
2.根据权利要求1所述的方法,其特征在于,所述第一模型中被锁定区域所对应的第一扫描图像数据,包括:
所述第一扫描图像数据中的全部数据;或者;
所述第一扫描图像数据中被用户选择锁定的数据;或者;
所述第一扫描图像数据中感兴趣区域对应的数据。
3.根据权利要求1所述的方法,其特征在于,所述第二区域包括:
所述目标对象中不同于所述第一区域的新区域;和/或;
所述第一区域中未被锁定区域。
4.根据权利要求3所述的方法,其特征在于,所述在对所述目标对象继续扫描过程中,至少获取所述目标对象中不同于所述第一区域的区域所对应的第二扫描图像数据,包括:
在对所述目标对象继续扫描过程中,实时得到当前扫描帧;
若所述当前扫描帧全部对应于所述第一模型中被锁定区域,则确定所述当前扫描帧不参与更新所述第一模型;
若所述当前扫描帧存在部分数据对应于所述第一模型中被锁定区域,则确定所述当前扫描帧对应于所述第一模型中被锁定区域的部分数据不参与更新所述第一模型,并确定所述当前扫描帧除对应于所述第一模型中被锁定区域的部分数据外的剩余数据为所述第二扫描图像数据;
若所述当前扫描帧不存在数据对应于所述第一模型中被锁定区域,则确定所述当前扫描帧为所述第二扫描图像数据。
5.根据权利要求3所述的方法,其特征在于,基于所述第二扫描图像数据和所述第一模型生成目标模型,包括:
在保持所述第一模型中被锁定区域不变的情况下,基于所述第一区域中未被锁定区域所对应的第二扫描图像数据更新所述第一模型,和/或,基于所述目标对象中不同于所述第一区域的新区域所对应的第二扫描图像数据更新所述第一模型,从而生成所述目标模型。
6.根据权利要求1所述的方法,其特征在于,
在将所述第一模型中被锁定区域锁定之前,还包括:删除所述第一模型中的至少部分区域所对应的第一扫描图像数据;或者;
在将所述第一模型中被锁定区域锁定之后且获取所述第二扫描图像之前,删除所述第一模型中除被锁定区域之外的其它区域中的至少部分区域所对应的第一扫描图像数据。
7.根据权利要求6所述的方法,其特征在于,所述第一模型中被删除区域所对应的第一扫描图像数据包括:
所述第一扫描图像数据中被用户选择删除的数据;和/或;
所述第一扫描图像数据中所述目标对象的预设忽略区域所对应的数据。
8.根据权利要求6所述的方法,其特征在于,还包括:
保存对被锁定区域进行锁定之前的第一模型;和/或;
保存对被删除区域进行删除之前的第一模型;和/或;
保存获取所述第二扫描图像数据之前的第一模型。
9.根据权利要求6所述的方法,其特征在于,还包括:
显示基于所述第一扫描图像数据生成的第一模型;和/或;
在所述第一模型发生更新后,实时显示更新后的第一模型;和/或;
显示基于所述第二扫描图像数据和所述第一模型生成的目标模型;和/或;
在所述目标模型更新后,实时显示更新后的目标模型。
10.根据权利要求1至9任一项所述的方法,其特征在于,所述第一扫描图像数据包括多帧第一扫描帧、以及所述多帧第一扫描帧对应的第一位姿,所述第二扫描图像数据包括至少一帧第二扫描帧、以及所述至少一帧第二扫描帧对应的第二位姿;
其中,所述基于所述第一模型中被锁定区域对应的第一扫描图像数据对所述第二扫描图像数据进行实时优化,包括:
基于所述第一扫描图像数据和所述第二扫描图像数据,确定所述第二扫描帧的帧间误差;
基于各所述第二扫描帧的所述帧间误差,确定全局误差;
若所述全局误差大于预设误差阈值,则基于所述第一模型中被锁定区域所对应的第一扫描图像数据对所述第二扫描图像数据进行实时优化。
11.根据权利要求10所述的方法,其特征在于,所述基于所述第一扫描图像数据和所述第二扫描图像数据,确定所述第二扫描帧的帧间误差,包括:
针对所述第二扫描帧和与其对应的每帧关联扫描帧,基于所述第二扫描帧对应的第二位姿和所述关联扫描帧对应的位姿,确定二者之间的子帧间误差,其中,所述关联扫描帧包括:第一关联扫描帧和/或第二关联扫描帧,所述第一关联扫描帧为与所述第二扫描帧具有重叠的图像区域的其它第二扫描帧,第二关联扫描帧为与所述第二扫描帧具有重叠的图像区域的第一扫描帧;
基于所述第二扫描帧和与其对应的各所述关联扫描帧之间的子帧间误差,确定所述第二扫描帧的所述帧间误差。
12.根据权利要求11所述的方法,其特征在于,所述基于所述第二扫描帧对应的第二位姿和所述关联扫描帧对应的位姿,确定二者之间的子帧间误差,包括:
基于所述第二扫描帧对应的第二位姿和所述关联扫描帧对应的位姿,确定二者中的特征点对之间的距离,并基于所述距离确定所述子帧间误差。
13.根据权利要求12所述的方法,其特征在于,所述特征点对包括标志点特征点对、纹理特征点对、和/或几何特征点对。
14.一种三维扫描装置,其特征在于,包括:
第一获取模块,用于获取目标对象的第一区域对应的第一扫描图像数据;
第一生成模块,用于基于所述第一扫描图像数据生成第一模型,其中,所述第一模型中的至少部分区域被锁定;
第二获取模块,用于在对所述目标对象继续扫描过程中,至少获取所述目标对象中不同于所述第一模型中被锁定区域的第二区域所对应的第二扫描图像数据;
第二生成模块,用于基于所述第二扫描图像数据和所述第一模型生成目标模型;
第一优化模块,用于基于所述第一模型中被锁定区域所对应的第一扫描图像数据对所述第二扫描图像数据进行实时优化,并更新所述目标模型;
所述第二生成模块,具体用于将所述第一扫描图像数据中被锁定的数据、以及所述第二扫描图像数据拼接起来,对所述第一模型中除被锁定区域之外的区域进行更新,生成所述目标模型;
所述第一优化模块,具体用于基于所述第一扫描图像数据调整所述第二扫描图像数据中的第二位姿,直至全局误差小于等于预设误差阈值,所述全局误差基于所述第一扫描图像数据和所述第二扫描图像数据计算得到;
所述装置还包括:删除模块,用于在获取所述第二扫描图像数据之前,删除所述第一模型中除被锁定区域之外的其它区域中的至少部分区域所对应的第一扫描图像数据。
15.一种电子设备,其特征在于,包括:
处理器和存储器,其中,所述存储器中存储有计算机程序,当所述计算机程序被所述处理器执行时,所述处理器执行权利要求1-13中任一项所述的方法。
16.一种计算机可读存储介质,其特征在于,所述存储介质中存储有计算机程序,当所述计算机程序被处理器执行时,实现如权利要求1-13中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410495674.7A CN118071941B (zh) | 2024-04-24 | 2024-04-24 | 三维扫描方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410495674.7A CN118071941B (zh) | 2024-04-24 | 2024-04-24 | 三维扫描方法、装置、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN118071941A CN118071941A (zh) | 2024-05-24 |
CN118071941B true CN118071941B (zh) | 2024-08-02 |
Family
ID=91095690
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410495674.7A Active CN118071941B (zh) | 2024-04-24 | 2024-04-24 | 三维扫描方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN118071941B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107427189A (zh) * | 2015-03-06 | 2017-12-01 | 阿莱恩技术有限公司 | 口内图像的自动选择和锁定 |
CN115185415A (zh) * | 2022-06-30 | 2022-10-14 | 先临三维科技股份有限公司 | 扫描数据显示方法、装置、设备及存储介质 |
CN115187664A (zh) * | 2022-06-30 | 2022-10-14 | 先临三维科技股份有限公司 | 位置调整方法、装置、设备及存储介质 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA2683206C (en) * | 2009-10-17 | 2018-07-03 | Hermary Opto Electronics Inc. | Enhanced imaging method and apparatus |
US9510757B2 (en) * | 2014-05-07 | 2016-12-06 | Align Technology, Inc. | Identification of areas of interest during intraoral scans |
CN115187663A (zh) * | 2022-06-30 | 2022-10-14 | 先临三维科技股份有限公司 | 扫描仪姿态定位方法、装置、设备及存储介质 |
CN116168180A (zh) * | 2023-02-28 | 2023-05-26 | 先临三维科技股份有限公司 | 点云处理方法、装置、设备及存储介质 |
-
2024
- 2024-04-24 CN CN202410495674.7A patent/CN118071941B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107427189A (zh) * | 2015-03-06 | 2017-12-01 | 阿莱恩技术有限公司 | 口内图像的自动选择和锁定 |
CN115185415A (zh) * | 2022-06-30 | 2022-10-14 | 先临三维科技股份有限公司 | 扫描数据显示方法、装置、设备及存储介质 |
CN115187664A (zh) * | 2022-06-30 | 2022-10-14 | 先临三维科技股份有限公司 | 位置调整方法、装置、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN118071941A (zh) | 2024-05-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111292420B (zh) | 用于构建地图的方法和装置 | |
CN110009059B (zh) | 用于生成模型的方法和装置 | |
CN109754464B (zh) | 用于生成信息的方法和装置 | |
CN110062157B (zh) | 渲染图像的方法、装置、电子设备和计算机可读存储介质 | |
KR20200018411A (ko) | 전극편의 버를 검출하기 위한 방법 및 장치 | |
CN110288519A (zh) | 图像美化方法、装置及电子设备 | |
CN114964296B (zh) | 车辆行驶路径规划方法、装置、设备和计算机可读介质 | |
CN111783662A (zh) | 姿态估计方法、估计模型训练方法、装置、介质及设备 | |
CN111340865B (zh) | 用于生成图像的方法和装置 | |
CN112308950A (zh) | 视频生成方法及装置 | |
CN115358919A (zh) | 图像处理方法、装置、设备及存储介质 | |
CN113610034B (zh) | 识别视频中人物实体的方法、装置、存储介质及电子设备 | |
CN110717467A (zh) | 头部姿势的估计方法、装置、设备及存储介质 | |
CN114422698A (zh) | 视频生成方法、装置、设备及存储介质 | |
CN112714263B (zh) | 视频生成方法、装置、设备及存储介质 | |
CN112258622B (zh) | 图像处理方法、装置、可读介质及电子设备 | |
CN111915532B (zh) | 图像追踪方法、装置、电子设备及计算机可读介质 | |
CN111833459B (zh) | 一种图像处理方法、装置、电子设备及存储介质 | |
CN110070554A (zh) | 图像处理方法、装置、硬件装置 | |
CN117541511A (zh) | 一种图像处理方法、装置、电子设备及存储介质 | |
CN118071941B (zh) | 三维扫描方法、装置、设备及存储介质 | |
CN110378948B (zh) | 3d模型重建方法、装置及电子设备 | |
CN109871465B (zh) | 一种时间轴计算方法、装置、电子设备及存储介质 | |
CN110264431A (zh) | 视频美化方法、装置及电子设备 | |
CN111385460A (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 |