使用函数 imread(filename[, flags])
从指定的文件加载一张图像:
import cv2
image = cv2.imread("D:/E/Pictures/Winter Soldier.png")
print(image)
运行上述程序后,控制台会输出图像的部分像素值:
[[[197 196 192]
[197 196 192]
[198 197 193]
...
[ 82 51 58]
[ 82 51 58]
[ 82 51 58]]
[[197 196 192]
[197 196 192]
[198 197 193]
...
[ 79 48 55]
[ 79 48 55]
[ 79 48 55]]
[[197 196 192]
[197 196 192]
[197 196 192]
...
[ 77 47 52]
[ 77 47 52]
[ 77 47 52]]
...
[[ 23 25 25]
[ 29 31 31]
[ 48 50 50]
...
[ 56 50 51]
[ 57 51 52]
[ 58 52 53]]
[[ 22 24 24]
[ 31 33 33]
[ 50 52 52]
...
[ 55 49 50]
[ 56 50 51]
[ 57 51 52]]
[[ 24 26 26]
[ 34 36 36]
[ 53 55 55]
...
[ 54 48 49]
[ 55 49 50]
[ 56 50 51]]]
函数 namedWindow(winname[, flags])
用于创建一个窗口。
函数 imshow(winname, mat)
用于在指定的窗口中显示一张图像。
函数 waitKey([delay])
用于等待按下按键,这个函数和显示图像无关,但是,如果不使用它,我们将看到窗口一闪而过。
import cv2
image = cv2.imread("D:/E/Pictures/lena.bmp")
cv2.namedWindow("Hello")
cv2.imshow("Hello", image)
cv2.waitKey() # 无限等待一个按键事件
运行上述程序后,出现如下窗口:
其实,可以直接使用函数 imshow(winname, mat)
创建窗口,并显示图像。
import cv2
image = cv2.imread("D:/E/Pictures/lena.bmp")
# cv2.namedWindow("Hello")
cv2.imshow("Hello1", image) # 创建第一个窗口,并显示图像
cv2.imshow("Hello2", image) # 创建第二个窗口,并显示图像
cv2.waitKey() # 无限等待一个按键事件
函数 destroyWindow(winname)
用于销毁指定名称的窗口。
函数 destroyAllWindows()
用于销毁所有窗口。
import cv2
image = cv2.imread("D:/E/Pictures/lena.bmp")
cv2.imshow("Hello1", image)
cv2.imshow("Hello2", image)
key = cv2.waitKey() # 无限等待一个按键事件
print(chr(key)) # chr(i): Return the string representing a character whose Unicode code point is the integer i.
if key == ord("1"): # ord(c): Given a string representing one Unicode character, return an integer representing the Unicode code point of that character.
cv2.destroyWindow("Hello1")
elif key == ord("2"):
cv2.destroyWindow("Hello2")
else:
cv2.destroyAllWindows()
cv2.waitKey(1000) # 等待一个按键事件,如果超过 1000 毫秒,则退出等待,继续往下执行
print("End")
函数 imwrite(filename, img[, params])
用于保存图像到指定的文件。
import cv2
image = cv2.imread("D:/E/Pictures/lena.bmp")
result = cv2.imwrite("D:/E/Pictures/lena2.bmp", image)
print(result)
Introduction to OpenCV-Python Tutorials
OpenCV - Image file reading and writing - imread()
OpenCV - High-level GUI - namedWindow()
OpenCV - High-level GUI - imshow()
OpenCV - High-level GUI - waitKey([, delay])
OpenCV - High-level GUI - destroyWindow()
OpenCV - High-level GUI - destroyAllWindows()
OpenCV - High-level GUI - imwrite()