[发明专利]一种针对光栅建筑平面图的全自动三维转换方法无效
申请号: | 201310329371.X | 申请日: | 2013-07-31 |
公开(公告)号: | CN103390088A | 公开(公告)日: | 2013-11-13 |
发明(设计)人: | 张宏鑫;李嫄姝;郑文庭;鲍虎军 | 申请(专利权)人: | 浙江大学 |
主分类号: | G06F17/50 | 分类号: | G06F17/50;G06T17/00 |
代理公司: | 杭州天勤知识产权代理有限公司 33224 | 代理人: | 胡红娟 |
地址: | 310027 浙*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 针对 光栅 建筑 平面图 全自动 三维 转换 方法 | ||
1.一种针对光栅建筑平面图的全自动三维转换方法,其特征在于,包括以下步骤:
1)对光栅建筑平面图做二值化和矫正,得到预处理后的图像;
2)从预处理后的图像中提取包含墙体线条的图像区域,得到若干子图像;
3)对各个子图像进行矢量化处理,对应得到带墙体宽度的线段集合,从线段集合中抽取得到墙体位置和墙体宽度信息;
4)通过步骤3)中的线段集合获得墙体附属物子图,利用线性鉴别分析算法判断各墙体附属物子图的具体类别;
5)根据预设高度,将步骤3)和步骤4)中的数据转换为三维结构数据。
2.如权利要求1所述的针对光栅建筑平面图的全自动三维转换方法,其特征在于,在步骤1)中,所述二值化采用OpenCV库函数中的cvThreshold函数,得到二值化后的图像。
3.如权利要求1所述的针对光栅建筑平面图的全自动三维转换方法,其特征在于,所述矫正为:采用OpenCV库函数中的cvHoughLines2函数对二值化后的图像进行霍夫线段检测,抽取二值化后的图像中的长直线段,统计出这些长直线段的斜率值,随后使用OpenCV库函数中的cvGetQuadrangleSubPix函数对二值化后的图像进行旋转矫正,使得长直线段与光栅建筑平面图的直角坐标系相平行。
4.如权利要求1所述的针对光栅建筑平面图的全自动三维转换方法,其特征在于,在所述的步骤2)中,利用平均积分投影函数从预处理后的图像中提取包含墙体线条的图像区域。
5.如权利要求4所述的针对光栅建筑平面图的全自动三维转换方法,其特征在于,在步骤3)中,针对每个子图像,所述矢量化处理为:
第一步:寻找起始中轴点和追踪方向
步骤1):以小于墙体线宽的步长自上而下扫描所述的子图像,针对每条扫描线,自左向右依次读取当前扫描线上每个像素点的灰度值,如果当前像素点同时满足以下三点,则将该当前像素点作为参照点;
a)灰度值是0,即当前像素点为黑色像素点;
b)上一像素点是灰度值是1,即上一像素点是白色像素点;
c)当前像素点从未被访问过;
步骤2):在参照点x(i)所在的连通区域中,迭代查询起始中轴点和追踪方向;
步骤3):重复步骤1)和步骤2),在整个子图像中完成对所有连通区域的处理,针对每个连通区域得到对应的寻找起始中轴点和追踪方向;
第二步:稀疏点追踪
在任意连通区域内,从起始中轴点开始,以固定追踪步长,沿追踪方向依次查询下一像素点作为新中轴点,直至追踪违反以下两个条件之一时,执行步骤结点分割;
a)当前的新中轴点和上一新中轴点的线宽差值在允许阈值内;
b)新中轴点之前没有被访问过;
第三步:结点分割
结点分割程序将线段拐角处和十字交叉区域合理分割为若干直线段的拼接,具体迭代步骤如下:
a)退回上一个新中轴点;
b)调整追踪步长为前一追踪步长1/2;
c)沿原追踪方向进行稀疏点追踪;
d)在追踪步长调整后得到的每个新中轴点处,判断新中轴点是否满足第二步中两个条件,若满足,继续以调整后的步长继续追踪,若不满足,重复第三步中的步骤a)~d);
重复迭代,直至追踪步的长度接近于零,结点分割程序终止,最后找到的满足所有条件的点即为新的中轴点;
第四步:线段整合
相邻的两个新中轴点之间为矢量线段,各子图像中所有黑色像素点均已访问过后,将得到的所有矢量线段进行整合,生成长直矢量线段,计算任意两条长直矢量线段之间的夹角,若夹角接近0,则认为两条矢量线段平行,再判断两条长直矢量线段的近邻点距离,若小于设定值,则合并得到带墙体宽度的线段集合,并从线段集合中抽取得到墙体位置和墙体宽度信息。
6.如权利要求5所述的针对光栅建筑平面图的全自动三维转换方法,其特征在于,所述迭代查询过程为:
第i次迭代包括:
奇数次操作:过参照点x(i)在连通区域的左右边界之间做水平参考线m(i),并获取水平参考线的中点作为参照点y(i);
偶数次操作:过参照点y(i),在连通区域的上下边界之间做竖直参考线n(i),并获得竖直参考线的中点作为参照点x(i+1);
从第一次迭代的偶数次操作开始,在第k次的迭代中:
奇数次操作:判断x(k)和y(k)之间的距离,若小于阈值,则以x(k)作为起始中轴点,并选取水平参考线m(k)和竖直参考线n(k-1)中较长的参考线所在方向作为追踪方向,否则,进入下一次操作;
偶数次操作:判断x(k+1)和y(k)之间的距离,若小于阈值,则以y(k)作为起始中轴点,并选取水平参考线m(k)和竖直参考线n(k)中较长的参考线所在方向作为追踪方向;否则,进入下一次迭代。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浙江大学,未经浙江大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310329371.X/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种基于FPGA的LTE数字中频削峰方法及装置
- 下一篇:报文处理方法及装置