天天看點

【Opencv&Cpp】17 圖像資料歸一化何為歸一化圖像歸一化 normalize

何為歸一化

在機器學習領域中,不同評價名額(即特征向量中的不同特征就是所述的不同評價名額)往往具有不同的量綱和量綱機關,這樣的情況會影響到資料分析的結果,為了消除名額之間的量綱影響,需要進行資料标準化處理,以解決資料名額之間的可比性。原始資料經過資料标準化處理後,各名額處于同一數量級,适合進行綜合對比評價。其中,最典型的就是資料的歸一化處理。

在深度學習中,對資料進行歸一化是為了将特征值尺度調整到相近的範圍。

簡而言之,歸一化的目的就是使得預處理的資料被限定在一定的範圍内(比如[0,1]或者[-1,1]),進而消除奇異樣本資料導緻的不良影響。

圖像歸一化

種類繁多,一般有L1、L2、INF、max-min。通過各個方法使得資料在0到1之間

圖像歸一化最常見的就是最大最小值歸一化方法,公式如下:

【Opencv&Cpp】17 圖像資料歸一化何為歸一化圖像歸一化 normalize

 normalize

【Opencv&Cpp】17 圖像資料歸一化何為歸一化圖像歸一化 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);
           
【Opencv&amp;Cpp】17 圖像資料歸一化何為歸一化圖像歸一化 normalize
下一篇: Multiple of 2019

繼續閱讀