目录

一、用某种颜色填充

1)cv2.fillConvexPoly

2)cv2.fillPoly

二、半透明填充


一、用某种颜色填充

1)cv2.fillConvexPoly

cv2.fillConvexPoly()函数,只能用来填充凸多边形。

只需要提供凸多边形的顶点即可。

例:

img = np.zeros((1080, 1920, 3), np.uint8)
triangle = np.array([[0, 0], [1500, 800], [500, 400]])
cv2.fillConvexPoly(img, triangle, (255, 255, 255))
plt.imshow(img)
plt.show()

2)cv2.fillPoly

cv2.fillPoly()函数可以用来填充任意形状的图型,可以用来绘制多边形。也可以使用非常多个边来近似的画一条曲线。cv2.fillPoly()函数可以一次填充多个图型。

在刚开始使用cv2.fillPoly()时,会发现没有效果,只有轮廓线被染色了,内部却没有被填充。这是因为忘记了加中括号。

点构成的边界,要加中括号[  ]。见下面例子:

contours是一堆边界,往往是通过二值化操作、cv2.findContours方法找到的结果。这里近取出第1个边界数组来画。

cv2.fillPoly(img,[contours[1]],(255,0,0))  #填充内部
cv2.fillPoly(img,contours[1],(255,0,0)) #只染色边界

二、半透明填充

有时候希望有半透明的填充效果,可以用cv2.addWeighted方法。

alpha = 0.7
beta = 1-alpha
gamma = 0
img_add = cv2.addWeighted(img1, alpha,img2, beta, gamma)
cv2.imwrite('final ret.jpg',img_add)
cv2.imshow('img_add',img_add)
if cv2.waitKey(500) and 0xff == ord('q'):cv2.destroyAllWindows()

函数使用:cv2.addWeighted(src1, alpha, src2, beta, gamma[, dst[, dtype]]) → dst,实际使用时,简化为src1, alpha, src2, beta, gamma五个参数就可以了。具体参数含义如下:

src1 – first input array.

alpha – weight of the first array elements.

src2 – second input array of the same size and channel number as src1.

beta – weight of the second array elements.

dst – output array that has the same size and number of channels as the input arrays.

gamma – scalar added to each sum.

dtype – optional depth of the output array; when both input arrays have the same depth, dtype can be set to -1, which will be equivalent to src1.depth().

python+opencv填充图像不规则区域:fillPoly和fillConvexPoly区别、半透明填充方法相关推荐

  1. 基于python+opencv的图像目标区域自动提取

    向AI转型的程序员都关注了这个号???????????? 机器学习AI算法工程   公众号:datayx 一.提取纸张中的内容 一张照片中的感兴趣区域总是沿着x,y,z三个轴都有一定倾斜(如下图),要 ...

  2. OpenCV裁剪图像任意区域

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

  3. Python OpenCV 之图像乘除与像素的逻辑运算,图像处理取经之旅第 17 天

    今天的学习的内容是:通过 Python OpenCV 对图像实现乘除操作,涉及函数为 cv2.multiply 与 cv2.divide.后面又补充了一些像素的逻辑运算,以及一个综合案例 cv2.mu ...

  4. 【Python OpenCV】图像直方图 calcHist方法 equalizeHist方法

    [Python OpenCV]图像直方图 calcHist方法 equalizeHist方法 (一)图像直方图 图像的构成是有像素点构成的,每个像素点的值代表着该点的颜色(灰度图或者彩色图).所谓直方 ...

  5. Python+OpenCV:图像修复(Image Inpainting)

    Python+OpenCV:图像修复(Image Inpainting) 理论 Most of you will have some old degraded photos at your home ...

  6. Python+OpenCV:图像二进制鲁棒独立基本特征(BRIEF, Binary Robust Independent Elementary Features)

    Python+OpenCV:图像二进制鲁棒独立基本特征(BRIEF, Binary Robust Independent Elementary Features) 理论 We know SIFT us ...

  7. Python+OpenCV:图像快速角点检测算法(FAST Algorithm for Corner Detection)

    Python+OpenCV:图像快速角点检测算法(FAST Algorithm for Corner Detection) 理论 Feature Detection using FAST Select ...

  8. Python+OpenCV:图像Shi-Tomasi角点检测器

    Python+OpenCV:图像Shi-Tomasi角点检测器 理论 The scoring function in Harris Corner Detector was given by: Inst ...

  9. Python+OpenCV:图像Harris角点检测(Harris Corner Detection)

    Python+OpenCV:图像Harris角点检测(Harris Corner Detection) 理论 corners are regions in the image with large v ...

  10. Python+OpenCV:图像对比度受限自适应直方图均衡化(CLAHE, Contrast Limited Adaptive Histogram Equalization)

    Python+OpenCV:图像对比度受限自适应直方图均衡化(CLAHE, Contrast Limited Adaptive Histogram Equalization) ############ ...

最新文章

  1. [置顶] 我的GB28181标准开发里程碑——基于eXosip的IPC端与SPVMN注册成功
  2. Data - 数据思维 - 下篇
  3. python调用动态链接库windows_用win从python ctypes调用标准windows.dll的Segfault
  4. UITableVIew的性能优化-重用原理
  5. 从未这么明白的设计模式(一):单例模式
  6. jQuery 常用方法总结
  7. Xshell 连接本地的Linux 系统,提示:Could not connect to '192.168.182.128' (port 23): Connection failed
  8. Java学习笔记_方法
  9. python数据类型汇总_python基础数据类型汇总
  10. 树的遍历-Preorde Traversal,Inorder Traversal,Postoder Traversal
  11. python主线程执行_在Django vi中的主线程中执行Python函数
  12. iOS,多媒体,地图相关
  13. Foxit PDF SDK ActiveX 5.9.1 Crack
  14. nginx php 后缀名,nginx如何隐藏后缀名php
  15. 搭建以太坊私链(单节点,多节点,windows,linux)
  16. Python-获取法定节假日
  17. 数据挖掘——正规方程拟合直线
  18. android:ListView的局部刷新
  19. crh寄存器_STM32的GPIO的寄存器介绍和设置
  20. JAVA调用有道API接口对数据库中的中文语句进行翻译

热门文章

  1. 彻底解决金山毒霸锁定chrome主页
  2. 【OpenGL】用GLFW和glad创建窗口
  3. 企业python面试题
  4. 开发环境- 配置虚拟主机域名/hosts文件 - 学习/实践
  5. C - Copy (hdu)
  6. Google Earth Engine —— LandTrendr JavaScript 模块API(2万多字长文)
  7. 分组背包+树形DP(BY LPX)
  8. python图像处理(三)波形叠加模拟
  9. Gif动图如何裁剪?收下这个图片在线裁剪工具
  10. iOS组件化方案对比