Функции > Векторы и матрицы > Другие функции для работы с массивами > Пример. 2D-корреляция и согласование прототипа
  
Пример. 2D-корреляция и согласование прототипа
Иллюстрирует корреляцию 2D-ядра с изображением в области пространства.
Одним из ядер является гауссово ядро, которое создает эффект сглаживания.
Сведения об использовании этого примера см. в разделе Сведения о примерах обработки изображений.
2D-корреляция
1. Используйте функцию READ_IMAGE для считывания изображения.
Нажать для копирования этого выражения
2. Используйте функцию WRITEBMP, чтобы сохранить изображение в файл.
Нажать для копирования этого выражения
3. Задайте диапазон ядра и функцию.
Нажать для копирования этого выражения
Нажать для копирования этого выражения
Нажать для копирования этого выражения
4. Вычислите матрицу ядра 5 x 5.
Нажать для копирования этого выражения
Данное ядро симметрично, поэтому эффект будет тем же, что и для свертки: равносильным корреляции реверсированного ядра.
5. Определите коэффициент масштабирования mcscale.
Нажать для копирования этого выражения
6. Вычислите кросс-корреляцию, а затем переведите результат в 8-битовую шкалу оттенков серого со значениями от 0 до 255.
Нажать для копирования этого выражения
7. Используйте функцию WRITEBMP для сохранения результатов в файл.
Нажать для копирования этого выражения
8. Нарисуйте исходное изображение и корреляцию изображения с ядром.
(greyscale_dog.bmp)
(dog_cross.bmp)
Сравнение прототипа
1. Используйте функцию READ_IMAGE для чтения нового изображения.
Нажать для копирования этого выражения
2. Используйте функцию WRITEBMP для сохранения результатов в файл.
Нажать для копирования этого выражения
(peas_carrots.bmp)
Нажать для копирования этого выражения
Выделением выбирается характерное изображение моркови в качестве шаблона.
3. Задайте высоту и ширину шаблона.
Нажать для копирования этого выражения
Нажать для копирования этого выражения
4. Определите функцию val и используйте ее в функции matrix, чтобы создать шаблон.
Нажать для копирования этого выражения
Нажать для копирования этого выражения
5. Нарисуйте изображения шаблона и моркови.
Нажать для копирования этого выражения
Нажать для копирования этого выражения
Нажать для копирования этого выражения
(template.bmp)
(carrot.bmp)
6. Задайте порог корреляции.
Нажать для копирования этого выражения
7. Используйте однородный шаблон того же размера, что и выделенная морковь, или само изображение моркови для подсчета количества повторений:
Нажать для копирования этого выражения
Нажать для копирования этого выражения
Нажать для копирования этого выражения
Нажать для копирования этого выражения
Нажать для копирования этого выражения
(carrot_vect.bmp)
Большинство изображений горошка будет закрашено некоррелированными, пороговыми значениями, а большинство изображений моркови останутся видимыми. Сравнение происходит между исходным изображением и прямоугольным шаблоном однородной плотности, который неточно различает морковь в этой случайной упаковке замороженных овощей.
8. Рассчитайте примерное процентное соотношение моркови в исходном изображении.
Нажать для копирования этого выражения
Нажать для копирования этого выражения
Данный метод также полезен при подсчете бактерий и в других оценках изображений.