何為歸一化
在機器學習領域中,不同評價名額(即特征向量中的不同特征就是所述的不同評價名額)往往具有不同的量綱和量綱機關,這樣的情況會影響到資料分析的結果,為了消除名額之間的量綱影響,需要進行資料标準化處理,以解決資料名額之間的可比性。原始資料經過資料标準化處理後,各名額處于同一數量級,适合進行綜合對比評價。其中,最典型的就是資料的歸一化處理。
在深度學習中,對資料進行歸一化是為了将特征值尺度調整到相近的範圍。
簡而言之,歸一化的目的就是使得預處理的資料被限定在一定的範圍内(比如[0,1]或者[-1,1]),進而消除奇異樣本資料導緻的不良影響。
圖像歸一化
種類繁多,一般有L1、L2、INF、max-min。通過各個方法使得資料在0到1之間
圖像歸一化最常見的就是最大最小值歸一化方法,公式如下:
![](https://img.laitimes.com/img/9ZDMuAjOiMmIsIjOiQnIsIyZuBnL4EDN0MzN0ADM0ADOwEjMwIzLc52YucWbp5GZzNmLn9Gbi1yZtl2Lc9CX6MHc0RHaiojIsJye.png)
normalize
Mat dst;
Mat dstp;
imshow("原圖", image);
std::cout << image.type() << std::endl; //16:CV_8UC3 8位位元組類型帶a的3色通道圖像
image.convertTo(image, CV_32F); //改變資料類型 CV_32FC3 32位浮點帶a的3通道圖像
std::cout << image.type() << std::endl;
imshow("未歸一化", image);
normalize(image, dst, 1.0, 0, NORM_MINMAX); //minmax歸一化操作
std::cout << dst.type() << std::endl;
imshow("圖像資料歸一化", dst);
multiply(dst, 255, dstp);
dstp.convertTo(dstp,CV_8UC3);
imshow("還原", dstp);