首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >修剪灰度图像的空白区域

修剪灰度图像的空白区域
EN

Stack Overflow用户
提问于 2018-05-30 04:36:21
回答 2查看 401关注 0票数 0

image like this

我得到了一个图像集,图像是这样的。

我如何使用python去除图片下面的白色部分,因为它不包含任何有用的内容?

我将图像读取到python中的numpy数组。

我的代码是这样的:

代码语言:javascript
复制
data_dir = "/Users/leon/Projects/inpainting/data/"
images = []
files = glob.glob (data_dir + "*.jpg")
for file in files:
    image = cv2.imread(file, 0)
    images.append(image)
EN

回答 2

Stack Overflow用户

发布于 2018-05-30 04:56:26

这会在上边和下边逐行修剪空白(实际上它修剪了所有整行):

代码语言:javascript
复制
trimmed = image[np.where(~np.all(image == 255, axis=1))]

如果你只需要修剪顶部和底部的页边距,你可以这样做:

代码语言:javascript
复制
empty_row_mask = np.all(image == 255, axis=1)
top = np.searchsorted(~empty_row_mask, True)
bottom = np.searchsorted(empty_row_mask, True)
trimmed = image[top:bottom]
票数 1
EN

Stack Overflow用户

发布于 2018-05-30 06:44:49

我找到了一种使用openCV3和python3.6的方法

代码语言:javascript
复制
image_neg = cv2.bitwise_not(image) # invert the root to white
coords = cv2.findNonZero(image_neg) # find all the non-zero points (root)
x, y, w, h = cv2.boundingRect(coords) # find minimum spanning bounding box
rect = image[y:y+h, x:x+w]
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50592552

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档