openCV3.4中文教程(1)之图片操作

本教程为openCV3.4的python3.6教程中Gui Features in OpenCV下的Getting Started with Images
这里写图片描述
目标
读取、显示、和保存一个图像文件。
imread()、imshow()、imwrite()函数的用法。
matplotlib函数的用法。
读取图片
img = cv2.imread(‘sample.jpg’,1)
1代表:cv2.IMREAD_COLOR,彩色图片,但所有透明颜色被忽略,缺省值。
0代表cv2.IMREAD_GRAYSCALE 灰度图。
-1代表cv2.IMREAD_UNCHANGED :读入彩色图片包含α通道。
显示图片
cv2.imshow(‘img’,img) #显示图片在img窗口中,第一个代表窗口,第二个代表图片。
这里写图片描述
也可以采用matplotlib库来显示图片,但需要注意将opencv的bgr格式转化为rgb格式。
这里写图片描述
窗口的建立和释放
cv2.namedWindow(‘image’, cv.WINDOW_NORMAL)
预设一个显示窗口,不是必须的。
其中的cv2.WINDOW_AUTOSIZE是缺省值,可用0来替代,意味着窗口的大小和显示图像的大小一致,如果采用参数cv2.WINDOW_NORMAL,可用1来替代,允许设定窗口的固定大小,显示图片时对图片自动进行缩放以适应窗口的大小
cv2.waitKey(0) #等待键盘命令,单位微秒
cv2.destroyAllWindows() #释放显示窗口,也可以采用cv2.destroyWindows(lmg)来释放指定的窗口。
cv2.resizeWindow(‘img’,480,640) #可以对显示窗口进行尺寸定义WxH。
这里写图片描述
保存图片
cv2.imwrite(‘c:/sample.png’,img)
第一个参数是文件路径,第二个参数是图像。
代码

# -*- coding: utf-8 -*- 
'''
编码 : aikes
日期 : 20180310
功能 : opencv3.4教程
环境 :win10+python3.6+opencv3.4+VS2017
'''
import cv2
import numpy as np
import matplotlib.pyplot as plt

def matplot(img):     #plt绘出图片
    img=cv2.cvtColor(img,cv2.COLOR_BGR2RGB)     #首先转化为RGB格式
    plt.imshow(img)    
    plt.xticks([0,100,200,300,400]), plt.yticks([0,100,200,300])  
    plt.show()

def main():
    cv2.namedWindow('img',0) 
    cv2.resizeWindow('img',480,640)
    img = cv2.imread('c:/girl.jpg',1)
    cv2.imshow('img',img)
    matplot(img)
    if cv2.waitKey(0) == ord('q'):         # wait for'q' key to exit
        cv2.destroyAllWindows()
    elif cv2.waitKey(0) == ord('s'): # wait for 's' key to save and exit
        cv.imwrite('./girl.png',img)
        cv.destroyAllWindows()

if __name__ == '__main__': #当模块被直接运行时,以下代码块将被运行,当模块是被导入时,代码块不被运行
    main()
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值