我正在尝试使用 python3 cv2 库将图像上的某些像素设置为透明。如何打开图像以使其支持透明度?
我对此进行了研究,但找不到有关使用透明像素的良好文档。
我当前打开图像的方式如下:
img = cv2.resize(cv2.imread("car.jpeg", cv2.COLOR_B), (0, 0), fx=0.2, fy=0.2)
我设置的颜色是这样的:
img.itemset((r, c, 1), val)
如何编辑 Alpha 通道?
您可以使用以下命令打开已有 Alpha 通道的图像,例如 PNG 或 TIFF:
im = cv2.imread('image.png', cv2.IMREAD_UNCHANGED) 
你会看到它的形状的最后一个维度是 4:
print(im.shape)
(400, 400, 4)
或者您可以打开一张没有 Alpha 通道的图像(例如 JPEG),然后自己添加一个:
BGR = cv2.imread('image.jpg', cv2.IMREAD_UNCHANGED)
BGRA = cv2.cvtColor(im,cv2.COLOR_BGR2BGRA) 
无论哪种情况,您都可以使用以下命令在 Alpha 通道中设置值:
BGRA[y,x,3] = ...
然后,最后将图像保存为明显支持 Alpha/透明度的格式,例如 TIFF、PNG、GIF。
| 归档时间: | 
 | 
| 查看次数: | 7612 次 | 
| 最近记录: |