1、给出如下图片,我们使用Roberts方法,来检测图形的边界。
2、先把图转为二值图:img=img[:,:,0]img=erzhihua(img,230)
3、检测二值图的边界,使用Roberts方法之一:u,v=img.shape[:2]pic=img*1f泠贾高框or i in range(1,u-1): for j in range(1,v-1): b=abs(img[i+1,j+1]-img[i,j]) pic[i,j]=b
4、检测二值图的边界,使用Roberts方法之2:for i in range(1,u-1): for j in range(1,v-1): a=abs(img[i-1,j+1]-img[i,j]) pic[i,j]=a
5、把两个方法结合起来:for i in range(1,u-1): for j in range(1,v-1): a=abs(img[足毂忍珩i-1,j+1]-img[i,j]) b=abs(img[i+1,j+1]-img[i,j]) pic[i,j]=max(a,b)