OpenCV中的图像:

定义:在opencv中图像就是结构化存储数据的信息。

属性:1.宽、高和通道数目

1 print(image.shape)      #形状:行(长)、列(宽)、通道数(深度)

   2.像素数据

1  pixel_data = np.array(image)    #获取所有像素数据
2 print(pixel_data)

    3.图像的类型

1 print(type(image))      #结构类型

加载显示

读/写图像文件:cv.imread()函数用于对图片的读取;cv.imwriter()用于对图片的写操作,包括保存等

1 src = cv.imread("C:/Users/shinelon/Desktop/DL/op.jpg")      #括号类为图片的绝对路径
2 cv.imwrite("C:/Users/shinelon/Desktop/DL/12.png",gray) #保存图片到指定目录

图像的显示:cv.imshow(winname, mat)将图片在Windows窗口显示。winname:窗口名字;mat:图像名称。

1 cv.imshow("input image",src)            #将图片在Windows窗口显示

其他知识点

 cv.VideoCapture(0)        #打开电脑的摄像头,0:表示有多个摄像头时,其序号;当要读取视频是括号类为视频的路径:("D:/学习视频/Adams/ADAMS基础视频教程1.wmv") 但没有声
 cv.cvtColor(src, cv.WINDOW_AUTOSIZE)       #将图像转换成Blue-Green-Read(RGB)格式

完整代码

 1 import cv2 as cv
2 import numpy as np
3
4
5 #对视频的读取
6 def video_demo():
7 capture = cv.VideoCapture(0) #打开电脑的摄像头,0:表示有多个摄像头时,其序号.
8 # 当要读取视频是括号类为视频的路径:("D:/学习视频/Adams/ADAMS基础视频教程1.wmv") 但没有声音
9 while(True):
10 ret, frame = capture.read() #读取摄像头
11 frame = cv.flip(frame, 1) #镜像调换
12 cv.imshow("video",frame) #显示视频的帧数
13 c = cv.waitKey(50)
14 if c == 27:
15 break
16
17
18 def get_image_info(image):
19 print(type(image)) #结构类型
20 print(image.shape) #形状:长、宽、通道数(深度)
21 print(image.size) #像素数据
22 print(image.dtype) #每个通道占用的位数
23 pixel_data = np.array(image) #获取所有像素数据
24 print(pixel_data)
25
26
27 print("------Python OpenCV Tutorial-----")
28 src = cv.imread("C:/Users/shinelon/Desktop/DL/op.jpg") #括号类为图片的绝对路径
29 cv.namedWindow("input image",cv.WINDOW_NORMAL)
30 cv.imshow("input image",src) #将图片在Windows窗口显示
31 video_demo() #读取视频
32 # get_image_info(src) #读取图片参数
33 # gray = cv.cvtColor(src, cv.WINDOW_AUTOSIZE)
34 # cv.imwrite("C:/Users/shinelon/Desktop/DL/12.png",gray) #保存图片到指定目录
35 cv.waitKey(0)
36
37 cv.destroyAllWindows()    #销毁所有打开的HighGUI窗口。

OpenCV-----图像的加载与保存的更多相关文章

  1. [OpenCV学习笔记3][图像的加载+修改+显示+保存]

    正式进入OpenCV学习了,前面开始的都是一些环境搭建和准备工作,对一些数据结构的认识主要是Mat类的认识: [1.学习目标] 图像的加载:imread() 图像的修改:cvtColor() 图像的显 ...

  2. OpenCV图像加载与保存

    OpenCV中的图像加载与保存 头文件是包含的库,在GitHub上下载的 imread("图片路径",图片加载方式) 图片加载方式: IMREAD_GRAYSCALE 灰度图像 I ...

  3. python实现图像加载与保存,窗口创建与销毁,图片常用属性,ROI,通道的分离与合并,对比度和亮度

    目录: (一)图像加载与保存 (二)图像显示窗口创建与销毁 (三)图片的常用属性的获取 (四)生成指定大小的矩形区域(ROI) (五)图片颜色通道的分离与合并 (六)两张图片相加,改变对比度和亮度 ( ...

  4. KnockoutJS 3.X API 第七章 其他技术(1) 加载和保存JSON数据

    Knockout允许您实现复杂的客户端交互性,但几乎所有Web应用程序还需要与服务器交换数据,或至少将本地存储的数据序列化. 最方便的交换或存储数据的方式是JSON格式 - 大多数Ajax应用程序今天 ...

  5. Qt Load and Save PCL/PLY 加载和保存点云

    Qt可以跟VTK和PCL等其他库联合使用,十分强大,下面的代码展示了如何使用Qt联合PCL库来加载和保存PCL/PLY格式的点云: 通过按钮加载点云: void QMainWindow::on_pb_ ...

  6. 6.Knockout.Js(加载或保存JSON数据)

    前言 Knockout可以实现很复杂的客户端交互,但是几乎所有的web应用程序都要和服务器端交换数据(至少为了本地存储需要序列化数据),交换数据最方便的就是使用JSON格式 – 大多数的Ajax应用程 ...

  7. Knockout应用开发指南 第六章:加载或保存JSON数据

    原文:Knockout应用开发指南 第六章:加载或保存JSON数据 加载或保存JSON数据 Knockout可以实现很复杂的客户端交互,但是几乎所有的web应用程序都要和服务器端交换数据(至少为了本地 ...

  8. Tensorflow模型加载与保存、Tensorboard简单使用

    先上代码: from __future__ import absolute_import from __future__ import division from __future__ import ...

  9. TensorFlow模型加载与保存

    我们经常遇到训练时间很长,使用起来就是Weight和Bias.那么如何将训练和测试分开操作呢? TF给出了模型的加载与保存操作,看了网上都是很简单的使用了一下,这里给出一个神经网络的小程序去测试. 本 ...

  10. Knockout.Js官网学习(加载或保存JSON数据)

    前言 Knockout可以实现很复杂的客户端交互,但是几乎所有的web应用程序都要和服务器端交换数据(至少为了本地存储需要序列化数据),交换数据最方便的就是使用JSON格式 – 大多数的Ajax应用程 ...

随机推荐

  1. ubuntu 14.04 安装openjdk 8

    最近准备在ubuntu14.04上安装Oracle,但是需要提前安装jdk,发现问题挺多的,后面看到了如下的操作步骤,成功安装,特意记录下来. 致谢:https://www.yangshenglian ...

  2. 适用于填空题出题 的随机算法 PHP

    <?php #寻找一个满足给定空数和题数要求的随机方案,事先需统计出每题空格数情况队列$m_blk,以及这些题分别有多少个$m_que. #以下算法将找到一个随机方案,若未找到将返回假值,如果不 ...

  3. 3D世界变换

    一直弄不清3D场景中scaleOrientation的作用,还有scale.orientation(roation).translation的顺序问题,以往都是试图查一下,关于前者网上几乎找不到什么清 ...

  4. vue props父组件与子组件传值方法

    /~~父组件 runshow.vue~~/ <template> <div> <conditions :fenxiConditonsList="propCond ...

  5. SQL的七种连接

    book表: t_book表: 一:inner join  AB共有的. select * from book inner join t_book on book.t_id=t_book.t_id 查 ...

  6. 180128-----Java面试题

    1 不用第三个变量,交换两个的值 a=1;b=2;a=a+b;b=a-b;a=a-b; 2 Java动态代理用什么实现? 反射

  7. A* 算法求第 K 短路

    一种具有 \(f(n)=g(n)+h(n)\) 策略的启发式算法能成为 A* 算法的充分条件是: 搜索树上存在着从起始点到终了点的最优路径. 问题域是有限的. 所有结点的子结点的搜索代价值 \(> ...

  8. 高通 8x26 andorid light sensor(TSL258x) 开发【转】

    本文转载自:http://www.voidcn.com/blog/u012296694/article/p-1669831.html 前言 8926平台的sensor架构与之前的平台完全不同,实际上已 ...

  9. 源码搭建mysql5.7.20

    转载过来的文章,只是借用原文样式与框架,根据自己实验环境进行全面改动,仅供参考! 使用yum安装的MySQL一般版本比较旧,但是运行稳定.如果想要尝试最新的功能或者需要指定特殊的功能的话,就需要手工进 ...

  10. zabbix自定义模板监控oracle

    zabbix服务器端安装:zabbix-3.2.6.tar.gzzabbix client端安装:zabbix-agent-3.2.6-1.x86_64.rpm 1.首先必须在目标机器安装zabbix ...