1.程序源码:
import cv2
import numpy as np
doge = cv2.imread('C:\\Users\\Lin Xi\\Desktop\\OpenCV\\doge.jpg',cv2.IMREAD_COLOR)
cv2.imshow('DOGE!,press "q" to exit!',doge)
if cv2.waitKey(0) == ord('q'):
cv2.destroyAllWindows()
2.程序目的:
从指定路径读入一张图片并打印在窗口内
3.程序解析:
首先引入cv2和numpy库,可以直接pip或者去官网下载,日后有空可以详解环境搭建问题。
第一个函数:
cv2.imread(filename,flags)
filename:文件的绝对路径,可以右击文件属性查看,注意更改路径分隔符为两个反斜杠\\
flags:可选参数,默认cv2.IMREAD_COLOR
,参数列表为:
cv2.IMREAD_COLOR():读入彩色图像,对应数字1
cv2.IMREAD_GRAYSCALE():以灰度模式读入图像,对应数字0
cv2.IMREAD_UNCHANGED : 加载图像,包括它的Alpha通道,对应数字-1
如果嫌字多,可以用数字代替,如以灰度模式读入图像可表示为:
cv2.imread(filename,0)
函数返回该图像
第二个函数:
cv2.imshow(Windowname,img)
创建窗口可以用一系列Window函数进行更加精细的操作,这里cv2.imshow
会默认为我们创建一个新窗口
Windowname:窗口名称,输入中文可能会乱码
img:要显示的图片
第三个函数:
cv2.waitKey(value)
看似多余,但只执行前四行后发现图片一闪而过,所以需要此函数达到停滞延时的效果(本质是不断刷新图像)
value:1.大于零的整形,表示刷新的频率时间,单位ms
,超过指定时间返回-1
,有按键按下则返回按键的ASCII码值。2.小于等于零无限等待,返回-1
,直到有键盘按下返回按键的ASCII码值。
通常用此函数作定时功能,还可以附加判断,达到指定按键退出的效果,如下实现按q键退出:
if cv2.waitKey(0) == ord('q'):
64位系统为了防止BUG,最好改为
if cv2.waitKey(0) & 0xFF == ord('q'):
第四个函数:
cv2.destroyAllWindows()
As the name suggests,删除所有建立的窗口
4.执行效果 程序效果图.PNG
正如计算机编程中的Hello world!
一般,万里长征的第一步已然迈出,未来还会遥远吗?
网友评论