刚刚开始学习opencv,来记录一下自己的学习笔记,也向各位大牛虚心求教

一、图片的基本知识

只要是彩色的图片都有三个颜色通道,即RGB,用三个矩阵来表示。

三个矩阵的同一个坐标位置上的数值描述的是一个方格,数值描述的是在当前通道中的亮度。例如矩阵中81指的是左上角格子红色通道中的亮度,12指的是左上角格子绿色通道中的亮度,75指的是左上角格子蓝色通道中的亮度。

如果是灰度图(黑白图),则只有一个颜色通道,也就是只有一个矩阵,仅仅用来表示亮度。

如果是一个h=500,w=500的彩色图,就对应一个[500,500,3]的矩阵。

二、导入几个常用的包

 import cv2
import matplotlib.pyplot as plt
import numpy as np
%matplotlib inline

注释:

1、cv2是opencv的缩写

2、matplotlib.pyplot是绘制各类可视化图形的命令子库

3、numpy是基本数值计算的工具包

4、%matplotlib inline 可以让在notebook中图片生成好就展示出来,不需要再调用plt.show()了,更方便显示结果,但是在pycharm中就不能使用

三、读入图片

imread()函数读入,读入的格式是BGR,而不是常用的RGB!!!

 img=cv2.imread('cat.jpg')

img存储的结果是三维数组,[w,h,3]

注:如果以灰度图读入,则

 img=cv2.imread('cat.jpg',cv2.IMREAD_GRAYSCALE)

四、显示图片

imshow()函数显示,‘image’表示显示在窗口上方的图片名字,img是图片的变量名

waitKey()函数定义等待时间,如果参数是0,则表示按任意键就退出;如果参数为n(n!=0),则表示n秒后,图片自动消失

 cv2.imshow('image',img)
cv2.waitKey(0)
cv2.destroyAllWindows()

五、图片保存

imwrite('给保存后照片取的名字',要保存的图片变量)

 cv2.imwrite('cat.png',img)

最新文章

  1. 冒泡排序 & 选择排序 & 插入排序 & 希尔排序 JavaScript 实现
  2. 18.虚拟机linux上网问题
  3. selenium 右键下载图片,结合sikuli
  4. zabbix3.0.4 部署之八 (zabbix3.0.4 微信报警)
  5. Hibernate-细细道来-01
  6. Android使用KSOAP2调用WebService及正确导入jar包的问题(转)
  7. 转:基于科大讯飞语音API语音识别开发详解
  8. poj 2411 Mondriaan's Dream_状态压缩dp
  9. Js验证 :只能输入数字和小数点 验证是否是数字 js取float型小数点后两位
  10. Android----------WindowManager
  11. npm 一条命令更换淘宝源
  12. 2.Lucene3.6.2包介绍,第一个Lucene案例介绍,查看索引信息的工具lukeall介绍,Luke查看的索引库内容,索引查找过程
  13. Windbg 内核态调试用户态程序然后下断点正确触发方法(亲自实现发现有效)
  14. 洛谷P2918 [USACO08NOV]买干草(一道完全背包模板题)
  15. [python]Generators
  16. 【spring boot】映射properties文件属性--到Java对象
  17. STS-新建spring mvc项目
  18. AddParent
  19. Lucene简介和创建索引初步
  20. MacaW Baby Learns Computer

热门文章

  1. java类加载和对象初始化
  2. CF843D Dynamic Shortest Path spfa+剪枝
  3. 2019 ICPC Asia Xuzhou Regional
  4. (RE) luogu P3690 【模板】Link Cut Tree
  5. 数据结构实验之图论九:最小生成树 (SDUT 2144)
  6. Ubuntu 14.04 改变文件或者文件夹的拥有者
  7. [RK3399] 修改移动网络默认为4G
  8. GitHub OAuth 第三方登录示例教程
  9. OpenTK学习笔记(2)-工作窗口的三种方法创建方法(控制台)
  10. Ionic 的安装运行