使用Opencv python从Image中裁剪多边形
需求
给定标准框,把这张图上所有的标注框的小图切出来,标注框不一定是矩形,有多边形。
步骤
使用多边形点查找区域
使用多边形点创建遮罩
做遮罩修剪
如果需要,添加白色背景
代码
import os
import cv2
import json
import numpy as npimg = cv2.imread("xx.png")j = 0
# 读取文件中的标准框,若无文件可省略此步骤,指定标注框
with open("xx.json", 'r', encoding='utf-8') as f:load_dict = json.load(f)dic_data=load_dict["shapes"]for i in dic_data:pts=np.array(i["points"])# 把浮点型转为整形pts = pts.astype(np.int64)#使用多边形点查找区域rect = cv2.boundingRect(pts)x, y, w, h = rectcroped = img[y:y + h, x:x + w].copy()#使用多边形点创建遮罩pts = pts - pts.min(axis=0)mask = np.zeros(croped.shape[:2], np.uint8)cv2.drawContours(mask, [pts], -1, (255, 255, 255), -1, cv2.LINE_AA)#做遮罩修剪dst = cv2.bitwise_and(croped, croped, mask=mask)#如果需要,添加白色背景bg = np.ones_like(croped, np.uint8) * 255cv2.bitwise_not(bg, bg, mask=mask)dst2 = bg + dstSave_File = r'E:/pythonProject/'save_path = os.path.join(Save_File, str(j) + '.png')cv2.imwrite(save_path, dst2)j += 1
使用Opencv python从Image中裁剪多边形相关推荐
- python凹多边形分割_使用Opencv python从Image中裁剪凹面多边形
Steps find region using the poly points create mask using the poly points do mask op to crop add whi ...
- OpenCV Python在计算机视觉中的应用
OpenCV Python教程 在这篇文章中,我们将使用Python中的OpenCv来涵盖计算机视觉的各个方面.OpenCV长期以来一直是软件开发的重要组成部分. 什么是计算机视觉? 我们考虑一个场景 ...
- OpenCV—Python 图像指定区域裁剪
文章目录 一.指定图像位置的裁剪处理 二.批量处理-指定图像位置的裁剪 三.多进程(加快处理) 在工作中.在做数据集时,需要对图片进行处理,照相的图片我们只需要特定的部分,所以就想到裁剪一种所需的部分 ...
- OpenCV+Python实现视频文件裁剪功能
Python编程实现对视频文件进行剪切的功能.截取指定长度的视频并保存,运行后首先选择要裁剪的视频,然后输入开始时间点和停止时间点即可.将剪切后的视频保存为output.avi文件 所属网站分类: 资 ...
- python画椭圆-python opencv圆、椭圆与任意多边形的绘制实例详解
圆形的绘制 : OpenCV中使用circle(img,center,radius,color,thickness=None,lineType=None,shift=None)函数来绘制圆形 impo ...
- 使用Python,OpenCV从静态背景中提取移动前景
使用Python,OpenCV从静态背景中提取移动前景 1. 效果图 2. 原理 3. 源码 参考 这篇博客将介绍OpenCV中的背景减法方法--即从静态背景中提取移动前景.在许多基于视觉的应用中,背 ...
- python中import cv2遇到的错误及安装方法_独家利用OpenCV,Python和Ubidots来构建行人计数器程序(附代码amp;解析)...
作者:Jose Garcia 翻译:吴振东 校对:张一豪 本文约4000字,建议阅读14分钟. 本文将利用OpenCV,Python和Ubidots来编写一个行人计数器程序,并对代码进行了较为详细的讲 ...
- opencv python 中cv2.putText()函数的用法
opencv python 中cv2.putText()函数的用法 文章目录: 一.快速使用 二.官方文档 三.使用举例 虽然用啦很多次,还是决定记录一下 一.快速使用 cv2.putText(ima ...
- 使用OpenCV和Python从图像中提取形状
Welcome to the first post in this series of blogs on extracting features from images using OpenCV an ...
最新文章
- Python sorted 和 sort() 的区别
- 静态链表和动态链表 区别
- Gradle打包命令记录
- python部署服务器 venv_迁移virtualenv环境
- (转)OutOfMemory时抓取heap 快照
- 平安银行支付接口 PHP ECSHOP
- 10个精美免费PPT模板下载网站推荐
- 映美精两个相机同步采集求助
- matlab可见光通信,可见光通信研究工作matlab代码
- 拼多多“出海”的三个考验?
- paly()方法和pause()方法
- 泛函,变分与变分不等式
- 微信6.0 ActionBar样式
- 小米手机修改ip代理服务器,小米手机如何设置和更改静态IP地址
- 微型计算机故障处理基本原则,微机故障处理的一般性原则和方法
- UserWarning: Palette images with Transparency expressed in bytes should be converted to RGBA images
- 图形学课设 塔防游戏
- 【通信仿真】基于matlab空时自适应处理降维仿真【含Matlab源码 1957期】
- C++鼠标连点小程序
- Mac上一款天空效果合成图片处理软件分享
热门文章
- 自媒体短视频创作者都有哪些创作运营问题,可以让你轻松操作自媒体赚大钱
- ThinkPHP 5.x (v5.0.23及v5.1.31以下版本) 远程命令执行漏洞利用(GetShell)
- matlab求积分+求导完整技术路线
- 猴子吃桃问题c语言链表,数据结构课程设计--猴子吃桃子问题.doc
- 应用偏最小二乘回归(PLSR)对NIR光谱与样本中RON含量进行定量分析
- 科普,什么是“NP难”的问题。专业的解释俺看不懂。这个文章里面举了几个例子,俺一下就明白了。
- 【C语言】文件(FILE)
- 在 Python 字典中按值查找键
- C语言入门:选择结构-闰年判断
- mmcls多标签分类实战(三):多标签分类指标