python-OpenCV-对图片进行操作

本文详细介绍了Python中OpenCV库在图像处理方面的方法,包括图片缩放、旋转、仿射变换、二值化等操作。此外,还讨论了尺度不变特征变换(SIFT)的应用和图像降噪技术。
摘要由CSDN通过智能技术生成

anaconda https://www.anaconda.com/download/

OpenCV拥有丰富的常用图像处理函数库

主要应用领域有计算机视觉领域:如物体识别、图像分割、人脸识别、动作识别及运动追踪

安装模块

pip install opencv-python
pip install opencv-contrib-python

一、cv2的基本方法和属性

import cv2 as cv
import numpy as np
from matplotlib import pyplot as plt
%matplotlib inline	# 不用使用plt.show()就可以直接在页面展示出来

cv.imread(文件名,属性) 读入图像 - - - 属性值有IMREAD_COLOR(读入彩色)和IMERAD_GRAYSCALE(读入灰度图像)
文件名中不能有中文,会报错 - - - 将图片以array格式读出来 - - - 0~255,0最暗,255最亮 - - - 彩色是三维数组,灰度是二维数组

cv.imread('youling.png')

在这里插入图片描述
cv.imshow(窗口名,图像文件) 显示图像 - - - 彩色图像是BGR格式,使用matplotlib显示时需要转换为RGB格式

cv.waitKey() 等待时间 - - - 毫秒级,0表示任意键终止
键盘绑定函数,参数=0(或<0的数):一直显示窗口直到在键盘上按下一个键为止,并`返回按键对应的ASCII值``;参数>0:设置显示的时间单位为毫秒,超过这个指定的时间则返回-1

cv.destroyAllWindows(窗口名) 删除建立的窗口

cv.namedWindow(窗口名,属性) 创建一个窗口 - - - 属性值有WINDOW_AUTOSIZE(根据图像的尺寸自动创建),WINDOW_NORMAL(窗口大小可调整) - - - eg:cv.namedWindow(‘img’,cv.WINDOW_NORMAL)

img = cv.imread('youling.png',cv.IMREAD_COLOR)
cv.imshow('img',img)
cv.waitKey(0)
cv.destroyAllWindows()

cv.imwrite(filename, imgdata) 保存图像

cv.imwrite('asd.jpg',img)
# True	# 将img保存为名为asd.jpg的图片

img.shape 图像的尺寸
彩色图片的返回值是(高, 宽, 3) - - - 灰度图片是(高, 宽)

img.shape
# (864, 1392, 3)	# 高 宽 3代表BGR

img.size 图像的大小

img.size
# 3608064	# 图片的高×宽×3  864*1392*3=3608064

可以通过k=cv.waitKey(0) 关闭图片或保存

img = cv.imread('youling.png',cv.IMREAD_COLOR)
cv.imshow('img',img)
k = cv.waitKey(0)
if k == 27:		# 如果按的是Esc键,退出
    cv.destroyAllWindows()
elif k == ord('s'):		# 按s键保存图片
    cv.imwrite('img.jpg',img)
    cv.destroyAllWindows()

将文字输入到照片中

cv.putText(图片名,文字,坐标,字体,字体大小,字体颜色,字体粗细)
字体的坐标是文字左下角的位置
字体可以选cv.FONT_HERSHEY_COMPLEX,cv.FONT_HERSHEY_COMPLEX_SMALL,cv.FONT_HERSHEY_DUPLEX,cv.FONT_HERSHEY_PLAIN等等

cv.putText(img,'hello world',(200,500),cv.FONT_HERSHEY_SIMPLEX
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

蔷莫

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值