当前位置:   article > 正文

pyplot显示和保存没有边框的图片_img.sum(axis=2)

img.sum(axis=2)

为了减少图像信息的噪声或者视觉效果,需要去除图片周围的白色边框。

  1. 使用matplotlib.pyplot显示和保存没有边框的图片;但是在很多情况下不work;

  2. 使用图片的RGB值判断是否属于边框,再确定物体的位置,对阈值的更改可以去除白色、黑色、或者任何纯色的边框。

  3. from skimage import io
    def corp_margin(img):
    img2=img.sum(axis=2)
    (row,col)=img2.shape
    row_top=0
    raw_down=0
    col_top=0
    col_down=0
    for r in range(0,row):
    if img2.sum(axis=1)[r]<700*col:
    row_top=r
    break

     for r in range(row-1,0,-1):
             if img2.sum(axis=1)[r]<700*col:
                     raw_down=r
                     break
    
     for c in range(0,col):
             if img2.sum(axis=0)[c]<700*row:
                     col_top=c
                     break
    
     for c in range(col-1,0,-1):
             if img2.sum(axis=0)[c]<700*row:
                     col_down=c
                     break
    
     new_img=img[row_top:raw_down+1,col_top:col_down+1,0:3]
     return new_img
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17

im = io.imread(‘test_blur2.jpg’)
img_re = corp_margin(im)
io.imsave(‘result.png’,img_re)
io.imshow(img_re)

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/weixin_40725706/article/detail/604246
推荐阅读
相关标签
  

闽ICP备14008679号