之前有个需求,要为图片中几个不规则区域添加半透明的颜色,在网上搜了半天才找到需要的接口。要完成这个目标可以分为两步:填充和半透明处理:

填充的函数接口为fillPoly:

void fillPoly(InputOutputArray img, InputArrayOfArrays pts, const Scalar& color, int lineType=LINE_8, int shift=0, Point offset=Point() )

半透明处理的函数接口为addWeighted:

void addWeighted(InputArray src1, double alpha, InputArray src2, double beta, double gamma, OutputArray dst, int dtype=-1)

先上代码:

#include <opencv2/opencv.hpp>
#include<stdio.h>
#include <string>
using namespace cv;Mat src;
Mat dst;int main()
{namedWindow("src", WINDOW_AUTOSIZE);//WINDOW_AUTOSIZE:系统默认,显示自适应src = imread("0.jpg", 1);//1:为原图颜色,0:为灰度图,黑白颜色src.copyTo(dst);cv::Point pt[1][5];pt[0][0] = cv::Point(450,100);pt[0][1] = cv::Point(750,100);pt[0][2] = cv::Point(750,350);pt[0][3] = cv::Point(625,500);pt[0][4] = cv::Point(450,350);const cv::Point* ppt[1]={pt[0]};int npt[1] = {5};cv::fillPoly(src,ppt,npt,1,cv::Scalar(0,255,0));//cv::rectangle(src,cv::Point(450,100),cv::Point(750,400),cv::Scalar(0,255,0),-1,8);cv::addWeighted(dst,0.7,src,0.3,0,dst);imshow("src", dst);waitKey(0);return 0;
}

运行结果如下:

opencv半透明填充不规则区域相关推荐

  1. VB6.0中快速实现大面积不规则区域的填充

    VB6.0中快速实现大面积不规则区域的填充 ------------------------------------------------------------------------------ ...

  2. OpenCV裁剪图像任意区域

    目录 1.获取选定图中的矩形ROI 2.裁剪任意多边形 1.获取选定图中的矩形ROI 利用矩形 Rect 框定,指定其左上角坐标(构造函数前两个参数)和矩形的 长宽(后两个参数) //定义一个 Mat ...

  3. opencv 手选roi区域_【OpenCV】选择ROI区域

    问题描述:在测试目标跟踪算法时,需要选择不同区域作为目标,进行目标跟踪,测试目标跟踪的效果. 解决思路: 1.OpenCV中提供了鼠标交互控制,利用setMouseCallback()给固定的窗口设置 ...

  4. OSPF不规则区域知识点

    OSPF的不规则区域: 区域划分要求: 区域间必须存在ABR 区域划分必须按照星型TOp接口 不规则区域: 远离骨干的非骨干区域 不连续骨干 使用VPN隧道使非法的ABR合法化: 在这个过程中,可以注 ...

  5. OSPF—不规则区域、LSA

    OSPF的不规则区域 区域划分的要求: 1.区域之间必须存在ABR设备: 2.区域划分必须按照星型拓扑结构划分 不规则区域: 1.远离骨干的非骨干区域 2.不连续骨干 解决方法: 1.使用VPN隧道使 ...

  6. R语言ggplot2可视化:使用pracma包的interp1函数对缺失值进行线性插值后进行可视化分析、用虚线标记进行数据填充的区域

    R语言ggplot2可视化:使用pracma包的interp1函数对缺失值进行线性插值后进行可视化分析.用虚线标记进行数据填充的区域 目录

  7. OpenCV通过填充修复损坏的图像的实例(附完整代码)

    OpenCV通过填充修复损坏的图像的实例 OpenCV通过填充修复损坏的图像的实例 OpenCV通过填充修复损坏的图像的实例 #include "opencv2/imgcodecs.hpp& ...

  8. Opencv获取身份证号码区域

    记得应该是16年的时候,从一个公开课看到了关于OCR方面的内容,里面讲到了通过OpenCV对身份证号码区域的剪裁以及使用Tess-Two进行文字识别,实现了对身份证号码的识别功能. 断断续续看了点关于 ...

  9. [css] 如果给一个元素设置background-color,它的颜色会填充哪些区域呢?

    [css] 如果给一个元素设置background-color,它的颜色会填充哪些区域呢? 个人简介 我是歌谣,欢迎和大家一起交流前后端知识.放弃很容易, 但坚持一定很酷.欢迎大家一起讨论 主目录 与 ...

  10. html5 图片羽化,课题:html5图像羽化(不规则区域羽化,feather,html5羽化)

    下午搜索了一堆相关文章,没有找到符合要求的. 对一张图片应用不规则区域的羽化,该怎么做呢? 首先去查了下 羽化的原理,然而没有什么用, 然后就开始从表现层去研究怎么模拟? idea 1: blur滤镜 ...

最新文章

  1. Android IOS WebRTC 音视频开发总结(三八)-- tx help
  2. win这个傻逼系统,高PPI上默认的情况下是放大的,放大了之后逻辑分辨率不跟着放大。
  3. 插入排序之——二分(折半)插入排序(c/c++)
  4. Python 统计一行字符中单词的个数_Python 经典练习题-015
  5. Linux系统:centOS 7 忘记密码怎么办?
  6. leetcode 205. 同构字符串(hash)
  7. LeetCode 40. 组合总和 II(排列组合 回溯)
  8. git stash 缓存 简介
  9. 3.11 SE11创建搜索帮助
  10. 怎么根据输入的n来输入n组数组_【题解一维数组】1106:年龄与疾病
  11. 国开大学计算机应用基础形考答案模块了2,国开电大 计算机应用基础(本) 形考二答案...
  12. 数据持久化,序列化,反序列化,文件读写1
  13. 用JPEXS软件实现swf反编译-逆向调试方法
  14. 灵悟礼品网上专卖店——分析类似项目的布局和商品的分类模式
  15. 网课题库系统公众号功能
  16. 设计模式1(策略模式)
  17. java图形验证码去除干扰,使用python 对验证码图片进行降噪处理
  18. 我的世界服务器总是显示错误,win 10 进mc服务器总是错误 怎么办
  19. java手机怎么测网速_用来检查网络和网速android小程序
  20. JAVA毕业设计高校人事管理系统计算机源码+lw文档+系统+调试部署+数据库

热门文章

  1. QCC3071与QCC3072有什么区别?
  2. Python基础更新
  3. 企业信息系统集成发展阶段及ESB对企业的价值体现
  4. 报考软件资格考试过程详解--附学习分享
  5. pos方式下载文件,解决url参数过长问题
  6. 关于Efficient Subgraph Matching by Postponing Cartesian的批注
  7. 计算机电源 自动关机,电脑自动关机是什么原因,小编教你怎么解决电脑自动关机...
  8. 处理效应模型stata实例_『Stata』政策处理效应PSM模型基本命令汇总
  9. 第二个重要极限的证明 e怎么出来的
  10. 0ctf之simple