一、以灰度图的形式加载彩色图像。

https://docs.opencv.org/3.0-beta/doc/py_tutorials/py_gui/py_image_display/py_image_display.html

import numpy as np
import cv2 # Load an color image in grayscale
img = cv2.imread('lane_line.jpg',0)
cv2.imshow("image", img)
cv2.waitKey(0)

警告:即便路径错误,也不会抛出错误,只会返回None。

二、显示一个图像。

'''
图像显示函数:cv2.imshow('image',img)
第一个参数是一个窗口名,它是一个字符串。第二个参数是我们的图像。您可以创建任意数量的窗口,但是使用不同的窗口名称。
'''
import numpy as np
import cv2 # Load an color image in grayscale
img = cv2.imread('lane_line.jpg',0)
cv2.imshow('image',img)
cv2.waitKey(0)
cv2.destroyAllWindows()

三、waitKey()函数:

waitkey()是一个键盘绑定函数。它的参数是以毫秒为单位的时间。该函数等待任何键盘事件的指定毫秒。如果在这段时间内按任意键,程序将继续。如果传递0,它将无限期地等待击键。它还可以设置检测特定的击键,如,如果按下键a等。

四、destroy allwindows()函数:

destroy allwindows()只会销毁我们创建的所有窗口。如果您希望销毁任何特定的窗口,请使用函数cv2.destroyWindow(),在该函数中,您将传递确切的窗口名作为参数

五、图像窗口可调:

'''
注意,有一种特殊的情况,您可以在稍后创建窗口并将图像加载到其中。在这种情况下,您可以指定窗口是否可调整大小。
这是通过函数cv2.namedWindow()完成的。默认情况下,标志是cv2.WINDOW_AUTOSIZE。但是如果你指定flag为cv2。WINDOW_NORMAL,
可以调整窗口大小。当图像尺寸过大时,在窗口中添加跟踪条是很有帮助的
'''
import numpy as np
import cv2 # Load an color image in grayscale
img = cv2.imread('lane_line.jpg',0)
# cv2.imshow('image',img)
# cv2.waitKey(0)
# cv2.destroyAllWindows() cv2.namedWindow('image', cv2.WINDOW_NORMAL)
cv2.imshow('image',img)
cv2.waitKey(0)
cv2.destroyAllWindows()

六。用opencv保存一个图像:

使用函数cv2.imwrite()保存图像,First argument is the file name, second argument is the image you want to save.

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

This will save the image in PNG format in the working directory.

七、一个综合一点的例子:

'''
下面的程序加载一个灰度图像,显示它,保存图像,如果你按' s '就保存并退出,或干脆退出不保存如果你按ESC键
警告:如果您使用的是64位机器,则必须修改k = cv2.waitKey(0)为:k = cv2.waitKey(0) & 0xFF
'''
import numpy as np
import cv2 img = cv2.imread('lane_line.jpg',0)
cv2.imshow('image',img)
k = cv2.waitKey(0) & 0xFF
if k == 27: # wait for ESC key to exit
cv2.destroyAllWindows()
elif k == ord('s'): # wait for 's' key to save and exit
cv2.imwrite('messigray.png',img)
cv2.destroyAllWindows()

八、用opencv读取图像,用Matplotlib 显示图像:

'''
Matplotlib是一个Python绘图库,它提供了各种各样的绘图方法。
您将学习如何使用Matplotlib显示图像。你可以使用Matplotlib缩放图像,保存图像等等
OpenCV加载的彩色图像为BGR模式。但是Matplotlib以RGB模式显示。因此,如果使用OpenCV读取图像,
在Matplotlib中无法正确显示彩色图像。请参阅练习了解更多细节
'''
import numpy as np
import cv2
from matplotlib import pyplot as plt img = cv2.imread('lane_line.jpg',0)
plt.imshow(img, cmap = 'gray', interpolation = 'bicubic')
plt.xticks([]), plt.yticks([]) # to hide tick values on X and Y axis
plt.show()

最新文章

  1. 你需要知道的包管理器(Package Manager)
  2. [BI项目记]-配置Sharepoint2013支持文档版本管理笔记
  3. Hi, there!
  4. 我和Lua并非一见钟情,我们期待着日久生情(相遇篇)
  5. java使用JDBC连接数据库
  6. 尽可能使用 const
  7. python内置函数-compile()
  8. org.apache.jasper.JasperException: The absolute uri: http://java.sun.com/jsp/jstl/core cannot be res
  9. Oracle update 执行更新操作后的数据恢复
  10. python接口自动化-传 json 参数
  11. VS2010动态链接库的生成及调用(C++)
  12. 常用的redis服务命令。
  13. ACM-ICPC 2018 焦作赛区网络预赛 A Magic Mirror(签到)
  14. laravel控制器方法中,用函数作为变量进行传递时的处理方法
  15. spring boot 使用war包部署
  16. os模块。笔记
  17. Markdown 使用教程
  18. 利用solr实现商品的搜索功能
  19. STL学习笔记--关联式容器
  20. 零基础小白怎么用Python做表格?

热门文章

  1. mysql left join中on后加条件判断和where中加条件的区别
  2. STL之pair类型具体分析
  3. 学习已经被淘汰的flash
  4. Python例子二
  5. 【Python】程序在运行失败时,一声不吭继续运行pass
  6. 重读金典------高质量C编程指南(林锐)-------第三章 命名规则
  7. android IntentService生命周期问题
  8. [javase学习笔记]-8.2 成员变量与静态变量的差别
  9. 获取input光标的x和y轴
  10. linux 跟踪工具