示例代码:

#include <opencv.hpp>
#include <vector>
using namespace std;
using namespace cv;
void creatAlphaMat(Mat &mat) // 创建一个图像
{
for (int i = ; i < mat.rows; i++)
{
for (int j = ; j < mat.cols; j++)
{
Vec4b&rgba = mat.at<Vec4b>(i, j);
rgba[] = UCHAR_MAX;
rgba[] = saturate_cast<uchar>((float(mat.cols - j)) / ((float)mat.cols)*UCHAR_MAX);
rgba[] = saturate_cast<uchar>((float(mat.rows - i)) / ((float)mat.rows)*UCHAR_MAX);
rgba[] = saturate_cast<uchar>(0.5*(rgba[] + rgba[]));
}
}
}
int main()
{
//创建带Alpha通道的 Mat
Mat mat(, , CV_8UC4);
creatAlphaMat(mat);
vector<int>compression_params;
compression_params.push_back(IMWRITE_PNG_COMPRESSION);
compression_params.push_back();
try{
imwrite("透明值图.png", mat, compression_params);
imshow("生成的PNG图", mat);
fprintf(stdout, "PNG图片文件的数据保存完毕");
waitKey();
}
catch (runtime_error& ex){
fprintf(stderr, "图像转换发生错误:%s\n", ex.what());
return ;
}
return ;
}

  运行结果:

最新文章

  1. Android selecter背景选择器使用
  2. Web3DGame之路(三)分析babylonjs
  3. 抓包工具--Fiddler及charles的使用
  4. 利用Clip制作打洞效果
  5. jQuery关于Select的操作
  6. 【Linux/Ubuntu学习 14】Linux下查看文件和文件夹大小
  7. jquery ajax调用
  8. java总结之基础类型与常量池
  9. Hadoop学习笔记1:伪分布式环境搭建
  10. 让自己的开源项目支持CocoaPods
  11. 解决C#中调用WCF方法报错:远程服务器返回错误 (404) 未找到
  12. 两年.net码农总结
  13. vue 列表选中 v-for class
  14. springMVC入门-08
  15. Bootstrap学习js插件篇之标签页
  16. 【大数据实战】Logstash采集-&gt;Kafka-&gt;ElasticSearch检索
  17. 高性能WEB开发:DOM编程
  18. 线程池 ------ linux C实现
  19. 某游戏应用的redis 数据库结构设计(转)
  20. css3制作有动画效果的面板

热门文章

  1. Flask(2)- 装饰器的坑及解决办法、flask中的路由/实例化配置/对象配置/蓝图/特殊装饰器(中间件、重定义错误页面)
  2. Django - 权限(4)- queryset、二级菜单的默认显示、动态显示按钮权限
  3. HDU3552(贪心)
  4. Python 模块之 pyexcel_xls
  5. linux下Tomcat shutdown无效
  6. 让你的代码量减少3倍!使用kotlin开发Android
  7. s5_day12作业
  8. Java AOP总结
  9. 125. Valid Palindrome(判断忽略标点的字符串是否回文,加个正则,与上一题解法一样)
  10. HDU - 6386 Age of Moyu 2018 Multi-University Training Contest 7 (Dijkstra变型)