Существует довольно много алгоритмов обработки изображений, кроме тех, которые обычно используются в программном обеспечении для работы с фотографиями. Каждый предназначен для улучшения определенных свойств. Например, некоторые общие свойства:
- Скорость
- локализация (хорошая локализация означает, что отклик детектора очень высок у края)
- размер кромки (например, обнаруживать только большие кромки)
- прямолинейность края
- шум (он улавливает, скажем, шум соли и перца как края)
- ответ угла (распознает ли он углы как края)
- вращательная инвариантность (ребра дают одинаковый отклик независимо от угла)
- инвариантность освещения (края дают одинаковый отклик независимо от яркости)
Ни один детектор края не может сделать все это: например, детекторы, инвариантные к освещению, часто воспринимают артефакты jpeg в качестве краев, а истинные детекторы, инвариантные к вращению, часто медленны.
Наглядный пример из http://www.sci.utah.edu/~cscheid/spr05/imageprocessing/project4/, показывает изображение и его обнаружение края "Canny", используя низкий порог. Мы ясно видим артефакты JPEG.
Детекторы краев в программном обеспечении для фото часто выбираются по скорости. Обычно это означает маленькие ядра (размер соседства).
Вот пример тестового изображения с откликом детектора краев и откликом с порогом и скелетонизацией:
Sobel и Prewitt похожи, но используют только два ядра (одно x и одно y - дополнительную информацию см. В pdf-ссылке TFuto в комментариях к вопросу). Они имеют худшую локализацию, чем метод Робертса. Метод Робертса использует восемь ядер (N, NE, E, SE, S, SW, W, NW) и поэтому также является более инвариантным относительно вращения и, кажется, лучше обрабатывает углы. Лапласиан Гауссова (LoG) выглядит совершенно по-другому, поскольку использует нулевые пересечения, чтобы найти края линий, но борется с углами.
Для обычной фотографии многие методы, которые возвращают простой отклик интенсивности края (например, Нобелевский, Превитт, Робертс, а не LoG), вполне могут выглядеть похожими. Если изображение имеет резкий контраст, различия могут стать более заметными.
Кажется, что вы могли бы использовать комбинацию кривых и выравнивания, чтобы результаты одного алгоритма имитировали результаты других.
Если ядра очень похожи, то это возможно. Методы Собеля и Превитта в основном неразличимы, хотя метод Собеля и больше весит центр.
Имеет ли значение, какой искатель кромки вы используете?
Для вычислительной визуализации да это может иметь большое значение для таких приложений, как обнаружение функций и стереоизображение.
Для фотографии это зависит от того, какой метод дает вам наилучшие результаты и чего вы пытаетесь достичь. Например, один метод, который дает очень резкий контраст, также может создавать много шума.