opencv2中计算图像四周的白色边框并裁剪掉最后保存剩余部分的图片的代码
下面是一个示例代码,可以计算图像四周的白色边框并裁剪掉,最后保存剩余部分的图片:
import cv2
# 读取图片
img = cv2.imread('image.jpg')
# 将图像转换为灰度图
gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
# 计算图像边框
_, thresh = cv2.threshold(gray, 240, 255, cv2.THRESH_BINARY)
contours, _ = cv2.findContours(thresh, cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_SIMPLE)
x, y, w, h = cv2.boundingRect(contours[0])
# 裁剪图像
cropped = img[y:y+h, x:x+w]
# 保存剩余部分的图片
cv2.imwrite('cropped_image.jpg', cropped)
在这个代码中,我们首先读取了一张图片,并将其转换为灰度图。然后使用阈值化操作找到了图像的边框,并计算出了边框的位置和大小。最后,我们使用numpy的切片操作对图像进行裁剪,并将剩余的部分保存成一张新的图片
原文地址: https://www.cveoy.top/t/topic/ht7g 著作权归作者所有。请勿转载和采集!