我已经处理(旋转,裁切和更改颜色)拼图的图像以获得以下图像。
for i in range(4):
if edges[i]==9:
p = piece.clone_piece()
p.rotateNresize(angle=(90 * i))
img = cv2.cvtColor(np.asarray(p.img), cv2.COLOR_RGB2RGBA)
t = img[p.corners[0][1]+5:p.corners[3][1]-5]
t = t[:,0:125]
t[np.all(t == [0, 0, 0, 255], axis=2)] = [0, 0, 0, 0]
layer = t[:,:,3]
layer[layer == 255] = 1
layer[layer == 0] = 255
layer[layer == 1] = 0
t[:, :, 0] = layer
t[:, :, 1] = layer
t[:, :, 2] = layer
t[:, :, 3] = layer
cv2.imshow("sd",t)
cv2.imwrite("cutimg.png",t)
cv2.waitKey(0)
我要怎么做是将较大的图像或主要图像与另一图像分开。或换句话说,将这两部分分离为并选择尺寸较大的部分
img = Image.fromarray(np.uint8(t))
imageBox = img.getbbox()
cropped = img.crop(imageBox)
这些代码可用于使用alpha通道裁剪出空白的背景。但无法单独裁剪图像。如果可以使用alpha通道进行此操作,请对此提供帮助。 谢谢你。