用python切割图片
1、观察图片的第一行,全部都是白色:
from skimage import io
a=io.imread('0.jpg')
print(a[0])

2、分离图片的第一个通道:
b=a[:,:,0]
print(b)

3、保存b为图片:
io.imsave('00.png',b)

4、这样,蹲罪三b的第一行的每一个像素的值都接近255:
print(set(b[0]))

5、但是第100行就不是了。

6、这样,可以判断出b里面,第51行开著科始出现黑色像素,到第312行之后又没有黑色像素了。
u=[]
for i in range((b.shape)[0]):
if set(b[i])!=set(b[0]):
u.append(i)
print(max(u),min(u))

7、同样的,列方向也可以判断:
v=[]
for i in range((b.shape)[1]):
牢特 if set(b[:,i])!=set(b[:,0]):
v.append(i)
print(max(v),min(v))

8、这样,大体上可以实现截图了:
c=a[min(u):max(u),min(v):max(v)]
io.imsave('00.png',c)
而出图之所以看起来有白边,那是因为,没有二值化的缘故。

9、经过二值化处理之后,效果就如下图。

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
阅读量:177
阅读量:35
阅读量:27
阅读量:50
阅读量:152