• 怎么去掉图片右边的空缺?python来贬责!

  • 发布日期:2024-12-23 05:28    点击次数:136

    怎么去掉图片右边的空缺?python来贬责!

    今天遇到一个问题,需要去掉图片右边的空缺。复杂点的就用PS,浮浅点的就用微信截图。然则,But,我的图有许多,况兼长度不一,奈何办呐?

    这技术python就不错高峻出场了!!

    处生机路:

    1、掀开一张图片。

    2、从边上向中间逐像素搜检,如若和背自得不相通就浮现是图片的外边界。

    3、左证找到的凹凸足下边界切割图片。

    4、保存图片。

    5、诈欺轮回访佛

    暗意图:

    一张图的代码竣事:

    服从截图:

    源码如下:(多个图,加个文献夹列举就行了)

    from wWw.h45ctg.cn PIL import Image #导入PIL库中的Image,图片处理专用

    im=Image.open(" wWw.bbexpo.cn tmp.png") #掀开图片

    w=im.width #宽度

    h=im.height #高度

    bg_color=(255,255,255,255) #指定背自得

    tmp=0 #找左边非背自得点

    for m in range(0, w):

    if tmp!=0:

    break

    # 如若该像素的神采和背自得的神采不一致,即是本体

    for n in range(0, h):

    if im.getpixel(( wWw.gback.cn m,n))!=bg_color:

    tmp=m

    break

    left=tmp

    tmp=0 #找右边非背自得点

    for m in reversed(range(0, w)):

    if tmp!=0:

    break

    # 如若该像素的神采和背自得的神采不一致,即是本体

    for n in range( wWw.spfch.cn 0, h):

    if im.getpixel((m,n))!=bg_color:

    tmp=m

    break

    right=tmp

    tmp=0 #找上边非背自得点

    for m in range(0, h):

    if tmp!=0:

    break

    # 如若该像素的神采和背自得的神采不一致,即是本体

    for n in range(0, w):

    if wWw.ejt14.cn im.getpixel((n,m))!=bg_color:

    tmp=m

    break

    top=tmp

    tmp=0 #找下边非背自得点

    for m in reversed(range(0,h)):

    if tmp! wWw.s2xfc.cn =0:

    break

    # 如若该像素的神采和背自得的神采不一致,即是本体

    for n in range(0, w):

    if im.getpixel((n,m))!=bg_color:

    tmp=m

    break

    bottom=tmp

    #剪裁图片,凹凸足下各向外膨胀10像素,面子些

    im=im.crop((left-10, top-10, right+10, bottom+10))

    im.save("new.png") #保存图片

    colorbg像素if背自得发布于:四川省声明:该文不雅点仅代表作家本东谈主,搜狐号系信息发布平台,搜狐仅提供信息存储空间劳动。