Histogram of Oriented Gradients, HOG (Гистограмма ориентированных градиентов) — это алгоритмический фундамент компьютерного зрения, который позволил искусственному интеллекту научиться распознавать объекты на основе их формы.
Предложенный исследователями Навнитом Далалом и Биллом Триггсом в 2005 году, этот метод стал индустриальным стандартом для детектирования пешеходов задолго до того, как нейросети стали массовым инструментом.
В отличие от современных сверточных сетей (CNN), которые извлекают признаки путем обучения миллионам параметров, HOG — это жестко детерминированный математический фильтр. Его задача перевести визуальный силуэт объекта в компактную числовую последовательность, понятную классификатору.
Суть метода заключается в том, что контур любого предмета определяется резким перепадом яркости. Там, где заканчивается объект и начинается фон, пиксели меняют интенсивность. Алгоритм анализирует градиент — вектор, показывающий направление самого крутого изменения освещенности. Направление этого вектора всегда перпендикулярно границе объекта. Собирая статистику этих направлений в малых областях, мы получаем уникальный архитектурный чертеж или отпечаток формы.
Процесс преобразования картинки в дескриптор состоит из четырех последовательных этапов:
1. Вычисление дифференциала Сначала изображение лишается цвета и переводится в градации серого. Затем с помощью операторов свертки (чаще всего оператора Собеля) вычисляются производные по горизонтали (I) и вертикали (). Из них формируются две характеристики для каждой точки:
2. Пространственная агрегация (Ячейки и Блоки) Изображение нарезается на сетку мелких зон — ячеек, стандартный размер которых составляет пикселей. Внутри каждой ячейки строится локальная гистограмма. Весь диапазон углов от до делится на корзины (бины). Каждый пиксель голосует за корзину своего угла, при этом вес голоса пропорционален силе его градиента. В итоге 64 пикселя ячейки сжимаются в короткий вектор из 9 чисел.
Чтобы избежать влияния случайных теней или засветов, ячейки объединяются в более крупные группы — блоки (обычно ячейки). Вектор признаков всего блока нормализуется. Это ключевой шаг: деление на норму делает описание инвариантным к уровню освещения. Процесс нормализации часто включает обрезку выбросов (L2-hys), чтобы один сверхконтрастный край не доминировал над всей картиной.
3. Формирование глобального вектора Нормализованные блоки перекрывают друг друга, создавая избыточность, которая подавляет шум. Все эти данные выстраиваются в одну длинную строку цифр. Для классического окна поиска пешехода размером пикселей итоговый массив данных содержит несколько тысяч значений, описывающих геометрию сцены.
С появлением архитектур YOLO, SSD и Faster R-CNN ручной расчет HOG уступил место автоматическому извлечению признаков сетями. Однако алгоритм остается критически важным элементом ИИ-экосистемы:
Хотя оба метода работают с ориентацией краев, они решают разные задачи. SIFT ищет уникальные ключевые точки (разреженно) и поворачивает дескриптор так, чтобы он был одинаковым независимо от поворота камеры. HOG же работает плотно по всему изображению, предполагая, что контекст уже задан (например, человек в датасете обычно стоит вертикально), и фокусируется исключительно на кодировании силуэта.
HOG — это триумф инженерной мысли над сырыми данными. Этот метод доказал, что глубокое понимание физики формирования изображения может заменить слепое обучение многослойных сетей на ранних этапах развития технологий.
Сегодня знание принципов построения гистограммы ориентированных градиентов является признаком высокой квалификации специалиста по данным, позволяя ему глубже понимать механизмы, лежащие в основе даже самых продвинутых трансформеров компьютерного зрения.
Свяжитесь с нашими экспертами для подбора оптимальной конфигурации оборудования и расчета стоимости аренды под ваши задачи ИИ.