如圖1所示雙脈衝中有高矮脈衝
在得到這個資料後如果想要分離高脈衝跟矮脈衝那麼我們可以通過以下這種方法解決。
第一步:根據資料的特點我們可以認為資料中與最大的資料的資料比值如果比例大於80%則可以認為是高脈衝,這個部分呢我們可以大概估算。通過這種方法我們可以得到高資料所在的位置,如果把高資料所在的位置的資料都置零那麼就可以得到下圖。
利用上述方法求出的資料在與原始資料進行差分計算就可以得到接下來的資料,
通過對圖2中的資料在進行第一步的操作並同樣將脈衝位置的資料置零則可以得到下列資料。
在重複一次第二步的操作將圖2中的資料與圖4中的資料做差分就可以得到圖5中的資料
以上就已經找到了高脈衝和低脈衝分別所在的位置,接下來需要做的是提取原訊號中的雜訊項,提取方法可以通過將圖4向左有一定量的位移然後將資料為零的位置替換即可得到雜訊資料,圖6
得到雜訊項以及上述高低脈衝位置之後只需要進行原始脈衝高低脈衝位置訊號的提取就可以得到分離後的資料了。
分離後的高脈衝
分離後的低脈衝
clear all
clc
figure
plot(aa(:,1),aa(:,2));axis([-inf inf 0 4])
a_y=aa(:,2); %提取資料
a_y1=a_y;
a_y1=temp11(a_y1);
figure; plot(a_y1);axis([-inf inf 0 4])
figure;plot(a_y-a_y1);axis([-inf inf 0 4])
a_y2=a_y1;
[a_y2,width]=temp11(a_y2);%width 為脈衝寬度 在下面提取雜訊時有用到
figure; plot(a_y2);axis([-inf inf 0 4])
figure;plot(a_y1-a_y2);axis([-inf inf 0 4])
[r,c]=size(a_y1-a_y2);
noise=a_y2;%提取雜訊量 通過將訊號錯開一定相位後進行提取雜訊
for x=1:r
if noise(x)==0
noise(x)=noise(x+width*10);
endendfigure; plot(noise);axis([-inf inf 0 4])
%--雜訊跟訊號合成
%---提取第乙個訊號
[r,c]=size(a_y1);
signal_1=noise;%提取第乙個脈衝訊號
cha1=a_y-a_y1;
for x=1:r
if cha1(x)>0
signal_1(x)=a_y(x);
endendfigure; plot(signal_1);axis([-inf inf 0 4])
%---提取第二個訊號
signal_2=noise;%提取第乙個脈衝訊號
for x=1:r
if a_y1(x)-a_y2(x)>0
signal_2(x)=a_y(x);
endendfigure; plot(signal_2);axis([-inf inf 0 4])
接下來是乙個小筆記:
影象中提取特定灰度連續計數的程式設計結構如下:
for x=1:r %行搜尋
for y=mid_c:end_c%列搜尋
if img(x,y)==0&&flag==1%當發現是黑色的時候進入計數 通過設定flag可以算出最大連續黑色個數
for yy=y:end_c
count_pix=count_pix+1;%計數
endflag=0;
endend
flag=1;%重新整理標誌位
end
PWM脈衝數控制步進電機
最近在學步進電機,為了準備2017的暑假電賽,萬一不小心用到尼。說起步進電機,我們就聊一聊步進電機的那些事,我想起在這之前 還用了l298n來驅動電機,那真是乙個悲慘的故事,過程就不說出了讓大家開心開心了。故事結果就是步進電機理都不理我,就是不轉。可見驅動的適合很重要,就像你要找女朋友是一樣的,適合...
MySQL資料庫提權小結
這裡的前提是獲取了webshell是最為方便的,直接檢視資料庫的配置檔案即可,如 conn config data sql common inc等。上面的方法有個缺點,就是給當前 的資料庫使用者的許可權比較低 不是root許可權,不方便後面的一些操作,那麼就需要這第二種方法。安裝目錄為 data m...
滲透之 資料庫提權
啟用xp cmdshell use master exec sp configure show advanced options 1 reconfigure with override exec sp configure xp cmdshell 1 reconfigure with override...