验证码取相连点,用于分割不固定的字符

易语言 2020-07-11 17:23:15

验证码取相连点,用于分割不固定的字符

j = 取启动时间 ()
方位 = { -1, 0, 1, 1, 1, 0, -1, -1, -1, -1, -1, 0, 1, 1, 1, 0 }
图片.载入数据 (#t)
加入成员 (坐标, 1)
加入成员 (坐标, 1)
.判断循环首 (取数组成员数 (坐标) > 0)
x = 坐标 [1]
y = 坐标 [2]
删除成员 (坐标, 1, 2)
.变量循环首 (1, 8, 1, n)
xx = x + 方位 [n]
yy = y + 方位 [n + 8]
.如果真 (图片.取某点颜色 (xx, yy) = 0 且 xx > -1 且 yy > -1)
加入成员 (坐标, xx)
加入成员 (坐标, yy)
图片.置某点颜色 (xx, yy, 255)
.如果真结束
nn = nn + 1
.变量循环尾 ()
.判断循环尾 ()
画板1.底图 = 图片.取位图数据 ()
编辑框1.内容 = “算法用时:” + 到文本 (取启动时间 () - j)
这个验证码X和N之间是连在一起的,无法简单的切割,而且字符都有一定程度的倾斜,向下投影的话,可能并没有明显的切割边界, 当然针对N和h这种情况可以使用其他方法切割,比如通过连通域来切割字符。