Диссертация (Методы и устройство формирования сигналов в цифровых видеоинформационных системах), страница 29
Описание файла
Файл "Диссертация" внутри архива находится в папке "Методы и устройство формирования сигналов в цифровых видеоинформационных системах". PDF-файл из архива "Методы и устройство формирования сигналов в цифровых видеоинформационных системах", который расположен в категории "". Всё это находится в предмете "технические науки" из Аспирантура и докторантура, которые можно найти в файловом архиве НИУ «МЭИ» . Не смотря на прямую связь этого архива с НИУ «МЭИ» , его также можно найти и в других разделах. , а ещё этот архив представляет собой кандидатскую диссертацию, поэтому ещё представлен в разделе всех диссертаций на соискание учёной степени кандидата технических наук.
Просмотр PDF-файла онлайн
Текст 29 страницы из PDF
мин. значений может быть >1 нужен этот массив чтобысохранить только одно)minznachTEMP=zeros(1,1); % --для контроля-- массив для минимальных значенийразности (используется вместе с minznach)% Процесс компенсации блоков в разностном кадре%% Формирование области поиска и вычисление разностных значенийfor i1=8:8:x,% цикл для сканированияразностного сигнала в поисках управляющего сигналаfor i2=8:8:y,% цикл для сканированияразностного сигнала в поисках управляющего сигналаif sum(sum(US(i2-7:i2,i1-7:i1)))~=0,% Определение наличияуправляющего сигналаSs=BgrayD(i2-7:i2,i1-7:i1);% Сохранение области извторого кадра на основе определенного выше управляющего сигналаq=1;% счетчик строки для массива Q- массив значений разности блоков из области поиска и Ssct=i2-19; if ct<1, ct=1; end;% формирование области поиска(если выходит за границы то ограничение 1)ctt=i2+12; if ctt>y, ctt=y; end;% формирование области поиска(если выходит за границы y то =y)bt=i1-19; if bt<1, bt=1; end;% формирование области поиска(если выходит за границы то ограничение 1btt=i1+12; if btt>x, btt=x; end;% формирование области поиска(если выходит за границы x то =x)Q=zeros(((ctt-ct+1)*(btt-bt+1)/64),5); % пустой массив с размером взависимости от количества (т.к.
возможно ограничение до 1) блоков 8х8 помещающихсяв область поискаfor z1=bt:1:btt-7,% цикл для сканированияобласти поиска по xfor z2=ct:1:ctt-7,% цикл для сканированияобласти поиска по y196Q(q,5)=sum((sum(abs(AgrayD(z2:(z2+7), z1:(z1+7))-Ss)))); %сохранение значения разности между каждым блоком из зоны поиска и SsQ(q,1:4)=[z2 (z2+7) z1 (z1+7)]; % сохранение координат блокасо значением из прошлого шагаq=q+1;% следующая строка в массиведля последующей записи на следущем шаге циклаend;end;Temp(temp, 1:4)=[(i2-7) i2 (i1-7) i1]; % сохранение координат вмассив для отрисовки границ всех блоков для которых будут искаться блоки-донорыtemp=temp+1;% следующая строка в массиведля последующей записи на следущем шаге цикла%% Определение минимального разностного значения указывающего на блок-донор[y_min, x_min]=find (Q(:,5)==min(Q(:,5)));% поиск координат блока сминимальным значением в массиве (Q) всех значений блоков найденных в зоне поискаif Q(y_min,5)<=fix(sum(abs(sum(abs(A_BD(i2-7:i2,i1-7:i1)))))*1), %задание порога разности при котором блок имеющий эту разность может считатьсядоноромMinBlok=Q(y_min,1:4);%сохранение координат блока с минимальным значением (их может быть >1) во временныймассив[p q]=size(MinBlok);%определение размера блока с минимальными значениями для процедуры указания наоригинальный блок если минимальных значений >1A_BD1(i2-7:i2,i17:i1)=AgrayD(MinBlok(1,1):MinBlok(1,2),MinBlok(1,3):MinBlok(1,4))-Ss; %КОМПЕНСАЦИЯ - замена блоков на разность блоков м/у целевым изображением и доноромKoordV(ko,1:4)=MinBlok(1,1:4);% сохранение координат для кадрадонораKoordV(ko,5:8)=[(i2-7) i2 (i1-7) i1]; % сохранение координат для кадраполучателя% Если в найденных минимумах все 0, то эта часть кода выбирает% оригинал назначенияif p>1,for b=1:p,if MinBlok(b,1)==i2-7 && MinBlok(b,2)==i2 && MinBlok(b,3)==i17 && MinBlok(b,4)==i1,A_BD1(i2-7:i2,i17:i1)=AgrayD(MinBlok(b,1):MinBlok(b,2),MinBlok(b,3):MinBlok(b,4))-Ss; %КОМПЕНСАЦИЯ - замена блоков на разность блоков м/у целевым изображением и доноромKoordV(ko,1:4)=MinBlok(b,1:4);end;end;end;% конец кода для оригиналаminznachTEMP=Q(y_min,5);% --для контроля-- сохранениеминимальных значений разностиminznach(ko,1)=minznachTEMP(1,1);% --для контроля-- сохранениеминимальных значений разностиko=ko+1;% следующая строка для массиваend;endendend%% Обозначение начала движения - начало вектора движенияfor il=1:1:ko-1, % цикл для обозначения блока из которого следует векторKadr2D(KoordV(il,1),KoordV(il,3))=255; % в блоке отмечается первый пиксель былымцветомend;197%% ВОССТАНОВЛЕНИЕ ВТОРОГО КАДРА ИЗ СКОМПЕНСИРОВАННОЙ РАЗНОСТИBD=AgrayD-A_BD1;% Восстановление второго кадра из разности - Шаг 1for il=1:1:ko-1,% Цикл для восстановления во втором кадра скомпенсированныхблоков - Шаг 2 (ko-1 т.к.
формируется одна лишняя строрка в цикле)BD(KoordV(il,5):KoordV(il,6),KoordV(il,7):KoordV(il,8))=AgrayD(KoordV(il,1):KoordV(il,2),KoordV(il,3):KoordV(il,4))-A_BD1(KoordV(il,5):KoordV(il,6),KoordV(il,7):KoordV(il,8));end;toc%% ВЫВОД РЕЗУЛЬТАТОВfigure('name','Первый кадр - оригинал');imshow(uint8(AgrayD));title('Первый кадр - оригинал');figure('name','Второй кадр - оригинал');imshow(uint8(BgrayD));title('Второй кадр - оригинал');figure('name','Восстановленный второй кадр');imshow(uint8(BD));title('Восстановленный второй кадр');figure('name','УС');imshow(uint8(US)+128);title('УС');198Приложение 3Акты об использовании результатов диссертационной работы199200201202203.