gpt4 book ai didi

python - 我如何只读取图像的一部分而不输入其他图像?

转载 作者:行者123 更新时间:2023-12-02 17:36:00 27 4
gpt4 key购买 nike

import cv2

fname = '1.png'
img=cv2.imread(fname, 0)
print (img)//the outcome is an array of values from 0 to 255 (grayscale)
ret, thresh = cv2.threshold(img, 254, 255, cv2.THRESH_BINARY)
thresh = cv2.bitwise_not(thresh)
nums, labels = cv2.connectedComponents(thresh, None, 4, cv2.CV_32S)
dst = cv2.convertScaleAbs(255.0*labels/nums)
cv2.imwrite(dest_dir+"output.png", dst)

该代码可以正常工作,所以我继续调整代码,以便可以使用图像的一部分而不是整个图像:
from PIL import Image

img = Image.open(fname)
img2 = img.crop((int(xmin), int(yMin),int(xMax), int(yMax))

xmin ymin xmax ymax只是框的左上角,右下角。
然后我做了 img = cv2.imread(img2)继续作为以前的代码,但是出现了一个错误,我打印了img2并得到了 <PIL.Image.Image image mode=RGB size=54x10 at 0x7F4D283AFB70>我该如何调整它以便能够在上面的代码中输入该裁剪或图像部分而不是fname,并请注意,我不会想要将img2保存为图像并从那里进行,因为我需要处理主图像。

最佳答案

尝试cv2.imshow()而不是打印它。为了查看您裁剪的图像,您需要使用cv2功能。这是一个示例代码:

import numpy as np
import cv2
# Load an color image in grayscale
img = cv2.imread('messi5.jpg',0)
cv2.imshow('image',img)
cv2.waitKey(0)
cv2.destroyAllWindows()

关于python - 我如何只读取图像的一部分而不输入其他图像?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50854146/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com