CN111814235A - 车位排布优化和多边形简化方法、装置、设备和存储介质 - Google Patents
车位排布优化和多边形简化方法、装置、设备和存储介质 Download PDFInfo
- Publication number
- CN111814235A CN111814235A CN202010619067.9A CN202010619067A CN111814235A CN 111814235 A CN111814235 A CN 111814235A CN 202010619067 A CN202010619067 A CN 202010619067A CN 111814235 A CN111814235 A CN 111814235A
- Authority
- CN
- China
- Prior art keywords
- current
- polygon
- parking space
- parking
- edge
- 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.)
- Withdrawn
Links
- 238000000034 method Methods 0.000 title claims abstract description 90
- 238000005457 optimization Methods 0.000 title claims abstract description 75
- 238000003860 storage Methods 0.000 title claims abstract description 29
- 238000012217 deletion Methods 0.000 claims abstract description 26
- 230000037430 deletion Effects 0.000 claims abstract description 26
- 238000010276 construction Methods 0.000 claims description 25
- 230000002457 bidirectional effect Effects 0.000 claims description 23
- 230000009467 reduction Effects 0.000 claims description 11
- 238000012545 processing Methods 0.000 claims description 10
- 238000013519 translation Methods 0.000 claims description 9
- 230000008707 rearrangement Effects 0.000 claims description 7
- 239000002243 precursor Substances 0.000 claims description 6
- 238000004590 computer program Methods 0.000 claims description 3
- 230000008569 process Effects 0.000 description 20
- 238000013461 design Methods 0.000 description 10
- 238000010586 diagram Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 7
- 230000008901 benefit Effects 0.000 description 6
- 238000004422 calculation algorithm Methods 0.000 description 6
- 230000008859 change Effects 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000009826 distribution Methods 0.000 description 2
- 238000005192 partition Methods 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000012447 hatching Effects 0.000 description 1
- 230000001788 irregular Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000003909 pattern recognition Methods 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/10—Geometric CAD
- G06F30/13—Architectural design, e.g. computer-aided architectural design [CAAD] related to design of buildings, bridges, landscapes, production plants or roads
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/20—Design optimisation, verification or simulation
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Geometry (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Evolutionary Computation (AREA)
- General Engineering & Computer Science (AREA)
- Structural Engineering (AREA)
- Computational Mathematics (AREA)
- Civil Engineering (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Architecture (AREA)
- Traffic Control Systems (AREA)
Abstract
本发明实施例公开了一种车位排布优化和多边形简化方法、装置、设备和存储介质。该方法包括:依据初始车位排布数据生成当前车位排布多边形和当前多边形数据;依据当前多边形数据中的各可删除车位数进行车位删除,更新当前多边形数据和当前车位排布多边形;依据更新后的当前车位排布多边形重新排布靠墙车位,并依据更新后的初始车位排布数据确定当前总车位数;若当前总车位数与目标车位数的差值超过第一车位数阈值,则返回执行依据当前多边形数据中的各可删除车位数进行车位删除的步骤;若差值小于或等于第一车位数阈值,则将更新后的初始车位排布数据确定为目标车位排布数据。通过上述技术方案,提高了车库轮廓的规则性。
Description
技术领域
本发明实施例涉及计算机技术,尤其涉及一种车位排布优化和多边形简化方法、装置、设备和存储介质。
背景技术
随着我国城市化进程加速,城市汽车保有量增长迅速,因此停车资源也日趋紧张,为提高土地利用效率,地下车库已在近些年成为房地产开发项目中不可或缺的配套设施。而地下车库一般造价较高,施工周期较长,并且由于地下建筑密闭性,停车环境也不够理想,为克服地下车库的这些局限性,最有效的方法是在设计阶段优化地下停车场布局。通过优化设计,一方面提高停车效率,降低单车位建设成本;另一方面提高地下设施的使用便捷性和空间适宜性,改善停车环境。
目前,地下车库设计主要有两种方式,一种是设计师人工设计,另一种是算法自动设计。对于人工设计,设计师很难在排布车位之前就能按照同时满足车位数要求、地下室停车效率要求和便于地下室施工的这三个条件将地库轮廓线勾勒出来,其通常是在初步排布地下室车位后,进一步判断其排布是否满足车位数要求、停车效率是否已达到最大化,从而去反复调整地下室轮廓。对于算法自动设计,这类算法在排布车位时都是根据规划图纸中的地库退线为轮廓线来排布车位的,所获得的车库设计结果如图1所示,其中临靠地库外墙和临靠楼栋下剪力墙的车位为靠墙车位,不靠外墙和剪力墙的为内部车位。该类算法其不仅容易产生多余的规划车位,并且最终输出的施工图中地下室轮廓线100多为极不规则的多边形,其中的外墙转角110多,使地下室停车效率较低,同时不利于施工、增加地下室的施工成本。
综上,不管是人工排布地下室停车位,还是采用算法自动排布地下室停车位,都无法高效率优化地下室轮廓线,以降低施工成本。
发明内容
本发明实施例提供一种车位排布优化和多边形简化方法、装置、设备和存储介质,以实现更加合理地排布车库中的停车位,提高车库轮廓的规则性,从而降低车库施工成本。
第一方面,本发明实施例提供了一种车位排布优化方法,包括:
依据初始车位排布数据中内部车位的排布数据生成当前车位排布多边形,并依据当前车位排布多边形中每条边的可删除车位数构建当前多边形数据;
依据当前多边形数据中的各所述可删除车位数进行车位删除,更新当前多边形数据和当前车位排布多边形;
依据更新后的当前车位排布多边形重新排布靠墙车位,以更新初始车位排布数据,并依据更新后的初始车位排布数据确定当前总车位数;
若当前总车位数与目标车位数的差值超过第一车位数阈值,则返回执行所述依据当前多边形数据中的各所述可删除车位数进行车位删除的步骤;
若所述差值小于或等于所述第一车位数阈值,则将更新后的初始车位排布数据确定为目标车位排布数据。
第二方面,本发明实施例还提供了一种多边形简化方法,包括:
依据待简化的当前多边形中的每条边的边长度构建当前多边形数据;
依据各所述边长度和预设边长阈值,删除当前多边形中的一条边,更新当前多边形和当前多边形数据;
若更新后的当前多边形数据中的各所述边长度中存在小于所述预设边长阈值的边,则返回执行所述依据各所述边长度和预设边长阈值,删除当前多边形中的一条边,更新当前多边形和当前多边形数据的步骤;
若更新后的当前多边形数据中的每个所述边长度等于或大于所述预设边长阈值,则将更新后的当前多边形确定为简化多边形。
第三方面,本发明实施例还提供了一种车位排布优化装置,该装置包括:
当前多边形数据构建模块,用于依据初始车位排布数据中内部车位的排布数据生成当前车位排布多边形,并依据当前车位排布多边形中每条边的可删除车位数,构建当前多边形数据;
车位删除模块,用于依据当前多边形数据中的各所述可删除车位数进行车位删除,更新当前多边形数据和当前车位排布多边形;
车位重排模块,用于依据更新后的当前车位排布多边形重新排布靠墙车位,以更新初始车位排布数据,并依据更新后的初始车位排布数据确定当前总车位数;
循环触发模块,用于若当前总车位数与目标车位数的差值超过第一车位数阈值,则返回执行所述依据当前多边形数据中的各所述可删除车位数进行车位删除的步骤;
目标车位排布数据确定模块,用于若所述差值小于或等于所述第一车位数阈值,则将更新后的初始车位排布数据确定为目标车位排布数据。。
第四方面,本发明实施例还提供了一种多边形简化装置,该装置包括:
当前多边形数据构建模块,用于依据待简化的当前多边形中的每条边的边长度构建当前多边形数据;
边删除模块,用于依据各所述边长度和预设边长阈值,删除当前多边形中的一条边,更新当前多边形和当前多边形数据;
循环触发模块,用于若更新后的当前多边形数据中的各所述边长度中存在小于所述预设边长阈值的边,则返回执行所述依据各所述边长度和预设边长阈值,删除当前多边形中的一条边,更新当前多边形和当前多边形数据的步骤;
简化多边形确定模块,用于若更新后的当前多边形数据中的每个所述边长度等于或大于所述预设边长阈值,则将更新后的当前多边形确定为简化多边形。
第五方面,本发明实施例还提供了一种电子设备,该电子设备包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现本发明任意实施例所提供的车位排布优化方法或者多边形简化方法。
第六方面,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现本发明任意实施例所提供的车位排布优化方法或者多边形简化方法。
本发明实施例通过依据初始车位排布数据中内部车位的排布数据生成当前车位排布多边形,并依据当前车位排布多边形中每条边的可删除车位数构建当前多边形数据;依据当前多边形数据中的各可删除车位数进行车位删除,更新当前多边形数据和当前车位排布多边形;依据更新后的当前车位排布多边形重新排布靠墙车位,以更新初始车位排布数据,并依据更新后的初始车位排布数据确定当前总车位数;若当前总车位数与目标车位数的差值超过第一车位数阈值,则返回执行依据当前多边形数据中的各可删除车位数进行车位删除的步骤;若差值小于或等于第一车位数阈值,则将更新后的初始车位排布数据确定为目标车位排布数据。实现了将车库中停车位的排布数据转换为多边形,且进一步利用每条边的可删除车位数来表征多边形每条边边长,在进行车位删除并更新当前车位排布多边形时将相应边删去,实现基于多边形边长的车库轮廓优化,既能确保车库中排布的车位数在目标车位数的设定误差范围内,又能提高车库轮廓的规则性,降低后期车库施工成本,从而提高车库中停车位排布效率。
附图说明
图1是现有技术中自动规划地下车库的车位排布算法所得施工图的示意图;
图2是本发明实施例一中的一种车位排布优化方法的流程图;
图3是本发明实施例一中的当前车位排布多边形的示意图;
图4是本发明实施例一中的一种车位删除及当前车位排布多边形中多边形更新的示意图;
图5是本发明实施例二中的一种车位排布优化方法的流程图;
图6是本发明实施例二中的另一种车位删除及当前车位排布多边形中多边形更新的示意图;
图7是本发明实施例二中的利用车位排布优化方法所得施工图的示意图;
图8是本发明实施例三中的一种多边形简化方法的流程图;
图9是本发明实施例三中的简化前后的多边形示意图;
图10是本发明实施例四中的一种车位排布优化装置的结构示意图;
图11是本发明实施例五中的一种多边形简化装置的结构示意图;
图12是本发明实施例六中的一种电子设备的结构示意图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
实施例一
本实施例提供的车位排布优化方法,可适用于自动排布车库中停车位的情况,尤其适用于地下车库中停车位自动设计和排布优化的情况。该方法可以由车位排布优化装置来执行,该装置可以由软件和/或硬件的方式实现,该装置可以集成在具有一定运算功能的电子设备中,例如平板电脑、笔记本电脑、台式电脑或服务器等。
为了优化初始车位排布的车库轮廓,本发明实施例中提出了一种多边形轮廓优化的思想来实现车位的排布优化。参见图2,本实施例的车位排布优化方法具体包括:
S110、依据初始车位排布数据中内部车位的排布数据生成当前车位排布多边形,并依据当前车位排布多边形中每条边的可删除车位数,构建当前多边形数据。
其中,初始车位排布数据是指初步进行车库中车位排布所得的车位排布数据,其包含车库轮廓以及车库中每个车位、车道、柱网的位置等信息。初始车位排布数据可以是人工设计所得,也可以是已有的车库设计算法所得。当前车位排布多边形是指当前操作中排布的车位构成的多边形的综合体,并不是指一个多边形单体,其是一种形状数据。可删除车位数是指与一条边相关联的、使该边所在多边形的边数量发生变化时所需要删除的车位数,其用于表征多边形中每条边的边长。可删除车位数可以是根据初始车位排布数据中每条边周边的车位数来自动确定,也可以是经验设定的值。当前多边形数据是对当前车位排布多边形进行数值化表征所得的数据。
首先,根据初始车位排布数据来构建当前车位排布多边形。具体为:根据初始车位排布数据中车位和车道的位置和尺寸,将车位与车位之间的距离不超过一个车道宽度的各非靠墙的内部车位合并成一个多边形。针对图1所示的初步车位排布的施工图,利用上述多边形构建方法,可获得如图3所示的当前车位排布多边形。该当前车位排布多边形中包含四个多边形300,表示该车库中一共有四个车位分区,其均是后续车位排布优化的基础。
其次,将当前车位排布多边形转换为数值化表征,即构建多边形数据,便于后续数据计算。具体为:根据多边形所包围的车位计算与多边形各条边相邻的车位数,同时根据每条边的相邻边计算每条边的可删除车位数。然后,将每条边及其可删除车位数对应存储,便可获得多边形数据。
作为一个示例,在依据初始车位排布数据生成当前车位排布多边形之后,还包括:针对当前车位排布多边形中的每个多边形中的每条边,以边的最短邻接边移除为约束,确定边的可删除车位数。如图4所示,对于当前车位排布多边形中的一个多边形,该多边形中的边②在移除与其相邻的4个车位(左侧多边形中阴影所示)后,与边②邻接的最短边③将被移除(右侧多边形中虚线所示),而原边②与原边④将更新为连接边①和边⑤的新的边②,该多边形的边数量发生变化,此时,可将边②的可删除车位数确定为4个车位。这样设置的好处在于,能够利用可删除车位数来更加准确地表征边的长度,从而进一步确保后续以边长度为多边形优化依据的轮廓优化准确性。
作为一个示例,当前多边形数据中包含当前车位排布多边形中每条边的边位置和边拓扑信息。其中,边位置是指一条边在初始车位排布数据中的位置信息,例如可以是边的坐标值。边拓扑信息是指多边形中边与边之间的邻接关系。那么,构建多边形数据的过程为:在计算每条边的可删除车位数的基础上,进一步根据当前车位排布多边形在初始车位排布数据中的位置确定每条边的边位置,且根据多边形中边与边的连接关系来确定每条边的边拓扑信息。然后,将每条边及其边位置、边拓扑信息和可删除车位数对应存储,便可获得多边形数据。这样设置的好处在于,能够构建数据更加完整的多边形数据,进一步提高后续车位删除的效率。
作为一个示例,依据当前车位排布多边形中每条边的边位置、可删除车位数和边拓扑信息,构建当前多边形数据包括:依据当前车位排布多边形中的多边形数量,创建数组元素个数与多边形数量一致的双向循环链表数组,双向循环链表数组中的数组元素类型为双向循环链表;针对当前车位排布多边形中的每个多边形中的每条边,将边的边位置和可删除车位数存储至多边形对应的双向循环链表中的一个节点中,并且依据边的边拓扑信息,在节点中存储前驱节点指针和后继节点指针,构建当前多边形数据。为了提高后续对多边形数据处理时的数据检索和更新效率,从而进一步提高车位排布优化效率,本实施例中利用双向循环链表结构来存储多边形数据。具体为:创建一个数组元素的类型为双向循环链表类型的数组,该数组长度与当前车位排布多边形中的多边形数量一致,即一个数组元素中存储一个多边形对应的双向循环链表。一个双向循环链表中的一个节点存储一条边的边位置和可删除车位数,并且该节点中存储与该条边连接的两条边分别对应的节点的指针(即前驱节点指针和后继节点指针)。
S120、依据当前多边形数据中的各可删除车位数进行车位删除,更新当前多边形数据和当前车位排布多边形。
获得了当前车位排布多边形和当前多边形数据后,便以当前车位排布多边形向正方形靠拢,进而使得车库外轮廓更加规则为目标,根据当前多边形数据中的每条边的可删除车位数对当前车位排布多边形中的车位进行删除,并利用车位删除后的车位排布来更新当前多边形数据和当前车位排布多边形。
作为一个示例,在依据当前多边形数据中的各可删除车位数进行车位删除之前,还包括:依据目标车位数和当前车位排布多边形中包含的当前车位数,确定当前待删除车位数;相应地,依据当前多边形数据中的各可删除车位数进行车位删除包括:依据当前待删除车位数和当前多边形数据中的各可删除车位数进行车位删除。
其中,目标车位数是指预先设定的车库中需要排布的车位数,其是根据车库设计的业务需求确定。当前待删除车位数是指当前操作中需要删除的车位数。
获得了当前车位排布多边形和当前多边形数据后,便按照目标车位数的要求进行车位排布优化。首先,根据初始车位排布数据和当前车位排布多边形,计算出所有处于当前车位排布多边形内部的车位数,即当前车位数。然后,基于目标车位数和当前车位数计算出当前待删除车位数。之后,根据当前多边形数据中存储的每条边的可删除车位数和当前待删除车位数,从所有的边中确定出一条边进行相应边的车位删除。车位删除之后,该条边所在的多边形会有所变化,多边形数据也会有所变化,便需要根据删除车位后的多边形进行当前多边形数据和当前车位排布多边形的更新。这样设置的好处在于,利用当前待删除车位数和每条边的可删除车位数共同控制车位删除操作,进一步细化车位删除力度,进一步提高车位排布优化的精确性。
S130、依据更新后的当前车位排布多边形重新排布靠墙车位,以更新初始车位排布数据,并依据更新后的初始车位排布数据确定当前总车位数。
对当前车位排布多边形中的车位进行一次删除优化后,便根据更新后的当前车位排布多边形更新车道和柱网等数据,然后重新排布初始车位排布中的靠墙车位,完成初始车位排布数据的一次更新。
由于本发明实施例需要将车库中排布的总车位数与目标车位数控制在业务要求的误差范围内,故在每次更新初始车位排布数据之后,还需要根据更新后的初始车位排布数据,计算出整个车库中包含的所有的车位数(即当前总车位数),以判断当前总车位数是否满足业务要求。
S140、若当前总车位数与目标车位数的差值超过第一车位数阈值,则返回执行依据当前多边形数据中的各可删除车位数进行车位删除的步骤。
其中,第一车位数阈值是指预先设定的、用于判断当前总车位数是否满足业务要求的上限车位数。作为一个示例,第一车位数阈值为目标车位数与预设百分数的乘积。预设百分数是根据业务要求而确定的百分数,如5%。第一车位数阈值则为目标车位数n和预设百分数的乘积,即n*5%。这样设置的好处在于,能够更加便捷且准确地确定第一车位数阈值,从而更加准确地控制车库优化过程。
计算当前总车位数和目标车位数的差值,并比较该差值与第一车位数阈值。如果差值大于第一车位数阈值,那么初始车位排布数据仍然有优化空间,需要继续优化。此时,返回执行S120中依据当前多边形数据中的各可删除车位数进行车位删除的步骤,形成循环优化过程,直至当前总车位数和目标车位数的差值小于或等于第一车位数阈值。
作为一个示例,在依据当前待删除车位数和当前多边形数据中的各可删除车位数进行车位删除的情况下,在返回执行依据当前多边形数据中的各可删除车位数进行车位删除的步骤之前,还包括:利用当前总车位数和目标车位数更新当前待删除车位数。由于车位删除还需要当前待删除车位数,故在形成上述循环优化过程之前,利用当前总车位数和目标车位数来计算新的当前待删除车位数。例如,计算当前车位总数与目标车位数的差值,并将该差值与预设比例(经验设定值,如1/3)的乘积确定为更新后的当前待删除车位数。然后,返回执行S120中依据更新后的当前待删除车位数和当前多边形数据中的各可删除车位数进行车位删除的步骤,形成循环优化过程。这样设置的好处在于,提高当前待删除车位数与目标车位数的关联性,进一步缩减车位排布优化后的车位总数与目标车位数之间的误差。
S150、若差值小于或等于第一车位数阈值,则将更新后的初始车位排布数据确定为目标车位排布数据。
如果当前总车位数和目标车位数的差值小于或等于第一车位数阈值,那么结束车库中初始车位排布的优化过程,将最后一次获得的更新后的初始车位排布数据作为目标车位排布数据。由于车位排布数据中包含车位、车道、柱网和车库轮廓等数据,故更新初始车位排布数据的过程中,会根据更新的车位数来更新车道、结构柱网等数据,并根据更新的车位和车道等数据重新勾勒地下室外轮廓。最后,输出包含车位排布优化后的车位、车道、柱网和地下室外轮廓等数据的目标车位排布数据。
本实施例的技术方案,通过依据初始车位排布数据中内部车位的排布数据生成当前车位排布多边形,并依据当前车位排布多边形中每条边的可删除车位数构建当前多边形数据;依据当前多边形数据中的各可删除车位数进行车位删除,更新当前多边形数据和当前车位排布多边形;依据更新后的当前车位排布多边形重新排布靠墙车位,以更新初始车位排布数据,并依据更新后的初始车位排布数据确定当前总车位数;若当前总车位数与目标车位数的差值超过第一车位数阈值,则返回执行依据当前多边形数据中的各可删除车位数进行车位删除的步骤;若差值小于或等于第一车位数阈值,则将更新后的初始车位排布数据确定为目标车位排布数据。实现了将车库中停车位的排布数据转换为多边形,且进一步利用每条边的可删除车位数来表征多边形每条边边长,在进行车位删除并更新当前车位排布多边形时将相应边删去,实现基于多边形边长的车库轮廓优化,既能确保车库中排布的车位数在目标车位数的设定误差范围内,又能提高车库轮廓的规则性,降低后期车库施工成本,从而提高车库中停车位排布效率。
实施例二
本实施例在上述实施例一的基础上,对“依据当前待删除车位数和当前多边形数据中的各可删除车位数进行车位删除,更新当前多边形数据和当前车位排布多边形”进行了进一步优化。在此基础上,还可以进一步增加“第二车位数阈值”的相关内容。其中,与上述各实施例相同或相应的术语的解释在此不再赘述。参见图5,本实施例提供的车位排布优化方法包括:
S201、依据初始车位排布数据中内部车位的排布数据生成当前车位排布多边形,并针对当前车位排布多边形中的每个多边形中的每条边,以边的最短邻接边移除为约束,确定边的可删除车位数。
S202、依据当前车位排布多边形中的多边形数量,创建数组元素个数与多边形数量一致的双向循环链表数组。
S203、针对当前车位排布多边形中的每个多边形中的每条边,将边的边位置和可删除车位数存储至多边形对应的双向循环链表中的一个节点中,并且依据边的边拓扑信息,在节点中存储前驱节点指针和后继节点指针,构建当前多边形数据。
S204、依据目标车位数、正方形面积和车位面积,估算在正方形内部排布车位的内部车位数。
在车位排布优化过程中,首次优化的当前待删除车位数与后续循环过程中当前待
删除车位数的确定方式有差异。对于首次优化过程中的当前待删除车位数,为了使得车库
轮廓更加规则,本实施例中以当前车位排布多边形向规则的正方形靠拢为依据,以在规则
的正方形中进行目标车位数的车位排布为参考来确定。具体为:根据容纳目标车位数n的正
方形的面积和每个车位的面积,估算出在正方形内部排布非靠墙车位的车位数(即内部车
位数)大概为。
S205、依据当前车位排布多边形中包含的当前车位数和内部车位数,确定当前待删除车位数。
S206、从当前多边形数据中确定当前车位排布多边形中的优化边,并依据优化边的可删除车位数和当前待删除车位数,更新当前多边形数据和当前车位排布多边形。
根据当前多边形数据中存储的各条边的可删除车位数,确定出一条满足设定条件的边作为本次优化过程中的优化边。该设定条件可以是可删除车位数最多、可删除车位数最少或者可删除车位数小于某一数值等,具体可根据多边形轮廓简化的依据而确定。之后,根据优化边的可删除车位数和当前待删除车位数之间的数值大小关系,确定该优化边的可删除车位数中需要删除的车位数,并进行车位删除。删除车位后相应更新当前多边形数据和当前车位排布多边形。
作为一个示例,从当前多边形数据中确定当前车位排布多边形中的优化边包括:依据当前多边形数据中每条边的可删除车位数,将不为零的最小可删除车位数对应的边确定为优化边。为了进一步提高车库轮廓的规则性,本实施例中以最小力度来控制车库轮廓优化,尽量先删除造成地库轮廓线凹凸不平的车位。具体为从所有边中选择可删除车位数最小但不为零的边作为优化边。在多边形数据以双向循环链表形式存储时,该过程为:在双向循环链表数组中遍历各个双向循环链表的节点,找到节点元素为可删除车位数最少且不为零的边,作为优化边。
作为一个示例,依据优化边的可删除车位数和当前待删除车位数,更新当前多边形数据和当前车位排布多边形包括:
A、若优化边的可删除车位数等于或大于当前待删除车位数,则以删除与优化边相邻的一排车位为约束,对优化边作平移处理,更新当前车位排布多边形,其中,平移量为一个车位对应的距离;依据平移后的优化边的边位置和边拓扑信息,更改当前多边形数据中优化边和优化边的各邻接边的边位置,完成当前多边形数据的更新。
针对于优化边的可删除车位数等于或者大于当前待删除车位数的情况,为了在多边形形状相对规则的情况下继续删除多余车位,本实施例中只删除与该优化边相邻的车位,并对该优化边作平移处理,且平移量为一个单位车宽(或单位车长)的距离。参见图6,对于图中左侧多边形,仅删除与边②相邻的两个车位(左侧多边形中阴影所示),并且将边②向左侧平移一个单位车宽的距离。
在经过上述平移处理之后,当前车位排布多边形会自动更新。另外,需要根据平移后的优化边及其邻接边的边位置更改当前多边形数据。对于链表形式的多边形数据,则保持该优化边对应的双向循环链表长度不变,仅更新优化边所在节点及其前驱节点和后继节点中的边位置。
B、若优化边的可删除车位数小于当前待删除车位数,则以删除优化边的可删除车位为约束,移除优化边,并更改优化边所属多边形的边拓扑信息,完成当前车位排布多边形的更新;依据当前车位排布多边形中优化边所属多边形的每条边的边位置、可删除车位数和边拓扑信息,更新当前多边形数据。
针对于优化边的可删除车位数不超过当前待删除车位数的情况,直接删除优化边的可删除车位数对应的车位,这样,该优化边及其邻接边的边拓扑关系会发生变化,该优化边所属多边形的边数量和形状也会变化。如图4所示的多边形,删除优化边②的4个可删除车位(左侧多边形中阴影所示)后,边③、边④被删除(右侧多边形中虚线所示),而优化边②将更新为连接边①和边⑤的新的边②。按照上述过程更新当前车位排布多边形。另外,需要根据更新后的当前车位排布多边形中优化边所在多边形的边信息(边位置、可删除车位数和边拓扑信息)来更新当前多边形数据。对于链表形式的多边形数据,将优化边对应的双向循环链表长度更新到与新的多边形的边数量一致,并更新优化边所在节点及其前驱节点和后继节点,且更改所有更新节点中的边位置和可删除车位数。
S207、依据更新前的当前车位排布多边形和更新后的当前车位排布多边形进行车位删除。
根据更新前后的当前车位排布多边形,将多边形以外的车位删除。
S208、利用当前待删除车位数和已删除车位数更新当前待删除车位数。
计算当前待删除车位数和已经删除的车位数的差值,将该差值作为新的当前待删除车位数,这样,剩余需要删除的车位数则继续进入后续循环优化过程。
S209、若更新后的当前待删除车位数超过第二车位数阈值,则返回执行S206。
其中,第二车位数阈值是指预先设定的、用于判断是否进行车位重新排布的上限车位数,例如第二车位数阈值设定为5个车位数。
比较更新后的当前待删除车位数和第二车位数阈值,根据比较结果来判断后续进行车位重新排布还是继续进行循环优化。如果当前待删除车位数大于第二车位数阈值,那么就返回执行S206,在实施例一的大循环优化的基础上,构建内部的第二层次的小循环,来继续优化初始车位排布。这样,就不需要在每次车位删除操作之后均重排靠墙车位,减少了耗时较长的车位重排操作的执行次数,从而进一步提高车位排布优化效率。
S210、若更新后的当前待删除车位数小于或等于第二车位数阈值,则依据更新后的当前车位排布多边形重新排布靠墙车位,以更新初始车位排布数据,并依据更新后的初始车位排布数据确定当前总车位数。
如果当前待删除车位数小于或等于第二车位数,那么第二层次的小循环优化过程可以结束,进行后续的靠墙车位的重新排布的操作。
S211、若当前总车位数与目标车位数的差值超过第一车位数阈值,则利用当前总车位数和目标车位数更新当前待删除车位数,并返回执行S206。
S212、若差值小于或等于第一车位数阈值,则将更新后的初始车位排布数据确定为目标车位排布数据。
针对图1所示的初始车位排布的施工图,其内的总车位数为1537个,超过目标车位数1400较多。经过本发明实施例中车位排布优化方法的优化处理后,能够在将地下车库的总车位数(1461个)控制在目标车位数偏差的设定百分数(如5%)以内的情况下,减少车库轮廓线中的转角和倾角,使得车库轮廓线更加规整,如图7中车库轮廓线700所示。
本实施例的技术方案,通过从当前多边形数据中确定当前车位排布多边形中的优化边,并依据优化边的可删除车位数和当前待删除车位数,更新当前多边形数据和当前车位排布多边形;依据更新前的当前车位排布多边形和更新后的当前车位排布多边形进行车位删除。实现了车位排布优化时,每次选择当前车位排布多边形中的一条边进行车库轮廓优化,避免多条边同时优化造成的轮廓严重变形或车位数变动过大的问题,进一步提高了车位排布的优化效率。通过在更新当前多边形数据和当前车位排布多边形之后,利用当前待删除车位数和已删除车位数更新当前待删除车位数;若更新后的当前待删除车位数超过第二车位数阈值,则返回执行依据当前待删除车位数和当前多边形数据中的各可删除车位数进行车位删除的步骤;若更新后的当前待删除车位数小于或等于第二车位数阈值,则执行依据更新后的当前车位排布多边形重新排布靠墙车位的步骤。实现了利用当前待删除车位数和第二车位数阈值,来判断是否循环进行基于可删除车位数的多边形轮廓优化,避免每次多边形轮廓优化后都进行耗时较长的车位重排操作,进一步提高车库中车位排布优化效率。
实施例三
本实施例提供的多边形简化方法,是基于多边形的边长进行多边形的轮廓简化,可适用于复杂多边形的模式识别,例如,地下车库的车库轮廓优化、建筑图纸中的楼型匹配等。该方法可以由多边形简化装置来执行,该装置可以由软件和/或硬件的方式实现,该装置可以集成在具有一定运算功能的电子设备中,例如平板电脑、笔记本电脑、台式电脑或服务器等。本实施例中以娄星匹配为例进行说明。其中,与上述各实施例相同或相应的术语的解释在此不再赘述。
参见图8,本实施例的多边形简化方法具体包括:
S310、依据待简化的当前多边形中的每条边的边长度构建当前多边形数据。
原始的楼栋外轮廓转角多,轮廓较为复杂,不易于匹配不同的楼型。故将原始的楼栋外轮廓构成的多边形确定为待简化的当前多边形,如图9中的当前多边形910所示。根据当前多边形中每条边的边长度构建当前多边形数据。该当前多边形数据也可以是利用双向循环链表结构来存储,以提高后续数据遍历效率,进而进一步提高多边形简化效率。
S320、依据各边长度和预设边长阈值,删除当前多边形中的一条边,更新当前多边形和当前多边形数据。
其中,预设边长阈值是指预先设定的、用于判断多边形简化是否满足业务要求的边长上限值。
本发明实施例中的多边形简化是以边长作为简化的依据,故需要根据多边形数据中每条边的边长度和预设边长阈值的数值大小关系,来从当前多边形的所有边中筛选出一条边作为优化边,并通过该优化边的删除来更新当前多边形及其对应的当前多边形数据。
作为一个示例,当前多边形数据中包含当前多边形中的每条边的边位置和边拓扑信息。相应地,S320包括:依据各边长度和预设边长阈值,确定当前多边形中边长度小于预设边长阈值的边作为候选边;将各候选边中边长度最小的候选边作为优化边,并从当前多边形中删除优化边;依据边拓扑信息,处理优化边的邻接边,更新当前多边形,并依据更新后的当前多边形更新当前多边形数据。
为了提高当前多边形数据的完整性,从而进一步提高边删除效率,将多边形中每条边的边位置和边拓扑信息也添加至当前多边形数据中。在此基础上,删除多边形中的一条边的过程为:首先,分别比较当前多边形中每条边的边长度和预设边长阈值,筛选出边长度小于预设边长阈值的所有边作为本次多边形简化的候选边。然后,再比较每个候选边的边长度,筛选出边长度最小的候选边作为优化边,并从当前多边形中删除该优化边。当删除一条边之后,需要处理该优化边的各邻接边,例如连接、投影或延长邻接边等,再次封闭当前多边形,完成当前多边形的更新。并且,根据更新后的当前多边形来更新当前多边形数据。这样设置的好处在于,每次都以最短边作为优化边,优先删除造成多边形凹凸变化较大的边,既能以更小粒度来简化多边形,避免多边形畸变的问题,又能更快地使多边形轮廓规则化,进一步提高多边形简化效率。
S330、若更新后的当前多边形数据中的各边长度中存在小于预设边长阈值的边,则返回执行S320。
更新当前多边形数据后,继续比较其中的每个边长度与预设边长阈值。如果仍然存在边长度小于预设边长阈值的边,那么就返回S320,形成循环简化流程,直至更新后的当前多边形数据中的各边长度均等于或大于预设边长阈值。
S340、若更新后的当前多边形数据中的每个边长度等于或大于预设边长阈值,则将更新后的当前多边形确定为简化多边形。
在确定更新后的当前多边形数据中的各边长度均等于或大于预设边长阈值的情况下,结束多边形简化流程,将最后更新的当前多边形确定为简化多边形并输出,如图9中的简化多边形920所示。该简化多边形会更加易于进行后续的楼栋楼型匹配。
本实施例的技术方案,通过依据待简化的当前多边形中的每条边的边长度构建当前多边形数据;依据各边长度和预设边长阈值,删除当前多边形中的一条边,更新当前多边形和当前多边形数据;若更新后的当前多边形数据中的各边长度中存在小于预设边长阈值的边,则返回执行依据各边长度和预设边长阈值,删除当前多边形中的一条边,更新当前多边形和当前多边形数据的步骤;若更新后的当前多边形数据中的每个边长度等于或大于预设边长阈值,则将更新后的当前多边形确定为简化多边形。实现了以边长度为依据进行多边形轮廓优化,提高了优化后的轮廓准确性和多边形简化效率。
实施例四
本实施例提供一种车位排布优化装置,参见图10,该装置具体包括:
当前多边形数据构建模块1010,用于依据初始车位排布数据中内部车位的排布数据生成当前车位排布多边形,并依据当前车位排布多边形中每条边的可删除车位数,构建当前多边形数据;
车位删除模块1020,用于依据当前多边形数据中的各可删除车位数进行车位删除,更新当前多边形数据和当前车位排布多边形;
车位重排模块1030,用于依据更新后的当前车位排布多边形重新排布靠墙车位,以更新初始车位排布数据,并依据更新后的初始车位排布数据确定当前总车位数;
循环触发模块1040,用于若当前总车位数与目标车位数的差值超过第一车位数阈值,则返回执行依据当前多边形数据中的各可删除车位数进行车位删除的步骤;
目标车位排布数据确定模块1050,用于若差值小于或等于第一车位数阈值,则将更新后的初始车位排布数据确定为目标车位排布数据。
可选地,在上述装置的基础上,该装置还包括当前待删除车位数确定模块,用于:
在依据当前多边形数据中的各可删除车位数进行车位删除之前,依据目标车位数和当前车位排布多边形中包含的当前车位数,确定当前待删除车位数;
相应地,车位删除模块1020具体用于:
依据当前待删除车位数和当前多边形数据中的各可删除车位数进行车位删除;
相应地,循环触发模块1040还用于:
在返回执行依据当前多边形数据中的各可删除车位数进行车位删除的步骤之前,利用当前总车位数和目标车位数更新当前待删除车位数。
可选地,在上述装置的基础上,该装置还包括内部循环触发模块,用于:
在更新当前多边形数据和当前车位排布多边形之后,利用当前待删除车位数和已删除车位数更新当前待删除车位数;
若更新后的当前待删除车位数超过第二车位数阈值,则返回执行依据当前待删除车位数和当前多边形数据中的各可删除车位数进行车位删除的步骤;
若更新后的当前待删除车位数小于或等于第二车位数阈值,则执行依据更新后的当前车位排布多边形重新排布靠墙车位的步骤。
可选地,车位删除模块1020包括:
优化边确定子模块,用于从当前多边形数据中确定当前车位排布多边形中的优化边,并依据优化边的可删除车位数和当前待删除车位数,更新当前多边形数据和当前车位排布多边形;
车位删除子模块,用于依据更新前的当前车位排布多边形和更新后的当前车位排布多边形进行车位删除。
进一步地,优化边确定子模块具体用于:
依据当前多边形数据中每条边的可删除车位数,将不为零的最小可删除车位数对应的边确定为优化边。
进一步地,当前多边形数据中包含当前车位排布多边形中每条边的边位置和边拓扑信息;
相应地,优化边确定子模块还具体用于:
若优化边的可删除车位数等于或大于当前待删除车位数,则以删除与优化边相邻的一排车位为约束,对优化边作平移处理,更新当前车位排布多边形,其中,平移量为一个车位对应的距离;
依据平移后的优化边的边位置和边拓扑信息,更改当前多边形数据中优化边和优化边的各邻接边的边位置,完成当前多边形数据的更新;
若优化边的可删除车位数小于当前待删除车位数,则以删除优化边的可删除车位为约束,移除优化边,并更改优化边所属多边形的边拓扑信息,完成当前车位排布多边形的更新;
依据当前车位排布多边形中优化边所属多边形的每条边的边位置、可删除车位数和边拓扑信息,更新当前多边形数据。
可选地,车位删除模块1020还包括当前待删除车位确定子模块,用于:
依据目标车位数、正方形面积和车位面积,估算在正方形内部排布车位的内部车位数;
依据当前车位排布多边形中包含的当前车位数和内部车位数,确定当前待删除车位数。
可选地,当前多边形数据构建模块1010还用于:
在依据初始车位排布数据中内部车位的排布数据生成当前车位排布多边形之后,针对当前车位排布多边形中的每个多边形中的每条边,以边的最短邻接边移除为约束,确定边的可删除车位数。
可选地,当前多边形数据构建模块1010具体用于:
依据当前车位排布多边形中的多边形数量,创建数组元素个数与多边形数量一致的双向循环链表数组,双向循环链表数组中的数组元素类型为双向循环链表;
针对当前车位排布多边形中的每个多边形中的每条边,将边的边位置和可删除车位数存储至多边形对应的双向循环链表中的一个节点中,并且依据边的边拓扑信息,在节点中存储前驱节点指针和后继节点指针,构建当前多边形数据。
可选地,第一车位数阈值为目标车位数与预设百分数的乘积。
通过本发明实施例四的一种车位排布优化装置,实现了将车库中停车位的排布数据转换为多边形,且进一步利用每条边的可删除车位数来表征多边形每条边边长,在进行车位删除并更新当前车位排布多边形时将相应边删去,实现基于多边形边长的车库轮廓优化,既能确保车库中排布的车位数在目标车位数的设定误差范围内,又能提高车库轮廓的规则性,降低后期车库施工成本,从而提高车库中停车位排布效率。
本发明实施例所提供的车位排布优化装置可执行本发明任意实施例所提供的车位排布优化方法,具备执行方法相应的功能模块和有益效果。
实施例五
本实施例提供一种多边形简化装置,参见图11,该装置具体包括:
当前多边形数据构建模块1110,用于依据待简化的当前多边形中的每条边的边长度和构建当前多边形数据;
边删除模块1120,用于依据各边长度和预设边长阈值,删除当前多边形中的一条边,更新当前多边形和当前多边形数据;
循环触发模块1130,用于若更新后的当前多边形数据中的各边长度中存在小于预设边长阈值的边,则返回执行依据各边长度和预设边长阈值,删除当前多边形中的一条边,更新当前多边形和当前多边形数据的步骤;
简化多边形确定模块1140,用于若更新后的当前多边形数据中的每个边长度等于或大于预设边长阈值,则将更新后的当前多边形确定为简化多边形。
可选地,当前多边形数据中包含当前多边形中的每条边的边位置和边拓扑信息;
相应地,边删除模块1120具体用于:
依据各边长度和预设边长阈值,确定当前多边形中边长度小于预设边长阈值的边作为候选边;
将各候选边中边长度最小的候选边作为优化边,并从当前多边形中删除优化边;
依据边拓扑信息,处理优化边的邻接边,更新当前多边形,并依据更新后的当前多边形更新当前多边形数据。
通过本发明实施例五的一种多边形简化装置,实现了以边长度为依据进行多边形轮廓优化,提高了优化后的轮廓准确性和多边形简化效率。
本发明实施例所提供的多边形简化装置可执行本发明任意实施例所提供的多边形简化方法,具备执行方法相应的功能模块和有益效果。
值得注意的是,上述各装置的实施例中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。
实施例六
参见图12,本实施例提供了一种电子设备,其包括:一个或多个处理器1220;存储装置1210,用于存储一个或多个程序,当一个或多个程序被一个或多个处理器1220执行,使得一个或多个处理器1220实现本发明实施例所提供的车位排布优化方法,包括:
依据初始车位排布数据中内部车位的排布数据生成当前车位排布多边形,并依据当前车位排布多边形中每条边的可删除车位数构建当前多边形数据;
依据当前多边形数据中的各可删除车位数进行车位删除,更新当前多边形数据和当前车位排布多边形;
依据更新后的当前车位排布多边形重新排布靠墙车位,以更新初始车位排布数据,并依据更新后的初始车位排布数据确定当前总车位数;
若当前总车位数与目标车位数的差值超过第一车位数阈值,则返回执行依据当前多边形数据中的各可删除车位数进行车位删除的步骤;
若差值小于或等于第一车位数阈值,则将更新后的初始车位排布数据确定为目标车位排布数据。
当然,本领域技术人员可以理解,处理器1220还可以实现本发明任意实施例所提供的车位排布优化方法的技术方案。
图12显示的电子设备仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。如图12所示,该电子设备包括处理器1220、存储装置1210、输入装置1230和输出装置1240;电子设备中处理器1220的数量可以是一个或多个,图12中以一个处理器1220为例;电子设备中的处理器1220、存储装置1210、输入装置1230和输出装置1240可以通过总线或其他方式连接,图12中以通过总线1250连接为例。
存储装置1210作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本发明实施例中的车位排布优化方法对应的程序指令/模块(例如,车位排布优化装置中的当前多边形数据构建模块、车位删除模块、车位重排模块、循环触发模块和目标车位排布数据确定模块)。
存储装置1210可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据终端的使用所创建的数据等。此外,存储装置1210可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储装置1210可进一步包括相对于处理器1220远程设置的存储器,这些远程存储器可以通过网络连接至电子设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
输入装置1230可用于接收输入的数字或字符信息,以及产生与电子设备的用户设置以及功能控制有关的键信号输入。输出装置1240可包括显示屏等显示设备。
本发明实施例还提供了另一电子设备,其包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当一个或多个程序被一个或多个处理器执行,使得一个或多个处理器实现本发明实施例所提供的多边形简化方法,包括:
依据待简化的当前多边形中的每条边的边长度构建当前多边形数据;
依据各边长度和预设边长阈值,删除当前多边形中的一条边,更新当前多边形和当前多边形数据;
若更新后的当前多边形数据中的各边长度中存在小于预设边长阈值的边,则返回执行依据各边长度和预设边长阈值,删除当前多边形中的一条边,更新当前多边形和当前多边形数据的步骤;
若更新后的当前多边形数据中的每个边长度等于或大于预设边长阈值,则将更新后的当前多边形确定为简化多边形。
当然,本领域技术人员可以理解,处理器还可以实现本发明任意实施例所提供的多边形简化方法的技术方案。该电子设备的硬件结构以及功能可参见实施例六的内容解释。
实施例七
本实施例提供一种包含计算机可执行指令的存储介质,计算机可执行指令在由计算机处理器执行时用于执行一种车位排布优化方法,该方法包括:
依据初始车位排布数据中内部车位的排布数据生成当前车位排布多边形,并依据当前车位排布多边形中每条边的可删除车位数构建当前多边形数据;
依据当前多边形数据中的各可删除车位数进行车位删除,更新当前多边形数据和当前车位排布多边形;
依据更新后的当前车位排布多边形重新排布靠墙车位,以更新初始车位排布数据,并依据更新后的初始车位排布数据确定当前总车位数;
若当前总车位数与目标车位数的差值超过第一车位数阈值,则返回执行依据当前多边形数据中的各可删除车位数进行车位删除的步骤;
若差值小于或等于第一车位数阈值,则将更新后的初始车位排布数据确定为目标车位排布数据。
当然,本发明实施例所提供的一种包含计算机可执行指令的存储介质,其计算机可执行指令不限于如上的方法操作,还可以执行本发明任意实施例所提供的车位排布优化方法中的相关操作。
通过以上关于实施方式的描述,所属领域的技术人员可以清楚地了解到,本发明可借助软件及必需的通用硬件来实现,当然也可以通过硬件实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如计算机的软盘、只读存储器(Read-Only Memory, ROM)、随机存取存储器(RandomAccess Memory, RAM)、闪存(FLASH)、硬盘或光盘等,包括若干指令用以使得一台电子设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所提供的车位排布优化方法。
本发明实施例还提供了另一种计算机可读存储介质,计算机可执行指令在由计算机处理器执行时用于执行一种多边形简化方法,该方法包括:
依据待简化的当前多边形中的每条边的边长度构建当前多边形数据;
依据各边长度和预设边长阈值,删除当前多边形中的一条边,更新当前多边形和当前多边形数据;
若更新后的当前多边形数据中的各边长度中存在小于预设边长阈值的边,则返回执行依据各边长度和预设边长阈值,删除当前多边形中的一条边,更新当前多边形和当前多边形数据的步骤;
若更新后的当前多边形数据中的每个边长度等于或大于预设边长阈值,则将更新后的当前多边形确定为简化多边形。
当然,本发明实施例所提供的一种包含计算机可执行指令的存储介质,其计算机可执行指令不限于如上的方法操作,还可以执行本发明任意实施例所提供的多边形简化方法中的相关操作。对存储介质的介绍可参见实施例七中的内容解释。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。
Claims (15)
1.一种车位排布优化方法,其特征在于,包括:
依据初始车位排布数据中内部车位的排布数据生成当前车位排布多边形,并依据当前车位排布多边形中每条边的可删除车位数构建当前多边形数据;
依据当前多边形数据中的各所述可删除车位数进行车位删除,更新当前多边形数据和当前车位排布多边形;
依据更新后的当前车位排布多边形重新排布靠墙车位,以更新初始车位排布数据,并依据更新后的初始车位排布数据确定当前总车位数;
若当前总车位数与目标车位数的差值超过第一车位数阈值,则返回执行所述依据当前多边形数据中的各所述可删除车位数进行车位删除的步骤;
若所述差值小于或等于所述第一车位数阈值,则将更新后的初始车位排布数据确定为目标车位排布数据。
2.根据权利要求1所述的方法,其特征在于,在所述依据当前多边形数据中的各所述可删除车位数进行车位删除之前,还包括:
依据所述目标车位数和当前车位排布多边形中包含的当前车位数,确定当前待删除车位数;
相应地,所述依据所述当前多边形数据中的各所述可删除车位数进行车位删除包括:
依据当前待删除车位数和当前多边形数据中的各所述可删除车位数进行车位删除;
相应地,在所述返回执行所述依据当前多边形数据中的各所述可删除车位数进行车位删除的步骤之前,还包括:
利用当前总车位数和所述目标车位数更新当前待删除车位数。
3.根据权利要求2所述的方法,其特征在于,在所述更新当前多边形数据和当前车位排布多边形之后,还包括:
利用当前待删除车位数和已删除车位数更新当前待删除车位数;
若更新后的当前待删除车位数超过第二车位数阈值,则返回执行所述依据当前待删除车位数和当前多边形数据中的各所述可删除车位数进行车位删除的步骤;
若更新后的当前待删除车位数小于或等于所述第二车位数阈值,则执行所述依据更新后的当前车位排布多边形重新排布靠墙车位的步骤。
4.根据权利要求2或3所述的方法,其特征在于,依据当前待删除车位数和当前多边形数据中的各可删除车位数进行车位删除,更新当前多边形数据和当前车位排布多边形包括:
从当前多边形数据中确定当前车位排布多边形中的优化边,并依据所述优化边的可删除车位数和当前待删除车位数,更新当前多边形数据和当前车位排布多边形;
依据更新前的当前车位排布多边形和更新后的当前车位排布多边形进行车位删除。
5.根据权利要求4所述的方法,其特征在于,从当前多边形数据中确定当前车位排布多边形中的优化边包括:
依据当前多边形数据中每条边的所述可删除车位数,将不为零的最小可删除车位数对应的边确定为所述优化边。
6.根据权利要求4所述的方法,其特征在于,当前多边形数据中包含当前车位排布多边形中每条边的边位置和边拓扑信息;
相应地,依据所述优化边的可删除车位数和当前待删除车位数,更新当前多边形数据和当前车位排布多边形包括:
若所述优化边的可删除车位数等于或大于当前待删除车位数,则以删除与所述优化边相邻的一排车位为约束,对所述优化边作平移处理,更新当前车位排布多边形,其中,平移量为一个车位对应的距离;
依据平移后的优化边的边位置和所述边拓扑信息,更改当前多边形数据中所述优化边和所述优化边的各邻接边的边位置,完成当前多边形数据的更新;
若所述优化边的可删除车位数小于当前待删除车位数,则以删除所述优化边的可删除车位为约束,移除所述优化边,并更改所述优化边所属多边形的所述边拓扑信息,完成当前车位排布多边形的更新;
依据当前车位排布多边形中所述优化边所属多边形的每条边的边位置、可删除车位数和边拓扑信息,更新当前多边形数据。
7.根据权利要求2或3所述的方法,其特征在于,依据所述目标车位数和当前车位排布多边形中包含的当前车位数,确定当前待删除车位数包括:
依据所述目标车位数、正方形面积和车位面积,估算在正方形内部排布车位的内部车位数;
依据当前车位排布多边形中包含的当前车位数和所述内部车位数,确定当前待删除车位数。
8.根据权利要求2或3所述的方法,其特征在于,在依据初始车位排布数据中内部车位的排布数据生成当前车位排布多边形之后,还包括:
针对当前车位排布多边形中的每个多边形中的每条边,以所述边的最短邻接边移除为约束,确定所述边的所述可删除车位数。
9.根据权利要求6所述的方法,其特征在于,依据当前车位排布多边形中每条边的边位置、可删除车位数和边拓扑信息,构建当前多边形数据包括:
依据当前车位排布多边形中的多边形数量,创建数组元素个数与所述多边形数量一致的双向循环链表数组,所述双向循环链表数组中的数组元素类型为双向循环链表;
针对当前车位排布多边形中的每个多边形中的每条边,将所述边的边位置和可删除车位数存储至所述多边形对应的双向循环链表中的一个节点中,并且依据所述边的边拓扑信息,在所述节点中存储前驱节点指针和后继节点指针,构建当前多边形数据。
10.一种多边形简化方法,其特征在于,包括:
依据待简化的当前多边形中的每条边的边长度构建当前多边形数据;
依据各所述边长度和预设边长阈值,删除当前多边形中的一条边,更新当前多边形和当前多边形数据;
若更新后的当前多边形数据中的各所述边长度中存在小于所述预设边长阈值的边,则返回执行所述依据各所述边长度和预设边长阈值,删除当前多边形中的一条边,更新当前多边形和当前多边形数据的步骤;
若更新后的当前多边形数据中的每个所述边长度等于或大于所述预设边长阈值,则将更新后的当前多边形确定为简化多边形。
11.根据权利要求10所述的方法,其特征在于,当前多边形数据中包含当前多边形中的每条边的边位置和边拓扑信息;
相应地,依据各所述边长度和预设边长阈值,删除当前多边形中的一条边,更新当前多边形和当前多边形数据包括:
依据各所述边长度和预设边长阈值,确定当前多边形中边长度小于所述预设边长阈值的边作为候选边;
将各所述候选边中边长度最小的候选边作为优化边,并从当前多边形中删除所述优化边;
依据所述边拓扑信息,处理所述优化边的邻接边,更新当前多边形,并依据更新后的当前多边形更新当前多边形数据。
12.一种车位排布优化装置,其特征在于,包括:
当前多边形数据构建模块,用于依据初始车位排布数据中内部车位的排布数据生成当前车位排布多边形,并依据当前车位排布多边形中每条边的可删除车位数,构建当前多边形数据;
车位删除模块,用于依据当前多边形数据中的各所述可删除车位数进行车位删除,更新当前多边形数据和当前车位排布多边形;
车位重排模块,用于依据更新后的当前车位排布多边形重新排布靠墙车位,以更新初始车位排布数据,并依据更新后的初始车位排布数据确定当前总车位数;
循环触发模块,用于若当前总车位数与目标车位数的差值超过第一车位数阈值,则返回执行所述依据当前多边形数据中的各所述可删除车位数进行车位删除的步骤;
目标车位排布数据确定模块,用于若所述差值小于或等于所述第一车位数阈值,则将更新后的初始车位排布数据确定为目标车位排布数据。
13.一种多边形简化装置,其特征在于,包括:
当前多边形数据构建模块,用于依据待简化的当前多边形中的每条边的边长度构建当前多边形数据;
边删除模块,用于依据各所述边长度和预设边长阈值,删除当前多边形中的一条边,更新当前多边形和当前多边形数据;
循环触发模块,用于若更新后的当前多边形数据中的各所述边长度中存在小于所述预设边长阈值的边,则返回执行所述依据各所述边长度和预设边长阈值,删除当前多边形中的一条边,更新当前多边形和当前多边形数据的步骤;
简化多边形确定模块,用于若更新后的当前多边形数据中的每个所述边长度等于或大于所述预设边长阈值,则将更新后的当前多边形确定为简化多边形。
14.一种电子设备,其特征在于,所述电子设备包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-9中任一所述的车位排布优化方法,或者如权利要求10-11中任一所述的多边形简化方法。
15.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-9中任一所述的车位排布优化方法,或者如权利要求10-11中任一所述的多边形简化方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010619067.9A CN111814235A (zh) | 2020-07-01 | 2020-07-01 | 车位排布优化和多边形简化方法、装置、设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010619067.9A CN111814235A (zh) | 2020-07-01 | 2020-07-01 | 车位排布优化和多边形简化方法、装置、设备和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111814235A true CN111814235A (zh) | 2020-10-23 |
Family
ID=72855696
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010619067.9A Withdrawn CN111814235A (zh) | 2020-07-01 | 2020-07-01 | 车位排布优化和多边形简化方法、装置、设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111814235A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112926127A (zh) * | 2021-04-06 | 2021-06-08 | 万翼科技有限公司 | 车库参数确定方法、电子设备及相关产品 |
CN113158296A (zh) * | 2021-03-15 | 2021-07-23 | 合肥量圳建筑科技有限公司 | 车位布置方法、装置、设备及存储介质 |
CN114446090A (zh) * | 2022-04-07 | 2022-05-06 | 深圳小库科技有限公司 | 地面停车场的车位排布方案生成方法、装置、设备及介质 |
CN114510033A (zh) * | 2022-01-07 | 2022-05-17 | 广东博智林机器人有限公司 | 基于车位的规划作业方法、装置、设备及存储介质 |
CN115577869A (zh) * | 2022-08-29 | 2023-01-06 | 上海天华建筑设计有限公司 | 一种基于遗传算法的地库车位自动排布方法 |
WO2024067175A1 (zh) * | 2022-09-26 | 2024-04-04 | 华为技术有限公司 | 一种地图构建方法、装置和车辆 |
Citations (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000337894A (ja) * | 1999-05-24 | 2000-12-08 | Fujitsu Ten Ltd | ナビゲーション装置における市街図有無判定方法及び装置及び地図データ記憶 |
US20150094945A1 (en) * | 2013-09-27 | 2015-04-02 | Transoft Solutions, Inc. | Method and apparatus for generating a vehicle path |
CN105787977A (zh) * | 2016-02-26 | 2016-07-20 | 民政部国家减灾中心 | 建筑物矢量边界简化的方法 |
CN105825705A (zh) * | 2016-01-04 | 2016-08-03 | 杨彦兵 | 车位检测与引导系统及方法 |
CN109241580A (zh) * | 2018-08-15 | 2019-01-18 | 深圳大学 | 一种地块设计方法、装置、计算机设备和存储介质 |
JP2019040419A (ja) * | 2017-08-25 | 2019-03-14 | 国立大学法人 東京大学 | 画像処理装置、及びプログラム |
CN109785404A (zh) * | 2019-01-18 | 2019-05-21 | 河海大学常州校区 | 一种基于点删除算法的多边形简化方法 |
CN110162928A (zh) * | 2019-06-06 | 2019-08-23 | 宝业湖北建工集团有限公司 | 基于bim的车位检测方法、装置及电子设备 |
US20190287299A1 (en) * | 2018-03-16 | 2019-09-19 | Here Global B.V. | Method and apparatus for regularizing building footprints using taxicab distance |
US20200027268A1 (en) * | 2017-03-30 | 2020-01-23 | Sony Interactive Entertainment Inc. | Polygon model generating apparatus, polygon model generation method, and program |
CN111159809A (zh) * | 2019-12-31 | 2020-05-15 | 广东博智林机器人有限公司 | 车库图纸的生成方法、装置、电子设备及存储介质 |
CN111159811A (zh) * | 2020-01-02 | 2020-05-15 | 广东博智林机器人有限公司 | 地下车库布局方法、装置、设备和存储介质 |
CN111259709A (zh) * | 2018-12-03 | 2020-06-09 | 初速度(苏州)科技有限公司 | 基于弹性多边形的停车位结构检测模型的训练方法 |
CN111339640A (zh) * | 2020-02-12 | 2020-06-26 | 北京中外建建筑设计有限公司 | 一种基于Revit插件Dynamo的建筑物车位编号自动创建方法 |
CN115828382A (zh) * | 2022-11-17 | 2023-03-21 | 广东博意建筑设计院有限公司 | 车位类型排布方法及系统 |
-
2020
- 2020-07-01 CN CN202010619067.9A patent/CN111814235A/zh not_active Withdrawn
Patent Citations (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000337894A (ja) * | 1999-05-24 | 2000-12-08 | Fujitsu Ten Ltd | ナビゲーション装置における市街図有無判定方法及び装置及び地図データ記憶 |
US20150094945A1 (en) * | 2013-09-27 | 2015-04-02 | Transoft Solutions, Inc. | Method and apparatus for generating a vehicle path |
CN105825705A (zh) * | 2016-01-04 | 2016-08-03 | 杨彦兵 | 车位检测与引导系统及方法 |
CN105787977A (zh) * | 2016-02-26 | 2016-07-20 | 民政部国家减灾中心 | 建筑物矢量边界简化的方法 |
US20200027268A1 (en) * | 2017-03-30 | 2020-01-23 | Sony Interactive Entertainment Inc. | Polygon model generating apparatus, polygon model generation method, and program |
JP2019040419A (ja) * | 2017-08-25 | 2019-03-14 | 国立大学法人 東京大学 | 画像処理装置、及びプログラム |
US20190287299A1 (en) * | 2018-03-16 | 2019-09-19 | Here Global B.V. | Method and apparatus for regularizing building footprints using taxicab distance |
CN109241580A (zh) * | 2018-08-15 | 2019-01-18 | 深圳大学 | 一种地块设计方法、装置、计算机设备和存储介质 |
CN111259709A (zh) * | 2018-12-03 | 2020-06-09 | 初速度(苏州)科技有限公司 | 基于弹性多边形的停车位结构检测模型的训练方法 |
CN109785404A (zh) * | 2019-01-18 | 2019-05-21 | 河海大学常州校区 | 一种基于点删除算法的多边形简化方法 |
CN110162928A (zh) * | 2019-06-06 | 2019-08-23 | 宝业湖北建工集团有限公司 | 基于bim的车位检测方法、装置及电子设备 |
CN111159809A (zh) * | 2019-12-31 | 2020-05-15 | 广东博智林机器人有限公司 | 车库图纸的生成方法、装置、电子设备及存储介质 |
CN111159811A (zh) * | 2020-01-02 | 2020-05-15 | 广东博智林机器人有限公司 | 地下车库布局方法、装置、设备和存储介质 |
CN111339640A (zh) * | 2020-02-12 | 2020-06-26 | 北京中外建建筑设计有限公司 | 一种基于Revit插件Dynamo的建筑物车位编号自动创建方法 |
CN115828382A (zh) * | 2022-11-17 | 2023-03-21 | 广东博意建筑设计院有限公司 | 车位类型排布方法及系统 |
Non-Patent Citations (2)
Title |
---|
SHEN, T 等: "Optimized Public Parking Location Modelling for Green Intelligent Transportation System Using Genetic Algorithms", 《JOURNALS & MAGAZINES》, no. 7, pages 2169 - 3536 * |
徐涵喆: "基于规则的城市地下车库外圈车位排布启发式算法", 《北京邮电大学学报》, vol. 42, no. 4, pages 102 - 108 * |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113158296A (zh) * | 2021-03-15 | 2021-07-23 | 合肥量圳建筑科技有限公司 | 车位布置方法、装置、设备及存储介质 |
CN112926127A (zh) * | 2021-04-06 | 2021-06-08 | 万翼科技有限公司 | 车库参数确定方法、电子设备及相关产品 |
CN114510033A (zh) * | 2022-01-07 | 2022-05-17 | 广东博智林机器人有限公司 | 基于车位的规划作业方法、装置、设备及存储介质 |
CN114446090A (zh) * | 2022-04-07 | 2022-05-06 | 深圳小库科技有限公司 | 地面停车场的车位排布方案生成方法、装置、设备及介质 |
CN114446090B (zh) * | 2022-04-07 | 2022-06-21 | 深圳小库科技有限公司 | 地面停车场的车位排布方案生成方法、装置、设备及介质 |
CN115577869A (zh) * | 2022-08-29 | 2023-01-06 | 上海天华建筑设计有限公司 | 一种基于遗传算法的地库车位自动排布方法 |
CN115577869B (zh) * | 2022-08-29 | 2023-10-27 | 上海天华建筑设计有限公司 | 一种基于遗传算法的地库车位自动排布方法 |
WO2024067175A1 (zh) * | 2022-09-26 | 2024-04-04 | 华为技术有限公司 | 一种地图构建方法、装置和车辆 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111814235A (zh) | 车位排布优化和多边形简化方法、装置、设备和存储介质 | |
CN111159811B (zh) | 地下车库布局方法、装置、设备和存储介质 | |
CN111506939A (zh) | 一种车库设计方法、装置、终端和介质 | |
CN101980216B (zh) | 基于网块的快速多层布线方法 | |
CN111968402B (zh) | 一种车位排布方法、装置、终端及介质 | |
JP7175533B2 (ja) | 離散最適化によるデジタル集積回路のレイアウト方法および端末装置 | |
CN110222407B (zh) | 一种bim数据的融合方法及装置 | |
CN111915091A (zh) | 一种车位排布方法、装置、终端和介质 | |
CN106709503A (zh) | 一种基于密度的大型空间数据聚类算法k‑dbscan | |
CN111858613B (zh) | 一种业务数据的检索方法 | |
CN107564077A (zh) | 一种绘制道路网的方法及装置 | |
WO2020233063A1 (zh) | 智能化路径规划方法、装置及计算机可读存储介质 | |
CN108875914B (zh) | 对神经网络数据进行预处理和后处理的方法和装置 | |
CN113010570B (zh) | 电网设备矢量数据查询方法、装置、计算机设备和介质 | |
CN115495248B (zh) | 一种推理卡的内存分配方法、装置、电子设备及存储介质 | |
CN104036141A (zh) | 一种基于OpenCL的红黑树加速算法 | |
WO2023103320A1 (zh) | 建筑物分间方法、电子设备及计算机存储介质 | |
JP7552904B2 (ja) | 畳み込みニューラルネットワーク推論処理装置、及び畳み込みニューラルネットワーク推論処理方法 | |
CN113763240B (zh) | 一种点云缩略图生成方法、装置、设备及存储介质 | |
CN114238456A (zh) | 二维栅格地图实时更新显示方法、电子设备、存储介质 | |
CN114428984A (zh) | 模型中墙体处理方法、装置、计算机设备和存储介质 | |
WO2020233052A1 (zh) | 智能化路径规划方法、装置、设备及存储介质 | |
CN109325300A (zh) | 外轮廓建模加载方法、系统、装置及计算机可读存储介质 | |
CN106570172A (zh) | 一种基于流处理的模式更新方法 | |
CN113721802B (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 | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20201023 |
|
WW01 | Invention patent application withdrawn after publication |