В процессе сбора или передачи изображений на него часто воздействуют различные шумы, что затрудняет чтение и идентификацию содержащейся в них важной информации. Например, неравномерное освещение сделает оттенки серого изображения слишком концентрированными; шум, создаваемый схемой цифро-аналогового преобразования камеры, снизит качество изображения; ограничения устройства отображения изображения приведут к тому, что цвет отображения изображения быть уменьшена и т.
Следовательно, прежде чем изображение будет проанализировано и обработано, оно должно быть улучшено, чтобы сделать его более подходящим для дальнейшего анализа и обработки людьми или машинами.
Улучшение изображения — важная ветвь обработки изображений. В зависимости от применения данного изображения оно усиливает полезную информацию в изображении с помощью различных алгоритмов, целенаправленно подчеркивает общие или локальные характеристики изображения, подавляет неинтересные области, увеличивает разницу между различными элементами изображения и улучшает качество изображения. качество изображения. , усилить эффект интерпретации и распознавания изображений, чтобы изображение могло лучше соответствовать потребностям анализа или принятия машинных решений.
Улучшение изображения, как правило, не может увеличить исходную информацию об изображении, но оно может выделить слабые сигналы для некоторых условий изображения и облегчить различение информации. Алгоритмы улучшения изображения можно разделить на две категории: алгоритмы, основанные на пространственной области, и алгоритмы, основанные на частотной области (область преобразования), как показано на следующем рисунке:
В пространственной области улучшение изображения в основном достигается за счет манипулирования уровнями серого пикселя в разных положениях и их изменяющимися направлениями, тогда как в частотной области улучшение изображения в основном достигается за счет манипулирования пространственной частотой.
В дополнение к подготовке к распознаванию изображений, машинному распознаванию и принятию решений, само улучшение изображения имеет широкий спектр применений. Например: в военных приложениях можно усиливать интересующие объекты противника на инфракрасных изображениях; в медицинских приложениях можно усиливать рентгеновские изображения головного мозга и грудной клетки пациента для определения точного местоположения болезни; в космических приложениях функция Enhance качество изображения с изображениями, возвращаемыми космическими камерами; в сельскохозяйственных приложениях улучшайте изображения дистанционного зондирования, чтобы понять распределение урожая; в транспортных приложениях улучшайте изображения туманной погоды, чтобы улучшить важную информацию, такую как номерные знаки и идентификация дорожных знаков, и т. д.
1. Алгоритм улучшения изображения в пространственной области
Алгоритм улучшения изображения в пространственной области непосредственно выполняет точечную операцию или обработку окрестности изображения.
Операция точки напрямую выполняет преобразование точки в точку в оттенках серого пикселя.Обычные операции точки включают:Преобразование оттенков серого, сопоставление (коррекция) гистограммы и выравнивание гистограммы, а также некоторые арифметические или логические операции над изображениями и т. д. Улучшение соседства изображения берет определенный пиксель в качестве центра, интегрирует значение серого пикселя и пикселей в определенном диапазоне вокруг него (окрестности) для расчета и использует результат расчета в качестве нового значения серого центрального пикселя. .
В зависимости от того, является ли выходной пиксель линейной комбинацией входного пикселя и соседних с ним пикселей, методы улучшения окрестности изображения можно разделить на две категории: линейные и нелинейные. Каждый тип метода можно дополнительно разделить на методы фильтрации нижних частот и методы фильтрации верхних частот. Алгоритм фильтрации нижних частот может отфильтровать высокочастотный шум в изображении и сделать его более гладким; фильтрация верхних частот может усилить высокочастотные детали, такие как контур или край объекта на изображении, и сделать их более четкими. .
1.1 Линейная свертка
1.1.1, одномерная свертка
Улучшение изображения в пространственной области часто реализуется с помощью операции линейной свертки, которая завершает процесс вычисления, сдвигая шаблон в изображении и непрерывно вычисляя новое значение каждого пикселя в соответствии со значением соседних пикселей.
Согласно теории обработки сигналов, линейная стационарная система может быть описана ее передаточной функцией. Если внутренние детали линейной системы игнорируются, линейная система может быть абстрагирована как свертка (Convolution) входного сигнала f(t) и его импульсной характеристики передаточной функции h(t) во временной области и может быть абстрагирована поскольку входной сигнал F(s) является произведением импульсной характеристики его передаточной функции h(s). На следующем рисунке показана модель линейной системы, основанная на передаточной функции:
Операция свертки является интегральной операцией, которая отражает интеграл произведения перекрывающейся части функции h(T) при ее перемещении вдоль оси r на другую функцию f(T) после ее обращения к h( -Т). На рисунке ниже показаны инверсия, перевод, умножение и интегрирование двух функций для вычислений свертки.
Для дискретных сигналов, предполагая наличие двух последовательностей f(i) и h(j) длины m и n соответственно, их интеграл будет представлять собой последовательность длины (m+n-1), которую можно выразить как:
Процесс свертки дискретного сигнала подобен процессу свертки непрерывного сигнала, за исключением того, что после того, как одна из последовательностей перевернута, сдвинута и умножена на соответствующие точки, которые перекрываются с другой последовательностью, выполняется операция суммирования. На следующем рисунке показан процесс вычисления свертки для двух дискретных последовательностей:
Свертку можно рассматривать как операцию «взвешенной суммы», если вы думаете об обратном значении одной из последовательностей как о весе соответствующей точки, когда она перекрывает другую последовательность.
Если все значения обратных последовательностей являются нормализованными значениями, свертка может рассматриваться как операция «средневзвешенного» на наборе последовательностей. Если линейная стационарная система является двумерной системой, ее можно выразить в следующих непрерывных и дискретных формах:
Непрерывная форма:
Дискретная форма:
Кроме того, если двумерная линейная система сепарабельна, т. е. h (x, y) = h1(x)h2 (y), то линейную систему можно разложить на две одномерные свертки:
Дискретная форма:
Это означает, что когда выполняется расчет 2D-свертки, его можно разложить на два последовательных расчета 1D-свертки. В инженерной практике такая декомпозиция часто значительно сокращает объем вычислений программного алгоритма и повышает скорость вычислений.
1.1.2, двумерная свертка
Процесс вычисления свертки двумерного непрерывного сигнала логически подобен таковому одномерной свертки.
При расчете один из сигналов h(u, v) можно повернуть на 180° относительно своего начала, а затем сигнал можно переместить по оси u и оси v с началом в качестве центра (ось u переводит x, ось v переводит y), а затем две перекрывающиеся части сигналов перемножаются и интегрируются для получения выходного сигнала в начале координат. Если сигнал является двумерным дискретным сигналом, вы можете сначала повернуть одну из последовательностей дискретной решетки h(m, n) на 180° вдоль ее центральной точки, а затем повернуть центральную точку вдоль другой последовательности дискретной решетки f(m , n) на 180° Для горизонтального и вертикального скольжения каждый раз, когда достигается положение, соответствующие элементы (окрестности центральной точки), перекрывающие две последовательности, умножаются и суммируются для получения свертки точки.
Если дискретный двумерный сигнал f (m, n) рассматривать как цифровое изображение, подлежащее обработке, а решетка h(m, n) симметрична относительно своего центра (т. е. результат одинаков до и после поворота 180°), это может быть прямое перемещение h(m, n) в цифровом изображении f(m, n) завершает операцию свертки изображения. В это время решетка h(-m,-n) или центрально-симметричная дискретная решетка h(m,n) после поворота на 180° называется шаблоном или ядром свертки.
Расчет свертки изображения относится к методу обработки окрестности. Теоретически ядро свертки может быть любого размера, но для удобства обработки его часто оформляют в виде квадратного массива типа 3×3, 5×5 или 7×7. Тип ядра свертки определяет, как операция свертки преобразует пиксели изображения, а значения элементов (веса) в ядре свертки определяют влияние пикселей, которые оно покрывает, на центральный пиксель. При расчете ядро свертки плавно перемещается из левого верхнего угла в правый нижний угол изображения, и каждый раз при переходе на новый пиксель каждый фактор ядра свертки используется как весовое значение (чем больше абсолютная значения, тем точнее значение центра). Чем больше влияние точки), взвешенная сумма производится с пикселями в диапазоне изображения, который она охватывает, и результат используется в качестве значения пикселя центральной точки часть изображения, которую он покрывает.
На рисунке ниже показан процесс свертки изображения с ядром свертки размером 3×3. Ядро свертки скользит строка за строкой и столбцом вдоль верхнего левого угла изображения до последнего пикселя в нижнем правом углу. Для каждого хода 9 элементов P(x, y) в ядре свертки умножаются и суммируются с соответствующим пикселем K(x, y) на изображении, которое он покрывает, и результат∑K(x, y) P(x, y) будет новым значением пикселя P(x, y), охватываемого центральной точкой ядра на изображении. Когда ядро свертки скользит по всем пикселям и вышеуказанные вычисления завершены, вычисление свертки изображения завершается.
При разработке систем машинного зрения и обработки изображений операции свертки часто используются для улучшения изображений в пространственной области. Отфильтровывать шум в изображении или улучшать высокочастотные детали, такие как контур или край цели, определяется выбранным ядром свертки.
1.2, улучшение поля
Улучшение соседства изображения заключается в выполнении высокочастотной или низкочастотной фильтрации в пространственной области для удаления шума, повышения резкости контура изображения и повышения резкости края цели в определенном направлении.
Фильтрация изображения в пространственной области напрямую получает новое значение пикселя посредством некоторого вычисления или преобразования в соответствии со значением пикселя в пикселе и его окрестностях для реализации функции фильтрации. Если выходной пиксель представляет собой линейную комбинацию входного пикселя и его соседей, это называется линейной фильтрацией, в противном случае — нелинейной фильтрацией (медианная фильтрация, фильтрация с сохранением границ и т. д.). Например, фильтрация взвешенной суммы окрестностей изображения на основе свертки является методом линейной фильтрации в пространственной области, тогда как фильтрация в форме невзвешенных вычислений, таких как медианная фильтрация, является нелинейной фильтрацией.
В общем, фильтрация с линейным сглаживанием более эффективна для удаления различных шумов (таких как гауссовский шум). Но когда спектр сигнала совмещен со спектром шума или когда сигнал содержит неналоженный шум (например, шум, вызванный нелинейностью системы или негауссовским шумом и т. д.), линейная фильтрация всегда будет каким-то образом отфильтровывать шум. Размывает края и детали изображения, тем самым снижая распознаваемость линейных элементов изображения. Нелинейные фильтры часто основаны на определенных отношениях нелинейного отображения, и определенный шум приблизительно отображается на ноль, сохраняя при этом важные характеристики сигнала, поэтому он может в определенной степени преодолеть недостатки линейных фильтров.
NI Vision предоставляет ряд функций фильтрации для улучшения соседства изображения, расположенных вLabVIEW's Vision and Motion→Обработка изображений→Фильтры Палитра функций фильтра области пространства изображения. Используйте эти функции для выполнения линейной или нелинейной фильтрации верхних и нижних частот изображения, чтобы реализовать функцию повышения резкости или сглаживания краев, контуров и деталей объектов на изображении. Места следующие:
Описание функций и их использование см. в справочном руководстве:
1.2.1 Линейная фильтрация
В процессе разработки системы машинного зрения широко используемые методы линейной фильтрации, основанные на расчете свертки, включают линейный градиент, лапласиан, сглаживание и гауссовский тип4. Среди них первые два метода используются для резкости высокочастотных краев или деталей текстуры в изображении с быстрыми изменениями оттенков серого; последние два метода используются для фильтрации высокочастотного шума и деталей, чтобы сделать изображение более гладким. В следующей таблице приведены наиболее часто используемые методы линейной фильтрации:
Линейная фильтрация в расширении окрестности в основном основана на операциях свертки Размер ядра свертки определяет размер окрестности при обработке Значение элемента в ядре свертки задает весовое значение влияния каждого пикселя окрестности на центральный пиксель. Чем больше абсолютное значение, тем больше влияние на центральный пиксель. Если факторы в ядре свертки положительны или отрицательны, процесс фильтрации эквивалентен нахождению разности весов соседних пикселей, а эффект представляет собой фильтрацию верхних частот; а если в ядре свертки только положительные факторы, то процесс фильтрации эквивалентен нахождению соседних пикселей взвешенной суммы, эффект от которой довольно низкочастотная фильтрация. Линейный градиент, оператор Лапласа относятся к первой категории, а гауссовская и гладкая фильтрация — ко второй.
Nl Vision использует IMAQ Convolute с IMAQ GetKernel или IMAQ BuildKernel для линейной фильтрации изображений в пространственной области.
IMAQ Convolute может свернуть образ с ядром, заданным параметром Kernel, в то время как IMAQ GetKernel и IMAQ BuildKernel используются для получения предопределенного ядра Nl Vision или построения ядра из строки для передачи в параметры ядра IMAQ Convolute, как показано на следующий рисунок:
IMAQ BuildKernel ищет строку, разделенную запятыми или точками с запятой (каждая строка отделяется новой строкой), и преобразует числа в ядра свертки IMAQ GetKernel индексирует предопределенные свертки NIVision через код ядра. Код ядра свертки состоит из 4 цифр, из которых тысячи цифр представляют классификационный код ядра свертки (семейство Kernel), сотни цифр представляют размер ядра свертки (Kernel Size), а цифры единиц и десятков цифры вместе представляют ядро свертки.Номер (номер ядра). Например, в операторе градиента размером 3×3 14-й оператор кодируется как 1314.
Nl Vision предопределяет четыре типа ядер свертки: градиентное, лапласовское, гладкое и гауссовское.Разные ядра свертки имеют разные размеры и функции и могут быть проиндексированы по типу, размеру и номеру ядра свертки.
1.2.2 Нелинейная фильтрация
Методы нелинейной фильтрации также можно разделить на две категории: фильтрация верхних частот для обнаружения границ и фильтрация нижних частот для удаления случайных точек на изображении.
Обычно используемые нелинейные методы обнаружения краев (высокочастотные) включают нелинейный градиент (нелинейный градиент), методы Робертса, разности (дифференциация), методы Собеля, Превитта, сигмы и Канни 7 видов. К нелинейным методам фильтрации нижних частот относятся медианная (медианная) фильтрация, фильтрация N-порядка (порядке) фильтр, фильтр нижних частот (Lowpass) 3 вида. В следующей таблице приведены часто используемые методы нелинейной фильтрации:
Подобно методу линейной фильтрации, метод нелинейной фильтрации в пространственной области также часто использует оператор фильтрации, который вычисляется на основе окрестности пикселя, но его функция вычисления часто не является линейной функцией. Если значение пикселя, координата которого равна (x, y), используется в формате P (x, y), различные алгоритмы нелинейной фильтрации могут быть представлены нелинейной функцией уровня серого пикселя.
Процессы нелинейного градиента, Робертса и разностной фильтрации выполняются на основе окрестности 2 × 2 в верхнем левом углу пикселя. Нелинейная градиентная фильтрация вычисляет абсолютное значение разницы между соседними пикселями в вертикальном направлении и принимает большее значение в качестве нового значения пикселя. Процесс фильтрации Робертса аналогичен процессу вычисления нелинейной градиентной фильтрации, но он вычисляет абсолютное значение разницы между пикселями в окрестности 2×2 в верхнем левом направлении пикселя вдоль диагонального направления и берет большее значение. один в качестве нового элемента.значение. Процесс фильтрации различий вычисляет абсолютное значение разницы в каждом направлении для пикселей в окрестности 2×2 в верхнем левом направлении пикселя и принимает большее из них в качестве нового значения элемента.
Сглаживание изображения с использованием IMAQ Convolute, нелинейная фильтрация верхних частот (включая нелинейный градиент, Робертса, дифференциальную фильтрацию, фильтрацию Собеля, Превитта и сигма, которые будут описаны ниже), IMAQ LowPass и IMAQ NthOrder с помощью IMAQ EdgeDetection Нелинейная фильтрация нижних частот изображения, пример программы IMAQ CannyEdgeDetection для реализации алгоритма Кэнни Узнайте, как использовать линейную фильтрацию, нелинейную фильтрацию и алгоритм Кэнни.Поскольку это программа, которая объединяет несколько функций обработки изображений, давайте поговорим о разработке каждой функции отдельно идеи.
Конструктивная идея функционального модуля линейной фильтрации заключается в следующем:
- Программа сначала выделяет память для обработки изображения, считывает изображение fig.tif в буфер памяти, а затем входит в цикл While;
- Когда цикл While выполняется в первый раз, он сравнивает метод фильтрации Filter, выбранный пользователем, и параметры Kernel Size, Kernel#, Size & Tolerance и Size & Order каждого VI улучшения изображения, чтобы увидеть, отличаются ли они от значения по умолчанию в константах кластера Parameter.Программа входит в ветку, содержащую различные фильтры V1;
- Когда в элементе управления Filter выбран метод Smooth filtering, код в структуре ветвления будет вызывать IMAQ GetKernel, получать предопределенное ядро свертки NIVision в соответствии с входными параметрами и передавать его в IMAQ Convolute для выполнения операции свертки над изображением;
- Когда цикл продолжается, программа сравнивает ввод пользователя с последним временем выполнения цикла на наличие изменений, и если какой-либо ввод изменяется, программа повторно входит в ветвь, содержащую код фильтра;
- Когда пользователь нажимает кнопку STOP, программа выходит из цикла, чтобы освободить буфер и завершить выполнение программы;
- В этом примере пользователь выбирает сглаживание изображения, размер выбранного ядра свертки составляет 5 × 5, а число — #0.
Идеи дизайна функционального модуля нелинейного фильтра верхних частот заключаются в следующем:
Просто выберите нужный метод фильтрации через его параметр Method. Структура программы такая же, как у функционального кода линейного фильтра, за исключением того, что режим разностного фильтра выбирается из элемента управления древовидным списком, так что код также соответственно выполняет ветвь нелинейного разностного фильтра верхних частот. Из результатов работы программы видно, что края отфильтрованного изображения улучшаются в нескольких направлениях.
Конструктивная идея функционального модуля нелинейной фильтрации нижних частот заключается в следующем:
- В программе показан пример нелинейной ФНЧ N-го порядка изображения на основе окрестности 3×3;
- Поскольку N равно 4, это в точности индекс медианного значения после сортировки пикселей по соседству, поэтому это эквивалентно выполнению медианного фильтра изображения;
- По эффекту запуска программы видно, что почти весь шум соли и перца в исходном изображении отфильтрован;
- Изображение также фильтруется с помощью IMAQ LowPass, а результат фильтрации изображения — с помощью IMAQ NthOrder для N=1 и N=7. Видно, что когда значение порядка фильтра N-порядка меньше 4, темная область расширяется, а светлая область подвергается коррозии, а когда значение порядка больше 4, происходит обратное.
Идея дизайна функционального модуля алгоритма Кэнни заключается в следующем:
- Алгоритм Канни использует метод высокого и низкого двойного порога, чтобы уменьшить количество точек ложного края;
- Если значение позиции пикселя превышает верхний порог, пиксель резервируется как точка края;
- Если он меньше нижнего порога, он удаляется, если он находится между двумя порогами, он сохраняется только тогда, когда пиксель соединяется с пикселем выше верхнего порога;
- Алгоритм Кэнни рекомендует соотношение высоких и низких порогов от 2:1 до 3:1. Края изображения могут быть определены более точно и эффективно.
Реализация программы выглядит следующим образом:
Эффект от программы следующий:
Скачать программу см.:скачать.CSDN.net/download/нет 0…
2. Алгоритм улучшения изображения в частотной области
2.1, Алгоритм преобразования Фурье
В отличие от рабочего метода фильтрации в пространственной области, частотный фильтр не работает напрямую с данными пикселей изображения, а сначала преобразует изображение в частотную область с помощью быстрого преобразования Фурье, а затем выполняет обратное преобразование Фурье (обратное БПФ) после фильтрации. . ) преобразуется обратно в воздушное пространство с целью улучшения изображения, как показано на следующем рисунке:
По сравнению с пространственной фильтрацией фильтрация в частотной области имеет следующие два основных преимущества:
1. С воздушным пространством труднее или даже почти трудно справиться при решении определенной проблемы;
2. При преобразовании задач обработки изображений из пространственной области в частотную можно использовать ряд зрелых методов обработки цифровых сигналов и наборов инструментов.
Nl Vision предоставляет готовые функции для преобразования Фурье и вычислений в частотной области изображения, которые расположены в палитре функций Vision and Motion→Image Processing→Frequency Domain в LabVIEW, как показано на следующем рисунке:
Описание и использование функции можно найти в справочной документации:
На примере выполнения БПФ на изображении мы можем понять использование преобразования Фурье.Идеи дизайна программы заключаются в следующем:
- Программа начинает с чтения изображения в память и преобразования его в сложное изображение с использованием изображения IMAQ Cast;
- После того, как функция IMAQ FFT выполняет БПФ на комплексном изображении, ее выход подключается к элементу управления отображением изображения для отображения;
- IMAQ ComplexPlaneTolmage используется для извлечения реальной части, мнимой части, величины или фазы сложного изображения и представления их в 8-битном, 16-битном или 32-битном формате изображения с плавающей запятой;
- В этом примере после извлечения данных величины из результата преобразования БПФ и отображения их в элементе управления MagF программа освобождает все буферы и завершает работу.
Схема программы следующая:
Эффект следующий:
Сравнивая результаты работы программы, можно обнаружить, что эффект использования элемента управления отображением изображения для непосредственного отображения сложного изображения полностью отличается от эффекта после извлечения амплитудного спектра. Это связано с тем, что Nl Vision стандартно упорядочивает результаты БПФ (комплексные числа) в памяти. Это означает, что в амплитудных данных, полученных в результате расчета БПФ, высокочастотная часть будет распределена по четырем углам изображения, а низкочастотная область будет находиться в центре изображения. Однако при использовании элементов управления отображением изображения для непосредственного отображения сложного графика Nl Vision автоматически вычисляет амплитудный спектр изображения и инвертирует высокочастотные и низкочастотные данные для отображения в центросимметричном режиме. То есть высокочастотная часть располагается по центру, а низкочастотная часть распределяется по четырем углам. Мало того, чтобы усилить эффект отображения амплитуды, NI Vision также умножит рассчитанные данные амплитуды на коэффициент m, относящийся к длине M и ширине изображения N. Формула расчета выглядит следующим образом:
Скачать программу см.:скачать.CSDN.net/download/нет 0…
2.2 Фильтрация изображения в частотной области
При обработке изображений повышение резкости и сглаживание изображения можно выполнить с помощью пространственной фильтрации или фильтрации в частотной области. С математической точки зрения пространственная фильтрация является результатом таких операций, как свертка сигнала и оператор фильтра, и имеет преимущества интуитивно понятного метода и простой работы. Однако, когда данные изображения, подлежащие обработке, велики, если не будет найден более эффективный алгоритм, возникнут такие недостатки, как большой объем вычислений, длительное время вычислений и низкая производительность в реальном времени.
При анализе и улучшении изображения в частотной области нет необходимости решать сложное дифференциальное уравнение, а спектрограмму можно использовать для интуитивного выявления производительности системы, и можно легко выбрать фильтр, способный эффективно подавлять шум. Кроме того, когда обработка изображений выполняется в частотной области, проблемы могут быть решены быстро с использованием ряда проверенных методов и инструментов цифровой обработки сигналов.
В следующей таблице обобщаются и сравниваются характеристики распространенных фильтров нижних частот частотной области.
- Изображение, обработанное идеальным фильтром нижних частот, чрезвычайно размыто и содержит серьезный звон, но имеет хороший эффект сглаживания шумов;
- Феномен звона трапециевидного фильтра нижних частот не так силен, как у идеального фильтра;
- По сравнению с экспоненциальным фильтром нижних частот фильтр нижних частот Баттерворта имеет меньшую степень размытия изображения, но эффект сглаживания шума также плохой;
- Фильтр нижних частот Гаусса может максимально уменьшить размытие изображения, эффективно подавляя шум, поэтому он имеет более широкое применение, чем другие фильтры.
Сравнение нескольких фильтров верхних частот, перечисленных в таблице ниже, можно найти:
- Явление дрожания края изображения, обработанное идеальным фильтром верхних частот, серьезно, и края и шум сохраняются одновременно;
- Трапециевидный фильтр верхних частот вызывает небольшое дрожание, но его часто используют из-за простоты расчета;
- Эффект повышения резкости фильтра Баттерворта лучше, краевое дрожание не очевидно, но расчет сложен;
- Экспоненциальный фильтр верхних частот менее эффективен, чем фильтр Баттерворта, и не имеет краевого дрожания;
- Фильтр верхних частот Гаусса может обеспечить лучший баланс между дрожанием края изображения и эффектом повышения резкости.
Полосовой фильтр может пропускать сигналы в определенном нижнем и верхнем диапазоне частот среза, но ослаблять сигналы ниже нижней частоты среза и выше верхней частоты среза. Заграждающие фильтры могут ослаблять сигналы в диапазоне нижних и верхних частот среза, но пропускают сигналы ниже нижней частоты среза и выше верхней частоты среза. На следующих рисунках показана частотно-временная характеристика идеальных полосовых и режекторных фильтров:
На практике режекторные фильтры часто используются для фильтрации периодических шумов в изображениях. Периодический шум часто проявляется в виде симметрии в спектре изображения, и для устранения шума можно использовать полосовой режекторный фильтр, чтобы отфильтровать сигнал, частота которого находится в кольцевой области. Видно, что режекторный фильтр также отфильтровывает компоненты, отличные от шума, при удалении периодического шума, так что полезная информация в изображении уменьшается. Как показано ниже:
Методы фильтрации изображений с помощью NI Vision в LabVIEW можно разделить на четыре категории:
- IMAQ ComplexTruncate и IMAQ Mask могут пропускать или ослаблять заданную долю частотного диапазона в изображении и использовать их для идеальной фильтрации нижних частот, идеальных верхних частот, идеальной полосы пропускания и идеальной режекторной фильтрации изображения;
- IMAQComplexAttenuate может выполнять треугольную фильтрацию верхних или нижних частот изображения;
- В дополнение к функциям идеального фильтра нижних частот, идеального фильтра верхних частот, идеального полосового и идеального режекторного фильтров, IMAQ Mask также может реализовать идеальные режекторные фильтры;
- Правило формулы может реализовать любую форму фильтра частотной области.
Как показано в таблице ниже:
NI Vision предоставляет специализированные функции для операций фильтрации в частотной области, расположенные вLabVIEW Vision and Motion→Обработка изображений→Палитра функций частотной области,Как показано ниже:
Описание и использование функции см. в справочной документации:
На примере фильтрации изображений понять использование различных типов методов фильтрации.Идеи программирования заключаются в следующем:
- Программа сначала считывает изображение в память и выполняет над ним преобразование Фурье;
- Затем изображение фильтруется с помощью идеального фильтра нижних частот, созданного IMAQ ComplexTruncate, где параметр Truncation Frequency% устанавливает частоту среза фильтра нижних частот на уровне 5% частотного диапазона изображения;
- После завершения фильтрации выполняется обратное преобразование Фурье для получения отфильтрованного изображения;
- Программа задает тип изображения как 16-битное изображение в градациях серого при выделении буфера для обратного преобразования Фурье, так что NI Vision автоматически преобразует результат обратного преобразования Фурье;
- Наблюдая за результатом работы программы, можно обнаружить явный эффект звона, когда изображение фильтруется идеальным фильтром нижних частот.
Схема программы следующая:
Комбинируя идеальные фильтры нижних и верхних частот, реализованные в IMAQ ComplexTruncate, можно реализовать идеальный полосовой или режекторный фильтр. В частности, когда изображение непрерывно фильтруется реализуемыми им фильтрами нижних и верхних частот, а частота среза фильтра нижних частот больше частоты среза фильтра высоких частот, Результат этой последовательной непрерывной фильтрации эквивалентен полосовой фильтрации, когда фильтры нижних частот и верхних частот, реализованные в ней, используются для фильтрации исходного изображения соответственно, а затем накладываются результаты двух, а отсечение Частота выключения фильтра нижних частот меньше частоты среза фильтра верхних частот, этот параллельный эффект суммирования фильтров эквивалентен полосовой фильтрации.
Эффект от программы следующий:
Скачать программу см.:скачать.CSDN.net/download/нет 0…
Улучшение изображения, как правило, не может увеличить исходную информацию об изображении, но оно может выделить слабые сигналы и облегчить различение информации. Улучшение изображения может выполняться не только в пространственной области, но и в частотной области. При обработке изображения в частотной области необходимо преобразовать изображение в частотную область с помощью преобразования Фурье, а затем преобразовать его обратно в пространственную область с помощью обратного преобразования Фурье после фильтрации для улучшения качества изображения.