第一个Python-OpenCV程序

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!一般,万里长征的第一步已然迈出,未来还会遥远吗?

你可能感兴趣的:(第一个Python-OpenCV程序)