УСТРОЙСТВО КОРРЕКЦИИ ДЕФЕКТНЫХ ПИКСЕЛЕЙ ИЗОБРАЖЕНИЯ

Полезная модель относится к области обработки дискретной информации в битовом потоке, а именно к устройствам коррекции дефектных пикселей изображения и может быть использовано для обработки любых изображений, получаемых с помощью видео-сенсоров.
В последнее время наблюдается активное развитие технологий, позволяющих устранить дефекты изображений, вносимых дефектами видео-сенсоров. Одним из таких дефектов являются дефектные пиксели. Причиной появления дефектных пикселей является неисправность элемента матрицы видео-сенсора. Изготовление матрицы видео-сенсора - процесс дорогой и трудоемкий, проверить ее на неисправность можно лишь после полного изготовления, а обеспечить 100% исправность всех пикселей очень сложно, поэтому производители стараются отбраковывать продукцию как можно реже, относя ее по результатам тестов к одному из классов качества, допуская разный процент дефектных пикселей в различных классах качества видео-сенсоров. Кроме того, дефектные пиксели могут образовываться и в готовом изделии по истечении некоторого времени эксплуатации.
Для решения вышеупомянутой задачи коррекции дефектных пикселей изображения, получаемого с видео-сенсоров, применяют различные системы коррекции дефектных пикселей, однако, в этих существующих системах очень небольшое внимание уделяется проблеме оптимизации хранения координат дефектных пикселей матрицы видео-сенсора в виде карты дефектных пикселей.
Известна система (заявка WO 2012063265 A2) коррекции дефектных пикселей изображения, в которой карту дефектных пикселей формируют в виде битовой карты, содержащей 0 и 1, где 0 - обозначает нормальный пиксель, 1 - обозначает дефектный пиксель.
Недостатком этой системы является формирование карты дефектных пикселей большого объема, так как в ней кроме информации о дефектных пикселях содержится также информация о нормальных пикселях, для хранения которой требуется большой объем памяти.
Наиболее близким к заявленной полезной модели является способ коррекции дефектных пикселей изображения, описанный в заявке WO 2012116862 A1, в котором карту дефектных пикселей формируют в двух вариантах. Если дефектных пикселей меньше тысячи, тогда карту дефектных пикселей формируют в виде битовой карты, содержащей 0 и 1, где 0 - обозначает нормальный пиксель, 1 - обозначает дефектный пиксель. Если дефектных пикселей больше тысячи, тогда карту дефектных пикселей формируют в виде координат {x, y}, где x, y - координаты дефектного пикселя. Данный способ выбран в качестве прототипа заявленной полезной модели.
Недостатком способа коррекции дефектных пикселей изображения прототипа является большой объем памяти, требуемой для хранения карты дефектных пикселей, так как в варианте формирования битовой карты необходимо хранить информацию не только о дефектных, но также и о нормальных пикселях, а в варианте формирования координат дефектных пикселей под значение координат отводится количество бит равное максимальной разрядности ширины кадра изображения для x и высоты для y.
Задачей заявленной полезной модели является создание устройства коррекции дефектных пикселей изображения, формирующего карту дефектных пикселей меньшего размера, что позволяет сократить объем памяти, требуемой для хранения карты дефектных пикселей, а значит повысить эффективность использования памяти для хранения информации о дефектных пикселях.
Поставленная задача решена путем создания устройства коррекции дефектных пикселей изображения, содержащего память и устройство коррекции изображения, которое включает в себя соединенные между собой блок коррекции дефектных пикселей, кодер и декодер, соединенные с памятью, причем кодер выполнен с возможностью получения от пользователя координат дефектных пикселей матрицы видео-сенсора и определения и сохранения в память приращений, а именно расстояний между соседними дефектными пикселами, отсортированными в порядке возрастания номера пикселя в матрице, при этом приращения занимают переменное число бит и выражены в количестве пикселей последовательно обрабатываемых по строкам, начиная с верхнего левого угла матрицы и заканчивая правим нижним углом, а декодер выполнен с возможностью приема от внешнего источника входного растрового видеоизображения в виде потока кадров, с возможностью считывания из карты дефектных пикселей приращения, и для каждого пикселя кадра входного видеоизображения определения необходимости его коррекции, при этом, если текущий пиксель кадра входного видеоизображения обычный и не требует коррекции, тогда записи его в кадр выходного изображения, а если текущий пиксель дефектный и требует коррекции, тогда передачи его в блок коррекции дефектных пикселей, выполненный с возможностью коррекции дефектного пикселя и записи скорректированного значения дефектного пикселя в кадр выходного видеоизображения.
В предпочтительном варианте осуществления устройства кодер выполнен с возможностью определения и сохранения приращения в двоичном виде с кодировкой длин приращений в битах.
В предпочтительном варианте осуществления устройства кодер выполнен с возможностью определения и сохранения в память приращений, при этом разделения их на одну или несколько групп фиксированной длины в битах, причем задания длин групп заранее одинаковыми для всех приращений, и определения количества групп для каждого приращения минимально необходимой длиной приращения в битах.
В предпочтительном варианте осуществления устройства кодер выполнен с возможностью разделения приращений на минимально необходимое количество групп, при этом в каждой группе выделения одного управляющего бита.
В предпочтительном варианте осуществления устройства декодер выполнен с возможностью кодирования по методу Хаффмана длин приращений в битах.
В предпочтительном варианте осуществления устройства кодер выполнен с возможностью определения и сохранения в память приращений, при этом разделения их на одну или несколько групп адаптивной длины, которая для каждой группы заранее не фиксирована и определяется анализом общего набора дефектных пикселей в матрице, причем количество групп для каждого приращения определяется минимально необходимой длиной приращения в битах, и в каждой группе выделяется один управляющий бит.
Для лучшего понимания заявленной полезной модели далее приводится ее подробное описание с соответствующими графическими материалами.
Фиг. 1. Структурная схема устройства коррекции дефектных пикселей изображения согласно полезной модели.
Фиг. 2. Функциональная схема устройства коррекции дефектных пикселей изображения согласно полезной модели.
Фиг. 3. Схема формирования карты дефектных пикселей в группах разрядностью 8 бит согласно полезной модели.
Фиг. 4. Схема формата записи в память длин и значений приращений согласно полезной модели.
Фиг. 5. Схема формирования длин и значений приращений согласно полезной модели.
Рассмотрим более подробно варианты выполнения заявленного устройства формирования карты дефектных пикселей изображения (Фиг. 1-5).
Существующие системы коррекции изображений, содержащих дефектные пиксели, осуществляют коррекцию дефектных пикселей кадра изображения, координаты которых хранят во внутренней памяти системы и определяют пользователем. Определение дефектных пикселей производят путем тестирования матрицы (например, экспозицией), на которой отображается изображение. В заявленной полезной модели для хранения данных о дефектных пикселях используют приращения (расстояние между дефектными пикселями, отсортированными в порядке возрастания номера пикселя в кадре). Например, максимальная разрядность приращения для кадра разрешения UltraHD_8k (7680×4320 пикселей) 25 бит.
В заявленной полезной модели формирование карты дефектных пикселей могут осуществлять тремя вариантами: посредством хранения в группах разрядностью N бит (вариант 1), посредством хранения длин и значений приращений (вариант 2) и посредством хранения приращений в ячейках адаптивной разрядности (вариант 3).
Рассмотрим первый вариант формирования карты дефектных пикселей изображения, в котором информацию о дефектных пикселях матрицы видео-сенсора сохраняют в группах разрядностью N бит. Хранение в группах разрядностью N бит - это вариант хранения приращений, основанный на разбиении приращений на группы разрядностью N бит, где старший бит является управляющим (бит равен 0 - группа не последняя, 1 - группа является последней). Если минимально необходимая длина приращения в битах при двоичном кодировании меньше или равна N-1 бит, то в старший бит записывают 1, а в оставшиеся N-1 бит значение приращения. Если минимально необходимая длина приращения в битах при двоичном кодировании больше N-1 бит, то приращение кодируют группами по N бит, где N-1 бит отводят под значение приращения, а 1 бит управляющий. Например, для разрешения изображения UltraHD (3840×2160 пикселей) и 4096 дефектных пикселей в изображении при значении N=8 достигается высокий коэффициент сжатия, при этом чтение из памяти осуществляют побайтово. Так, например, если минимальная необходимая длина приращения в битах при двоичном кодировании значения 100-7 бит, значит, для хранения этого приращения потребуется 8 бит. Если значение приращения равно 400, то минимально необходимая длина приращения в битах при двоичном кодировании равна 9 бит, соответственно для хранения этого приращения потребуется 16 бит.
Достоинства этого варианта состоят в простоте реализации и отсутствии необходимости хранения дополнительной информации о кодировке. Коэффициент сжатия карты дефектных пикселей в заявленном устройства по первому варианту составляет от 37% по сравнению с картой дефектных пикселей в способе и системе аналога и прототипа, формируемой путем сохранения координат {x, y} дефектных пикселей.
Для восстановления данных о дефектных пикселях из потока считывают N бит. Младшие (N-1) бит записывают в младшие разряды приращения. Затем считывают следующие N бит, и, если старший бит равен 0, то младшие (N-1) бит записывают в приращение со сдвигом на (N-1) влево, а если старший бит равен 1, то текущее приращение завершилось и текущие 8 бит - это начало следующего приращения.
Второй вариант формирования карты дефектных пикселей, в котором сохраняют длины и значения приращений, заключается в следующем. Хранение длин и значений приращений - это вариант хранения приращений, основанный на сжатии данных по методу Хаффмана. Все приращения разбивают на 16 групп, при этом все группы кроме последней соответствуют определенной минимально необходимой длине приращения в битах при двоичном кодировании, а последняя группа соответствует максимальной разрядности приращения для текущего разрешения изображения. Минимально необходимые длины приращения в битах при двоичном кодировании кодируют по методу Хаффмана. Далее в память записывают сначала код длины приращения по Хаффману, затем значение приращения. Значение приращения записывают без старшего бита, так как он всегда равен 1, кроме случаев, когда приращение записывают из группы с максимальной разрядностью.
Коэффициент сжатия карты дефектных пикселей в заявленном устройстве по второму варианту составляет от 40% по сравнению с картой дефектных пикселей в способе и системе аналога и прототипа, формируемой путем сохранения координат {x, y} дефектных пикселей.
Для восстановления информации о дефектных пикселях во втором варианте требуется хранить дополнительные параметры - массив из 48 элементов по 4 бит, значение максимальной разрядности - 1 элемент 5 бит. Для восстановления длин приращений в битах во втором варианте может использоваться алгоритм описанный K.-L. Chung Information Processing Letters 61 (1997) 97-99 «Efficient Huffman decoding». Далее задают количество бит равное (длине приращения 1) для всех длин приращений, за исключением группы с максимальной разрядностью, для которой задают количество бит равное максимальной разрядности приращения для текущего разрешения изображения.
В третьем варианте формирования карты дефектных пикселей приращения сохраняют в группах адаптивной разрядности. Сохранение приращений в группах адаптивной разрядности - это вариант сохранения приращений, основанный на разбиении приращений на группы, где разрядности групп подбирают для каждого конкретного множества значений приращений, с целью минимизации итогового объема памяти. Множество значений приращений задают при калибровке дефектных пикселей, что позволяет использовать метод полного перебора для поиска оптимальной разрядности групп. Однако, можно предложить последовательный алгоритм поиска близкой к оптимальной разрядности.
Сжатие и восстановление данных аналогично первому варианту хранения в группах разрядностью N бит, однако требуется хранить дополнительные данные для восстановления информации. Для восстановления данных о дефектных пикселях хранится последовательность групп бит, каждая группа начинается с 1, затем идет количество нулей равное разрядности группы. Например, если методом перебора было установлено, что оптимальным разбиением на группы является набор групп по 15, 7, 3 бит, то код запишется следующим образом 1000000000000000100000001000.
Коэффициент сжатия карты дефектных пикселей в заявленном устройстве по третьему варианту составляет от 42% по сравнению с картой дефектных пикселей в способе и системе аналога и прототипа, формируемой путем сохранения координат {x, y} дефектных пикселей.
На Фиг. 1-2 представлена структурная схема заявленного устройства коррекции дефектных пикселей изображения. Заявленное устройство содержит память 1 и устройство 2 коррекции изображения, которое включает в себя соединенные между собой блок 3 коррекции дефектных пикселей и декодер 4 и кодер 7, соединенные с памятью 1. Сначала формируют в памяти 1 карту дефектных пикселей, при этом посредством пользователя путем тестирования матрицы (например, экспозицией) определяют координаты каждого дефектного пикселя матрицы видео-сенсора, после чего с помощью кодера 7 определяют, кодируют (кодировка зависит от выбранного варианта) и сохраняют в память 1 приращения, а именно расстояния между соседними дефектными пикселами, отсортированными в порядке возрастания номера пикселя в матрице видео-сенсора, при этом приращения занимают переменное число бит и выражены в количестве пикселей последовательно обрабатываемых по строкам, начиная с верхнего левого угла матрицы и заканчивая правим нижним углом. Входное растровое видеоизображение 5 в виде потока кадров принимают от внешнего источника на вход устройства 2 коррекции изображения. Из карты дефектных пикселей с помощью декодера 4 считывают приращение, и для каждого пикселя кадра входного изображения определяют необходимость его коррекции. Если текущий пиксель кадра входного изображения обычный и не требует коррекции, тогда его записывают в кадр выходного видеоизображения 6, если текущий пиксель дефектный и требует коррекции, тогда его передают в блок 3 коррекции дефектных пикселей, из которого исправленное значение дефектного пикселя записывают в кадр выходного видеоизображения 6.
На Фиг. 2 представлена функциональная схема заявленного устройства коррекции дефектных пикселей изображения. Входное растровое видеоизображение 5 в виде потока кадров принимают от источника видеоизображения и передают на вход устройства 2 коррекции изображения. Из карты дефектных пикселей, содержащейся в памяти 1, считывают приращение и записывают его в реверсивный счетчик 4. Счетчик 7 декрементируют по каждому входному пикселю. Значение счетчика 4 равное нулю означает, что текущий пиксель дефектный, и его с помощью декодера передают в блок 3 коррекции дефектных пикселей. С помощь блока 3 коррекции исправляют дефектный пиксель. Далее из карты дефектных пикселей считывают новое приращение и записывают в счетчик 4. При создании карты дефектных пикселей следят за тем, чтобы последний дефектный пиксель был вне кадра или совпадал с последним пикселем в кадре. Для следующего кадра изображения процесс повторяют с начала карты дефектных пикселей.
На Фиг. 3 показан пример хранения в группах разрядностью 8 бит. Если разрядность приращения меньше или равна 7 бит, то в старший бит записывают 1, а в оставшиеся 7 бит значение приращения. Если разрядность приращения больше 7 бит, то приращение делят на группы по 8 бит, где 7 бит отводится под значение приращение, а 1 бит зарезервирован под флаг начала приращения.
На Фиг. 4 показан формат записи данных в память 1 во втором варианте формирования карты дефектных пикселей, в котором сохраняют длины и значения приращений. Префикс - разрядность приращения, закодированная по методу Хаффмана.
На Фиг. 5 показан пример хранения длин и значений приращений. Сначала в память 1 записывают минимально необходимую длину приращения в битах при двоичном кодировании, закодированную по методу Хаффмана, а далее значение приращения без старшего бита, кроме случаев, когда приращение записывают из группы с максимальной разрядностью.
Хотя описанные выше варианты выполнения полезной модели был изложены с целью иллюстрации настоящей полезной модели, специалистам ясно, что возможны разные модификации, добавления и замены, не выходящие из объема и смысла настоящей полезной модели, раскрытой в прилагаемой формуле полезной модели.