本程序主要解决的问题是将被机器分割开的图像进行拼接
与之前拼接程序不同的是,在这个拼接程序中,不需要寻找列方向的最佳匹配位置
只需要在最边缘处直接拼接即可, 再进行 row 方向上的微调,并记下微调的尺度
程序的主要流程是首先对已知文件夹进行扫描,将文件名存进容器内,再将所有图像左上角的“水印”机进行去除 去除后:
- 判断是否达到一定的宽度,如果达到,进行 ②,否则,跳过这张图像,直接处理下一张图像
- 检测这张图像的第一列与最后一列是否为空白列,如果均为空白列,直接存储到相应文件夹,处理下一张图像。如果最后一列不为空白列,执行步骤③
- 将这张图像名字加入到一个新的容器内,表示要进行拼接的图像。并对接下来的图像检查最后一列,如果最后一列不全为0,则将文件名加入到这个拼接的容器内,否则停止加入,进行步骤④
- 对这个拼接容器内的文件名所对应的文件进行拼接操作,最后的文件名采用拼接所用图像的最后一个名字。
具体拼接算法如下所示:
- 新建一个画布,首先将第一张文件放在画布的最左端**处。
- 取下一张待拼接的图像,取这个图像的第一列与上一张图像的最后一列进行匹配,找到 row 方向上最匹配的位置,并记下这个相对偏移
- 利用这个相对偏移放在第一张图像的后面进行拼接
- 以此类推,纸质拼接完成。
原图像文件夹:
E:\xray2\Images
结果存放文件夹:
D:\AppData\Stitch_Seg_Bag\result_Image