[发明专利]一种用于将二维正方体堆砌图解析为三维的方法在审
| 申请号: | 202211472022.9 | 申请日: | 2022-11-23 |
| 公开(公告)号: | CN116188672A | 公开(公告)日: | 2023-05-30 |
| 发明(设计)人: | 代镜;陈恒鑫 | 申请(专利权)人: | 重庆大学 |
| 主分类号: | G06T17/00 | 分类号: | G06T17/00;G06V10/82 |
| 代理公司: | 北京同恒源知识产权代理有限公司 11275 | 代理人: | 赵荣之 |
| 地址: | 400044 重*** | 国省代码: | 重庆;50 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 用于 二维 正方体 堆砌 图解 三维 方法 | ||
1.一种用于将二维正方体堆砌图解析为三维的方法,其特征在于:包括以下步骤:
S1:利用自动化数据采集模块采集正方体堆砌图的数据,形成数据集并自动编写标签文件;
S2:利用数据集训练基于BlockNet网络的几何体目标识别模块;
S3:拍摄待解析的正方体堆砌图,利用训练好的几何体目标识别模块解析正方体堆砌的几何体结构;
S4:将解析得到的几何体结构发送到AR设备进行动态展示。
2.根据权利要求1所述的用于将二维正方体堆砌图解析为三维的方法,其特征在于:步骤S1中所述自动化数据采集模块在3D模拟软件中采集训练所需的虚拟数据;在3D模拟软件中,利用三维坐标系将小方块的位置编码为(0,0,0)到(5,5,5)共216个,标签文件用216个数字表示对应216个小正方体是否存在,数字0表示对应位置小正方体不存在,数字1表示对应位置的小正方体存在。
3.根据权利要求1所述的用于将二维正方体堆砌图解析为三维的方法,其特征在于:3D模拟软件从坐标(0,0,0)到(5,5,5)的小正方体中随机生效,生成的要求是在坐标x=a,y=b的位置上小正方体数量为c,则(a,b,0)到(a,b,c-1)的值都为1,表示对应位置上存在小正方体;同时要求整个几何体的小正方体数量和位置可通过图片进行唯一性推理确定,所述唯一性推理,由3D模拟软件中的射线作如下检测来保证:
对于x=a,y=b的位置上存在多个小正方体,则最上面的一个小正方体必须能被射线检测,对于x=a,y=b的位置上不存在小正方体,则当假设存在一个小正方体时,该正方体可被射线检测到;
当整个几何体是唯一可推理时,将几何体图片进行截取,并写入标签文件,作为一个数据。
4.根据权利要求1所述的用于将二维正方体堆砌图解析为三维的方法,其特征在于:所述自动化数据采集模块的数据采集流程如下:
建立数组map[a][b]=c表示在x=a,y=b的坐标上有c个小正方体生效;
将(0,0,0)到(5,5,5)的216个方块置为非激活状态,使其在3D模拟失效;
从i=0开始,记录第i层方块分布的map[i][0],map[i][1],map[i][2],map[i][3],map[i][4],map[i][5],生成6个0-6的随机数;
对map[i][1-5]上的方块分布进行以下操作:map[i][0]=k则将(0,i,0)到(0,i,k-1)上的小正方体置为激活状态,进行生效的操作;
判断0-i层的分布是否合法,即若x,y为(a,b)的位置上有小正方体被激活,则从相机发出的射线必须碰到最上面生效的小正方体,如在x,y为(a,b)的位置上没有小正方体生效,则将位置为(a,b,0)的小正方体置为激活状态,使其生效且从相机发出的射线必须碰到此小正方体;
若判断为分布合法,则保留map数组的值,重复上述步骤直到i=N,若判断为分布不合法则i不变重新生成;
N次重复完成,截取图片完成一次虚拟数据采集,并将map的值写入文件,作为图片的标签文件使用。
5.根据权利要求1所述的用于将二维正方体堆砌图解析为三维的方法,其特征在于:将自动采集的数据加入多张多种小正方体特殊位置的堆砌图,使得在数据集中,每个位置的小正方体出现的频率差尽可能小,具体包括:
首先将当前层之前的所有小正方体置为生效状态;
然后将当前层最下面的小正方体置为生效状态;
最后从当前层第一列开始,按列使小正方体生效其他列小正方体不生效,采集多张图片加入数据集;
最后将一层的小正方体均置为生效,采集多张图片加入数据集;
按层重复以上操作,直到采集完整小正方体堆砌。
6.根据权利要求1所述的用于将二维正方体堆砌图解析为三维的方法,其特征在于:BlockNet网络以512*512的3通道图片作为输入,首先通过一个卷积,再经过6层BasicBlock,最后通过全连接层和sigmoid进行输出;
对于BlockNet网络的BasicBlock模块,主干是一个归一化层,一个激活函数和一个卷积操作;
BlockNet网络的支路分为三种情况:
经过BasicBlock主干的数据若前后通道数和尺寸均不变,则直接将输入和主干输出进行相加的操作;
经过BasicBlock主干的数据若前后通道数不变,尺寸变为原来的二分之一,则先将输入数据进行maxpool将尺寸降为原来的一半,再和主干的输出进行相加操作;
经过BasicBlock主干的数据若前后通道数变为原来的二倍,尺寸不变,则将输入数据进行一个clone操作,在通道上复制一份叠加起来,再与主干的输出进行相加操作。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于重庆大学,未经重庆大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202211472022.9/1.html,转载请声明来源钻瓜专利网。





