zoukankan      html  css  js  c++  java
  • python_opencv应用系列1:图片读写

    opencv的读写非常简单,主要用到的就是imread和imwrite两个函数

    读取图片示例

    import cv2
    #imread(filename[, flags]) -> retval
    imgPath = 'E:/test01.jpg' #图片路径
    #默认读取的是RGB三色图,得到三维矩阵
    img = cv2.imread(imgPath)
    #等价于img = cv2.imread('test01.jpg',cv2.IMREAD_COLOR)
    #查看图像维数(719,1280,3)
    print(img.shape)
    #如果选择以灰度模式读入图像,得到二维矩阵
    img0 = cv2.imread(imgPath, 0)
    #等价于img = cv2.imread('test01.jpg',cv2.IMREAD_GRAYSCALE)
    #查看图像维数(719,1280)
    print(img0.shape)

    PS:使用imread读取图片时,如果图片路程错误,opencv不会报Error,图片矩阵img=None

    写图片示例

    import cv2
    #imwrite(filename, img[, params]) -> retval
    imgPath = 'E:/test01.jpg' #图片的写入路径
    #图片写入
    cv2.imwrite(filename, img)
    #第三个参数针对特定的格式: 
    imgPath = 'E:/test01.jpg'
    cv2.imwrite(imgPath, img, [int(cv2.IMWRITE_JPEG_QUALITY),100])
    #对于JPEG,其表示的是图像的质量。
    #用0-100的整数表示,数值越高质量越高,默认为95。
    imgPath = 'E:/test01.png'
    cv2.imwrite(imgPath, img, [int(cv2.IMWRITE_PNG_COMPRESSION),9]) 
    #对于PNG,第三个参数表示的是压缩级别。
    #从0到9,压缩级别越高,图像尺寸越小,默认级别为3。
    #注意,cv2.IMWRITE_JPEG_QUALITY和cv2.IMWRITE_PNG_COMPRESSION类型为Long,必须转换成int。

     参考链接:

    http://blog.csdn.net/eddy_zheng/article/details/48286735

    http://blog.csdn.net/sunny2038/article/details/9057415

  • 相关阅读:
    try catch 和\或 finally 的用法
    postgresql与oracle对比
    今天遇到个let: not found
    NTLM相关
    【搜藏】net use命令拓展
    【shell进阶】字符串操作
    【网摘】网上邻居用户密码
    测试导航
    关系代数合并数据 left join
    真正的程序员
  • 原文地址:https://www.cnblogs.com/wangwp/p/6554450.html
Copyright © 2011-2022 走看看