為什麼使用numpy作影象處理的計算操作?
numpy是使用python進行科學計算的基礎包,相對於不使用numpy的迴圈遍歷畫素操作,numpy的運算效率和速度非常快,所以numpy的基本陣列操作需要會,之前學的不夠明白,最近看opencv看到後面覺得有必要重新看一下再做個總結。
shape操作
shape操作在對影象進行分割和縮小擴大有一定的用處,它可以讀取影象的行row、列column、通道數channel。
def img_pixel(image = img):
print(image.shape)
row = img.shape[0]
column = img.shape[1]
channel = img.shape[2]# 彩色影象一般都是3通道
建立畫布
def create_image():
canvas = np.ones([400, 400, 3], np.uint8)# 建立400*400的畫布
canvas[:, :, 1] = np.ones([400, 400]) * 255# 400*400的長和寬
cv2.imshow('canvas', canvas)
canvas列表第乙個元素是行,第二個是列,第三個為通道。這裡是rgb色彩空間,所以通道二為綠色。
矩陣變換
3*3矩陣變換為1維矩陣,類似於三通道轉為單通道。
def create_matrix():
matrix = np.ones([3, 3, 1], np.uint8)
matrix.fill(100)
print(matrix)# 3*3矩陣
matrix = matrix.reshape([1, 9])
print(matrix)# 1*9矩陣
OPENCV學習筆記二 numpy用法
numpy numerical python 是 python 語言的乙個擴充套件程式庫,支援大量的維度陣列與矩陣運算,此外也針對陣列運算提供大量的數學函式庫。而本質上是乙個個畫素點疊加,一整張就像乙個陣列一樣,所以numpy的使用對於opencv的學習來說必不可少 本文資料主要來自於菜鳥教程 這張...
Numpy學習筆記
測試檔案裡的資料排列型別最好是有規律的,不可以隨便,否則將發生一些錯誤 genfromtxt函式 genfromtxt函式建立陣列 資料 genfromtxt主要執行兩個迴圈運算。第乙個迴圈將檔案的每一行轉換成字串序列。第二個迴圈將每個字串序列轉換為相應的資料型別。genfromtxt能夠考慮缺失的...
numpy學習筆記
1 array.ndim 用來輸出陣列的維度 2 array.shape 用來輸出陣列的形狀 3 arry.size 用來輸出陣列的大小見jupyter notebook的numpy function list 生成函式基本運算 直接用陣列的相加減乘除。也就是相對應的元素間的作用。關係運算 陣列元素...