图像的加载与保存

导入所需要的库

import cv2 as cv
import numpy as np

as cv就是cv2,为啥这么写,我也不知,很多人都是这样简写的

输出图片属性
type(image)显示图片类型numpy类型的数组
image.shapeshape会返回tuple元组,第一个元素表示矩阵行数,第二个矩阵表示矩阵列数,第3个元素是3,表示像素值由光的三原色组成
image.size图像大小
image.dtype图像类型
np.array(image)返回一个对象,可赋值给变量;作用是将图片转化为矩阵

def get_image_info(image): # 定义一个函数来输出图片的一些属性
    print("显示图片类型numpy类型的数组",type(image))
    # 图像矩阵的shape属性表示图像的大小
    # shape会返回tuple元组,第一个元素表示矩阵行数
    # 第二个矩阵表示矩阵列数,第3个元素是3,表示像素值由光的三原色组成
    print("shape会返回tuple元组",image.shape)
    print("图像大小",image.size) # 图像大小
    print("image.dtype图像类型",image.dtype) # 图像类型
    pixel_data = np.array(image) # 将图片转化为矩阵
    print("将图片转化为矩阵np.array",pixel_data) # 图片矩阵

读取图片
cv.imread()函数读取图片,并返回一个对象,可赋值给变量;
src = cv.imread("pic/bizhi.jpg") # imread读取
创建窗口,用来显示图片
cv.WINDOW_NORMAL(不知作用) | namedWindow
cv.namedWindow('input_image',cv.WINDOW_NORMAL)
在指定窗口展示图片
cv.imshow("input_image",src)
图片另存为;存到C盘要权限
cv.imwrite("D://2.png",src) # 2个参数,路径和原来图片名变量
窗口显示时间,一般为0,一直显示,按键则不为0,退出(个人理解)
cv.waitKey(0)
删除建立的全部窗口,释放资源
cv.destroyAllWindows()

完整代码

import cv2 as cv
import numpy as np

# 输出图片属性
def get_image_info(image): # 定义一个函数来输出图片的一些属性
    print("显示图片类型numpy类型的数组",type(image))
    # 图像矩阵的shape属性表示图像的大小
    # shape会返回tuple元组,第一个元素表示矩阵行数
    # 第二个矩阵表示矩阵列数,第3个元素是3,表示像素值由光的三原色组成
    print("shape会返回tuple元组",image.shape)
    print("图像大小",image.size) # 图像大小
    print("image.dtype图像类型",image.dtype) # 图像类型
    pixel_data = np.array(image) # 将图片转化为矩阵
    print("将图片转化为矩阵np.array",pixel_data) # 图片矩阵

# 主函数 C++风格
if __name__ == "__main__":
    # 读取图片
    src = cv.imread("pic/bizhi.jpg") # imread读取
    # 创建窗口,用来显示图片
    # cv.WINDOW_NORMAL | namedWindow
    cv.namedWindow('input_image',cv.WINDOW_NORMAL)
    # 在指定窗口展示图片
    cv.imshow("input_image",src)
    # 调用函数,输出图片属性
    get_image_info(src)
    # 图片另存为;存到C盘要权限
    cv.imwrite("D://2.png",src) # 2个参数,路径和原来图片名变量
    #  窗口显示时间,单位:毫秒 k=0: (也可以是小于0的数值)
    # 一直显示,键盘上按下一个数字键即会消 k>0:显示多少毫秒
    cv.waitKey(0)
    # 删除建立的全部窗口,释放资源
    cv.destroyAllWindows()

posted @ 2021-08-11 17:48  索匣  阅读(63)  评论(0编辑  收藏  举报