Исследование электрогидродинамических течений диэлектрических жидкостей, страница 5

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

Автоматизация процесса обработки данных по исследованию ЭГД-течений.

Здесь предлагается несколько иной подход к обработке экспериментальных данных. Его отличие состоит в отказе от предварительной подготовки изображения в графическом редакторе, а так же в частичной  автоматизации процесса обработки данных. Предлагаемый метод универсален, пригоден для обработки данных как фото, так и видеосъемки. Разработанная программа полностью реализована в системе MATLAB с широким использованием стандартных процедур и функций, а также библиотеки Image Processing Toolbox. Изображение считывается из каждого файла функцией Imread. Поскольку производится обработка отрывка видеофильма, представляющего собой последовательность изображений, предусмотрена возможность последовательного перехода от кадра к кадру, для чего написана специальная функция sldchange. Все кадры должны именоваться специальным образом, иметь в конце названия трёхзначный порядковый номер. С помощью мыши помечается какой-либо элемент траектории (на картинке – точка или штрих). Координаты курсора мыши в момент нажатия на кнопку считываются и передаются в рекуррентную функцию corrector, которая определяет самый яркий пиксел вблизи исходной точки, производит бинаризацию по заданному уровню, выделяет объект, cодержащий пиксел максимальной яркости функциями bwselect и bwlabel и возвращает координаты центра этого объекта.

Рис. 4.  Реальное местоположение метки (обведено красным) и точки послесвечения.

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

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

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