numpy(numerical python) 是 python 語言的乙個擴充套件程式庫,支援大量的維度陣列與矩陣運算,此外也針對陣列運算提供大量的數學函式庫。而本質上是乙個個畫素點疊加,一整張就像乙個陣列一樣,所以numpy的使用對於opencv的學習來說必不可少
本文資料主要來自於菜鳥教程
這張在我們人眼中是可愛的小狗狗,在計算機的眼中就是乙個個毫無感情的陣列構成,每個陣列包含了乙個畫素點的橫縱座標和通道數。
使用print函式將列印出來的就是組成的乙個個陣列。
numpy(以下簡稱np)建立陣列有以下幾種方法:
t1 = np.np.zeros([4
,4], dtype=np.uint8)
# 建立乙個4行4列的陣列,陣列元素以0填充
t2 = np.ones([4
,4], dtype=np.uint8)
# 建立乙個4行4列的陣列,陣列元素以1填充
print
(t1)
print
(t2)
結果如下圖:
#複製t1至t2
t4 = np.reshape(t3,
[200
,200])
#將t3修改為200*200的形狀(在不改變資料的情況下)
t6 = np.uint8(t5)
#將t5轉變成uint8型別
# random隨機生成數字
x1 = np.random.rand()*
600# 隨機生成(0,1)的數字
x2 = np.random.ranit(low,high)
# 隨機生成low-high之間的數字
x3 = np.random.random(
)# 隨機生成[0.0, 1.0]之間的隨機浮點數
本文作為自學路上的筆記使用,有錯誤還請各位大佬指正[抱拳]。
opencv學習筆記(二)
任何影象處理演算法,都是從操作每個畫素開始的。即使你不會使用opencv提供的各種影象處理函式,只要你了解影象處理演算法的基本原理,也可以寫出具有相同功能的程式。在opencv中,提供了種訪問每個畫素的方法 使用at方法 使用迭代器 使用指標。這三種方法在訪問速度上略有差異。debug模式下,這種差...
OpenCV學習筆記二
影象操作 獲取畫素值 單通道 gray src.at row,col 三通道 int height src.rows int width src.cols int channels src.channels for int row 0 row height row 作用同上,或操作 bitwise ...
opencv學習筆記(二)
1.畫素讀寫和修改操作 讀乙個gray畫素點的畫素值 cv 8uc1 scalar intensity img.at y,x 或者scalar intensity img.at point x,y 讀乙個多通道畫素點的畫素值 vec3f intensity img.at y,x float blue...