Поговорим о том, как инженеры FPGA создают ISP
Поговорим о том, как инженеры FPGA создают ISP

Функцию интернет-провайдера можно просто резюмировать как предоставление серверной части возможности правильно идентифицировать «реальный» мир. Подчеркните реалистичность и полезность. Эта полезность в основном заключается в информации, необходимой серверной части; реалистичность означает, что она ближе к изображению, увиденному человеческими глазами в реальности. Что касается видимого света, упомянутого выше, то в настоящее время существует все больше и больше применений инфракрасного излучения, и скоро к нам придет коммерциализация, поэтому обработка инфракрасных изображений также является частью нашего обсуждения в этой статье.

Классификация

Здесь я делю интернет-провайдеров на две основные категории:

Видимый и инфракрасный — это два совершенно разных типа интернет-провайдеров. В настоящее время рынок видимого света в основном занят ASIC, а рынок инфракрасного — наоборот. Однако, согласно внутренним новостям, рынок ASIC является только текущим. собирается выйти на рынок инфракрасных датчиков, а это означает, что к нам постепенно приходят инфракрасные датчики и их коммерческое использование и широкомасштабное продвижение.

Какова перспектива?

Так значит ли это, что FPGA должна быть исключена из видимого света или инфракрасного поля?

Ответ, конечно, нет. FPGA имеет множество применений в области видимого света: например, специальное разрешение, низкая задержка в лечении сложных условий и т. д. Конечно, область инфракрасного излучения в настоящее время относительно популярна. Другими словами, интеграция света и инфракрасного излучения также является важным направлением в будущем.

Видимый свет Знания, связанные с интернет-провайдерами Классификация

Оптика

ISP и Оптика тесно связаны между собой, в основном затрагивая следующие аспекты:

Выбор датчика обычно выбирается Оптикаинженером (также выбирается общим),Выберите разрешение сенсора,Выбор затвора обычно зависит от условий применения, однако такие характеристики Оптики, как поле зрения, фокусное расстояние и фильтры, анализируются и разрабатываются Оптикаинженером;,Последовательность оптической оси, тип заполняющего света и положение на более позднем этапе в основном определяются Оптикой.

Конечно, есть много вещей, которые определяет Оптика.,Я не буду здесь вдаваться в подробности.,Суть нашей статьи – не Оптика.

ISP

В этой главе объясняется, как создать ISP с FPGA в качестве ядра, что на самом деле включает в себя две части: параметры калибровки FPGA и ISP:

настройка датчиков и доступ к данным

Эта часть работы является относительно «общей» и аналогична работе по настройке АЦП или ЦАП. В настоящее время наиболее распространенным каналом передачи данных, подключаемым к FPGA, является LVDS (SubLVDS). Конечно, MIPI в настоящее время также относительно распространен. Поток данных после их соединения относительно аналогичен (физические разные уровни).

Здесь мы отдельно объясняем, что структуры данных, выводимые с помощью глобального затвора и скользящего затвора, не одинаковы. Для датчиков с большими целевыми областями может потребоваться последующая обработка ISP после сращивания.

Архитектура

ISP Архитектура — это ядро,На самом деле нет большой разницы в том, какую Архитектуру использовать для обычного 1080P60 и ниже.,Но рассмотрим последующее наследование,Совместимость с более крупными разрешениями (8КП60) еще необходимо учитывать.

Основной момент, который следует учитывать здесь, — это интерфейс настройки параметров интернет-провайдера.,Одним из ограничений ISP, построенного на FPGA, является то, что изменение параметров (включая CCM, Gamma и другие параметры) занимает чрезвычайно много времени.,Поэтому необходимо четко учитывать эту часть при построении Архитектуры. Традиционное решение — использовать внешний микроконтроллер для изменения и калибровки параметров через SPI или другие параллельные шины.,В настоящее время «мягкое» или «жесткое» ядро ​​в FPGA очень развито.,Эту операцию можно выполнить напрямую, используя внутренние ресурсы.

Давайте поговорим о недостатках традиционной потоковой архитектуры:

Данные, обработанные предыдущим этапом, управляют потоком данных последующего этапа через стандартный сигнал VESA.,Он принадлежит к переднему этапу и способствует потоку данных на последнем этапе.,Преимущество такой архитектуры в том, что она проста.,Существует множество традиционных алгоритмов, построенных таким образом.,А если усилитель мощности подключить через интерфейс VGA или HDMI, он будет,Это удобнее.

Однако у приведенной выше структуры есть несколько недостатков, которые я считаю относительно большими: 1. Внешний датчик обычно подключается через lvds или mipi.,Все данные передаются посредством внутренней синхронизации.,Больше нет понятия VS или HS.,Сигналы, необходимые серверной части, необходимо кэшировать перед их созданием. 2. Число логических уровней слишком велико;,Поуровневое продвижение может легко привести к тому, что количество логических уровней станет слишком большим. 3. Недостаточное использование полосы пропускания;,Традиционная архитектура должна учитывать дисплей со стороны монитора.,Таким образом, будет зона гашения полей строк.,В ISP алгоритм не особо использует время в зоне гашения.,Результатом является низкое использование полосы пропускания.,Этот эффект особенно заметен для случаев с высоким разрешением.

Вышеупомянутые проблемы, с которыми, я думаю, сталкивается в настоящее время традиционная Архитектура.,И решение,Вы можете настроить шину (в предыдущей статье был описан тип шины AXI-STREAM) или использовать официальную шину (AXI).

алгоритм

После завершения определения Архитектуры,Далее алгоритм,Какой алгоритм нужен в провайдере,Также представлено в предыдущих статьях,Вот еще несколько важных моментов:,Здесь я просто выполнил алгоритм в ISP: основной алгоритм, функциональный алгоритм и 3Аалгоритм.

основнойалгоритм

Базовый алгоритм — это, конечно же, несколько типов алгоритмов, которые серверная часть может отображать или использовать.,Включает в себя: демозаику, ГАММУ, CCM и шумоподавление. Они являются ключом к тому, чтобы изображение было создано.,Особенно для демозаики это ключевой момент,В будущем мы опубликуем отдельные статьи для обсуждения этих основных моментов.,Я не буду здесь вдаваться в подробности.,Эти параметры необходимо корректировать в соответствии с реальной ситуацией.,Поэтому при проектировании алгоритма необходимо зарезервировать интерфейс настройки параметров.

Функцияалгоритм

Здесь мы в основном корректируем уровень черного、Исправление плохих пикселей、Снижение шума в области RAW、Коррекция теней、Коррекция фиолетовой окантовки、точить、насыщенность、Контраст и т. д.алгоритм归于Функцияалгоритм,Эти алгоритмы подходят для настройки параметров в различных средах.,Сделайте изображение более соответствующим ожиданиям.

3Aалгоритм

3Аалгоритм — динамическая регулировка яркости изображения.、баланс белого ифокусное расстояние,Позволяет камере автоматически переключать соответствующие параметры в различных средах.

Вот некоторые знания, связанные с архитектурой,Как реализовать 3Аалгоритм? Традиционная архитектура подходит для внешних микроконтроллеров.,Пусть микроконтроллер реализует 3Аалгоритм,Преимущество этого в том, что это отделяет,Не нужно тратить время на достижение алгоритма. Однако такая архитектура не может быть своевременно обработана в ситуациях с высокой частотой кадров (шина между микроконтроллером и FPGA имеет ограничения).,Таким образом, в настоящее время вы можете выбрать мягкое или жесткое ядро ​​для реализации алгоритма 3A.

Калибровка и настройка параметров

Вышеупомянутая работа — это то, что должен сделать инженер FPGA.,Остальное на самом деле то, что должен сделать интернет-провайдер.,выступать на имидж Калибровка и настройка параметров,В настоящее время существует множество профессиональных программ для помощи в работе (человеческий глаз все еще ненадежен~),У большинства компаний есть профессиональные интернет-провайдеры.,Отрегулируйте все параметры, представленные выше.,Вы можете настроить изображение, чтобы оно было «более приятным».

вывод данных

По этому поводу особо нечего сказать. Существует множество форм вывода, включая, помимо прочего, VGA, HDMI, оптический порт и т. д.

Сервопривод

Позвольте мне кратко сказать следующее о работе Сервопривода:

В основном включает в себя два аспекта,Мотор, который регулирует фокус при фокусировке,Он должен быть «стабильным, точным и быстрым»; еще один аспект, который можно не затронуть, — это стабилизация изображения в крупномасштабной оптоэлектронике. Требуемая выше информация также должна быть разработана путем передачи соответствующей статистической информации в сервопривод через интернет-провайдера.

Подвести итог

я написал это красноречиво,Всего несколько ядер,FPGAинженертолько реализоватьISPАрхитектураиалгоритм,Оставшаяся Работа также выполняет несколько аспектов Классификации.,Если вы хотите сделать,Вам нужно знать, что вам нужно делать. Конечно, я лучше возьму инфракрасный.,Рулон инфракрасный рулон инфракрасный и видимый сплав,Игра – это развитие во многих аспектах~

boy illustration
Неразрушающее увеличение изображений одним щелчком мыши, чтобы сделать их более четкими артефактами искусственного интеллекта, включая руководства по установке и использованию.
boy illustration
Копикодер: этот инструмент отлично работает с Cursor, Bolt и V0! Предоставьте более качественные подсказки для разработки интерфейса (создание навигационного веб-сайта с использованием искусственного интеллекта).
boy illustration
Новый бесплатный RooCline превосходит Cline v3.1? ! Быстрее, умнее и лучше вилка Cline! (Независимое программирование AI, порог 0)
boy illustration
Разработав более 10 проектов с помощью Cursor, я собрал 10 примеров и 60 подсказок.
boy illustration
Я потратил 72 часа на изучение курсорных агентов, и вот неоспоримые факты, которыми я должен поделиться!
boy illustration
Идеальная интеграция Cursor и DeepSeek API
boy illustration
DeepSeek V3 снижает затраты на обучение больших моделей
boy illustration
Артефакт, увеличивающий количество очков: на основе улучшения характеристик препятствия малым целям Yolov8 (SEAM, MultiSEAM).
boy illustration
DeepSeek V3 раскручивался уже три дня. Сегодня я попробовал самопровозглашенную модель «ChatGPT».
boy illustration
Open Devin — инженер-программист искусственного интеллекта с открытым исходным кодом, который меньше программирует и больше создает.
boy illustration
Эксклюзивное оригинальное улучшение YOLOv8: собственная разработка SPPF | SPPF сочетается с воспринимаемой большой сверткой ядра UniRepLK, а свертка с большим ядром + без расширения улучшает восприимчивое поле
boy illustration
Популярное и подробное объяснение DeepSeek-V3: от его появления до преимуществ и сравнения с GPT-4o.
boy illustration
9 основных словесных инструкций по доработке академических работ с помощью ChatGPT, эффективных и практичных, которые стоит собрать
boy illustration
Вызовите deepseek в vscode для реализации программирования с помощью искусственного интеллекта.
boy illustration
Познакомьтесь с принципами сверточных нейронных сетей (CNN) в одной статье (суперподробно)
boy illustration
50,3 тыс. звезд! Immich: автономное решение для резервного копирования фотографий и видео, которое экономит деньги и избавляет от беспокойства.
boy illustration
Cloud Native|Практика: установка Dashbaord для K8s, графика неплохая
boy illustration
Краткий обзор статьи — использование синтетических данных при обучении больших моделей и оптимизации производительности
boy illustration
MiniPerplx: новая поисковая система искусственного интеллекта с открытым исходным кодом, спонсируемая xAI и Vercel.
boy illustration
Конструкция сервиса Synology Drive сочетает проникновение в интрасеть и синхронизацию папок заметок Obsidian в облаке.
boy illustration
Центр конфигурации————Накос
boy illustration
Начинаем с нуля при разработке в облаке Copilot: начать разработку с минимальным использованием кода стало проще
boy illustration
[Серия Docker] Docker создает мультиплатформенные образы: практика архитектуры Arm64
boy illustration
Обновление новых возможностей coze | Я использовал coze для создания апплета помощника по исправлению домашних заданий по математике
boy illustration
Советы по развертыванию Nginx: практическое создание статических веб-сайтов на облачных серверах
boy illustration
Feiniu fnos использует Docker для развертывания личного блокнота Notepad
boy illustration
Сверточная нейронная сеть VGG реализует классификацию изображений Cifar10 — практический опыт Pytorch
boy illustration
Начало работы с EdgeonePages — новым недорогим решением для хостинга веб-сайтов
boy illustration
[Зона легкого облачного игрового сервера] Управление игровыми архивами
boy illustration
Развертывание SpringCloud-проекта на базе Docker и Docker-Compose