к.т.н. Карлов Кирилл Рудольфович
при поддержке проекта «Механика времени»
подробное сравнение и рекомендации
В области анализа потоков (PIV — Particle Image Velocimetry) выбор подходящего алгоритма играет ключевую роль в получении точных и надёжных результатов. В этой статье мы подробно рассмотрим четыре алгоритма PIV: Cross Correlation, Phase Correlation, Lucas-Kanade и Lucas-Kanade Improved, — и поможем определиться с выбором в зависимости от задачи.
1. Обзор алгоритмов
Cross Correlation (кросс-корреляция)
- Принцип работы: использует быстрое преобразование Фурье (FFT) для вычисления корреляции между двумя окнами изображения.
- Математическая основа:
C(u,v) = FFT⁻¹[FFT(I₁) × FFT*(I₂)]
где:I₁, I₂— окна изображенийFFT*— комплексно-сопряженное FFTC(u,v)— корреляционная карта - Преимущества: высокая скорость работы, стабильность, хорошая точность для большинства случаев, низкие требования к памяти, возможность параллелизации.
- Недостатки: ограниченное поле поиска, проблемы с вращением, чувствительность к шуму при низком SNR.
- Рекомендации по применению: подходит для стандартного анализа ламинарных потоков, предварительного анализа, работы с ограниченными ресурсами. Оптимальный размер окна — 32–64 пикселя, перекрытие — 25–50 %, поле поиска — 8–16 пикселей.
Phase Correlation (фазовая корреляция)
- Принцип работы: анализирует фазовую информацию в частотной области для определения смещения.
- Математическая основа:
P(u,v) = FFT(I₁) × FFT*(I₂) / |FFT(I₁) × FFT*(I₂)| δ(x,y) = FFT⁻¹[P(u,v)]
гдеP(u,v)— нормализованная фазовая корреляция. - Преимущества: точность субпикселя, устойчивость к шуму, хорошая работа с вращением, независимость от яркости.
- Недостатки: медленнее Cross Correlation, проблемы с периодическими структурами, требует больше памяти, чувствительность к границам.
- Рекомендации по применению: оптимален для анализа вихревых и турбулентных потоков, высокоточных измерений. Рекомендуемый размер окна — 64–128 пикселей, перекрытие — 50–75 %, размер FFT — 64–128.
Lucas-Kanade Feature Tracker
- Принцип работы: использует оптический поток для отслеживания признаков между кадрами.
- Математическая основа:
I(x,y,t) = I(x+dx, y+dy, t+dt)
Линеаризация:Iₓdx + Iᵧdy + Iₜ = 0
гдеIₓ, Iᵧ, Iₜ— пространственные и временные производные. - Преимущества: хорошо работает с большими смещениями, адаптивность, устойчивость к деформациям, работает с разреженными данными.
- Недостатки: очень медленный, нестабильность при использовании OpenCV, чувствительность к параметрам, проблемы с однородными областями.
- Рекомендации по применению: подходит для анализа сложных деформаций, больших смещений, разреженного анализа. Рекомендуемый размер окна — 16–32 пикселя, перекрытие — 0–25 %.
Lucas-Kanade Improved (улучшенный Лукас-Канаде)
- Принцип работы: улучшенная версия Lucas-Kanade с собственной реализацией корреляции и дополнительными оптимизациями.
- Математическая основа: комбинирует улучшенную корреляцию с множественными методами, адаптивное сглаживание с фильтром Гаусса, субпиксельную точность через интерполяцию.
- Преимущества: стабильность, улучшенная точность, адаптивность, хорошо работает с вихрями.
- Недостатки: очень медленный, сложность настройки, высокие требования к ресурсам, может быть избыточным для простых случаев.
- Рекомендации по применению: оптимален для анализа сложных вихревых потоков, турбулентных течений, высокоточного анализа. Рекомендуемый размер окна — 12–24 пикселя, перекрытие — 50–75 %.
2. Сравнительная таблица
| Характеристика | Cross Correlation | Phase Correlation | Lucas-Kanade | Lucas-Kanade Improved |
|---|---|---|---|---|
| Скорость | ⭐⭐⭐⭐⭐ | ⭐⭐⭐⭐ | ⭐⭐ | ⭐ |
| Точность | ⭐⭐⭐ | ⭐⭐⭐⭐⭐ | ⭐⭐⭐⭐ | ⭐⭐⭐⭐⭐ |
| Стабильность | ⭐⭐⭐⭐⭐ | ⭐⭐⭐⭐ | ⭐⭐ | ⭐⭐⭐ |
| Память | ⭐⭐⭐⭐⭐ | ⭐⭐⭐ | ⭐⭐⭐⭐ | ⭐⭐ |
| Большие смещения | ⭐⭐ | ⭐⭐⭐ | ⭐⭐⭐⭐⭐ | ⭐⭐⭐⭐ |
| Вращение | ⭐⭐ | ⭐⭐⭐⭐ | ⭐⭐⭐ | ⭐⭐⭐⭐⭐ |
| Шум | ⭐⭐⭐ | ⭐⭐⭐⭐⭐ | ⭐⭐⭐ | ⭐⭐⭐⭐ |
| Простота настройки | ⭐⭐⭐⭐⭐ | ⭐⭐⭐⭐ | ⭐⭐ | ⭐ |
3. Рекомендации по выбору алгоритма
- Для быстрого анализа: Cross Correlation — лучший выбор для предварительного анализа, работы с большими наборами данных, ограниченных вычислительных ресурсов, стандартных ламинарных потоков.
- Для высокой точности: Phase Correlation — оптимален для калибровочных измерений, научных исследований, требующих субпиксельной точности, анализа вихревых потоков с умеренным вращением.
- Для сложных деформаций: Lucas-Kanade — подходит для анализа больших смещений, нелинейных деформаций, разреженного анализа, сложных турбулентных течений.
- Для вихревых потоков: Lucas-Kanade Improved — специально разработан для анализа интенсивных вихревых движений, сложных турбулентных структур, высокоточного анализа вихрей.
4. Оптимизация параметров
- Размер окна:
- 16–32 пикселя: быстрый анализ, большие структуры;
- 32–64 пикселя: стандартный анализ;
- 64–128 пикселей: высокая точность, мелкие структуры.
- Перекрытие:
- 0–25 %: быстрый анализ, разреженные данные;
- 25–50 %: стандартный анализ;
- 50–75 %: высокая точность, плотные данные.
- Поле поиска:
- 4–8 пикселей: малые смещения;
- 8–16 пикселей: стандартные смещения;
- 16–32 пикселя: большие смещения.
5. Производительность
- Время выполнения (относительно Cross Correlation):
- Cross Correlation: 1x (базовое);
- Phase Correlation: 2–3x;
- Lucas-Kanade: 50–100x;
- Lucas-Kanade Improved: 100–500x.
- Потребление памяти:
- Cross Correlation: 1x (базовое);
- Phase Correlation: 2–4x;
- Lucas-Kanade: 1–2x;
- Lucas-Kanade Improved: 3–5x.
Заключение
Выбор алгоритма PIV должен основываться на требованиях к точности, доступном времени, типе потока, размере смещений и вычислительных ресурсах. Для большинства практических задач рекомендуется начинать с Cross Correlation и переходить к более сложным алгоритмам только при необходимости.

Обсуждение закрыто.