1.2 利用Opencv 裁剪图片有效范围

原理:找出所有不是白色的像素点的横纵坐标,筛选出最小最大横纵坐标,截取矩形框,只保留有意义部分。

1. Cut_img

def cut_img(img):
    loc = np.where(img<255) # 内容为非白色部分(有意义部分)
    lx = []
    ly = []
    for pt in zip(*loc[::-1]): #pt 为每个像素点的坐标
        lx.append(pt[1])
        ly.append(pt[2])
    sx = min(lx)
    bx = max(lx)
    sy = min(ly)
    by = max(ly)
    cv2.imwrite('full_file_path'+'.png',img[sy:by,sx:bx]) #保存时只保留有意义部分

2. Main

import numpy as np
import cv2
import os

img = cv2.imread('full_file_path')
cut_img(img)

 3. 效果

    原图:

    

    效果图:

     

原文地址:https://www.cnblogs.com/askayoyoo/p/11589844.html