CN106023305A - 三维空间的建模方法和装置 - Google Patents

三维空间的建模方法和装置 Download PDF

Info

Publication number
CN106023305A
CN106023305A CN201610306302.0A CN201610306302A CN106023305A CN 106023305 A CN106023305 A CN 106023305A CN 201610306302 A CN201610306302 A CN 201610306302A CN 106023305 A CN106023305 A CN 106023305A
Authority
CN
China
Prior art keywords
rectangle
wall
picture
centerdot
stereochemical structure
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.)
Granted
Application number
CN201610306302.0A
Other languages
English (en)
Other versions
CN106023305B (zh
Inventor
曹屹
苏芮
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Moyihome Network Technology Development Co ltd
Original Assignee
Individual
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Individual filed Critical Individual
Priority to CN201610306302.0A priority Critical patent/CN106023305B/zh
Publication of CN106023305A publication Critical patent/CN106023305A/zh
Application granted granted Critical
Publication of CN106023305B publication Critical patent/CN106023305B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/60Type of objects
    • G06V20/64Three-dimensional objects

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Graphics (AREA)
  • Geometry (AREA)
  • Software Systems (AREA)
  • Multimedia (AREA)
  • Processing Or Creating Images (AREA)

Abstract

本发明公开了一种三维空间的建模方法和装置,其中该三维空间的建模方法包括:读取图片,上述图片为预先绘制的欲建立的模型的线条图片;采用图像处理技术识别上述图片中的各个矩形;根据每个矩形的长度和宽度的大小,为每个矩形设置对应的立体结构;其中,该立体结构包括:与上述矩形的四边分别对应的四面墙体、与上述矩形对应的顶面和地面;根据每个矩形间的相对位置关系,拼接每个矩形对应的立体结构,得到上述线条图片的三维空间模型。通过本发明,能够根据粗略的线条图片生成三维空间,且操作简单,提高了三维建模的效率。

Description

三维空间的建模方法和装置
技术领域
本发明涉及计算机建模技术领域,尤其是涉及一种三维空间的建模方法和装置。
背景技术
在计算机内生成物体的三维效果图主要有两类方法:一类是使用几何建模软件通过人机交互生成人为控制下的物体的三维几何模型,另一类是通过一定的手段获取物体的几何形状,基于该几何形状构建物体的三维模型。前者实现技术己经十分成熟,现有若干软件支持,比如3DMax、AutoCAD、UG等,一般使用具有数学表达式的曲线曲面表示几何形状。后者一般称为三维重建过程,三维重建是指利用二维投影恢复物体三维信息形状的数学过程和计算机技术,包括数据获取、预处理、点云拼接和特征分析等步骤。
在虚拟现实、房地产和公共安全等领域,有时建筑模型中大量的细节必须手工构造,从而需要投入大量的人力资源,但在多数情况下,只需具有表意性的3D模型,这种表意性的3D模型无需细节操作,因为上述方法(如3DMax、AutoCAD、UG软件)操作复杂,对操作者的技术背景要求较高,不适合应用于表意性的3D模型。
针对上述三维建模方法操作复杂,对操作者的技术要求较高的问题,目前尚未提出有效的解决方案。
发明内容
有鉴于此,本发明的目的在于提供一种三维空间的建模方法和装置,使三维建模简单高效。
为了实现上述目的,本发明实施例采用的技术方案如下:
第一方面,本发明实施例提供了一种三维空间的建模方法,包括:读取图片,上述图片为预先绘制的欲建立的模型的线条图片;采用图像处理技术识别上述图片中的各个矩形;根据每个矩形的长度和宽度的大小,为每个矩形设置对应的立体结构;其中,该立体结构包括:与上述矩形的四边分别对应的四面墙体、与上述矩形对应的顶面和地面;根据每个矩形间的相对位置关系,拼接每个矩形对应的立体结构,得到上述线条图片的三维空间模型。
结合第一方面,本发明实施例提供了第一方面的第一种可能的实施方式,其中,根据每个上述矩形的长度和宽度的大小,为每个上述矩形设置对应的立体结构包括:根据每个矩形的长度和宽度的大小,对基本空间单元进行缩放,得到每个矩形的立体结构。
结合第一方面的第一种可能的实施方式,本发明实施例提供了第一方面的第二种可能的实施方式,其中,根据如下矩阵对基本空间单元进行缩放,
x y z K x 0 0 0 K y 0 0 0 K z = K x · x K y · y K z · z
其中,Kx,Ky,Kz分别为x,y,z坐标方向对应的缩放因子;(x,y,z)为基本空间单元的初始坐标;当矩形的长度为W,宽度为H,上述缩放因子如下:
上述基本空间单元的左侧墙体和右侧墙体:Kx=W,Ky=a,Kz=b;
上述基本空间单元的前侧墙体和后侧墙体:Kx=a,Ky=H,Kz=b;
上述基本空间单元的顶面和地面:Kx=W,Ky=H,Kz=b;
其中,a为墙体厚度系数,b为墙体高度系数。
结合第一方面的第二种可能的实施方式,本发明实施例提供了第一方面的第三种可能的实施方式,其中,当接收到移动上述三维空间模型中的单个墙体的指示时,设置与该单个墙体头尾相邻的墙体的缩放因子等于该单个墙体移动后的坐标与该相邻的墙体起始点坐标之间的长度。
结合第一方面,本发明实施例提供了第一方面的第四种可能的实施方式,其中,采用图像处理技术识别图片中的各个矩形包括:对该图片进行灰度处理,得到该图片的灰度图片;按照如下公式对该灰度图片进行二值化处理,得到黑白图片:
d s t ( x , y ) = max V a l i f s r c ( x , y ) > t h r e a s h 0
maxVal=255,threash=100,像素点的灰度值大于100的设定为最大值,小于100的像素点的设定为0;对该黑白图片进行边缘检测并描绘轮廓;根据描绘后的轮廓识别各个矩形。
结合第一方面的第四种可能的实施方式,本发明实施例提供了第一方面的第五种可能的实施方式,其中,根据描绘后的轮廓识别各个矩形包括:从描绘后的该轮廓中确定封闭轮廓的角点,当角点数量大于2且小于5即可确定为矩形。
结合第一方面,本发明实施例提供了第一方面的第六种可能的实施方式,其中,采用图像处理技术识别图片中的各个矩形还包括:根据如下公式检测各个矩形是否重合:
C=Min(X1+W1,X2+W2)-Max(X1,X2)
R=Min(Y1+H1,Y2+H2)-Max(Y1,Y2)
R a t i o = C · R W 1 · H 1 + W 2 · H 2 - C · R
Ratio=0的矩形将被保留,其中Ratio为重叠比率,(X1,Y1)为第一矩形的左上角坐标,(X2,Y2)为第二矩形的左上角坐标,W1和H1分别为该第一矩形的长度和宽度,W2和H2分别为该第二矩形长度和宽度;如果存在两两重合的矩形,丢弃上述两两重合的矩形。
第二方面,本发明实施例提供了一种三维空间的建模装置,包括:图片读取模块,用于读取图片,该图片为预先绘制的欲建立的模型的线条图片;图片识别模块,用于采用图像处理技术识别该图片中的各个矩形;立体结构构建模块,用于根据每个矩形的长度和宽度的大小,为每个矩形设置对应的立体结构;其中,该立体结构包括:与上述矩形的四边分别对应的四面墙体、与上述矩形对应的顶面和地面;拼接模块,用于根据每个矩形间的相对位置关系,拼接每个矩形对应的立体结构,得到该线条图片的三维空间模型。
结合第二方面,本发明实施例提供了第二方面的第一种可能的实施方式,其中,立体结构构建模块包括:缩放单元,用于根据每个矩形的长度和宽度的大小,对基本空间单元进行缩放,得到每个矩形的立体结构。
结合第二方面的第一种可能的实施方式,本发明实施例提供了第二方面的第二种可能的实施方式,其中,缩放单元根据如下矩阵对基本空间单元进行缩放,
x y z K x 0 0 0 K y 0 0 0 K z = K x · x K y · y K z · z
其中,Kx,Ky,Kz分别为x,y,z坐标方向对应的缩放因子;(x,y,z)为该基本空间单元的初始坐标;当上述矩形的长度为W,宽度为H,缩放因子如下:
所述基本空间单元的左侧墙体和右侧墙体:Kx=W,Ky=a,Kz=b;
所述基本空间单元的前侧墙体和后侧墙体:Kx=a,Ky=H,Kz=b;
所述基本空间单元的顶面和地面:Kx=W,Ky=H,Kz=b;
其中,a为墙体厚度系数,b为墙体高度系数。
本发明实施例提供的三维空间的建模方法和装置,通过读取图片、识别图片中的各个矩形、为各个矩形设置对应的立体结构、拼接上述立体结构实现三维建模,能够根据粗略的线条图片生成三维空间,且操作简单,提高了三维建模的效率。
为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1示出了本发明实施例提供的终端的结构框图;
图2示出了本发明第一实施例提供的一种三维空间的建模方法的流程示意图;
图3示出了本发明第一实施例提供的手绘线条的照片;
图4示出了本发明第一实施例提供的矩形识别示意图;
图5示出了本发明第一实施例提供的墙体自动拼接示意图;
图6示出了本发明第一实施例提供的三维空间模型示意图;
图7示出了本发明第二实施例提供的一种三维空间的建模装置的结构框图。
具体实施方式
本发明实施例所提供的三维空间的建模方法和装置可以用于各种终端设备,例如计算机、智能手机、平板电脑、穿戴式移动终端等。
图1示出了一种可应用于本发明实施例中的用户终端100的结构框图。如图1所示,用户终端100包括存储器102、存储控制器104,一个或多个(图中仅示出一个)处理器106、外设接口108、射频模块110、拍摄模块112、触控屏幕114等。这些组件通过一条或多条通讯总线/信号线116相互通讯。
存储器102可用于存储软件程序以及模块,如本发明实施例中的三维空间的建模方法和装置对应的程序指令/模块,处理器106通过运行存储在存储器102内的软件程序以及模块,从而执行各种功能应用以及数据处理,如本发明实施例提供的三维空间的建模方法。
存储器102可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。处理器106以及其他可能的组件对存储器102的访问可在存储控制器104的控制下进行。
外设接口108将各种输入/输出装置耦合至处理器106以及存储器102。在一些实施例中,外设接口108,处理器106以及存储控制器104可以在单个芯片中实现。在其他一些实例中,他们可以分别由独立的芯片实现。
射频模块110用于接收以及发送电磁波,实现电磁波与电信号的相互转换,从而与通讯网络或者其他设备进行通讯。
拍摄模块112向用户提供拍摄接口,其可包括相机、摄像头等。
触控屏幕114在用户终端100与用户之间同时提供一个输出及输入界面。在本实施例中,该触控屏幕114支持单点和多点触控操作,例如,该触控屏幕114可为支持单点和多点触控操作的电容式触摸屏或电阻式触摸屏等。支持单点和多点触控操作是触控屏幕114能感应到来自该触摸屏11上一个或多个位置处同时产生的触控操作,并将该感应到的多点触控操作交由处理器106进行处理。
可以理解,图1所示的结构仅为示意,用户终端100还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。图1中所示的各组件可以采用硬件、软件或其组合实现。
本发明实施例提出的三维空间的建模方法和装置,提供了一种新的三维建模方法。该三维空间的建模方法和装置可适用于Android操作系统、iOS操作系统、Windows操作系统等平台。具体地,本发明实施例提出的三维空间的建模方法和装置可应用于用户终端100中以实现三维建模。
下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本发明的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
实施例1
图2示出了本发明第一实施例提供的一种三维空间的建模方法的流程图,应当说明的是,本发明实施例所述的三维空间的建模方法并不以图2以及以下所述的具体顺序为限制。应当理解,在其它实施例中,所述的三维空间的建模方法其中部分步骤的顺序可以根据实际需要相互交换,或者其中的部分步骤也可以省略或删除。下面将对图2所示建模方法的具体流程进行详细阐述。
步骤S110,读取图片,该图片为预先绘制的欲建立的模型的线条图片。
具体地,上述线条图片可以是手绘的粗略线条图片(例如图3所示的手绘线条的照片),也可以是建筑、设计图纸。
步骤S120,采用图像处理技术识别上述图片中的各个矩形。
对图3所示的手绘线条的照片进行灰度处理,得到图片的灰度图;再按照如下公式对该灰度图进行二值化处理,得到黑白图片:
d s t ( x , y ) = max V a l i f s r c ( x , y ) > t h r e a s h 0
maxVal=255,threash=100,像素点的灰度值大于100的设定为最大值,小于100的像素点的设定为0;对该黑白图片进行边缘检测(阈值设置为100)并描绘轮廓。在描绘轮廓时,使用单位为8像素大小的线条,以提高识别率。
在后续步骤中对上述轮廓采用设置对应的立体结构,拟合出该轮廓的整体,在本实施例中使用基本空间单元来构建对应的立体结构,再将立体结构拼接,因此需要识别轮廓中的矩形。
采用矩形逼近的方式确定矩形区域。通过确定封闭轮廓的角点来确定矩形,当角点数量大于2且小于5即可认为是矩形。
在确定矩形后,还需要检测排除重合的矩形,重合包括部分重合和全部重合,每个矩形与其它矩形一一计算重叠率,公式如下:
C=Min(X1+W1,X2+W2)-Max(X1,X2)
R=Min(Y1+H1,Y2+H2)-Max(Y1,Y2)
R a t i o = C · R W 1 · H 1 + W 2 · H 2 - C · R
上述公式中Ratio为重叠比率,当Ratio为0时,表示进行比较的两个矩形完全不重合,保留上述两个矩形;当Ratio为其它数值时,表示进行比较的两个矩形重合,上述两个矩形均不保留。上述公式中(X1,Y1)为第一矩形的左上角坐标,(X2,Y2)为第二矩形的左上角坐标,W1和H1分别为第一矩形的长度和宽度,W2和H2分别为第二矩形长度和宽度。
图4示出了手绘线条照片识别后的矩形示意图。其中每个矩形的左上角点和右下角点的坐标分别保存,上述两点的坐标既包括了矩形的长度和宽度信息又包括了位置信息,且由于不需要保存每个矩形的全部坐标,占用的存储容量小。
步骤S130,根据每个矩形的长度和宽度的大小,为每个矩形设置对应的立体结构。其中立体结构包括:与该矩形的四边分别对应的四面墙体、与该矩形对应的顶面和地面。
具体地,为每个矩形设置对应的立体结构,包括根据每个矩形的长度和宽度的大小,对基本空间单元进行缩放。该基本空间单元包括左侧墙体、右侧墙体、前侧墙体、后侧墙体、顶面和地面。在具体实现时,该基本空间单元的组成尺寸可以根据需要设置,本实施例中各墙体以长1米,宽1米,高1米为例,顶面和地面以长1米,宽1米为例。
分别保存上述基本空间单元的顶面和地面的中心点、右侧墙体的中心点,前侧墙体的中心点的坐标,以上述中心点为基础进行缩放。
缩放矩阵如下:
x y z K x 0 0 0 K y 0 0 0 K z = K x · x K y · y K z · z
其中,Kx,Ky,Kz分别为x,y,z坐标方向对应的缩放因子;(x,y,z)为基本空间单元的初始坐标;当矩形的长度为W,宽度为H,上述缩放因子如下:
基本空间单元的左侧墙体和右侧墙体:Kx=W,Ky=a,Kz=b;
基本空间单元的前侧墙体和后侧墙体:Kx=a,Ky=H,Kz=b;
基本空间单元的顶面和地面:Kx=W,Ky=H,Kz=b;
其中,a为墙体厚度系数,b为墙体高度系数。
本实施例中a取值为0.3,b取值为3,即墙体的厚度为0.3米,高度为3米。
基本空间单元可以预先放置于每个矩形的对应位置,再在该位置进行缩放;也可以先缩放再根据每个矩形之间的相对位置移动。
步骤S140,根据每个矩形间的相对位置关系,拼接每个矩形对应的立体结构。
在拼接每个矩形对应的立体结构时,判断上述墙体是否相交,如果相交则根据下述方式自动拼接。
图5示出了墙体自动拼接的示意图。首先判断两个墙体之间的距离,根据首尾两点坐标分别确定墙体1和墙体2的直线方程:
A x + B y + C = 0 A x + B y + D = 0
计算两个墙体之间的距离:
d = | C - D | A 2 + B 2
当d<0.3则判断两个墙体相交,删除原有的墙体1、2,新建墙体4、5、6。墙体数量为:2Nw-1,其中Nw为相交的墙体数量。
新建墙体的坐标以如下方式确定:
如果是竖墙,将y按照从小到大进行排序,两个墙体x坐标的中点坐标即融合后的墙体坐标x:
x = x 1 + x 2 2
按顺序求出原墙体各顶点之间的距离,如图5中所示,墙体1中左侧顶点与墙体2左侧顶点的距离,墙体2中左侧顶点与墙体1右侧顶点的距离,墙体1中右侧顶点与墙体2右侧顶点的距离。
将上述距离值作为各墙体的缩放因子:
K y = ( y i - y j ) 2
其中,(xi,yi)与(xj,yj)为相邻两顶点坐标。排列经缩放的坐标y,即融合后的墙体y坐标。
如果是横墙,将x按照从小到大进行排序,两个墙体y坐标的中点坐标即融合后的墙体坐标y:
y = y 1 + y 2 2
按顺序求出原墙体各顶点之间的距离,如图5中所示,墙体1中左侧顶点与墙体2左侧顶点的距离,墙体2中左侧顶点与墙体1右侧顶点的距离,墙体1中右侧顶点与墙体2右侧顶点的距离。
将上述距离值作为各墙体的缩放因子:
K x = ( x i - x j ) 2
其中,(xi,yi)与(xj,yj)为相邻两顶点坐标。排列经缩放的坐标x,即融合后的墙体x坐标。
应用上述方法得到的三维空间模型如图6示出的建模完成后的三维空间模型示意图,该三维空间模型是对图3所示的图片进行操作后得到的。
在得到上述三维空间模型后,还可以快速调节尺寸。例如可以通过移动模型中的单个墙体来调整空间的大小。当移动单个墙体时,该单个墙体被移动到预定位置,与该单个墙体组成同一闭合空间的相邻的两个墙体进行适当的缩放,从而保证空间的完整性,缩放因子等于该单个墙体移动后的坐标与上述两个相邻的墙体起始点坐标之间的长度。因此简单移动单个墙体就可以灵活调节空间的尺寸。
在得到上述三维空间模型后,还可以平移。平移矩阵如下:
x &prime; y &prime; z &prime; 1 = 1 0 0 t x 0 1 0 t y 0 0 1 t z 0 0 0 1 x y z 1 = x + t x y + t y z + t z 1
其中,(x′,y′,z′)为变换后的坐标;(x,y,z)为变换前的坐标。
实施例2
图7示出了本发明第二实施例中的三维空间的建模装置。该装置包括:图片读取模块11、图片识别模块12、立体结构构建模块13、拼接模块14。
图片读取模块11用于读取图片,该图片为预先绘制的欲建立的模型的线条图片。
具体地,上述线条图片可以是手绘的粗略线条图片(例如图3所示的手绘线条的照片),也可以是建筑、设计图纸。
图片识别模块12,对图3所示的手绘线条的照片进行灰度处理,得到图片的灰度图;再按照如下公式对该灰度图进行二值化处理,得到黑白图片:
d s t ( x , y ) = max V a l i f s r c ( x , y ) > t h r e a s h 0
maxVal=255,threash=100,像素点的灰度值大于100的设定为最大值,小于100的像素点的设定为0;对该黑白图片进行边缘检测(阈值设置为100)并描绘轮廓。在描绘轮廓时,使用单位为8像素大小的线条,以提高识别率。
在后续步骤中对上述轮廓采用设置对应的立体结构,拟合出该轮廓的整体,在本实施例中使用基本空间单元来构建对应的立体结构,再将立体结构拼接,因此需要识别轮廓中的矩形。
采用矩形逼近的方式确定矩形区域。通过确定封闭轮廓的角点来确定矩形,当角点数量大于2且小于5即可认为是矩形。
在确定矩形后,还需要检测排除重合的矩形,重合包括部分重合和全部重合,每个矩形与其它矩形一一计算重叠率,公式如下:
C=Min(X1+W1,X2+W2)-Max(X1,X2)
R=Min(Y1+H1,Y2+H2)-Max(Y1,Y2)
R a t i o = C &CenterDot; R W 1 &CenterDot; H 1 + W 2 &CenterDot; H 2 - C &CenterDot; R
上述公式中Ratio为重叠比率,当Ratio为0时,表示进行比较的两个矩形完全不重合,保留上述两个矩形;当Ratio为其它数值时,表示进行比较的两个矩形重合,上述两个矩形均不保留。上述公式中(X1,Y1)为第一矩形的左上角坐标,(X2,Y2)为第二矩形的左上角坐标,W1和H1分别为第一矩形的长度和宽度,W2和H2分别为第二矩形长度和宽度。
图4示出了手绘线条照片识别后的矩形示意图。其中每个矩形的左上角点和右下角点的坐标分别保存,上述两点的坐标既包括了矩形的长度和宽度信息又包括了位置信息,且需要的存储容量小。
立体结构构建模块13,根据每个矩形的长度和宽度的大小,为每个矩形设置对应的立体结构。其中立体结构包括:与该矩形的四边分别对应的四面墙体、与该矩形对应的顶面和地面。
具体地,为每个矩形设置对应的立体结构,包括根据每个矩形的长度和宽度的大小,对基本空间单元进行缩放。该基本空间单元包括左侧墙体、右侧墙体、前侧墙体、后侧墙体、顶面和地面。在具体实现时,该基本空间单元的组成尺寸可以根据需要设置,本实施例中各墙体以长1米,宽1米,高1米为例,顶面和地面以长1米,宽1米为例。
分别保存上述基本空间单元的顶面和地面的中心点、右侧墙体的中心点,前侧墙体的中心点的坐标,以上述中心点为基础进行缩放。
缩放矩阵如下:
x y z K x 0 0 0 K y 0 0 0 K z = K x &CenterDot; x K y &CenterDot; y K z &CenterDot; z
其中,Kx,Ky,Kz分别为x,y,z坐标方向对应的缩放因子;(x,y,z)为基本空间单元的初始坐标;当矩形的长度为W,宽度为H,上述缩放因子如下:
基本空间单元的左侧墙体和右侧墙体:Kx=W,Ky=a,Kz=b;
基本空间单元的前侧墙体和后侧墙体:Kx=a,Ky=H,Kz=b;
基本空间单元的顶面和地面:Kx=W,Ky=H,Kz=b;
其中,a为墙体厚度系数,b为墙体高度系数。
本实施例中a为0.3,b为3,即墙体的厚度为0.3米,高度为3米。
基本空间单元可以预先放置于每个矩形的对应位置,再在该位置进行缩放;也可以先缩放再根据每个矩形间的相对位置移动。
拼接模块14,根据每个矩形间的相对位置关系,拼接每个矩形对应的立体结构。
在拼接每个矩形对应的立体结构时,判断上述墙体是否相交,如果相交则根据下述方式自动拼接。
图5示出了墙体自动拼接的示意图。首先判断两个墙体之间的距离,根据首尾两点坐标确定墙体1和墙体2的直线方程:
A x + B y + C = 0 A x + B y + D = 0
计算两个墙体之间的距离:
d = | C - D | A 2 + B 2
当d<0.3则判断两个墙体相交,删除原有的墙体1、2,新建墙体4、5、6。新建墙体数量为:2Nw-1,其中Nw为相交的墙体数量。
新建墙体的坐标以如下方式确定:
如果是竖墙,将y按照从小到大进行排序,两个墙体x坐标的中点坐标即融合后的墙体坐标x:
x = x 1 + x 2 2
按顺序求出原墙体各顶点之间的距离,如图5中所示,墙体1中左侧顶点与墙体2左侧顶点的距离,墙体2中左侧顶点与墙体1右侧顶点的距离,墙体1中右侧顶点与墙体2右侧顶点的距离。
将上述距离值作为各墙体的缩放因子:
K y = ( y i - y j ) 2
其中,(xi,yi)与(xj,yj)为相邻两顶点坐标。排列经缩放的坐标y,即融合后的墙体y坐标。
如果是横墙,将x按照从小到大进行排序,两个墙体y坐标的中点坐标即融合后的墙体坐标y:
y = y 1 + y 2 2
按顺序求出原墙体各顶点之间的距离,如图5中所示,墙体1中左侧顶点与墙体2左侧顶点的距离,墙体2中左侧顶点与墙体1右侧顶点的距离,墙体1中右侧顶点与墙体2右侧顶点的距离。
将上述距离值作为各墙体的缩放因子:
K x = ( x i - x j ) 2
其中,(xi,yi)与(xj,yj)为相邻两顶点坐标。排列经缩放的坐标x,即融合后的墙体x坐标。
应用上述方法得到的三维空间模型如图6示出的建模完成后的三维空间模型示意图,该三维空间模型是对图3所示的图片进行操作后得到的。
在得到上述三维空间模型后,还可以快速调节尺寸。例如可以通过移动模型中的单个墙体来调整空间的大小。当移动单个墙体时,该单个墙体被移动到预定位置,与该单个墙体组成同一闭合空间的相邻的两个墙体进行适当的缩放,从而保证空间的完整性,缩放因子等于该单个墙体移动后的坐标与上述两个相邻的墙体起始点坐标之间的长度。因此简单移动单个墙体就可以灵活调节空间的尺寸。
在得到上述三维空间模型后,还可以平移。平移矩阵如下:
x &prime; y &prime; z &prime; 1 = 1 0 0 t x 0 1 0 t y 0 0 1 t z 0 0 0 1 x y z 1 = x + t x y + t y z + t z 1
其中,(x′,y′,z′)为变换后的坐标;(x,y,z)为变换前的坐标。
本发明的第二实施例中的各模块可以是由软件代码实现,此时,上述的各模块可存储于用户终端100的存储器102内。以上各单元同样可以由硬件例如集成电路芯片实现。所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的功能模块的具体描述,可以参考前述的对应方法步骤的具体描述,在此不再一一赘述。
综上所述,本发明实施例提供的三维空间的建模方法和装置,通过读取图片、识别图片中的各个矩形、为各个矩形设置对应的立体结构、拼接上述立体结构实现三维建模,能够根据粗略的线条图片生成三维空间,操作简单,建模后可快速调节尺寸,提高了三维建模的效率。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本发明实施例所提供的三维空间的建模方法和装置,其实现原理及产生的技术效果和前述方法实施例相同,为简要描述,装置实施例部分未提及之处,可参考前述方法实施例中相应内容。
另外,附图中的流程图和框图显示了根据本发明的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
本发明实施例所提供的计算机程序产品,包括存储了程序代码的计算机可读存储介质,所述程序代码包括的指令可用于执行前面方法实施例中所述的方法,具体实现可参见方法实施例,在此不再赘述。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,RandomAccessMemory)、磁碟或者光盘等各种可以存储程序代码的介质。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。

Claims (10)

1.一种三维空间的建模方法,其特征在于,包括:
读取图片,所述图片为预先绘制的欲建立的模型的线条图片;
采用图像处理技术识别所述图片中的各个矩形;
根据每个所述矩形的长度和宽度的大小,为每个所述矩形设置对应的立体结构;其中,所述立体结构包括:与所述矩形的四边分别对应的四面墙体、与所述矩形对应的顶面和地面;
根据每个所述矩形间的相对位置关系,拼接每个所述矩形对应的立体结构,得到所述线条图片的三维空间模型。
2.根据权利要求1所述的方法,其特征在于,根据每个所述矩形的长度和宽度的大小,为每个所述矩形设置对应的立体结构包括:
根据每个所述矩形的长度和宽度的大小,对基本空间单元进行缩放,得到每个所述矩形的立体结构。
3.根据权利要求2所述的方法,其特征在于,根据如下矩阵对所述基本空间单元进行缩放,
x y z K x 0 0 0 K y 0 0 0 K z = K x &CenterDot; x K y &CenterDot; y K z &CenterDot; z
其中,Kx,Ky,Kz分别为x,y,z坐标方向对应的缩放因子;(x,y,z)为所述基本空间单元的初始坐标;当所述矩形的长度为W,宽度为H,所述缩放因子如下:
所述基本空间单元的左侧墙体和右侧墙体:Kx=W,Ky=a,Kz=b;
所述基本空间单元的前侧墙体和后侧墙体:Kx=a,Ky=H,Kz=b;
所述基本空间单元的顶面和地面:Kx=W,Ky=H,Kz=b;
其中,a为墙体厚度系数,b为墙体高度系数。
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
当接收到移动所述三维空间模型中的单个墙体的指示时,设置与所述单个墙体头尾相邻的墙体的缩放因子等于所述单个墙体移动后的坐标与所述相邻的墙体起始点坐标之间的长度。
5.根据权利要求1所述的方法,其特征在于,采用图像处理技术识别所述图片中的各个矩形包括:
对所述图片进行灰度处理,得到所述图片的灰度图片;
按照如下公式对所述灰度图片进行二值化处理,得到黑白图片:
d s t ( x , y ) = max V a l i f s r c ( x , y ) > t h r e a s h 0
maxVal=255,threash=100,像素点的灰度值大于100的设定为最大值,小于100的像素点的设定为0;
对所述黑白图片进行边缘检测并描绘轮廓;
根据描绘后的所述轮廓识别各个矩形。
6.根据权利要求5所述的方法,其特征在于,根据描绘后的所述轮廓识别各个矩形包括:
从描绘后的所述轮廓中确定封闭轮廓的角点,当角点数量大于2且小于5即可确定为矩形。
7.根据权利要求1所述的方法,其特征在于,采用图像处理技术识别所述图片中的各个矩形还包括:
根据如下公式检测各个所述矩形是否重合:
C=Min(X1+W1,X2+W2)-Max(X1,X2)
R=Min(Y1+H1,Y2+H2)-Max(Y1,Y2)
R a t i o = C &CenterDot; R W 1 &CenterDot; H 1 + W 2 &CenterDot; H 2 - C &CenterDot; R
Ratio=0的矩形将被保留,其中Ratio为重叠比率,(X1,Y1)为第一矩形的左上角坐标,(X2,Y2)为第二矩形的左上角坐标,W1和H1分别为所述第一矩形的长度和宽度,W2和H2分别为所述第二矩形长度和宽度;
如果存在两两重合的矩形,丢弃所述两两重合的矩形。
8.一种三维空间的建模装置,其特征在于,包括:
图片读取模块,用于读取图片,所述图片为预先绘制的欲建立的模型的线条图片;
图片识别模块,用于采用图像处理技术识别所述图片中的各个矩形;
立体结构构建模块,用于根据每个所述矩形的长度和宽度的大小,为每个所述矩形设置对应的立体结构;其中,所述立体结构包括:与所述矩形的四边分别对应的四面墙体、与所述矩形对应的顶面和地面;
拼接模块,用于根据每个所述矩形间的相对位置关系,拼接每个所述矩形对应的立体结构,得到所述线条图片的三维空间模型。
9.根据权利要求8所述的三维空间的建模装置,其特征在于,所述立体结构构建模块包括:
缩放单元,用于根据每个所述矩形的长度和宽度的大小,对基本空间单元进行缩放,得到每个所述矩形的立体结构。
10.根据权利要求9所述的三维空间的建模装置,其特征在于,
所述缩放单元根据如下矩阵对所述基本空间单元进行缩放,
x y z K x 0 0 0 K y 0 0 0 K z = K x &CenterDot; x K y &CenterDot; y K z &CenterDot; z
其中,Kx,Ky,Kz分别为x,y,z坐标方向对应的缩放因子;(x,y,z)为所述基本空间单元的初始坐标;当所述矩形的长度为W,宽度为H,所述缩放因子如下:
所述基本空间单元的左侧墙体和右侧墙体:Kx=W,Ky=a,Kz=b
所述基本空间单元的前侧墙体和后侧墙体:Kx=a,Ky=H,Kz=b
所述基本空间单元的顶面和地面:Kx=W,Ky=H,Kz=b
其中,a为墙体厚度系数,b为墙体高度系数。
CN201610306302.0A 2016-05-10 2016-05-10 三维空间的建模方法和装置 Active CN106023305B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610306302.0A CN106023305B (zh) 2016-05-10 2016-05-10 三维空间的建模方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610306302.0A CN106023305B (zh) 2016-05-10 2016-05-10 三维空间的建模方法和装置

Publications (2)

Publication Number Publication Date
CN106023305A true CN106023305A (zh) 2016-10-12
CN106023305B CN106023305B (zh) 2018-12-25

Family

ID=57099055

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610306302.0A Active CN106023305B (zh) 2016-05-10 2016-05-10 三维空间的建模方法和装置

Country Status (1)

Country Link
CN (1) CN106023305B (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107145984A (zh) * 2017-05-09 2017-09-08 北京四维空间数码科技有限公司 一种批量模型生产与定位加载优化方法
CN107218935A (zh) * 2017-05-23 2017-09-29 河南华泰规划勘测设计咨询有限公司 一种室内空间测绘数据管理系统
CN107274477A (zh) * 2017-05-03 2017-10-20 西安电子科技大学 一种基于三维空间表层的背景建模方法
CN107563958A (zh) * 2017-08-23 2018-01-09 广州视源电子科技股份有限公司 全息图像转换方法和系统
CN111444358A (zh) * 2020-03-24 2020-07-24 北京大学深圳研究生院 一种用于智能仓储管理的方法
CN111968247A (zh) * 2020-07-10 2020-11-20 北京城市网邻信息技术有限公司 三维房屋空间的构建方法、装置、电子设备及存储介质
CN112365399A (zh) * 2020-10-09 2021-02-12 北京星闪世图科技有限公司 基于深度学习的风机叶片图像全景拼接方法和系统
CN112364405A (zh) * 2020-10-16 2021-02-12 苏州织巢信息科技有限公司 一种墙体绘制处理方法、装置及计算机可读存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6037945A (en) * 1997-12-16 2000-03-14 Xactware, Inc. Graphical method for modeling and estimating construction costs
CN101673410A (zh) * 2008-09-12 2010-03-17 中国科学院计算技术研究所 一种基于矢量建筑图纸重建三维模型的方法
US20130191082A1 (en) * 2011-07-22 2013-07-25 Thales Method of Modelling Buildings on the Basis of a Georeferenced Image
CN105069226A (zh) * 2015-08-03 2015-11-18 常州赞云软件科技有限公司 一种基于模板的三维造型建模方法
CN105279787A (zh) * 2015-04-03 2016-01-27 北京明兰网络科技有限公司 基于拍照的户型图识别生成三维房型的方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6037945A (en) * 1997-12-16 2000-03-14 Xactware, Inc. Graphical method for modeling and estimating construction costs
CN101673410A (zh) * 2008-09-12 2010-03-17 中国科学院计算技术研究所 一种基于矢量建筑图纸重建三维模型的方法
US20130191082A1 (en) * 2011-07-22 2013-07-25 Thales Method of Modelling Buildings on the Basis of a Georeferenced Image
CN105279787A (zh) * 2015-04-03 2016-01-27 北京明兰网络科技有限公司 基于拍照的户型图识别生成三维房型的方法
CN105069226A (zh) * 2015-08-03 2015-11-18 常州赞云软件科技有限公司 一种基于模板的三维造型建模方法

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107274477A (zh) * 2017-05-03 2017-10-20 西安电子科技大学 一种基于三维空间表层的背景建模方法
CN107274477B (zh) * 2017-05-03 2019-12-17 西安电子科技大学 一种基于三维空间表层的背景建模方法
CN107145984A (zh) * 2017-05-09 2017-09-08 北京四维空间数码科技有限公司 一种批量模型生产与定位加载优化方法
CN107218935A (zh) * 2017-05-23 2017-09-29 河南华泰规划勘测设计咨询有限公司 一种室内空间测绘数据管理系统
CN107563958A (zh) * 2017-08-23 2018-01-09 广州视源电子科技股份有限公司 全息图像转换方法和系统
CN107563958B (zh) * 2017-08-23 2021-01-22 广州视源电子科技股份有限公司 全息图像转换方法和系统
CN111444358A (zh) * 2020-03-24 2020-07-24 北京大学深圳研究生院 一种用于智能仓储管理的方法
CN111968247A (zh) * 2020-07-10 2020-11-20 北京城市网邻信息技术有限公司 三维房屋空间的构建方法、装置、电子设备及存储介质
CN111968247B (zh) * 2020-07-10 2021-10-19 北京城市网邻信息技术有限公司 三维房屋空间的构建方法、装置、电子设备及存储介质
CN112365399A (zh) * 2020-10-09 2021-02-12 北京星闪世图科技有限公司 基于深度学习的风机叶片图像全景拼接方法和系统
CN112365399B (zh) * 2020-10-09 2024-05-03 江苏星闪世图科技(集团)有限公司 基于深度学习的风机叶片图像全景拼接方法和系统
CN112364405A (zh) * 2020-10-16 2021-02-12 苏州织巢信息科技有限公司 一种墙体绘制处理方法、装置及计算机可读存储介质

Also Published As

Publication number Publication date
CN106023305B (zh) 2018-12-25

Similar Documents

Publication Publication Date Title
CN106023305A (zh) 三维空间的建模方法和装置
CN104376594B (zh) 三维人脸建模方法和装置
CN102663820B (zh) 三维头部模型重建方法
Lipson et al. Conceptual design and analysis by sketching
CN100407798C (zh) 三维几何建模系统和方法
Dey et al. Defining and computing curve-skeletons with medial geodesic function
CN100562895C (zh) 一种基于区域分割和分段学习的三维人脸动画制作的方法
Tseng et al. Semiautomated building extraction based on CSG model-image fitting
CN106022424A (zh) 生成具有动态效果的二维码图片的方法及装置
WO2007146069A2 (en) A sketch-based design system, apparatus, and method for the construction and modification of three-dimensional geometry
Jo et al. Data augmentation using synthesized images for object detection
Mencl A graph–based approach to surface reconstruction
KR20200136723A (ko) 가상 도시 모델을 이용하여 객체 인식을 위한 학습 데이터 생성 방법 및 장치
CN104537705A (zh) 基于增强现实的移动平台三维生物分子展示系统和方法
CN108762740A (zh) 页面数据的生成方法、装置及电子设备
CN104951788A (zh) 一种书法作品中单字笔画的提取方法
Lindstrom Model simplification using image and geometry-based metrics
CN105225272A (zh) 一种基于多轮廓线三角网重构的三维实体建模方法
CN107608510A (zh) 手势模型库的建立方法、装置及电子设备
Musuvathy et al. Computing medial axes of generic 3D regions bounded by B-spline surfaces
CN116579051B (zh) 一种基于户型数据增广的二维户型信息识别与提取方法
Pastor et al. 3D wavelet-based multiresolution object representation
CN115409083A (zh) 点云数据增强方法、装置、电子装置及车辆
Meenakshisundaram Theory and practice of sampling and reconstruction for manifolds with boundaries
CN109035391A (zh) 三维模型处理方法及装置

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
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20210113

Address after: Room 3206, block a, building 17, fangchengyuan District 1, Fangzhuang, Fengtai District, Beijing

Patentee after: BEIJING MOYIHOME NETWORK TECHNOLOGY DEVELOPMENT Co.,Ltd.

Address before: No. 2001, building 4, fangxingyuan District 3, Fengtai District, Beijing

Patentee before: Cao Yi

Patentee before: Su Rui

EE01 Entry into force of recordation of patent licensing contract
EE01 Entry into force of recordation of patent licensing contract

Application publication date: 20161012

Assignee: Hangzhou zhaitoudou Technology Co.,Ltd.

Assignor: BEIJING MOYIHOME NETWORK TECHNOLOGY DEVELOPMENT Co.,Ltd.

Contract record no.: X2021990000340

Denomination of invention: Modeling method and device of 3D space

Granted publication date: 20181225

License type: Exclusive License

Record date: 20210607