【发布时间】:2018-07-08 12:27:13
【问题描述】:
如何在 python opencv 中创建除了给定文本的像素之外的透明图像?
我在C++ 中找到了这个solution,它创建了一个不透明的图像。因此,当将它们合并在一起时,解决方案只是添加像素。这使得文本像素强度根据背景图像而变化。
Mat img = imread("lenna.png", CV_LOAD_IMAGE_COLOR);
// Create and rotate the text
Mat textImg = Mat::zeros(img.rows, img.cols, img.type());
putText(textImg, "stackoverflow", Point(0, img.cols/2), FONT_HERSHEY_SIMPLEX, 2.0,Scalar(20,20,20),2);
// Sum the images (add the text to the original img)
img= img+textImg;
namedWindow("WaterMark", CV_WINDOW_AUTOSIZE);
imshow("WaterMark", img);
因此,一种方法是从文本制作蒙版图像,然后使用它来生成 Alpha 通道。但是有没有更好的解决方案。
【问题讨论】:
-
您要使现有图像透明还是创建一个新图像?
-
我想只用文本像素创建一个新的。
标签: python opencv image-processing