【Python】CV2的一些基本操作

Python中的图像处理库cv2 综上所述,cv2库作为Python中强大的图像处理工具,为开发者提供了丰富的功能来处理和分析图像。通过学习和掌握cv2库的使用方法,我们可以实现各种复杂的图像处理任务,并在计算机视觉领域进行更深入的研究和应用。无论是初学者还是经验丰富的开发者,都应该积极学习和掌握cv2库的使用技巧,以便更好地应对图像处理和分析的挑战。👨‍💻博主Python老吕评论,您的举手之劳将对我提供了无限的写作动力!🤞🔥《Python全栈工程师》《跟老吕学MySQL》《Python游戏开发实战讲解》🌞。 阅读详情

·导入:

import cv2

·读取图片:

img = cv2.imread('路径')

使用函数cv2.imread(filepath,flags)读入一副图片

filepath:要读入图片的完整路径

flags:读入图片的标志

cv2.IMREAD_COLOR:默认参数,读入一副彩色图片,忽略alpha通道

cv2.IMREAD_GRAYSCALE:读入灰度图片

cv2.IMREAD_UNCHANGED:顾名思义,读入完整图片,包括alpha通道

import numpy as npimport cv2img = cv2.imread(‘1.jpg’,cv2.IMREAD_GRAYSCALE)

·获取图片大小:

x, y, z = img.shape

·缩放图片:

cv2.resize(InputArray src, OutputArray dst, Size, fx, fy, interpolation)

具体参数:

InputArray src输入图片
OutputArray dst输出图片
Size输出图片尺寸
fx, fy沿x轴,y轴的缩放系数
interpolation插入方式
INTER_NEAREST最近邻插值
INTER_LINEAR双线性插值(默认设置)
INTER_AREA使用像素区域关系进行重采样。
INTER_CUBIC4x4像素邻域的双三次插值
INTER_LANCZOS48x8像素邻域的Lanczos插值

举个例子:

img_test = cv2.resize(img, (0, 0), fx=0.25, fy=0.25, interpolation=cv2.INTER_NEAREST)
img_test = cv2.resize(img_test, (0, 0), fx=4, fy=4, interpolation=cv2.INTER_NEAREST)

·展示图片:

cv2.imshow('窗口名', img)
cv2.waitKey()
cv2.destroyAllWindows()

·灰度图彩图转换:

RGB转灰度:

img2 = cv2.cvtColor(img, cv2.COLOR_RGB2GRAY)

灰度转RBG:

img3 = cv2.cv2Color(img, cv2.COLOR_GRAY2RGB)

·解决关闭窗口后程序不停止的问题:还没找到

·保存图片:

cv2.imwrite(filepath, img, flag)

filepath: 保存路径

img: 图像

flag:参数

可选的第三个参数,它针对特定的格式:对于JPEG,其表示的是图像的质量,用0 - 100的整数表示,默认95;对于png ,第三个参数表示的是压缩级别。默认为3.

注意:cv2.IMWRITE_JPEG_QUALITY类型为 long ,必须转换成 int

cv2.IMWRITE_PNG_COMPRESSION, 从0到9 压缩级别越高图像越小。

·路径拼接:

os.path.join()

os.path.join()函数:连接两个或更多的路径名组件

1.如果各组件名首字母不包含’/’,则函数会自动加上

2.如果有一个组件是一个绝对路径,则在它之前的所有组件均会被舍弃

3.如果最后一个组件为空,则生成的路径以一个’/’分隔符结尾

·补0

'''
原字符串左侧对齐, 右侧补零:
'''
str.ljust(width,'0') 
input: '789'.ljust(32,'0')
output: '78900000000000000000000000000000'


'''
原字符串右侧对齐, 左侧补零:
方法一:
'''
str.rjust(width,'0') 
input: '798'.rjust(32,'0')
output: '00000000000000000000000000000798'
'''
方法二:
'''
str.zfill(width)
input: '123'.zfill(32)
output:'00000000000000000000000000000123'
'''
方法三:
'''
'%07d' % n
input: '%032d' % 89
output:'00000000000000000000000000000089'

·循环:

for i in range x

for i in range(3) :0 1 2

for i in range(1, 3) :1 2

python 安装 cv2 - 已解决 我的网站已上线提供多种操作,一定有一种适合你的。 阅读详情

相关推荐

定制PYNQ的overlay

一、用HLS生成一个定制IP(加速器)(1)首先打开vivado hls,本人的版本是2017.2,点击创建一个新工程。(2)设置工程名和路径,顶层函数设置为add,创建一个新的C++程序,名字叫做adder.cpp,不用在testbench中添加文件。选择板子的时候搜索xc7z020clg400-1,这是PYNQ的板子号,选择完成。             (3)在左侧的菜单栏里选择Sourc...

bramblewalls的博客 1万+

Python第三方cv2库介绍

Python第三方cv2库介绍。CV2指的是OpenCV2(Open Source Computer Vision Library),是一个开源的库平台计算机视觉库。有很强大的图片处理功能,可实现图像处理和计算机视觉方面的很多通用算法。特别提示:安装的时候用opencv_python,但在导入使用的时候用cv2。..................

cnds123的专栏 6万+

drm 之modes

#define _GNU_SOURCE #include <errno.h> #include <fcntl.h> #include <stdbool.h> #include <stdint.h> #include <stdio.h> #include <stdlib.h> #include <string.h> #include <sys/mman.h> #include <time.h&...

u012794472的专栏 3718

openCV-Python笔记一:图像的读取、显示和保存

使用cv2.imread(),cv2.imshow(),cv2.imwrite()读取、显示和保存图像

djcxym的博客 4万+

Halcon 3D视觉实战:5步将线激光高度数据转为可分析的深度图与点云

本文详细介绍了如何利用Halcon平台将线激光高度数据转换为深度图与点云的5步实战方法。通过具体代码示例和工业检测案例(如锂电池胶水测量),帮助工程师高效处理3D视觉数据,实现从原始数据到三维可视化的完整技术链路。

weixin_29039773的博客 361

DFT ATPG提升coverage的方法

采用更精确的故障模型,如桥接故障模型(用于描述电路中不应连接的节点之间的短路故障)和路径延迟故障模型(考虑信号在电路路径上的传输延迟),可以使ATPG工具生成更有效的测试向量来覆盖这些特殊故障。假设电路中有一个与门的输入引脚存在固定为0的故障(stuck - at - 0),D - 算法会分析与门的其他输入以及与门输出连接的后续电路逻辑,从而确定整个电路的输入值,使得当该故障存在时,电路的输出与无故障时不同。通过增加测试向量的类型,如功能测试向量和结构测试向量的结合,可以提高故障覆盖率。

Loving_enjoy的博客 969

python cv2什么意思_Python CV2的基本操作

Python CV2的基本操作cv2.imread(filepath,flags)filepath:要读入图片的完整路径flags:读入图片的标志cv2.IMREAD_COLOR:默认参数,读入一副彩色图片,忽略alpha通道cv2.IMREAD_GRAYSCALE:读入灰度图片cv2.IMREAD_UNCHANGED:顾名思义,读入完整图片,包括alpha通道返回值是一个numpy对象cv2.n...

weixin_39710951的博客 1460

无刷电机控制基础(2)——有感和无感驱动、调速

上一篇文章我们讲了一些无刷电机的基础知识,包括无刷电机的内部结构,驱动原理等,我们知道了只需要按照转子的当前位置,来按顺序给定子线圈通电,就能让电机转动起来。但是,上一篇中我们跳过了一个关键步骤,就是如何检测转子的位置。本篇我们就讲讲常用的位置检测方法,以及引出的一些相关问题。我们知道,获取磁铁的位置可以用霍尔传感器,无刷电机的转子就是永磁体,因此只要在合适的位置安装霍尔传感器,就能知道转子的旋转位置。在无刷电机中,一般用3个开关型霍尔器件就能检测转子的位置。

小白白学电子 2万+

Python:cv2图像处理的基本操作

1. 图片加载、显示和保存 import cv2 img = cv2.imread("01.jpg") imgGrey = cv2.imread("01.jpg",0) cv2.imshow("img",img) cv2.imshow("imgGrey",imgGrey) cv2.waitKey() cv2.imwrite("Copy.jpg",img) 2. 图像显示窗口创建与销毁 ...

BigCowPeking 1万+

AI编程工具选哪个更高效?开发者深度评测

无论是代码生成、错误修复,还是架构设计,AI都能提供强大的辅助能力。然而,市面上AI编程工具众多,如何选择最适合自己的?本文将从代码质量、响应速度、多语言支持、集成能力等多个维度,为你解析2025年最主流的几款AI编程工具,帮助你做出更高效的选择。根据2025年最新调研数据,全球超过85%的开发者正在使用AI编程工具辅助开发,相比2023年增长了近40%。合理利用AI,能让你的开发效率提升数倍,但真正的核心竞争力,仍然在于你的编程思维和解决问题的能力。:技术较强的开发者、重视数据隐私的企业。

1855

Android 15.0 Launcher3中去掉Hotseat功能实现

在15.0系统产品定制化开发中,在Launcher3的定制化需求也是特别多的,由产品是小屏幕的产品,所以产品需求Launcher3 页面布局的原因,要求Launcher3 需要去掉Hotseat 不显示Hotseat下面几个图标,而做满屏app的显示,从而达到美观的效果,下面就来分析去掉Hotseat从而实现这个功能

安卓兼职framework和app工程师的博客 555

Python中用cv2对图片进行基本操作

原文来自:https://blog.youkuaiyun.com/fu6543210/article/details/80835280 1. 读取图片 使用函数cv2.imread(filepath,flags)读入一副图片 filepath:要读入图片的完整路径 flags:读入图片的标志 cv2.IMREAD_COLOR:默认参数,读入一副彩色图片,忽略alpha通道 cv2.IMREAD_GRAYS...

Bebr的博客 8290

HBase骚操作之数据加载方式BulkLoad

本文研究了一种HBase BulkLoad的入库方式,该方式利用HBase的数据信息按照特定格式存储在hdfs内这一原理,直接在HDFS中生成持久化的HFile数据格式文件,然后上传至合适位置,即完成巨量数据快速入库的办法。该方式配合MapReduce完成,高效便捷,而且不占用Region资源,增添负载,在大数据量写入时能极大的提高写入效率,并降低对Hbase节点的写入压力。HBase BulkLoad对于异构数据源的合并及大量数据一次性导入具有重要指导意义,相比HBase Put操作在性能上具有较高的优势

石榴姐yyds 7789

python OpenCV基本操作cv2

参考:https://www.cnblogs.com/zlel/p/9267629.html 1.图片加载 cv2.imread(filename, flags=None) 2、显示图片 cv2.imshow(winname, mat) winname 图口名称 mat ,已加载图片的变量名 3、图像显示窗口创建与销毁, cv2.namedWindow(窗口名,属性) 创建一个窗口 属性—指定窗口大小模式: cv2.WINDOW_AUTOSIZE:根据图像大小自动创建大小 cv2.WINDOW_NORMAL

小白的一次小程序编程的各种记录 1717

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

python cv2_Python-OpenCV基本操作cv2

1.图片加载、显示和保存importcv2#生成图片img = cv2.imread("1.jpg")#生成灰色图片imgGrey = cv2.imread("1.jpg", 0)#展示原图cv2.imshow("img", img)#展示灰色图片cv2.imshow("imgGrey", imgGrey)#等待图片的关闭cv2.waitKey()#保存灰色图片cv2.imwrite("Copy....

weixin_39894473的博客 258

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

Python-OpenCV基本操作cv2

1.图片加载、显示和保存 import cv2 # 生成图片 img = cv2.imread("1.jpg") # 生成灰色图片 imgGrey = cv2.imread("1.jpg", 0) # 展示原图 cv2.imshow("img", img) # 展示灰色图片 cv2.imshow("imgGrey", imgGrey) # 等待图片的关闭 cv2.waitKey() ...

浩瀚之水的专栏 1643

python中cv2的基本操作——视频、图片的读写

''' 总结cv2相关内容 ''' import cv2 import numpy as np ''' 读图片 ''' image_path = '/data/weichai/0817_choice_frame/8.4_sortheast/1.jpg' image = cv2.imread(image_path) # image是一个矩阵。shape: (hight, weight, channel) ''' 保存图片 ''' output_path = '/home/liulihao/test/

Mr_Wanderer的博客 1750

python3使用cv2对图像进行基本操作

技术背景 在机器视觉等领域,最基本的图像处理处理操作,可以通过opencv这个库来实现。opencv提供了python的接口,所需安装的库为opencv-python,但是在库的导入的时候一般用的是import cv2,因此很多也把opencv-python简称为cv2。 cv2的安装 如果是使用anaconda所搭建的python的编程环境,一般会事先安装好cv2这个仓库。在上面的超链接中可以...

Dechin的博客 1555

Python cv2(Opencv) 图像基本操作

OpenCV是一个基于Apache2.0许可(开源)发行的跨平台计算机视觉和机器学习软件库,可以运行在Linux、Windows、Android和Mac OS操作系统上。它轻量级而且高效,由一系列 C 函数和少量 C++ 类构成,同时提供了Python、Ruby、MATLAB等语言的接口,实现了图像处理和计算机视觉方面的很多通用算法。

weixin_52026996的博客 2885

python cv2 imshow_Python-OpenCV 2. 图像基本操作

*本文学习资源来自《TensorFlow深度学习应用实践》一、基本的图片存储格式Python以矩阵形式存储和处理图片。如:通过Numpy创建一个长宽各300的矩阵,各个点的值为0:img = np.mat(np.zeros((300,300))这里img就是一个300*300,每个像素点都为黑色的图片,可以使用OpenCV显示:cv2.imshow('test',img)cv2.waitKey(0...

weixin_39715652的博客 668
上一篇: Python里的For循环和While循环怎么用呢?
下一篇: Python实用秘技,复杂zip文件的解压
Python_xiaowu
博客等级 码龄5年 3096粉丝 178原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值