Основи комп'ютерного зору: від пікселів до розуміння
Комп'ютерний зір — навчання машин інтерпретувати візуальну інформацію — одне з найуспішніших застосувань глибокого навчання. Від розпізнавання цифр до виявлення об'єктів у реальному часі в безпілотних автомобілях CNN нині досягають або перевершують точність людини в багатьох візуальних задачах. Розуміння математичної основи показує, чому ці системи такі потужні й де вони все ще зазнають невдач.
1. Представлення та попередня обробка зображень
Цифрове зображення — це 2D-масив (або 3D-тензор для кольору) цілих значень пікселів. Для RGB-зображення висотою H, шириною W тензор має форму [H × W × 3], де кожен канал зберігає значення 0–255.
2. Згортки та фільтри
Згортка проводить невелике ядро (фільтр) по зображенню, обчислюючи зважену суму в кожній позиції. Ця операція — основний будівельний блок CNN:
3. Архітектура CNN
CNN складає кілька типів шарів, щоб поступово навчатися ознак вищого рівня:
- Згортковий шар: навчається ядер (ваг), що активуються на певних патернах. Ранні шари виявляють краї та текстури; глибші шари виявляють частини об'єктів і цілі об'єкти.
- Функція активації: ReLU (Rectified Linear Unit): f(x) = max(0, x). Уводить нелінійність. Leaky ReLU, GELU застосовують у сучасних мережах.
- Пакетна нормалізація (Batch Normalisation): нормалізує активації в межах пакета до середнього 0, ст. відхилення 1, потім масштабує навчувані параметри γ, β. Суттєво стабілізує навчання, дозволяє вищі темпи навчання.
- Пулінг: макс-пулінг (субдискретизація карт ознак) зменшує просторові розміри, збільшує рецептивне поле, забезпечує деяку інваріантність до зсуву. Макс-пул 2×2 з кроком 2 → зменшує обидва виміри вдвічі.
- Повноз'єднаний (FC) шар: кінцеві шари розгортають об'єм ознак у вектор і навчаються глобальних комбінацій для класифікації.
4. Класичне виявлення ознак
До глибокого навчання в комп'ютерному зорі домінували вручну сконструйовані детектори ознак, які залишаються актуальними для легких застосувань і геометричних задач:
- Детектор кутів Гарріса (1988): обчислює структурний тензор M градієнтів зображення. У куті обидва власні значення M великі. Рішення: R = det(M) − k·trace(M)². R > поріг → кут.
- HOG (гістограма орієнтованих градієнтів, 2005): поділ зображення на комірки, обчислення гістограми орієнтації градієнтів на комірку, нормалізація по перекривних блоках. Використано в першому практичному детекторі пішоходів (Далал і Тріггс). Досі застосовується як вхідні ознаки для SVM.
- SIFT (масштабонезалежне перетворення ознак, 1999/2004): виявляє ключові точки в масштабному просторі (різниця гаусіан), обчислює 128-вимірний дескриптор, інваріантний до масштабу, повороту та освітлення. Широко застосовується у зшиванні зображень, панорамах, 3D- реконструкції (COLMAP).
5. Виявлення об'єктів: YOLO та R-CNN
Виявлення об'єктів вимагає одночасно класифікувати об'єкти й локалізувати їх обмежувальними рамками. Дві основні парадигми:
6. Семантична та екземплярна сегментація
Замість обмежувальних рамок сегментація присвоює мітку класу кожному пікселю:
- Семантична сегментація: кожен піксель позначається класом — «небо», «дорога», «людина». Не розрізняє різні екземпляри одного класу (усі автомобілі позначаються «автомобіль»). FCN (повністю згорткова мережа) і DeepLab (з розширеними згортками й постобробкою CRF) — еталонні моделі.
- Екземплярна сегментація: окрема маска для кожного екземпляра об'єкта — кожен окремий автомобіль отримує власну маску. Mask R-CNN додає голову передбачення масок до Faster R-CNN, створюючи бінарні маски сегментації для кожного виявленого екземпляра з мінімальними додатковими витратами.
- Паноптична сегментація: поєднує семантичну (для фонового «stuff») та екземплярну (для об'єктів переднього плану «things») — єдине уніфіковане розмічування. Найкращі сучасні системи — Panoptic-FPN, моделі на основі DETR.
7. Сучасний зір: трансформери та далі
Візуальні трансформери (ViT, 2020) застосовують механізм самоуваги NLP-трансформерів безпосередньо до зображень:
- Зображення поділяється на патчі 16×16, кожен розгортається у вектор і лінійно вбудовується як «токен».
- Самоувага обчислює попарні взаємодії токенів — глобальне рецептивне поле з першого шару, на відміну від CNN, що нарощують його поступово.
- Попередньо навчений на великих наборах даних (ImageNet-21k, JFT-3B), ViT перевершує CNN у масштабі.
- Гібридні моделі (CvT, ConvNeXt) поєднують згорткове зміщення локальності з глобальним контекстом на основі уваги.
- CLIP (контрастне попереднє навчання мова–зображення, OpenAI 2021): спільно навчає кодувальник зображень і кодувальник тексту на 400 млн пар зображення-текст. Може виконувати zero-shot класифікацію, порівнюючи зображення з текстовими описами. Основа для умовної генерації DALL-E, Stable Diffusion.
- Segment Anything Model (SAM, Meta 2023): керована підказками сегментація через підказки точка/рамка/текст. Навчена на 1 мільярді масок. Узагальнюється на небачені об'єкти й домени без донавчання.
- Виявлення з відкритим словником: моделі на кшталт Grounding DINO виявляють довільні класи з текстових підказок, а не лише фіксований набір категорій — рух до справжнього розуміння відкритого світу.