导航:首页 > 源码编译 > 最小矩形覆盖算法

最小矩形覆盖算法

发布时间:2023-08-23 03:05:09

⑴ 将N个大小不等的矩形不重叠地拼在一个指定的大矩形里(大矩形长宽固定),求使占用大矩形区域最小的算法

大矩形图像为矩阵M(二值图像)
小矩形长为a1,a2……an
宽为b1,b2,……bn
所有常量(长和宽)放到一个数列A中,按大小排序;
设置大矩形图像起始点O1(0,0)
if A不为空,then 循环

如其中(A中元素)最大的是bi,从数列中删除bi和ai;
O1点删除bi*ai区域(矩阵数值归零),剩余部分生成两个或多个矩形。长宽分别为c1,c2……d1,d2……放到数列B中,按大小排序;
找出B中最小值ci加入数列A排序。O定为ci对应点。
在A中取小于ci的最大常量;从A删除ci;

输出矩阵M

请指教

⑵ 求一个排列算法,或者解决的思路!若干矩形拼凑成一个矩形,不能重叠,如何排列可以使最终面积最小

1. 计算宽度之和、高度之和,如果宽度和较大则先处理2.1,否则先处理2.2
2.1. 按照宽度从小到大排列,宽度相同的矩形拼成更大的矩形
2.2. 按照高度做相同的处理
3. 重复以上步骤,直到没有宽、高相同的矩形

1. 计算宽度之和、高度之和,如果宽度和较大则先处理2.1,否则先处理2.2
2.1. 按照宽度从小到大排列,找出两个矩形,使得拼接后的“矩形”面积中空缺部分最小(较可能是宽度相差较小的两个矩形)。
2.2. 按照高度做相同的处理
3. 重复以上步骤,直到只剩下一个矩形(最终解)

以上两段其实是一个意思:尽量用较小的“面积损失”最大限度的减少待处理矩形数。只是第一段是特例,也就是无“面积损失”的拼接。

不过,一般来说,这不会是最优解。

阅读全文

与最小矩形覆盖算法相关的资料

热点内容
cad刷字体命令 浏览:684
服务器里没有管理员怎么搞到32k 浏览:911
魅族怎么关闭app的通知 浏览:841
数控宏程序编程方法技巧与实例 浏览:352
新买路由器怎么设置加密 浏览:100
linuxping命令详解 浏览:724
训练集几个文件夹 浏览:99
java获取项目根目录 浏览:205
mk编译成共享库 浏览:645
c语言编译led显示国旗代码 浏览:293
我的世界本地服务器默认地址 浏览:131
我的世设置命令方块会闪退 浏览:968
加密媒体怎么输密码 浏览:161
方舟如何删除服务器数据 浏览:600
用阅读app怎么看18 浏览:690
gn文件编译 浏览:783
酷闪加密系统 浏览:820
区块链数据加密 浏览:389
3d命令集 浏览:290
单片机的智能产品工厂里有 浏览:300