图像的读取,显示与保存

相关函数:cv2.imread()、cv2.imshow()、cv2.imwrite()

1.读入图像:

用cv2.imread()函数来读取图像,cv2.imread(路径图像颜色空间)(其中颜色空间默认为BGR彩图)

    cv2.IMREAD_COLOR:读入一副彩色图像

cv2.IMREAD_GRAYSCALE:以灰度模式读入图像

cv2.IMREAD_UNCHANGED:读入一幅图像,并且包括图像的 alpha 通道

示例代码

import cv2
img = cv2.imread('buffer.jpg') #默认为BGR彩图
img = cv2.imread('buffer.jpg',0) #以灰度模式加载图像

2.显示图像:

用cv2.imshow()函数在窗口显示图像,窗口大小自适应图像尺寸。函数的第一个参数是一个窗口标题,第二个参数是图像。

 cv2.imshow('image',img)
cv2.waitKey(0) #等待任意键按下
cv2.destroyAllWindows() #销毁所有窗口
有一种特殊情况,可以在此创建一个窗口并稍后加载图像。它使用函数cv2.namedWindow(窗口标题,默认参数)完成。
默认情况下,此标志是cv2.WINDOW_AUTOSIZE,窗口大小不可改变。
但如果指定标志为cv2.WINDOW_NORMAL,则可以调整窗口大小。
 cv2.namedWindow('buffer', cv2.WINDOW_NORMAL)
cv2.imshow('buffer',img)
cv2.waitKey(0)
cv2.destroyAllWindows() #释放窗口

3.写图像:

用cv2.imwrite()函数来保存图像,第一个参数是文件名称,第二个参数是想要保存的图像。

   cv2.imwrite('buffer.jpg',img) #保存图像

4.总结:读取并显示图像

 import cv2
img=cv2.imread('buffer.jpg')
cv2.namedWindow('image', cv2.WINDOW_NORMAL) #窗口大小可以改变
cv2.imshow('image',img)
cv2.waitKey(0) #如果不加这一句,在IDLE中执行窗口直接无响应
cv2.destroyAllWindows() #释放窗口,每次执行完要释放窗口,这是个好习惯

OpenCV中图像的读取,显示与保存的更多相关文章

  1. opencv中图像的读取,显示与保存1

    1.读入图像 用cv2.imread()函数来读取图像,cv2.imread(路径,图像颜色空间)(其中颜色空间默认为BGR彩图)     cv2.IMREAD_COLOR:读入一副彩色图像 cv2. ...

  2. OpenCV3编程入门笔记(1)图像载入、显示、保存、变换灰度图

    图像载入.显示.保存函数: 1         图像载入函数:imread()   Mat imread(const string& filename, int flags=1); const ...

  3. Opencv中图像的遍历与像素操作

    Opencv中图像的遍历与像素操作 OpenCV中表示图像的数据结构是cv::Mat,Mat对象本质上是一个由数值组成的矩阵.矩阵的每一个元素代表一个像素,对于灰度图像,像素是由8位无符号数来表示(0 ...

  4. OpenCV中图像的格式Mat 图像深度

    opencv中图像的格式Mat 有图像的定义,图像深度.类型格式等,其中Mat的参数depth为深度,深度反应出图像颜色像素值: 关于数据的储存:(转) Mat_<uchar>对应的是CV ...

  5. OpenCV中图像算术操作与逻辑操作

    OpenCV中图像算术操作与逻辑操作 在图像处理中有两类最重要的基础操作各自是图像点操作与块操作.简单点说图像点操作就是图像每一个像素点的相关逻辑与几何运算.块操作最常见就是基于卷积算子的各种操作.实 ...

  6. OpenCV中图像的BGR格式及Img对象的属性说明

    1. 图像的BGR格式说明 OpenCV中图像读入的数据格式是numpy的ndarray数据格式.是BGR格式,取值范围是[0,255]. 如下图所示,分为三个维度: 第一维度:Height 高度,对 ...

  7. opencv:图像的读取,显示,写入文件

    #include <opencv2/opencv.hpp> #include <iostream> using namespace cv; using namespace st ...

  8. openCV—Python(2)—— 载入、显示和保存图像

    一.函数简单介绍 1.imread-读取图像 函数原型:imread(filename, flags=None) filename:读取的图像路径名:比如:"H:\img\lena.jpg& ...

  9. 深入学习OpenCV中图像灰度化原理,图像相似度的算法

    最近一段时间学习并做的都是对图像进行处理,其实自己也是新手,各种尝试,所以我这个门外汉想总结一下自己学习的东西,图像处理的流程.但是动起笔来想总结,一下却不知道自己要写什么,那就把自己做过的相似图片搜 ...

随机推荐

  1. Codeforces Round #433 (Div. 2, based on Olympiad of Metropolises) B

    Maxim wants to buy an apartment in a new house at Line Avenue of Metropolis. The house has n apartme ...

  2. Hive_Hive的数据模型_汇总

    体系结构: 元数据 /HQL的执行安装: 嵌入 /远程 /本地管理: CLI /web界面 /远程服务数据类型: 基本 /复杂 /时间数据模型: 数据存储 /内部表 /分区表 /外部表 /桶表 /视图 ...

  3. NSSM把.Net Core部署至 Windows 服务

    NSSM把.Net Core部署至 Windows 服务 https://www.cnblogs.com/emrys5/p/nssm-netcore.html 为什么部署至Windows Servic ...

  4. Jaspersoft Studio简介

    参考来源:https://community.jaspersoft.com/documentation/tibco-jaspersoft-studio-user-guide/v640/introduc ...

  5. RabbitMQ使用教程(二)RabbitMQ用户管理,角色管理及权限设置

    上一篇博客 RabbitMQ使用教程(一)RabbitMQ环境安装配置及Hello World示例 中,我们成功的安装好了RabbitMQ环境,并通过一个Java客户端示例了解了用生产者来发布消息,用 ...

  6. Spring Boot自动配置原理与实践(一)

    前言 Spring Boot众所周知是为了简化Spring的配置,省去XML的复杂化配置(虽然Spring官方推荐也使用Java配置)采用Java+Annotation方式配置.如下几个问题是我刚开始 ...

  7. python基础---有关nparray----切片和索引(一)

    Numpy最重要的一个特点就是其N维数组对象,即ndarray,该对象是一种快速而灵活的大数据集容器,实际开发中,我们可以利用这种数组对整块数据执行一些数学运算. 有关ndarray,我们就从最简单的 ...

  8. log4j.properties配置详情

    log4j: log for java 是Apache的一个开源项目! 00.将我们的日志信息,输出到指定的位置(控制台   文件中) 01.我们可以控制每一条日志的输出格式 02.我们设置日志信息的 ...

  9. If people in the communications only think about gains and losses of interest, then the pleasure of knowing each other will cease to exist.

    If people in the communications only think about gains and losses of interest, then the pleasure of ...

  10. css 居中问题总结

    html代码: <div class="box"> <div class="box-item"> 文字 </div> < ...