Функции > Векторы и матрицы > Другие функции для работы с массивами > Пример. 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. Рассчитайте примерное процентное соотношение моркови в исходном изображении.
Щелкните для копирования этого выражения
Щелкните для копирования этого выражения
Данный метод также полезен при подсчете бактерий и в других оценках изображений.
Было ли это полезно?