一、基本概念
1,什么是圖片?
答:圖像是結構化存儲的數據信息
2,圖像的屬性
答:1、通道數目,2、寬與高,3、像素數據,4、圖像類型
二、加載顯示圖像并保存
import cv2
import numpy as npdef get_image_info(image):print(type(image))# <class 'numpy.ndarray'>print(image.shape)# (150, 110, 3)print(image.size)# 49500 = 150*110*3print(image.dtype)# uint8print(np.array(image))'''[[[255 255 255][255 255 255][255 255 255]...[255 255 255][255 255 255][255 255 255]][[255 255 255][255 255 255][255 255 255]...[255 255 255][255 255 255][255 255 255]][[255 255 255][255 255 255][255 255 255]...[255 255 255][255 255 255][255 255 255]]...[[255 255 255][255 255 255][255 255 255]...[255 255 255][255 255 255][255 255 255]][[255 255 255][255 255 255][255 255 255]...[255 255 255][255 255 255][255 255 255]][[255 255 255][255 255 255][255 255 255]...[255 255 255][255 255 255][255 255 255]]]
'''src = cv2.imread("G:/Juptyer_workspace/study/img/water_0.jpg")#加載圖片
cv2.namedWindow("input image",cv2.WINDOW_AUTOSIZE)
cv2.imshow("input image",src)
get_image_info(src)
gray = cv2.cvtColor(src,cv2.COLOR_BGR2GRAY)#彩色圖片轉換為灰度圖
cv2.imwrite("G:/Juptyer_workspace/beyond.jpg",src)#保存該圖片
cv2.imwrite("G:/Juptyer_workspace/beyond_gray.jpg",gray)#保存該圖片的灰度圖
cv2.waitKey(0)
cv2.destroyAllWindows()
運行效果如下:
三、調用電腦攝像頭進行實時顯示
import cv2
import numpy as npdef video_demo():capture = cv2.VideoCapture(0)#0代表本地電腦自帶的攝像頭,這里的0也可以換成視頻的路徑while(True):ret,frame = capture.read()frame = cv2.flip(frame,1)cv2.imshow("video",frame)c = cv2.waitKey(50)if c == 27 :#捕獲回車鍵breaksrc = cv2.imread(("G:\Juptyer_workspace\study\img\water_0.jpg"))
cv2.namedWindow("input image",cv2.WINDOW_AUTOSIZE)
cv2.imshow("input image",src)
video_demo(src)
cv2.waitKey(0)
cv2.destroyAllWindows()