Построение классификатора морских подводных целей

  • Вид работы:
    Реферат
  • Предмет:
    Информационное обеспечение, программирование
  • Язык:
    Русский
    ,
    Формат файла:
    MS Word
    158,51 Кб
  • Опубликовано:
    2012-05-03
Вы можете узнать стоимость помощи в написании студенческой работы.
Помощь в написании работы, которую точно примут!

Построение классификатора морских подводных целей












Курсовая работа

по дисциплине: Методы и средства обработки гидрофизической информации

на тему: Построение классификатора морских подводных целей.

Содержание

 

Введение

gen_echo. m - Генерация эхосигнала

work1_gen_one. echo. m - Генерация эхосигнала от точечного источника длительностью t

work1_gen_1echo. m - Генерация эхосигнала для правого и левого канала антенны от точечного источника

work1_gen_echo2. m - Генерация эхосигнала для правого и левого канала антенны от протяженного источника

work1_gen_noise. m - Генерация шумового сигнала в каналах антенны

work1_gen_randn. m - Генерация произвольно расположенных точечных источников

work1_r. m - Обнаружение принятого сигнала и его последующая обработка для произвольных отражающих точек

work1. m - Обнаружение принятого сигнала и его последующая обработка для линейных отражающих точек

work1_sigma. m - Нахождение дисперсии сигнала с шумом

work1_matr. m - Нахождение аппроксимации положения выявленного протяженного объекта

work1_main. m - Создание массива для классификатора, состоящего из случайно расположенных произвольных протяженных объектов, точечных источников групповых и одиночных

Klas. m - Создание нейросети для классификатора

Proverka_Klass. m - Проверка работы нейросети классификатора

Введение

Проблема гидроакустической классификации целей относится к разряду наиболее сложных и актуальных проблем современной гидроакустики. Классификационная задача входит в качестве обязательной компоненты в классическую триаду задач (обнаружение - классификация целей - определение координат и параметров движения целей), которые должен решать ГАК. Образ, класс - классификационная группировка в системе классификации, объединяющая (выделяющая) определенную группу объектов по некоторому признаку.

В целом проблема распознавания образов состоит из двух частей: обучения и распознавания. Обучение осуществляется путем показа отдельных объектов с указанием их принадлежности тому или другому образу. В результате обучения распознающая система должна приобрести способность реагировать одинаковыми реакциями на все объекты одного образа и различными - на все объекты различных образов. Очень важно, что процесс обучения должен завершиться только путем показов конечного числа объектов без каких-либо других подсказок.

Нейронные сети - это небольшие модели, созданные по подобию биологических нейронных сетей. Ученые создают такие модели для получения интеллектуальных свойств в различных системах. Нейронные сети могут быть использованы в областях, где традиционные методы вычислений затруднены и малоэффективны, например, в распознавании лиц, символов. Главное свойство сетей - способность к обучению. Нейронные сети могут использоваться для хранения комплексных данных. При предъявлении части комплексных данных или зашумленных (испорченных) данных они могут восстановить исходный набор.

Применение нейросетевых алгоритмов и отдельных парадигм для решения различных научно-технических задач все больше занимает умы ученых и инженеров. Любая нейросетевая парадигма остается красивой математической абстракцией до тех пор, пока она не будет программно или аппаратно реализована.

Для решения задач активно используются нейросетевые алгоритмы. При выборе структуры нейронной сети (НС) для решения задачи распознавания изображений необходимо учитывать следующие аспекты:

) способность сети к обучению, то есть возможность научить систему распознавать требуемое количество объектов. Чем больше в сети слоёв и нейронов, тем выше способности и потребности в аппаратных ресурсах;

) быстродействие, которое достигается уменьшением сложности сети - чем меньше нужно аппаратных ресурсов, тем быстрее осуществляется работа НС.

Полезный эхо-сигнал в активном режиме представляет один импульс или группу импульсов. Свойства эхо-сигнала определяются видом зондирующего сигнала (посылки) и его параметрами.

Зондирующий сигнал может представлять собой одиночный импульс с заданным законом модуляции или пачку импульсов, также имеющих модуляцию каждого импульса. Простейшая теоретическая модель эхо-сигнала предусматривает точное сопоставление эхо-сигнала зондирующему с поправкой на эффект Доплера.

Реальный эхо-сигнал представляет собой набор эхо, принимаемых по разным трассам от протяженного объекта локацию. Отличие модели такого сигнала от простейшей модели сигнала точечного объекта состоит в случайных флюктуациях сигнала, возникающих в результате сложения элементарных эхо со случайными начальными фазами.

Простейший обнаружитель в активном режиме - это типовой тракт с пороговым устройством. Отличие состоит в нестационарности помех и большом динамическом диапазоне полезного сигнала и помехи, связанном с переменным расстоянием от локатора до объекта

В соответствии с типом применяемого зондирующего сигнала можно рассматривать узкополосные эхо-сигналы и широкополосные. Типичный узкополосный сигнал - это участок гармонического колебания с прямоугольной или трапецеидальной огибающей, при прямоугольной огибающей передний и задний фронты короткие.

Другой разновидностью сигналов являются широкополосные (сложные) сигналы, которые представляют собой импульсы обычно с прямоугольной огибающей и внутриимпульсной частотной или фазовой модуляцией, обеспечивающей значительную ширину спектра сигнала. Последовательность импульсов является сложным сигналом. Последовательность сигналов может состоять как из простых, так и из сложных сигналов.

нейронная сеть подводная цель

gen_echo. m - Генерация эхосигнала


Генератор вырабатывает импульсы, которые проходят определенное расстояние. Сигналы, отраженные от препятствий, встретившихся на пути луча, генерируются в сведения о подводных объектах. Генерация эхосигнала от точечного источника. Чем сильнее эхосигнал, тем больше амплитуда и, соответственно, точнее определение цели на глубине.

function echo = gen_echo (r,phi); %Генерация сигнала на каналах антенны в зависимости от дистанции и пеленга цели

f=20000; %Частота принимаемого сигнала

base=0.032; %Ширина базы антенны

t=0: 1/ (4*f): 2*r/1500; %Длительность генерации сигнала

delay=base/1500*sin (phi/180*pi); %Задержка между каналами, в зависимости от направления на цель

len=length (t);=zeros (10,len); i=1: 10

echo (i,:) =sin (2*pi* (t+ (i-1) *delay) *f); %Генерация сигнала на всех 10 каналах антенны

end;

_gen_one. echo. m - Генерация эхосигнала от точечного источника длительностью t


function result = work1_gen_one_echo (t);=zeros (size (t));

tay=0.001; %Длительность генерации сигнала

for i=1: length (t)(t (i) >0) && (t (i) <tay)(i) =sin (2*pi*20000*t (i));;;

work1_gen_1echo. m - Генерация эхосигнала для правого и левого канала антенны от точечного источника


function [echol, echor] = work1_gen_1echo (r,phi);

f=20000;=0.032;=0.001;=4;=1;=1500;=T*4*f;

sl=zeros (1,N);=zeros (1,N);

x=r*sin (phi/180*pi);=r*cos (phi/180*pi);=sqrt (x^2+y^2);=atan (x/y);

t1= (0: 1/ (4*f):

) - z/c;=work1_gen_one_echo (t1);=base*sin (psi) /c;= (0: 1/ (4*f):

) - z/c-delay;=work1_gen_one_echo (t2);j=1: N(j) =sl (j) +sig1 (j);(j) =sr (j) +sig2 (j);;

%figure (6);

%hold off;

%plot (x,y,'*');

%hold on;

%plot (0,0,'*');= sl;=sr;

work1_gen_echo2. m - Генерация эхосигнала для правого и левого канала антенны от протяженного источника


function [echol, echor] = work1_gen_echo (r,phi,L,alpha);

f=20000;=0.032;=0.001;=4;=1;=1500;=T*4*f;

sl=zeros (1,N);=zeros (1,N);i=1: 5=floor (L* (i-1) /4);

x (i) =r*sin (phi/180*pi) +Li*sin (pi/180* (phi+alpha));(i) =r*cos (phi/180*pi) +Li*cos (pi/180* (phi+alpha));

z=sqrt (x (i) ^2+y (i) ^2);=atan (x (i) /y (i));= (0: 1/ (4*f):

) - z/c;=work1_gen_one_echo (t1);=base*sin (psi) /c;= (0: 1/ (4*f):

) - z/c-delay;=work1_gen_one_echo (t2);j=1: N(j) =sl (j) +sig1 (j);(j) =sr (j) +sig2 (j);;;

%figure (5);

%hold off;

%plot (x,y,'*');

%hold on;

%plot (0,0,'*');= sl;= sr;

 


work1_gen_randn. m - Генерация произвольно расположенных точечных источников


function [echol, echor] = work1_gen_randn (N1);

f=20000;=0.032;=0.001;=4;=1;=1500;=T*4*f;

hl=zeros (1,N);=zeros (1,N);j=1: N1=zeros (1,N);

sr=zeros (1,N);=-100;=-100;

while ( (x<=0) && (y<=0))=randn*400+400;

y=randn*400+400;;=atan (x/y) *180/pi;

r=sqrt (x^2+y^2);

[sl, sr] = work1_gen_1echo (r,phi);i=1: N(i) =hl (i) +sl (i);(i) =hr (i) +sr (i);;;=hl;=hr;

work1_r. m - Обнаружение принятого сигнала и его последующая обработка для произвольных отражающих точек


function [Lp, Hp, Pp, Ap] = work1_r (N1,r,phi,L,alpha);=1500;=0.032;=zeros (1, 20);=zeros (1, 20);=20000;=1;=T*4*f;=0.1;

% [sl,sr] =work1_gen_echo2 (r,phi,L,alpha);

%generation random

[sl, sr] = work1_gen_randn (N1);=work1_gen_noise (p);=work1_gen_noise (p);=work1_snr (sr,nr,r);=work1_sigma (sr,nr);=4.8*sigmaR;=sr+nr;=max (abs (snR) - A);i=1: (4*f)(snR (i) - A) < 0(i) =0;;;=sl+nl;i=1: (4*f)(snL (i) - A) < 0(i) =0;;;= hilbert (sl+nl);= hilbert (sr+nr);=zeros (1,100);=zeros (1,100);=0;j=1: 100

[MaxPoint, index] =max (abs (snR) - A);(MaxPoint>0) && (index>80) && (index< (80000-80))

%display (index/80000*1500);=nu+1;=c/f;

Find (nu) =index/80000*1500+la/2;(index-80: index+80) =0;= angle (hl (index)) - angle (hr (index));

Fphi (nu) = asin (la*phase/ (2*pi*base)) *180/pi;

%display (Fphi (nu));;;(nu==0)=0;=0;=0;=0;=Find (1: nu);

q=sort (q);=zeros (1,nu);

for i=1: nuj=1: nu(q (j) ==Find (i))(j) =Fphi (i);;;;i=1: nu=floor (L* (i-1) / (nu-1));

x (i) =r*sin (phi/180*pi) +Li*sin (pi/180* (phi+alpha));(i) =r*cos (phi/180*pi) +Li*cos (pi/180* (phi+alpha));

z (i) =sqrt (x (i) ^2+y (i) ^2);(i) =abs (atan (x (i) /y (i)) - qa (i) *pi/180);(i) =sqrt ( (z (i) - q (i) *cos (al (i))) ^2+ (q (i) *sin (al (i))) ^2);;

%figure (5);

%plot (x,y,'b*');

%display (pogreshnost);=zeros (1,nu);=zeros (1,nu);i=1: nu

%plot (Find (i) *sin (Fphi (i) *pi/180),Find (i) *cos (Fphi (i) *pi/180),'r*');(i) =q (i) *sin (qa (i) *pi/180);(i) =q (i) *cos (qa (i) *pi/180);;=work1_matr (X,Y,nu);

%figure (5);

%plot ( (1: 200), ( (1: 200) *A (1) +A (2)));

%hold on;=-atan (A (1));=A (2);=0;=0;i=1: nu=SigX+X (i);=SigY+Y (i);;=SigX/nu;=SigY/nu;=zeros (1,nu);=zeros (1,nu);i=1: nu(i) = (X (i) - Xmidle) *cos (alphap) - (Y (i) - Ymidle) *sin (alphap);(i) = (X (i) - Xmidle) *sin (alphap) + (Y (i) - Ymidle) *cos (alphap);;

%for i=1: nu

% rp=sqrt ( (X (i)) ^2+ (Y (i) - bp) ^2);

% psip=atan ( (Y (i) - bp) / (X (i)));

% betap=psip-alphap;

% Xp (i) =rp*cos (betap);

% Yp (i) =rp*sin (betap);

% end;

%figure (1); hold off;

%plot (Xp,Yp,'*', [min (Xp) max (Xp)], [0 0]);=real (max (Xp) - min (Xp));=real (max (Yp) - min (Yp));=real (sqrt (Xmidle^2+Ymidle^2));=real (alphap);;

%display (Lp);

%display (Hp);

%plot (gsnr,det);

%plot (sn);

%hold on;

%plot (1: 80000,A);

%hold off;

%r=100;

%phi=30;

% [sl,sr] =work1_gen_1echo (r,phi);

%N1=20;

% [echol, echor] = work1_gen_randn (N1);

work1. m - Обнаружение принятого сигнала и его последующая обработка для линейных отражающих точек


function [Lp, Hp, Pp, Ap, Np] = work1 (r,phi,L,alpha,p);=1500;=0.032;=zeros (1, 20);=zeros (1, 20);=20000;=1;=T*4*f;

[sl,sr] =work1_gen_echo2 (r,phi,L,alpha);

%generation random=20;

% [sl, sr] = work1_gen_randn (N1);=work1_gen_noise (p);=work1_gen_noise (p);=work1_snr (sr,nr,r);=work1_sigma (sr,nr);=4.8*sigmaR;=sr+nr;=max (abs (snR) - A);i=1: (4*f)(snR (i) - A) < 0(i) =0;;;=sl+nl;i=1: (4*f)(snL (i) - A) < 0(i) =0;;;= hilbert (sl+nl);= hilbert (sr+nr);=zeros (1,100);=zeros (1,100);=0;j=1: 100

[MaxPoint, index] =max (abs (snR) - A);(MaxPoint>0) && (index>80) && (index< (80000-80))

%display (index/80000*1500);=nu+1;=c/f;

Find (nu) =index/80000*1500+la/2;(index-80: index+80) =0;= angle (hl (index)) - angle (hr (index));

Fphi (nu) = asin (la*phase/ (2*pi*base)) *180/pi;

%display (Fphi (nu));;;(nu==0)=0;=0;=0;=0;=0;=Find (1: nu);

q=sort (q);=zeros (1,nu);

for i=1: nuj=1: nu(q (j) ==Find (i))(j) =Fphi (i);;;;i=1: nu=floor (L* (i-1) / (nu-1));

x (i) =r*sin (phi/180*pi) +Li*sin (pi/180* (phi+alpha));(i) =r*cos (phi/180*pi) +Li*cos (pi/180* (phi+alpha));

z (i) =sqrt (x (i) ^2+y (i) ^2);(i) =abs (atan (x (i) /y (i)) - qa (i) *pi/180);(i) =sqrt ( (z (i) - q (i) *cos (al (i))) ^2+ (q (i) *sin (al (i))) ^2);;

%figure (5);

%plot (x,y,'b*');

%display (pogreshnost);=zeros (1,nu);=zeros (1,nu);i=1: nu

%plot (Find (i) *sin (Fphi (i) *pi/180),Find (i) *cos (Fphi (i) *pi/180),'r*');(i) =q (i) *sin (qa (i) *pi/180);(i) =q (i) *cos (qa (i) *pi/180);;=work1_matr (X,Y,nu);

%figure (5);

%plot ( (1: 200), ( (1: 200) *A (1) +A (2)));

%hold on;=-atan (A (1));=A (2);=0;=0;i=1: nu=SigX+X (i);=SigY+Y (i);;=SigX/nu;=SigY/nu;=zeros (1,nu);=zeros (1,nu);i=1: nu(i) = (X (i) - Xmidle) *cos (alphap) - (Y (i) - Ymidle) *sin (alphap);(i) = (X (i) - Xmidle) *sin (alphap) + (Y (i) - Ymidle) *cos (alphap);;

%for i=1: nu

% psip=atan ( (Y (i) - bp) / (X (i)));

% betap=psip-alphap;

% Xp (i) =rp*cos (betap);

% Yp (i) =rp*sin (betap);

% end;

%figure (1); hold off;

%plot (Xp,Yp,'*', [min (Xp) max (Xp)], [0 0]);=real (max (Xp) - min (Xp));=real (max (Yp) - min (Yp));=real (sqrt (Xmidle^2+Ymidle^2));=real (alphap);=nu;;

%display (Lp);

%display (Hp);

%plot (gsnr,det);

%plot (sn);

%hold on;

%plot (1: 80000,A);

%hold off;

%r=100;

%phi=30;

% [sl,sr] =work1_gen_1echo (r,phi);

%N1=20;

% [echol, echor] = work1_gen_randn (N1);

work1_sigma. m - Нахождение дисперсии сигнала с шумом


function sigma=work1_sigma (s,n);=20000;=sqrt (sum ( (n+s). ^2) / (4*f));

1.      work1_snr. m - Нахождение snr сигнала с шумом.

function snr = work1_snr (s,n,r);=20000;=1500;=floor (8*r*f/c);=floor (8* (r+15) *f/c) +floor (4*f/1000);=sum (s (sh: sh2). ^2) /length (s (sh: sh2));=sum (n (sh: sh2). ^2) /length (n (sh: sh2));=10*log10 (ps/pn);

work1_matr. m - Нахождение аппроксимации положения выявленного протяженного объекта


function A = work1_matr (X,Y,nu);

A2=zeros (nu,2);t=zeros (2,nu);=zeros (2,nu);=zeros (nu,2);

A=zeros (nu,2);=zeros (2,nu);=zeros (nu,1);i=1: nu(i,1) =X (i);(i,2) =1;t (1, i) =X (i);t (2, i) =1;(i,1) =Y (i);;

Q=A2t*A2;=inv (Q);=A2t*B;

A=Q2*R;

work1_main. m - Создание массива для классификатора, состоящего из случайно расположенных произвольных протяженных объектов, точечных источников групповых и одиночных


function [P, T] = work1_main (p);= [];= [];=5;

%p=0.1;KI=1: Numb

r=100+50*KI;=0;=0;=0;

N1=0;=false;(tr==false)L<=50 || L>=200 || phi<=0 || phi>=180 || alpha<=0 || alpha>=90 || N1<=0 || N1>30

L=randn*40+125;=90+randn*40;=45+randn*20;

N1=floor (randn*10+15);;

[Lp,Hp,Pp,Ap,Np] =work1 (r,phi,L,alpha,p);(Lp>0) && (Hp>0) && (Pp>100)= [Q; Lp Hp Pp Ap Np];

T = [T; 1];=true;=false;

end;;

%N1=20;

[Lp,Hp,Pp,Ap] =work1_r (N1,r,phi,L,alpha);Lp>0 && Hp>0 && Pp>0= [Q; Lp Hp Pp Ap N1];= [T; 0];;

[Lp,Hp,Pp,Ap] =work1_r (1,r,phi,L,alpha);Pp>0 && Ap<=pi

Q = [Q; 0 0 Pp Ap 1];= [T; 0];;

end;

P=Q;

Klas. m - Создание нейросети для классификатора


Искусственная нейронная сеть - это набор нейронов, соединенных между собой. Подавая любые числа на входы нейронной сети, мы получаем какой-то набор чисел на выходах нейронной сети. Таким образом, работа нейронной сети состоит в преобразовании входного вектора в выходной вектор. Практически любую задачу можно свести к задаче, решаемой нейронной сетью.

%clear;

%hold off;

%angle= [pi/2: 0.1: - pi/2];

%P=cos (angle);

%T=sin (angle);

%plot (P,T,P,T,'or');

%net=newff (minmax (P), [25 1],{'tansig' 'purelin'},'trainbfg');= newff ([0 2000; 0 2000; 50 1000; - pi pi; 1 30], [25 1],{'tansig' 'purelin'},'trainbfg');=sim (net,P');off;(P,Y,'og');on;. trainParam. epochs=150;

% net. trainParam. goal=0.001;

net=train (net,P',T');=sim (net,P');(P,Y,'x');



Proverka_Klass. m - Проверка работы нейросети классификатора


Promah=zeros (10,1);j=1: 10=j/10;

[P, T] = work1_main (p);

%Promah (p*10+1) =0;

%display (T');=zeros (length (T),1);i=1: length (T)(i) =floor (sim (net,P (i,:) ') +0.5);(PP (i) <0)(i) =0;;not (PP (i) ==T (i))(j) =Promah (j) +1;;;

%display (PP);(Promah (j));;off;(1);on;

plot ( (0.1: 0.1:

),Promah);

Результаты работы классификатора можно отразить на графике зависимости количества ошибок классификатора от значения отношения сигнал/помеха.


Не нашли материал для своей работы?
Поможем написать уникальную работу
Без плагиата!