如何将垂直拆分且顺序打乱的4张子图像拼接复原为原图像
垂直切分乱序子图复原方法
当已知4张由原图垂直切分、顺序打乱的子图时,可通过边缘匹配的方式完成排序复原,具体方案如下:
核心原理
原图被垂直切分后,相邻两张子图的衔接边缘像素高度相似,通过对比子图左右边缘的像素匹配度,即可确定子图的正确顺序。
操作步骤
- 提取边缘特征:为每一张子图提取最左侧1列、最右侧1列的全通道像素值,作为匹配的基准特征。
- 计算匹配度:遍历所有子图组合,计算子图A的右边缘与子图B的左边缘的像素差异,差异越小说明二者为相邻子图的概率越高,可选用
均方误差(MSE)、曼哈顿距离作为差异计算的量化指标。 - 确定正确排序
- 先定位最左侧子图:遍历所有子图,不存在其他子图的右边缘与该子图左边缘匹配度达标,即说明该子图没有左邻,是原图的最左侧子图。
- 推导完整序列:以当前已排序的最后一张子图的右边缘为基准,在剩余未排序的子图中,找到左边缘与该基准匹配度最高的子图作为下一张,重复操作直到4张子图全部完成排序。
- 拼接复原:将排序完成的子图沿X轴依次拼接,即可得到原始图像。
优化方案
如果子图边缘存在大面积纯色区域,仅靠像素对比容易出现错配,可额外叠加边缘梯度、局部纹理特征进行匹配,提升排序准确率。


内容的提问来源于stack exchange,提问作者dasmehdix
相关产品推荐
相关产品推荐

