我遇到的情况是,我有一个二维索引列表,每行代表一行。
例如,索引是以下示例:
[[157, 157], [157, 158], [157, 159], [161, 161], [161, 162], [190, 190], [190, 191], [197, 197], [197, 198], [197, 199], [197, 200], [201, 201], [201, 202], [240, 240], [240, 241], [240, 242], [326, 326], [326, 327], [326, 328], [329, 329], [329, 330], [333, 333], [333, 334]]
我使用以下命令通过字典将它们转换为行,因此我检测是否有跳跃,我换了新行
char = defaultdict(list)
coord = ()
ii = 0
prev = char_list[0][0]
for i, j in enumerate(char_list):
if prev < j[0]:
prev = j[0]
ii = ii+1
else:
char[ii].append(j)
然后,我有了一个按键和线条字典。
现在,我想用这些线条制作矩形,我想或者我想两条线可以做成一个矩形。
但是不知道它的算法。
我考虑过 1.每行的最小最大? 2.每行的X位置 3.创建矩形 我认为这些是步骤...但是例如,不知道如何编写代码或证明它是正确的?
这是我要展示的图片,用于可视化问题
我将绿线分组为字典,并希望从这些线中制作出矩形,以便可以使用这些矩形剪切原始信号图像。