Advertisement

OpenCV蒙版的应用示例(2)

阅读量:

为实现含透明通道的PNG文件存储,采用蒙版技术进行处理。若需保留图像的透明信息,则必须使用四通道格式,其中alpha通道的数据由蒙版提供。以下函数用于将一幅图像与作为alpha通道的蒙版结合,生成包含alpha通道的新图像。在该过程中,蒙版中被擦除的区域设定为255,但对应的alpha值则为0,因此需要将蒙版像素值从255中减去以获得正确的alpha数值。

复制代码
 void ConvertToAlphaImage(const cv::Mat& srcMat, cv::Mat& destMat, const cv::Mat& alphaMat)

    
 {
    
 	if (destMat.rows != srcMat.rows || destMat.cols != srcMat.cols || destMat.channels() != 4)
    
 	{
    
 		destMat = cv::Mat(srcMat.size(), CV_8UC4);
    
 	}
    
 	for (int i = 0; i < destMat.rows; ++i)
    
 	{
    
 		for (int j = 0; j < destMat.cols; ++j)
    
 		{
    
 			cv::Vec4b& destColor = des

全部评论 (0)

还没有任何评论哟~