matlab定位演算法
1. 我用面陣CCD拍了十字刻線圖,想用matlab提取刻線及演算法,求十字刻線提取方法程序及中心定位演算法程序。
%直接讀取該行數據就是了
I=imread('xxx.bmp');
[m,n,p]=size(I);
II=gray...(I);%這個函數我搞忘了,你查一下help,就是轉灰度的
%或者已經有了灰度數據II,就不用前面的了
[a,b]=size(II);
x=1:b;
y=zeros(1,b);
for i=1:b
y(i)=II(10,i);%讀取第10行的數據
end
plot(x,y)
2. matlab中行人圖像的定位演算法有哪些
點短暫的困難,就想辭職不幹了,但公司馬上就會
3. 利用matlab分別對三邊測量定位演算法和改進演算法進行模擬和驗證 急求源程序
%%清空環境變數
clc
clear
loaddata
%%數據累加作為網路輸入
[n,m]=size(X);
fori=1:n
y(i,1)=sum(X(1:i,1));
y(i,2)=sum(X(1:i,2));
y(i,3)=sum(X(1:i,3));
y(i,4)=sum(X(1:i,4));
y(i,5)=sum(X(1:i,5));
y(i,6)=sum(X(1:i,6));
end
%%網路參數初始化
a=0.3+rand(1)/4;
b1=0.3+rand(1)/4;
b2=0.3+rand(1)/4;
b3=0.3+rand(1)/4;
b4=0.3+rand(1)/4;
b5=0.3+rand(1)/4;
%%學習速率初始化
u1=0.0015;
u2=0.0015;
u3=0.0015;
u4=0.0015;
u5=0.0015;
%%權值閥值初始化
t=1;
w11=a;
w21=-y(1,1);
w22=2*b1/a;
w23=2*b2/a;
w24=2*b3/a;
w25=2*b4/a;
w26=2*b5/a;
w31=1+exp(-a*t);
w32=1+exp(-a*t);
w33=1+exp(-a*t);
w34=1+exp(-a*t);
w35=1+exp(-a*t);
w36=1+exp(-a*t);
theta=(1+exp(-a*t))*(b1*y(1,2)/a+b2*y(1,3)/a+b3*y(1,4)/a+b4*y(1,5)/a+b5*y(1,6)/a-y(1,1));
kk=1;
%%循環迭代
forj=1:10
%循環迭代
E(j)=0;
fori=1:30
%%網路輸出計算
t=i;
LB_b=1/(1+exp(-w11*t));%LB層輸出
LC_c1=LB_b*w21;%LC層輸出
LC_c2=y(i,2)*LB_b*w22;%LC層輸出
LC_c3=y(i,3)*LB_b*w23;%LC層輸出
LC_c4=y(i,4)*LB_b*w24;%LC層輸出
LC_c5=y(i,5)*LB_b*w25;%LC層輸出
LC_c6=y(i,6)*LB_b*w26;%LC層輸出
LD_d=w31*LC_c1+w32*LC_c2+w33*LC_c3+w34*LC_c4+w35*LC_c5+w36*LC_c6;%LD層輸出
theta=(1+exp(-w11*t))*(w22*y(i,2)/2+w23*y(i,3)/2+w24*y(i,4)/2+w25*y(i,5)/2+w26*y(i,6)/2-y(1,1));%閥值
ym=LD_d-theta;%網路輸出值
yc(i)=ym;
%%權值修正
error=ym-y(i,1);%計算誤差
E(j)=E(j)+abs(error);%誤差求和
error1=error*(1+exp(-w11*t));%計算誤差
error2=error*(1+exp(-w11*t));%計算誤差
error3=error*(1+exp(-w11*t));
error4=error*(1+exp(-w11*t));
error5=error*(1+exp(-w11*t));
error6=error*(1+exp(-w11*t));
error7=(1/(1+exp(-w11*t)))*(1-1/(1+exp(-w11*t)))*(w21*error1+w22*error2+w23*error3+w24*error4+w25*error5+w26*error6);
%修改權值
w22=w22-u1*error2*LB_b;
w23=w23-u2*error3*LB_b;
w24=w24-u3*error4*LB_b;
w25=w25-u4*error5*LB_b;
w26=w26-u5*error6*LB_b;
w11=w11+a*t*error7;
end
end
%畫誤差隨進化次數變化趨勢
figure(1)
plot(E)
title('訓練誤差','fontsize',12);
xlabel('進化次數','fontsize',12);
ylabel('誤差','fontsize',12);
%print-dtiff-r60028-3
%根據訓出的灰色神經網路進行預測
fori=31:36
t=i;
LB_b=1/(1+exp(-w11*t));%LB層輸出
LC_c1=LB_b*w21;%LC層輸出
LC_c2=y(i,2)*LB_b*w22;%LC層輸出
LC_c3=y(i,3)*LB_b*w23;%LC層輸出
LC_c4=y(i,4)*LB_b*w24;%LC層輸出
LC_c5=y(i,5)*LB_b*w25;
LC_c6=y(i,6)*LB_b*w26;
LD_d=w31*LC_c1+w32*LC_c2+w33*LC_c3+w34*LC_c4+w35*LC_c5+w36*LC_c6;%LD層輸出
theta=(1+exp(-w11*t))*(w22*y(i,2)/2+w23*y(i,3)/2+w24*y(i,4)/2+w25*y(i,5)/2+w26*y(i,6)/2-y(1,1));%閥值
ym=LD_d-theta;%網路輸出值
yc(i)=ym;
end
yc=yc*100000;
y(:,1)=y(:,1)*10000;
%計算預測的每月需求量
forj=36:-1:2
ys(j)=(yc(j)-yc(j-1))/10;
end
figure(2)
plot(ys(31:36),'-*');
holdon
plot(X(31:36,1)*10000,'r:o');
4. 如何運行matlab程序
一、數學模型
先問三個主要問題(聯系實際問題,也就是實際問題轉化為數學模型的過程):
(1)這是什麼類型的數學模型(優化模型)
(2)該數學模型解決啥問題(求最優值)
(3)數學模型是怎樣解決問題的(梯度下降)
後三個問題:
(1)數學模型的數學表達式
(2)求解的方法
(3)求解方法的步驟
二、matlab
閱讀程序的步驟:
基本思路是結合演算法的基本原理,求解方法、求解步驟,閱讀程序。看程序中的那塊對應演算法中的那一步。
技巧是:
(1)這步我稱為『重點定位』,定位演算法輸出量在程序的位置,這往往是最終的數學表達式。也就是說,好多變數已經解好了。我們可以藉此反追蹤量的求解過程。這是所謂的過程--->結果--->過程
(2)了解程序的輸入量、輸出量所代表的含義
(3)確定輸入量、輸出量、程序中變數、常量跟數學模型量的對應關系
(4)追蹤輸入量、輸出量和程序中量的變化,藉此來理解數學模型的求解過程;反之,借求解數學模型的過程來理解程序中量的含義(有時,量的含義沒有注釋或者注釋看不懂)
三、程序設計
5. matlab相關問題
% 假設AM MC AC等都是已知的
AMC = acos((AM^2 + MC^2 - AC^2)/(2*AM*MC))
% 算出來的是弧度, 如果你想轉化為度數的話,執行下面一句
AMC = AMC * 180/pi;
6. 無線感測器網路加權質心定位演算法Matlab模擬的一些疑問。
你沒有定義信標節點(BeaconAmount)的個數。不定義肯定報錯啊。一下是我最近隨便編的一段類似於質心演算法的東西的核心部分,你的同學應該能看懂,有點幫助。
if num_of_neb_anchor(i)>1&&num_of_neb_anchor(i)<6
%如果未知節點i的鄰居錨節點個數在2和5之間
fenmu(i)=0;
fenzi_x(i)=0;
fenzi_y(i)=0;
fenzi_z(i)=0;
for k=1:num_of_neb_anchor(i)
distant_rssi(i,k)=sqrt((node_x(i)-neighbor_anchor_x(i,k))^2+(node_y(i)-neighbor_anchor_y(i,k))^2+(node_z(i)-neighbor_anchor_z(i,k))^2);
fenmu(i)=fenmu(i)+1/distant_rssi(i,k);
fenzi_x(i)=fenzi_x(i)+neighbor_anchor_x(i,k)/distant_rssi(i,k);
fenzi_y(i)=fenzi_y(i)+neighbor_anchor_y(i,k)/distant_rssi(i,k);
fenzi_z(i)=fenzi_z(i)+neighbor_anchor_z(i,k)/distant_rssi(i,k);
end
esti_node_x(i)=fenzi_x(i)/fenmu(i);
esti_node_y(i)=fenzi_y(i)/fenmu(i);
esti_node_z(i)=fenzi_z(i)/fenmu(i);%未知節點的估計坐標
end
7. 室內定位在matlab的什麼庫里進行模擬
基於歷史資料庫的室內定位演算法,通過matlab對nnss演算法進行模擬
雲盤鏈接已私信發送給你了,你看一下是不是你需要的
如果還有哪位朋友想要,請點「贊」此條回答以後,在下面的評論里留下您的聯系方式
學無止境,希望回答能給你帶來幫助,如果滿意請採納,不滿意的話請繼續追問。
8. zigbee定位用什麼演算法用什麼軟體可以模擬
定位演算法有很多種,看你怎麼處理定位,定位精度要求等級,比較常見的有「質心定位演算法」,「三邊定位演算法」等,如果只做模擬的話,可以用matlab進行模擬
9. 求基於rssi的無線感測器網路的質心加權和最大似然定位演算法的matlab模擬程序。
基於rssi的無線感測器網路的質心加權和最大似然定位演算法來吧我來原創給你,
10. 求助:實現論文《基於RS碼的二值圖像認證及篡改定位演算法》中演算法的matlab程序(即嵌入和提取演算法)
請到圖書館找一下相關的文獻啊!