Python OpenCV实现裁剪并保存图片
本文实例为大家分享了Python OpenCV实现裁剪并保存图片的具体代码,供大家参考,具体内容如下
问题描述
从图片中选出某一区域,Enter保存
1.jpg
代码
# -*- coding: utf-8 -*- # @Author : XerCis # @Time : 2020/3/18 20:00 # @Function: 从图片中选出某一区域,Enter保存 import cv2 # 读取图片 img = '1.jpg' img = cv2.imread(img) cv2.imshow('original', img) # 选择ROI roi = cv2.selectROI(windowName="original", img=img, showCrosshair=True, fromCenter=False) x, y, w, h = roi print(roi) # 显示ROI并保存图片 if roi != (0, 0, 0, 0): crop = img[y:y+h, x:x+w] cv2.imshow('crop', crop) cv2.imwrite('crop.jpg', crop) print('Saved!') # 退出 cv2.waitKey(0) cv2.destroyAllWindows()
PS:x,y为ROI的坐标,w,h为ROI的大小
效果
敲击Enter
得到图片crop.jpg
备注
1、OpenCV的坐标系原点在左上角
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。
相关推荐
-
python通过opencv实现图片裁剪原理解析
这篇文章主要介绍了python通过opencv实现图片裁剪原理解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 图像裁剪的基本概念 : 图像裁剪是指将图像中我们想要的研究区以外的区域去除,经常是按照行政区划或研究区域的边界对图像进行裁剪.例如,一张500×400的图像,我们只想要中间的250×200的区域,就可以使用图像裁剪将四周的区域去除. 在实际开发工作中,我们经常需要对图像进行分幅裁剪,按照ERDAS实际图像分幅裁剪的过程,可以将图像分
-
使用Python和OpenCV检测图像中的物体并将物体裁剪下来
介绍 硕士阶段的毕设是关于昆虫图像分类的,代码写到一半,上周五导师又给我新的昆虫图片数据集了,新图片中很多图片很大,但是图片中的昆虫却很小,所以我就想着先处理一下图片,把图片中的昆虫裁剪下来,这样除去大部分无关背景,应该可以提高识别率. 原图片举例(将红色矩形框部分裁剪出来)): step1:加载图片,转成灰度图 image = cv2.imread("353.jpg") gray = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY) step2:用Sob
-
Python OpenCV图像指定区域裁剪的实现
在工作中.在做数据集时,需要对图片进行处理,照相的图片我们只需要特定的部分,所以就想到裁剪一种所需的部分.当然若是图片有规律可循则使用opencv对其进行膨胀腐蚀等操作.这样更精准一些. 一.指定图像位置的裁剪处理 import os import cv2 # 遍历指定目录,显示目录下的所有文件名 def CropImage4File(filepath,destpath): pathDir = os.listdir(filepath) # 列出文件路径中的所有路径或文件 for allDir i
-
python opencv实现目标区域裁剪功能
这个任务是自己在项目中数据处理的一部分内容,待处理的图片如下所示: 我需要将目标区域给裁剪出来,要不然在后期训练网络的时候整幅图像过大,且目标区域过小,得到结果不好,还会加剧计算量.在网上找了各个大佬的博客看,没找到合适的,便自己动手写了,顺便自己的小破站刚搭建起来,记录一下自己的思路. 思路 去寻找目标区域的最左边,最右边,最上面和最下面的像素点,取到坐标信息以后用CV2的裁剪一下就可以实现了. #难点 数据总共是11952张图片,每张图片是1024*768大小的,依次去遍历的话担心太费时间了
-
Python实现图片裁剪的两种方式(Pillow和OpenCV)
在这篇文章里我们聊一下Python实现图片裁剪的两种方式,一种利用了Pillow,还有一种利用了OpenCV.两种方式都需要简单的几行代码,这可能也就是现在Python那么流行的原因吧. 首先,我们有一张原始图片,如下图所示: 原始图片 然后,我们利用OpenCV对其进行裁剪,代码如下所示: import cv2 img = cv2.imread("./data/cut/thor.jpg") print(img.shape) cropped = img[0:128, 0:512] #
-
详解Python+opencv裁剪/截取图片的几种方式
前言 在计算机视觉任务中,如图像分类,图像数据集必不可少.自己采集的图片往往存在很多噪声或无用信息会影响模型训练.因此,需要对图片进行裁剪处理,以防止图片边缘无用信息对模型造成影响.本文介绍几种图片裁剪的方式,供大家参考. 一.手动单张裁剪/截取 selectROI:选择感兴趣区域,边界框框选x,y,w,h selectROI(windowName, img, showCrosshair=None, fromCenter=None): . 参数windowName:选择的区域被显示在的窗口的名字
-
python opencv对图像进行旋转且不裁剪图片的实现方法
最近在做深度学习时需要用到图像处理相关的操作,在度娘上找到的图片旋转方法千篇一律,旋转完成的图片都不是原始大小,很苦恼,于是google到歪果仁的网站扒拉了一个方法,亲测好用,再次嫌弃天下文章一大抄的现象,虽然我也是抄歪果仁的. 废话不多说了,直接贴代码了. def rotate_bound(image, angle): # grab the dimensions of the image and then determine the # center (h, w) = image.shape[
-
Python OpenCV实现裁剪并保存图片
本文实例为大家分享了Python OpenCV实现裁剪并保存图片的具体代码,供大家参考,具体内容如下 问题描述 从图片中选出某一区域,Enter保存 1.jpg 代码 # -*- coding: utf-8 -*- # @Author : XerCis # @Time : 2020/3/18 20:00 # @Function: 从图片中选出某一区域,Enter保存 import cv2 # 读取图片 img = '1.jpg' img = cv2.imread(img) cv2.imshow(
-
三分钟教会你用Python+OpenCV批量裁剪xml格式标注的图片
目录 前言 xml文件格式 代码思想 完整代码 效果展示 总结 前言 在目标检测中,数据集常常使用labelimg标注,会生成xml文件.本文旨在根据xml标注文件来裁剪目标,以达到去除背景信息的目的. xml文件格式 以下是一个标注好的图片生成的xml文件.具体含义见代码注释. <annotation> <!--xml所属文件夹--> <folder>JPEGImages</folder> <!--对应图片所属文件夹--> <filena
-
python opencv通过4坐标剪裁图片
本文主要介绍了python opencv通过4坐标剪裁图片,分享给大家,具体如下: 效果展示, 裁剪出的单词图像(如下) 这里程序我是用在paddleOCR里面,通过识别模型将识别出的图根据程序提供的坐标(即四个顶点的值)进行抠图的程序(上面的our和and就是扣的图),并进行了封装,相同格式的在这个基础上改就是了 [[[368.0, 380.0], [437.0, 380.0], [437.0, 395.0], [368.0, 395.0]], [[496.0, 376.0], [539.0,
-
python+openCV调用摄像头拍摄和处理图片的实现
在深度学习过程中想做手势识别相关应用,需要大量采集手势图片进行训练,作为一个懒人当然希望飞快的连续采集图片并且采集到的图片就已经被处理成统一格式的啦..于是使用python+openCV调用摄像头,在采集图片的同时顺便处理成想要的格式. 详细代码如下: import cv2 import os print("=============================================") print("= 热键(请在摄像头的窗口使用): =") pri
-
python+opencv打开摄像头,保存视频、拍照功能的实现方法
以下代码是保存视频 # coding:utf-8 import cv2 import sys reload(sys) sys.setdefaultencoding('utf8') cap = cv2.VideoCapture(0) cap.set(3,640) cap.set(4,480) cap.set(1, 10.0) #此处fourcc的在MAC上有效,如果视频保存为空,那么可以改一下这个参数试试, 也可以是-1 fourcc = cv2.cv.CV_FOURCC('m', 'p', '4
-
Python+OpenCV实现图像融合的原理及代码
根据导师作业安排,在学习数字图像处理(刚萨雷斯版)第六章 彩色图像处理 中的彩色模型后,导师安排了一个比较有趣的作业: 融合原理为: 1 注意:遥感原RGB图image和灰度图Grayimage为测试用的输入图像: 2 步骤:(1)将RGB转换为HSV空间(H:色调,S:饱和度,V:明度): (2)用Gray图像诶换掉HSV中的V: (3)替换后的HSV转换回RGB空间即可得到结果. 书上只介绍了HSI彩色模型,并没有说到HSV,所以需要网上查找资料. Python代码如下: import cv
随机推荐
- 什么是JavaScript注入攻击?
- PHP+JS+rsa数据加密传输实现代码
- js跳转页面方法总结
- Android 中clipToPadding 和 clipChildren区别和作用
- Java设计模式之解释器模式(Interpreter模式)介绍
- input获取焦点时底部菜单被顶上来问题的解决办法
- Vue.js 2.0 移动端拍照压缩图片预览及上传实例
- javaScript+turn.js实现图书翻页效果实例代码
- ASP.NET母版页基础知识介绍
- Android Service生命周期详解
- asp自带的内存缓存 application
- php自定义时间转换函数示例
- asp数据库连接rs("user.id")
- JSP学习之数据库开发小结
- LSI SAS1068 RAID 阵列卡图文配置教程
- 深入SQLite多线程的使用总结详解
- 静态页面实现 include 引入公用代码的示例
- 深入理解mysql的自连接和join关联
- 想学习javascript JS和jQuery哪个重要 先学哪个
- IIS 环境下配置PHP5+MySql+PHPMyAdmin