2013-04-22 7 views
0

Итак, мне нужно реализовать алгоритм постоянной скорости сигнала (CFAR). Это вроде как это работает: BackgroundWindowРеализация переходящего окна

Я использую понятие, что, в случае, когда целевое окно содержит более одного пикселя, этот оператор (CFAR) использует следующий критерий обнаружения

Equation2

где μt - среднее значение пикселей в целевом окне. В этом случае t следует заменить на t√n (где n - количество пикселей в целевом окне) в расчете PFA, а где μb - среднее фоном, σb - стандартное стандартное отклонение, а t - конструкция детектора параметр, который вычисляется из PFA по следующему уравнению:

Equation3

Теперь (! достаточно с уже уравнениями XD), я знаю, что я должен реализовать несколько петель над изображением (который является 2d матрицы). Я знаю отношение пикселей к расстоянию для моего изображения (что составляет 10.054 м на пиксель в обоих направлениях примерно). Я могу перевести расстояние, введенное пользователем, в размеры пикселей, предположим, что фоновое окно составляет 800 м (примерно 80 пикселей), защитное окно - 400 м (примерно 40 пикселей), а целевое окно - 20 м (примерно 2 пикселя). Мой вопрос:

Как нарисовать изображение?

Проблема не так проста, как кажется, по крайней мере, не для меня. Понимаете, я не могу понять, для mxn пикселей, как реализовать движущееся окно. Сначала я подумал, что размер цели будет фиксированным, и я мог бы жестко скопировать мои пиксельные координаты, но это не главное. Любая помощь приветствуется :)

EDIT: Окно цели перемещается внутри защитного окна. После того, как это закончится, защитное окно переместится в фоновое окно, где выше снова будет выполнено, а затем, наконец, фоновое окно будет перемещаться по всему изображению!

+0

, какое окно вы собираетесь двигаться? будут ли они пересекаться во время движения или они будут развиваться дискретно? – Dipto

+0

А, позвольте мне уточнить этот вопрос :) –

+0

будут ли они перекрываться? – Dipto

ответ

2

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

рассмотрим четыре атрибута каждого окна, а именно, bg_top, bg_left, bg_width, bg_hight, grd_top. .. и т.д.

также рассматривает внутреннее окно никогда не будет выходить на улицу пересечения внешнего окна,

набор все окна слева и сверху Изображение слева и сверху, что может быть (0,0).

теперь петля

while(bg_top+bg_hight <= image_top+image_hight) 
{ 
    while(bg_laft+bg_width <= image_left+image_width) 
    { 
     while(grd_top+gdr_hight <= bg_top+bg_hight) 
     { 
      while(grd_left+gdr_width <= bg_left+bg_width) 
      //some pixels may be left out if the inner and outer window sizes are not divisible, it will not change the window size to fit in the last case. 
      { 
       while(target_top+target_hight <= grd_top+grd_hight) 
       { 
         while(target_left+target_width <= grd_left+grd_width) 
         // the condition will move till end but never goes outside nor changes the inner window size to fit 
         { 
          //DO THE PROCESSING 
          //target_left+=target_width; //if they do not overlap 
          target_left+=1; //if they overlap 
         } 
         target_top+=target_hight// don't overlap. use 1 for overlaping 
         // use 1 if it goes down 1 pixel 
       } 
       grd_left+=grd_width; //or 1 
      } 
      grd_top+=grd_hight; //or 1 
     } 
     bg_left+=bg_width; //or 1 
    } 
    bg_top+=bg_hight; //or 1 
} 
+0

Спасибо! Позвольте мне запустить его, и я вернусь к вам XD Огромное спасибо! –