歸一化:就是將數據通過某種算法,限制需要的一定范圍內。
歸一化的目的:簡而言之,是使得沒有可比性的數據變得具有可比性,同時又保持相比較的兩個數據之間的相對關系,如大小關系;或是為了作圖,原來很難在一張圖上作出來,歸一化后就可以很方便的給出圖上的相對位置等。
矩陣歸一化:normalize 函數
void normalize(InputArry src,InputOutputArray dst,double alpha = 1,double beta = 0,int norm_type = NORM_L2,int dtype = -1,InputArray mark = noArry())
- src,輸入圖像,Mat 類對象即可。
- dst,函數調用后的結果存在這里,和原圖像具有一樣的尺寸和類型。
- alpha,①值歸一化,表示所乘系數;②范圍歸一化,表示范圍界限,一般當作下界。
- beta,僅范圍歸一化用到,表示范圍另一界限。
- norm_type,歸一化選擇的數學公式。
NORM_L1:(占比)

NORM_INF:

NORM_L2:

NORM_MINMAX: Ak 不屬於{ max(Ai) , min(Ai) },當 AK 等於 max(Ai) 時 p = 1,等於 min(Ai) 時 p = 0

- dtype,為負時,輸出圖像深度等於輸入圖像,否則深度為 dtype 類型。一般選擇默認值。
- mark,掩碼。若有感興趣區域,則只對該區域進行操作。
值歸一化:所有 NORM_XXX 公式均可使用
alpha != 0,beta = 0,根據數學公式計算出來的所有值均 * alpha。
示例:alpha = 45
范圍歸一化:必須且僅可以使用 NORM_MINMAX 公式
alpha !=0,beta != 0,假設 alpha < beta,即歸一化范圍 [alpha,beta],簡記為 [a,b]。
- 首先找到樣本數據的最小值 Min 及最大值 Max
- 計算系數為:k =(b - a) / (Max - Min)
- 得到歸一化到 [a,b] 區間的數據:
示例:alpha = 10,beta = 45
(呀呀,網上好多相關文章,但看完還是迷糊,現在終於明白了,(●'◡'●) 開心!)