创建 alpha 通道 opencv

Creating alpha channel opencv

我有一个用 c++ 和 opencv2 编写的程序,它加载一个 mp4 文件并为我提供帧像素。我有一个问题,opencv 输出每像素 24 位,我需要 32 位才能在 winapi 上的 window 中显示。是否可以使用标准的 opencv 工具创建一个空的 alpha 通道?

您可以使用 cv::cvtColor 将 3 通道 RGB/BGR 图像转换为带有附加 alpha 通道的 4 通道图像。
正如您在上面的文档 link 中看到的,第三个参数指定了所需的转换。

cv::Mat img24;  // initialized somehow
// ...
cv::Mat img32;
cv::cvtColor(img24, img32, CV_BGR2BGRA);