Научная статья на тему 'Алгоритм стабилизации видеопоследовательности, основанный на построении нечеткой модели движения'

Алгоритм стабилизации видеопоследовательности, основанный на построении нечеткой модели движения Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
896
139
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
СТАБИЛИЗАЦИЯ ВИДЕО / ОЦЕНКА ДВИЖЕНИЯ / МЕТОД СООТВЕТСТВИЯ БЛОКОВ / НЕЧЕТКАЯ МОДЕЛЬ / КОРРЕКЦИЯ ДВИЖЕНИЯ / VIDEO STABILIZATION / MOTION ESTIMATION / BLOCK-MATCHING METHODS / FUZZY MODEL / MOTION CORRECTION

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Буряченко Владимир Викторович

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

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Буряченко Владимир Викторович

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

A VIDEO STABILIZATION ALGORITHM BASED ON THE CONSTRUCTION OF A FUZZY MOTION MODEL

In the paper the technique for the motion estimation is presented. An algorithm for the construction of a fuzzy model to evaluate the reliability of the local motion vectors is proposed. An algorithm for the low-pass filtering with an adaptive tuning stabilizing factor for the calculation of the smoothing vector is described. Experimental results have indicated a good performance of the proposed digital video stabilization algorithm in comparison with other systems.

Текст научной работы на тему «Алгоритм стабилизации видеопоследовательности, основанный на построении нечеткой модели движения»

УДК 004.932

АЛГОРИТМ СТАБИЛИЗАЦИИ ВИДЕОПОСЛЕДОВАТЕЛЬНОСТИ, ОСНОВАННЫЙ НА ПОСТРОЕНИИ НЕЧЕТКОЙ МОДЕЛИ ДВИЖЕНИЯ

В. В. Буряченко

Сибирский государственный аэрокосмический университет имени академика М. Ф. Решетнева Российская Федерация, 660014, Красноярск, просп. им. газ. «Красноярский рабочий», 31

Е-шаП: buryachenko@sibsau.ru

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

Ключевые слова: стабилизация видео, оценка движения, метод соответствия блоков, нечеткая модель, коррекция движения.

A VIDEO STABILIZATION ALGORITHM BASED ON THE CONSTRUCTION OF A FUZZY MOTION MODEL

V. V. Buryachenko

Siberian State Aerospace University named after academician M. F. Reshetnev 31, Krasnoyarsky Rabochy Av., Krasnoyarsk, 660014, Russian Federation. E-mail: buryachenko@sibsau.ru

In the paper the technique for the motion estimation is presented. An algorithm for the construction of a fuzzy model to evaluate the reliability of the local motion vectors is proposed. An algorithm for the low-pass filtering with an adaptive tuning stabilizing factor for the calculation of the smoothing vector is described. Experimental results have indicated a good performance of the proposed digital video stabilization algorithm in comparison with other systems.

Keywords: video stabilization, motion estimation, block-matching methods, fuzzy model, motion correction.

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

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

Большое число работ посвящено исследованию особенностей методов, основанных на методах соответствия блоков [2-5]: они используют различные фильтры для уточнения оценки движения и расчета локальных векторов движения. Эти алгоритмы обычно позволяют получить хорошие результаты, но могут давать ошибочные результаты для видеопоследова-

тельностей, содержащих большие движущиеся объекты. Это происходит потому, что они не привязывают дескриптор к блоку и не ведут отслеживание движения объектов на последовательности кадров [6].

Качество оценки движения в методах, основанных на поиске локальных векторов, можно повысить несколькими способами. Предлагается использовать для расчета параметров преобразования кадра только достоверные вектора, которые описывают именно движение камеры, но не объектов в кадре [7; 8]. Для расчета глобального вектора движения применяется двумерная линейная модель, учитывающая аффинные преобразования. При оценке нежелательного движения применяется низкочастотный фильтр, позволяющий отделить дрожание камеры от преднамеренного движения, например панорамирования. Для подбора сглаживающего параметра предложен алгоритм, учитывающий интенсивность движения на видеопоследовательности. Общая схема предлагаемого алгоритма стабилизации представлена на рис. 1.

Блочная оценка движения. Схема блочной оценки движения содержит следующую последовательность действий. Изображение делится на неперекрывающиеся блоки пикселей, значение интенсивности которых определяется как 1п(х, у), где x, у - координаты пикселя, п -номер кадра. Для каждого блока в небольшой окрестности -Sx < йх < +Sx и —у < йу < +Sy ищутся наиболее похожие блоки на следующем кадре Iп + 1(х + dx, у + йу).

Поблочная оценка движения

Оценка глобального движения кадра

Локальные вектора движения

Проверка локальных векторов движения

Вектора нежелательного движения, вектор коррекции (UMV,CMV)

Рис. 1. Схема алгоритма стабилизации видеопоследовательности

Сходство блоков определяется минимизацией функции ошибки e, в соответствии с используемой метрикой [8]. Обычно применяются три метрики: сумма абсолютных разностей (SAD), сумма квадратичных отклонений (SSD) и среднее значение квадратов разностей (MSD):

N N

SAD (dx, dy ) = ХЕ| I„+i (x У)-1„ (x + dx, y + dx) (1)

X=1 y=1

NN 2

SSD(,dy ) = ££(( (dУ)-(x + dx,У + dx)) , (2)

X=1 y=1

MSD (d(, dy ) = - 1

B x B

num num

N N

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

Ошибка отклонения й подается на вход функции принадлежности, её значение отображается на различных классах точности: высокий, средний, низкий. Более низкие значения погрешности отображаются на лучшем классе, высокие значения погрешности - на худшем [8]. Строятся сигмоидальные функции принадлежности, представлено выражение для расчета значений лучшего класса:

+1 (x)-hX+dx,y+dx)), (3)

x=1 y=1

где Bnum - количество анализируемых блоков.

Результатом данного этапа являются рассчитанные для каждого блока изображения локальные векторы движения (LMV).

Исключение ложных локальных векторов движения. После нахождения локальных векторов движения требуется определить, описывают ли они движение камеры либо некоторых объектов в кадре. Для этого строится нечеткая модель, аналогичная описанной в работе [7], на выходе которой определяется мера достоверности векторов движения. Для каждого локального вектора движения рассчитывается мера ошибки двумя способами: евклидово расстояние (величина вектора) E’ = (еь е2, ..., en), где 1-n - номер вектора; угол наклона вектора относительно горизонтали C’ = (cb c2,..., cn). Производится расчет средней ошибки ME - median error. Для каждого элемента E’, C’ выполняется расчет ошибки отклонения:

d‘ = ejMe , dC = c,/Mc, (4)

где ME и Mc - медианные значения E’ и C’ соответственно.

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

f (x; a, b ) =

1,

1 - 2

x - a b - a

2

a < x < -

x < a, a + b

b - a

a + b

0,

< x < b,

x > b.

(5)

Рекомендуется использовать значения а = 0,5 и Ь = 1,5 для описания класса «высокий» незашумленных видеопоследовательностей и а = 0,75 и Ь = 1,75 для зашумленных видеопоследовательностей (рис. 2).

Применяется модель нечеткого вывода Такаги-Сугено-Канга [9], чтобы определить качество вектора. Модель нечеткого вывода Т8К достаточно простая, так как она является компактным и вычислительно эффективным представлением, которое может быть реализовано с использованием адаптивных методов для построения нечетких моделей. Представлены четыре различных нечетких набора: отличный, хороший, средний, плохой (рис. 3).

Каждому из четырех классов соответствует константа: (1, 0.75, 0.5, 0) для незашумленных и (1, 0.85, 0.65, 0) - для зашумленных видеопоследовательностей. Выходное значение определяется на основе обоих входных данных в соответствии с минимальным значением.

2

Рис. 2. Сигмоидальные нечеткие функции принадлежности для незашумленных и зашумленных видеопоследовательностей

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

Результат нечеткой модели - это мера правдоподобия вектора движения, которая находится в диапазоне [0; 1]. Настраивая параметры функции принадлежности, можно регулировать, каким образом значения ошибки E влияют на выходное значение правдоподобия вектора. Когда вычислены меры правдоподобия векторов, выбираются только лучшие 60 % значений, которые передаются на вход метода для расчета параметров стабилизации движения.

Расчет вектора глобального движения кадра. Глобальное движение между соседними кадрами можно оценить при помощи двумерной линейной модели, которая представляет собой хороший компромисс между точностью и вычислительной сложностью. Эта модель описывает межкадровое движение с помощью четырех различных параметров, а именно: два направления движения, угол поворота и коэффициент увеличения, которые связывают координаты точки (Xi,Yi) в кадре с точкой (Xf ,Yf ) в следующем

кадре преобразованием

f xf = xi X cos 9-y. X sin 9 + Tx,

\ f J x (6) |y = xi X sin 9 + yj X cos 9+ Ty,

где X - параметр увеличения; 9 - угол поворота; Tx, Ty - модули вектора движения по направлениям x,

y соответственно.

Поскольку векторы движения, полученные с фона изображения, должны быть очень похожи по величине и направлению, используется механизм кластеризации для классификации поля движения на два кластера, соответствующих фону и переднему плану изображения [4]. Глобальное движение, вызванное движением камеры, оценивается в процессе кластеризации, состоящем из двух этапов:

1. Построение гистограммы H, содержащей достоверные локальные векторы движения (Valid LMV). Значение H(x,y) увеличивается на единицу каждый раз, когда встречается локальный вектор с соответствующими координатами LMV(x, y).

2. Выбор значения глобального вектора движения. За исключением случая, когда в сцене преобладает крупный движущийся объект, блок кластера, соответствующий фону изображения, имеет максимальное количество голосов. Максимальное значение этого кластера выбирается в качестве глобального вектора движения (GMV).

Оценка нежелательного движения. Рассчитанный вектор глобального движения кадра может состоять из двух основных компонент: намеренное движение (например, панорамирование камеры) и непреднамеренное движение. Качественный алгоритм коррекции должен удалять только нежелательное движение, при этом не затрагивая преднамеренное движение камеры.

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

Предлагаемый метод вычисляет SMV в виде регрессии первого порядка по формуле

SMV(k) = а х SMV(k-1) + (1 - а) х GMV(k), (7)

где k - номер кадра; 0 < а < 1 - варьируемый параметр.

Фильтр первого порядка может быть использован в системах реального времени, его применение требует мало памяти. При этом сглаживание движения

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

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

GDiif(k) = Х \GLV, + GLVi_

(В)

=k-30

где к - номер кадра; ОЬУк - вектор глобального движения кадра к.

Значение коэффициента а выбирается по формуле

*—, если ОВ1//к <ОЬУтах,

ОБ1//к > ОІГтах,

\k)

GLVm

am

am

если

ется по формуле (7). Вычисление значения вектора нежелательного движения (иМУк) производится по формуле

иМУк = ОМУк - SMVk . (10)

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

AMVk = Х UMVt

(11)

где ОЬУтгх - максимальное значение, принимаемое глобальным вектором движения кадра; атах, атт -максимальное и минимальное значения параметра а тах = 0,98, а тт = 0,5, выбранные опытным путем.

На рис. 4 представлен график, показывающий уровень исходного движения анализируемой видеопоследовательности и рассчитанный при адаптивной подстройке параметра а сглаживающий вектор

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

(Мк).

Коррекция движения. После расчета фактора сглаживания а, сглаживающий вектор БМ¥к вычисля-

где т - номер первого кадра с момента последнего изменения сцены.

Экспериментальные результаты. Тестирование разработанного алгоритма проводилось на 15 стандартных видеопоследовательностях [10], приведены результаты оценки качества стабилизации для видеопоследовательностей, полученных с различными условиями съемки (рис. 5):

- движение камеры со значительными проективными преобразованиями в сцене, а также наличием неконтрастного фона (рис. 5, а);

- движение камеры вперед с резким вертикальным и горизонтальным смещением (рис. 5, б);

- резкое движение камеры по различным направлениям с поворотом, увеличением; наличие крупного объекта интереса в центре кадра (рис. 5, в).

с-1 гЛ -t

-----Вектор пттобялтлтого дппжеттпя по оси У -----Сгттлжттятотптгіі лектор Номер кадри

Рис. 4. График расчета сглаживающего вектора для видеопоследовательности gleicher.avi

a б в

Рис. 5. Различные виды движения на видеопоследовательностях: a - gleicher4.avi; б - new gleicher.avi; в - sam_1.avi

Объективная оценка качества стабилизации видеопоследовательности выполняется с использованием метрики: пиковое отношение сигнала к шуму (РБЫК) как меры ошибки. РБЫЯ между кадрами к и к-

1 определяется по формулам

1 МЫ 2

мж = — ХЖ (*, у) - 4-1(*, у)]2 , (12)

MN y=1 x=1

PSNR( k) = 10 log

( 12„

10

MSE(k)

(13)

где МБЕ(к) - это среднеквадратичная межкадровая ошибка; /тах - максимальное значение интенсивности пикселя; М, Ы - размеры кадра.

Значение РБЫК показывает, насколько одно изображение похоже на другое, что полезно для оценки качества стабилизации простым сравнением соседних

кадров [8]. Качество межкадрового преобразования Inteframe Transformation Fidelity - (ITF) используется для объективной оценки эффективности алгоритма стабилизации: стабилизированная видеопоследовательность должна иметь более высокое значение ITF, чем оригинальная:

1 NFrame

ITF =-------- ^ PSNR(k), (14)

NFrame k =0

где NFrame - количество кадров видеопоследовательности.

В таблице приведены результаты оценки качества стабилизации ITF, рассчитанной с применением метрики PSNR, для представленных на рис. 5 видеопоследовательностей.

Оценка качества стабилизации видеопоследовательностей

Название Оригинальное значение ITF, дБ Стабилизированное значение ITF без применения модели ТСК, дБ Стабилизированное значение ITF c применением нечеткой модели ТСК, дБ

SANY0025 xvid.avi 20,53892 21,09076 23,79189

lfjuggle.avi 24,30286 24,37177 28,06012

akiyo.avi 35,92952 39,14661 39,53257

Butovo synthetic.avi 22,26415 27,19789 27,20789

EllenPage Juggling.avi 24,65855 25,23049 28,58255

road cars krasnoyarsk.avi 22,70482 22,80707 25,91258

Cars.avi 14,67391 15,88153 19,49475

Gleicher4.avi 19,29703 19,50634 23,18371

Sam 1.avi 19,09737 19,28141 22,20112

cat orig.avi 25,07131 26,47094 28,14086

Gleicher1 .avi 18,86996 19,48223 22,78846

Gleicher2.avi 19,91954 20,36718 24,56673

gleicher3.avi 16,55214 16,71899 20,12285

new gleicher.avi 17,28921 17,81638 21,70575

y una_long_original. avi 17,84131 18,94389 21,46971

Для видеопоследовательностей статических сцен оценка движения с применением нечеткой модели ТСК более точно отражает глобальное движение кадра, поскольку не учитывается движение объектов переднего плана. Для видеопоследовательностей, содержащих большое количество мелких объектов (butovo_synthetic.avi; lfjuggle.avi) алгоритм оценки движения с применением модели ТСК показывает наилучшие результаты: увеличение значения ITF в среднем на 3 дБ. При стабилизации динамических сцен алгоритм оценки движения позволяет избежать влияние крупных движущихся объектов переднего плана, присутствующих на видеопоследовательностях EllenPage_Juggling.avi, Sam_1.avi, gleicher3.avi.

В зависимости от типов движения, присутствующих на видеопоследовательности, достигаются различные результаты стабилизации. Для new_gleicher.avi, где присутствует увеличение изображения, связанное с перемещением изображения по направлению движения камеры, алгоритм расчета достоверных векторов движения практически не даёт прироста значение ITF. Наоборот, для видеопоследовательности gleicher4.avi, в которой алгоритм нахождения локальных векторов движе-

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

Библиографические ссылки

1. Jang S., Pomplun M., Kim G., Choi H. Adaptive robust estimation of affine parameters from block motion vectors, Image and Vision Computing, 2005. Р. 12501263.

2. Ko-Cheung H., Wan-Chi S. Extended analysis of motion-compensated frame difference for block-based motion prediction error // Image Processing and Transactions on. 2007. Vol. 16.

3. Achaijee S., Chaudhuri S. S. Fuzzy Logic Based Three Step Search Algorithm for Motion Vector Estimation // Int. J. Image, Graphics and Signal Processing. 2012. № 2. Р. 37-43.

4. Леоненков А. В. Нечеткое моделирование в среде MATLAB и fuzzyTECH. СПб. : БХВ Петербург 2005. 736 с.

5. Фаворская М. Н., Пахирка А. И., Шилов А. С., Дамов М. В. Методы поиска движения в видеопоследовательностях // Вестник СибГАУ. 2009. Вып. 1 (22).

Ч. 2. С. 69-73.

6. Favorskaya M. N., Buryachenko V. V. Video Stabilization of Static Scenes Based on Robust Detectors and Fuzzy Logic // Frontiers in Artificial Intelligence and Applications. Vol. 254: Intelligent Interactive Multimedia Systems and Services. 2013. Р. 11-20.

7. Tanakian M., Rezaei M., Mohanna F. Digital Video Stabilization System by Adaptive Fuzzy Filtering // 19th European Signal Processing Conf. 2011. Р. 166-168.

8. Буряченко В. В. Стабилизация видео для статичной сцены на базе модифицированного метода соответствия блоков // Вестник СибГАУ. 2012. Вып. 3 (43). С. 10-15.

9. Sugeno M. Industrial Applications of Fuzzy Control Elsevier // Science Inc., 1985. Р. 645-661.

10. Grundmann M., Kwatra V., Essa I. AutoDirected Video Stabilization with Robust L1 Optimal Camera Paths /IEEE Conf. on Computer Vision and Pattern Recognition. 2011.

References

1. Jang S.-W., Pomplun M., Kim G., Choi H. Adaptive robust estimation of affine parameters from block

motion vectors, Image and Vision Computing, 2005, p. 1250-1263.

2. Ko-Cheung H., Wan-Chi S. Extended analysis of motion-compensated frame difference for block-based motion prediction error, IEEE Transactions on, vol. 16, 2007.

3. Achaijee S., Chaudhuri S. S. Fuzzy Logic Based Three Step Search Algorithm for Motion Vector Estimation. Int.J. Image, Graphics and Signal Processing, no 2, 2012, p. 37-43.

4. Leonenkov A. V. BXVSt. Petersburg. 2005, p. 736.

5. Favorskaya M. N., Pahirka A. I., Shilov A. S., Da-mov M. V. VestnikSibGAU. 2009, no. 1 (22), p. 69-73.

6. Favorskaya M. N., V. V. Buryachenko Video Stabilization of Static Scenes Based on Robust Detectors and Fuzzy Logic Frontiers in Artificial Intelligence and Applications, 2013, p. 11-20.

7. Tanakian M., Rezaei M., Mohanna F., Digital Video Stabilization System by Adaptive Fuzzy Filtering EUSIPCO 2001, 2011, p. 166-168.

8. Buryachenko V. V. Vestnik SibGAU. 2012, no (3), p. 10-15.

9. Sugeno M. Industrial Applications of Fuzzy Control Elsevier Science Inc., New York, 1985.

10. Grundmann M., Kwatra V., Essa I. Auto-Directed Video Stabilization with Robust L1 Optimal Camera Path, CVPR, 2011.

© EyprneHKO B. B., 2013

УДК 537.32

АНАЛИЗ ЭФФЕКТИВНОСТИ ПРИМЕНЕНИЯ ТЕРМОЭЛЕКТРИЧЕСКИХ МОДУЛЕЙ В СИСТЕМАХ ОХЛАЖДЕНИЯ РАДИОЭЛЕМЕНТОВ

Е. Н. Васильев, В. А. Деревянко

Институт вычислительного моделирования СО РАН Российская Федерация, 660036, Красноярск, Академгородок, 50/44. E-mail: ven@icm.krasn.ru

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

Ключевые слова: термоэлектрический модуль, тепловой режим радиоэлементов, система охлаждения.

THE ANALYSIS OF THERMOELECTRIC MODULE EFFICIENCY IN THE COOLING SYSTEMS

E. N. Vasilyev, V. A. Derevyanko

Institute of Computational Modeling Russian Academy of Sciences, Siberian Branch 50/44, Akademgorodok, Krasnoyarsk, 660036, Russian Federation. E-mail: ven@icm.krasn.ru

A heat transfer process in the usual system of the heat sink and the thermoelectric cooling system are considered. The calculations of the process characteristics are carried out. The dependences of the cooling efficiency on integral

i Надоели баннеры? Вы всегда можете отключить рекламу.