一種基于主成分分析算法提高探頭測量精度的方法
【專利摘要】本發明提供一種基于主成分分析算法提高探頭測量精度的方法,包括:步驟S1.循環采集物理信號經過一探頭時的探頭感應信號,共采集I次,每次采集M點數據;步驟S2.將I次采集到的全部探頭感應信號組成一M×I階歷史數據矩陣X;步驟S3.對矩陣X進行主成分分析,以獲得由M個模式組成的M×M階矩陣U、由各信號的強度組成的M×I階對角線矩陣S、以及由探頭對各信號的感應強度系數組成的I×I階矩陣V;步驟S4.將對角線矩陣S中的除第一個和第二元素之外的其它元素全部置零,得到對角線矩陣S0;以及步驟S5,根據公式X0=U×S0×V’計算得到濾除噪聲后的信號矩陣X0。本發明通過主成分分析法對歷史數據進行處理,能夠有效消除隨機噪聲的影響,提高探頭測量精度。
【專利說明】一種基于主成分分析算法提高探頭測量精度的方法
【技術領域】
[0001]本發明涉及信號處理領域,尤其涉及一種基于主成分分析算法提高探頭測量精度的方法。
【背景技術】
[0002]對于具有一個固定信號特征,僅幅度存在變化的物理信號,探頭在第i次測量得到的輸出信號可以表不為:
[0003]x(i) = Ajf (t)+N
[0004]其中,f (t)是探頭探測到該物理信號的固定輸出表達式,Ai為第i次探測到的信號幅度,N為該探頭存在的隨機噪聲。噪聲的存在影響了探頭的測量精度,而且噪聲頻譜分布廣,無法通過濾波方法有效濾除。
【發明內容】
[0005]為了解決噪聲對探頭測量結果的影響,本發明旨在提供一種基于主成分分析算法對歷史采集數據進行處理,以分離出信號成分,消除隨機噪聲,提高探頭測量精度的方法。
[0006]為了實現上述目的,本發明采用如下技術方案:
[0007]—種基于主成分分析算法提高探頭測量精度的方法,包括以下步驟:
[0008]步驟SI,循環采集物理信號經過一探頭時的探頭感應信號,共采集I次,每次采集M個不同的探頭感應信號;
[0009]步驟S2,將I次采集到的全部所述探頭感應信號組成一 M*I階歷史數據矩陣X,其中,以每次采集的所述M個不同的探頭感應信號為列向量;
[0010]步驟S3,對所述歷史數據矩陣X進行主成分分析,以獲得由M個模式組成的M*M階矩陣U、由各個所述探頭感應信號的強度組成的M*I階對角線矩陣S、以及由所述探頭對各個所述探頭感應信號的感應強度系數組成的1*1階矩陣V ;
[0011]步驟S4,將所述對角線矩陣S中的除第一個和第二元素之外的其它元素全部置零,得到對角線矩陣Stl;以及
[0012]步驟S5,根據公式Xtl = υ*\*ν’計算得到濾除噪聲后的信號矩陣Xtl,其中,矩陣V’是所述矩陣V的轉置矩陣。
[0013]進一步地,所述步驟S3包括:對所述歷史數據矩陣X進行矩陣奇異值分解,以獲得所述Μ*Μ階矩陣U、Μ*Ι階對角線矩陣S、以及1*1階矩陣V。
[0014]由于采用了上述的技術解決方案,本發明充分利用多次測量的歷史數據進行類似機器學習的過程,通過主成分分析法對這些數據進行處理,能夠有效消除隨機噪聲的影響,提高探頭測量精度。計算使用的歷史數據越多,測量精度越高。
【具體實施方式】
[0015]下面給出本發明的較佳實施例,并予以詳細描述。
[0016]本發明,即一種提高探頭測量精度的方法,其包括以下步驟:
[0017]步驟SI,多次采集物理信號經過一探頭時的探頭感應信號X (i),每次采集M(在本實施例中M為1024)點,即M個不同的探頭感應信號,包括本次測量在內共采集I (在本實施例中I為8)次。
[0018]步驟S2,將8次采集的全部探頭感應信號X (i)組成1024*8階歷史數據矩陣X,其中,以每次采集的1024個不同的探頭感應信號為列向量。
[0019]步驟S3,對矩陣X進行主成分分析,即對矩陣X進行矩陣奇異值分解(即SVD分解),以將矩陣X分解為:
5
[0020]X = U**¥'(I)
_ \ —
[0021]式(I)中,矩陣U是1024*1024階矩陣,代表了 1024個模式,是時間向量;矩陣S是1024*8階對角線矩陣,代表各個探頭感應信號的強度;矩陣V’是矩陣V的轉置矩陣,矩陣V是8*8階矩陣,是空間向量,代表探頭對各探頭感應信號的感應強度系數。
[0022]步驟S4,將矩陣S對角線元素中除第一、二個之外的元素全部置零得到對角線矩陣Stl,這樣操作的原理在于:第一、二個模式是信號主模式,是探頭感應信號中相位相差90度的正余弦分量,其余的模式都是噪聲,因此將噪聲置零。
[0023]步驟S5,根據式⑵進行U*SQ*V’運算,SP:
S
[0024]X0 = U*—
0 (2)
[0025]可見,根據式(2)獲取的矩陣Xtl是占主要成分的真實信號,從而降低了噪聲對測量結果影響。
[0026]下面對本發明的原理進行詳細說明。
[0027]由于探頭探測的是固定物理信號,每次測量的信號僅幅度不同,因此探頭輸出信號可表示為固定信號乘以不同幅度,加上探頭本身的隨機噪聲。
[0028]多次測量的結果組成歷史數據矩陣X,通過對矩陣X進行主成分分析計算可有效提取出探頭感應信號和噪聲信號,具體來說,通過對矩陣X進行矩陣奇異值分解,得到的對角線矩陣S代表各個探頭感應信號的強度,其中第一、二個基模是探測信號的正余弦部分,是主要成分,其它都是噪聲。因此,通過將S中除第一、二個外的其余探頭感應信號強度置零后再反向進行υ*\*ν’運算,可有效消除噪聲影響,提高測量精度。由于本方法基于歷史測量數據進行處理,效果類似機器學習過程,累計歷史數據越多,測量精度越高。
[0029]應該理解,雖然主成分分析法是一種已有的分析方法,被廣泛應用在模式識別、數據挖掘等領域,主要用于提取信號中混合的多種模式。但利用該算法對歷史數據進行處理以提高探頭測量精度還屬于首次。
[0030]綜上所述,本發明通過對探頭多次測量的歷史數據進行主成分分析,剔除了探頭噪聲和測量誤差對測量結果的影響,有效提高了探頭的測量精度。
[0031]以上所述的,僅為本發明的較佳實施例,并非用以限定本發明的范圍,本發明的上述實施例還可以做出各種變化。即凡是依據本發明申請的權利要求書及說明書內容所作的簡單、等效變化與修飾,皆落入本發明專利的權利要求保護范圍。本發明未詳盡描述的均為常規技術內容。
【權利要求】
1.一種基于主成分分析算法提高探頭測量精度的方法,其特征在于,該方法包括以下步驟: 步驟SI,循環采集物理信號經過一探頭時的探頭感應信號,共采集I次,每次采集M個不同的探頭感應信號; 步驟S2,將I次采集到的全部所述探頭感應信號組成一 M*I階歷史數據矩陣X,其中,以每次采集的所述M個不同的探頭感應信號為列向量; 步驟S3,對所述歷史數據矩陣X進行主成分分析,以獲得由M個模式組成的M*M階矩陣U、由各個所述探頭感應信號的強度組成的M*I階對角線矩陣S、以及由所述探頭對各個所述探頭感應信號的感應強度系數組成的1*1階矩陣V ; 步驟S4,將所述對角線矩陣S中的除第一個和第二元素之外的其它元素全部置零,得到對角線矩陣Stl;以及 步驟S5,根據公式Xtl = υ*\*ν’計算得到濾除噪聲后的信號矩陣Xtl,其中,矩陣V’是所述矩陣V的轉置矩陣。
2.根據權利要求1所述的基于主成分分析算法提高探頭測量精度的方法,其特征在于,所述步驟S3包括:對所述歷史數據矩陣X進行矩陣奇異值分解,以獲得所述Μ*Μ階矩陣U、M*I階對角線矩陣S、以及1*1階矩陣V。
【文檔編號】G01D3/032GK104180824SQ201410406440
【公開日】2014年12月3日 申請日期:2014年8月18日 優先權日:2014年8月18日
【發明者】冷用斌, 賴龍偉, 閻映炳, 陳之初 申請人:中國科學院上海應用物理研究所