前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >AI自动识别户型图生成数据建模解决方案

AI自动识别户型图生成数据建模解决方案

原创
作者头像
爱聊天
发布2022-11-12 11:24:59
1.5K0
发布2022-11-12 11:24:59
举报

目的是通过图像算法智能识别房屋类型图中的墙体和门窗,获取墙体端点和拐点的坐标。这样根据这些墙面线条的坐标,就可以自动生成一个立体的房间,供设计师查看。经过几个月左右的突击,终于取得了不错的识别效果。下面的图片是随机选择的,以确定结果。

测试识别户型图:

测试户型图
测试户型图
自动识别户型图
自动识别户型图
重新识别房间标识
重新识别房间标识
后续业务生成的3D建模场景
后续业务生成的3D建模场景

房型图识别的任务分析。

拿到任务后,对当前比较流行的房图风格,进行简单的观察和分析,主要有以下几点:。

房型图的墙面风格是多样的,用深色的纯色来代表墙面,用用方块线的形式来代表墙面。。用深色表示承重墙,用浅色实线表示非承重墙也是很有用的。

房间图中的物品很乱,导致识别错误。在房型图上,一般会将色图涂在沙发、电视柜、床等上,从而带来更好的观赏效果。。这样一来,就会给房型图的识别带来很大的麻烦。例如,一张床的边缘,以及一个电视柜,或地毯的边缘,可以很容易地被识别为一面墙。。

初步处理。

根据经验,首先对房间图像进行灰度化处理,并根据灰度分布采用动态阈值,生成二值图像。对于二值化图像,识别图片中的主体,即房间类型的主要轮廓区域,获得房间类型轮廓所对应的墙壁的灰度分布。。

根据墙壁的灰度等级,用k均值计算房间地图中的像素,将接近墙壁灰度等级的像素判断为墙壁面积。。

最后对识别出的墙面积进行矢量化,得到墙的端点和拐点信息,完成墙的识别。。门窗的识别可以在墙体识别结果的基础上进行。

以上主要是用OpenCV中的形态学函数实现的。经过测试发现,该方法只能对部分房型图产生较好的识别效果。。对于大多数墙面来说,由于房间类型图中物体的干扰(床、地毯、电视柜、沙发、衣柜、桌子等),很容易造成识别错误。。此外,由于框线画法的墙面积是由平行线组成的,用灰度分布的方法难以识别。。这种策略基本上是放弃了。

因为有了以上的经验,所以在房屋类型图中使用了一个比较复杂的算法来识别墙。。目前该算法基本上可以解决误识别的问题,对于大部分房间的地图,都能准确地识别墙体面积并获取其端点坐标。。

根据需要,墙线段端点拐点信息可以存储在xml或json文件中,也可以以http的形式返回。。当然,在比较困难的图像识别问题上,很少有算法能够达到100%的准确率。对于识别结果中出现的个别错误识别案例,可以在交互中提供修改工具供设计人员使用,大大提高了设计人员的工作效率。

目前,三维家居、酷居装修设计软件也集成了类似的、智能识别户型图中墙面的功能,并提供了对正确和错误的识别和修改的交互工具。

基于机器视觉单元图素自动提取方法:

第一步是对房屋图进行二值化处理,得到二值图像。

第二步是从二值化图像中识别字符的大小、字符所在的区域和区域的位置,并识别图像中的直线。

第三步,将识别的大小数字字符与其对应的比例线段进行匹配。

第四步,根据不同的墙角形状,在二值图像中识别出墙角,从起始点开始搜索,识别出墙角所在的区域。 第五步,墙所在的区域为封闭区域,确定封闭区域的功能,确定封闭区域内其他元素的功能。

使用的库:Google TesseractOCR可识别字母数字字符,OpenCV LSD可识别直线。

vx:wlgbzg

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 房型图识别的任务分析。
  • 初步处理。
相关产品与服务
智能识别
腾讯云智能识别(Intelligent Identification,II)基于腾讯各实验室最新研究成果,为您提供视频内容的全方位识别,支持识别视频内的人物、语音、文字以及帧标签,对视频进行多维度结构化分析。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档