MATLAB.Exponenta
MATLAB и Simulink на русском
Технологии разработки и отладки
		сложных технических систем

Обработка сигналов и изображений\image Processing Toolbox

И.М.Журавель "Краткий курс теории обработки изображений"

В оглавление \ К следующему разделу \ К предыдущему разделу

Регистрация аэрофотографий на ортофотоснимках

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

Ключевые понятия Регистрация изображений, контрольные точки, геометрические преобразования, ортофотоснимки
Ключевые функции cpselect, cp2tform, imtransform

Демонстрация примера включает следующие шаги:

  • Шаг 1: Считывание изображения.
  • Шаг 2: Выбор контрольных точек.
  • Шаг 3: Выбор геометрических преобразований.
  • Шаг 4: Преобразование незарегистрированных изображений.
  • Шаг 5: Просмотр зарегистрированных изображений.

    Шаг 1: Считывание изображения.

    Изображение westconcordorthophoto.png представляет собой ортофотоснимок, на котором изображена некоторая часть поверхности земли. Изображение westconcordaerial.png являет собой незарегистрированное аэроизображение и содержит некоторые искажение относительно ортофотоснимка.

    unregistered=imread('westconcordaerial.png');
    figure, imshow(unregistered)
    figure, imshow('westconcordorthophoto.png')


    Шаг 2: Выбор контрольных точек.

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

    load westconcordpoints
    cpselect(unregistered(:, :, 1),'westconcordorthophoto.png',...
        input_points,base_points)

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

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

    Для запоминания контрольных точек необходимо в меню File выбрать опцию Save Points to Workspace. После запоминания точек следует перезаписать переменные input_points и base_points.

    Шаг 3: Выбор геометрических преобразований.

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

    t_concord=cp2tform(input_points, base_points, 'projective');

    Шаг 4: Преобразование незарегистрированных изображений.

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

    Info=imfinfo('westconcordorthophoto.png');
    registered=imtransform(unregistered, t_concord, ...
        'XData', [1 info.Width], 'YData', [1 info.Height]);

    Шаг 5: Просмотр зарегистрированных изображений.

    figure, imshow(registered)

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

    В оглавление \ К следующему разделу \ К предыдущему разделу


  • Поиск по сайту:

    Система Orphus

    Яндекс.Метрика