openCV的imread()函數


1 path = 'E:\\pythoncodes\\learningopenCV\\read_image.jpg'
2 img = cv2.imread(path,cv2.IMREAD_COLOR)
3 print(img.shape)

cv2.imread(path,讀取方式)

1.讀取方式分為:cv2.IMREAD_COLOR:讀入一副彩色圖片;cv2.IMREAD_GRAYSCALE:以灰度模式讀入圖片;cv2.IMREAD_UNCHANGED:讀入一幅圖片,並包括其alpha通道。

2.該函數的返回值是一個三維ndarray數組,上面的程序運行結果如下圖:

然后再來看一下圖片read_image.jpg的屬性信息,如下圖:

仔細觀察不難看出,程序返回的元組的前兩個值220,280分別為圖片的“高度”和“寬度”。剩下的那個數3,應該是代表每個像素點是由BGR三個元素組成的。

 

import cv2
import numpy as np


arr = np.arange(15)
print(len(arr))
arr1 = arr.reshape(5,3)
print(arr1)
print(len(arr1))
arr2 = np.array([1,2])
print(arr2)
print(arr2.size)

img = cv2.imread('C:\\Users\\96294\\Pictures\\Saved Pictures\\1.jpg', cv2.IMREAD_COLOR)

print(isinstance(img, np.ndarray))
if isinstance(img, np.ndarray):  #判斷圖片是否讀取成功
    print(len(img))
    cv2.imshow('pic',img)
    cv2.waitKey(0)

 img是<class 'numpy.ndarray'>類型的,img.shape是一個包含三個元素的元祖,img.data是<class 'memoryview'>類型的。

numpy中是這樣解釋ndarray.data的:

data

Python buffer object pointing to the start of the array's data.

所以我們可以將ndarray.data理解為一個指向存儲array數組數據的內存的一個指針。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM