Разработки СО РАН - каталоги программ и БД

Поиск по каталогам:

2014-12-31

Назначение: программа предназначена для вычисления и сохранения в виде raw-файла текстурных признаков CONTEXT для всех пикселей полутонового изображения.

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

Используемый алгоритм - Вычисляются статистические текстурные признаки CONTEXT, определяемые в пикселе  как гистограмма уровней серого тона в его окрестности [1]. Использование признаков  CONTEXT для неконтролируемой классификации изображений леса на аэроснимках с помощью алгоритма [2] описано и иллюстрировано на сайте http://loi.sscc.ru/lab/RFFI2013/RU/sidorova_separability_TEXTURA.htm. Использование контекстных характеристик требует предварительного  сокращения размерности и квантования пространства спектральных признаков. 

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

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

1.     Gong P and P Howarth Frequency base classification and grey level vector reduction for land use identification. // PE&RS, Vol.58, No.4, April 1992, PP.423-437

2.      V. S. Sidorova. Detecting Clusters of Specified Separability for Multispectral Data on Various Hierarchical Levels. // Pattern Recognition and Image Analysis, 2014, Vol. 24, No. 1, pp. 151–155...

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

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

Инструментальные средства создания - Алгоритм реализован в программной среде системы объектно-ориентированного программирования Visual C++ версии 5.0 фирмы Microsoft c библиотекой классов MFC, разработанной для ОС Windows. При разработке программы  использовался механизм многодокументного интерфейса MDI.

2014-12-31

Назначение: Программа предназначена для вычисления вероятностных характеристик решения систем со случайной структурой с распределенными переходами.

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

Используемый алгоритм: Для моделирования решения используется алгоритм на основе обобщенного метода Эйлера и метода максимального сечения [1].

Оцениваются следующие вероятностные характеристики решения:

  • условные: первый, второй момент и дисперсия для каждой структуры;
  • безусловные: первый, второй момент и дисперсия; вероятности состояний;
  • плотность вероятности для каждой структуры;
  • одномерная плотность распределения.

Вектор состояния Y(t) в каждой l-й структуре задан автономными стохастическими дифференциальными уравнениями (СДУ) в смысле Ито

dY(t) = A_l(Y(t))*dt + B_l(Y(t))*dW(t), где 

    Y(t) - вектор состояния системы (размерности n);

   W(t) - вектор независимых стандартных винеровских процессов (размерности m);

   A_l(Y) - известные векторные функции размерности n (снос);

   B_l(Y) - известные матричные функции размерности n x m (диффузия).

Интенсивности переходов зависят от времени и заданы матричной функцией V размерности lk x lk, где lk – число структур. Предполагается, что в начальный момент времени Т0 известно распределение вектора состояния системы Y(T0) и номер начальной структуры l(T0).

1. Т.А. Аверина. Статистический алгоритм моделирования динамических систем с переменной структурой  // Сиб. ЖВМ, 2002, т. 5, № 1, сс. 1-10.

В приложении находятся два файла:

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

2.  random_structure_2014.rar - .заархивированные файлы программы и ее описания.
Инструментальные средства создания - Язык программирования Фортран ...

2014-12-30

Назначение - для иллюстрации процесса решения линейного дифференциального уравнения первого порядка методом Бернулли-Фурье с добавлением по одному символу после временной задержки.

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

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

[1] Попов А.А. Методика программирования на языке Java тренажеров по математике с посимвольным контролем аналитических преобразований. Программная инженерия, 2012, №8, с.38-43.

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

Инструментальные средства создания - программы написаны на языке Java с использованием среды Eclipse

Во вложении запакованный файл IllustrBernulli.rar содержит 7 файлов: файл с расширением .bat необходим для загрузки файла с основным классом IllustrBernulli.class, который в процессе выполнения использует остальные классы.В файле IllustrBernulli.doc проиллюстрированы основные моменты работы программы.

2014-12-30

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

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

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

[1] Попов А.А. Методика программирования на языке Java тренажеров по математике с посимвольным контролем аналитических преобразований. Программная инженерия, 2012, №8, с.38-43.

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

Инструментальные средства создания: программы написаны на языке Java с использованием среды Eclipse

Во вложении архивный файл TrainBernulli.rar содержит 7 файлов: файл с расширением .bat необходим для загрузки файла с основным классом TrainBernulli.class, который в процессе выполнения использует остальные классы. В файле TrainBernulli.doc проиллюстрированы основные моменты работы программы.

2014-12-24

Назначение - Тест проверяет принадлежность к простым числам сверхбольших чисел Мерсенна.
 

Область применения - Теория чисел, тестирование производительности вычислительных систем.
 

Используемый алгоритм - Используется  алгоритм теста Люка-Лемера, в котором сверхбольшие числа представлены в виде динамических линейных массивов в двоичной системе счисления. Арифметические операции над числами выполняются по алгоритмам длинной арифметики. Поиск очередного самого большого простого числа   Мерсенна вида 2PM - 1 , где РM, в свою очередь, простое число, принимающее значения более 57 млн, является весьма трудоемкой задачей. В соответствии с тестом Люка-Лемера выполняется (PM -2) итераций цикла, на каждой из которых определяется целочисленный остаток от деления на число Мерсенна. Эта операция и определяет в основном трудоемкость теста. Только при представлении чисел в двоичной системе счисления представляется возможность упростить эту операцию до одной элементарной операции сложения. 

В программе реализован разработанный авторами алгоритм вычисления целочисленного остатка при делении на сверхбольшое чисто Мерсенна в двоичной системе счисления.  Целочисленный остаток в двоичной системе счисления определяется как сумма двух частей в записи делимого. Первая часть записи от разряда единиц (нулевой разряд) до разряда с номером (PM - 1), где PM - показатель степени числа Мерсенна. Вторая часть записи от разряда с номером PM и до старшего разряда в записи делимого. Использование данного алгоритма позволяет существенно снизить трудоемкость теста Люка-Лемера и время работы программы.

Алгоритм описан в статье Гончаренко В.Е. "Оптимизация вычислений целочисленного остатка в тесте Люка-Лемера для сверхбольших чисел Мерсенна" в сборнике статей Международной научно-практической конференции "Теоретические и практические вопросы науки XXI века", 2014 г., г. Уфа, Ч2.

Функциональные возможности - Функциональные возможности могут быть ограничены размером свободной динамической памяти ЭВМ. Размер используемых в программе двух динамических линейных массивов равен значению степени PM числа Мерсенна, которое в современных вычислениях принимает значение более 57 млн. В программе предусматривается проверка достаточности оперативной памяти для текущих вычислений.

Инструментальные средства создания - Microsoft  Visual Studio 2010, Visual C++.

Во Вложении прикреплен файл исходного кода программы на языке C++.