Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: FPGA: наложение информации на HD видео в режиме реального времени
Форум разработчиков электроники ELECTRONIX.ru > Программируемая логика ПЛИС (FPGA,CPLD, PLD) > Работаем с ПЛИС, области применения, выбор
Andrew P.
Добрый день,
столкнулся с задачей: наложение информации/графики на входящий видео сигнал в режиме реального времени (с минимально возможной задержкой вход-выход), видео может быть как HD/цифровым таки и стандартным аналоговым.

Здесь на форуме уже были похожие темы, но они достаточно старые (2011?), а сейчас начали появляться доступные FPGA kits с готовыми HDMI интерфейсами (http://www.scarabhardware.com/product/mini...partan-6-lx-25/) и интерфейсами композитного видео сигнала.

Посоветуйте пожалуйста по следующим вопросам:
1. Какие есть проверенные FPGA kit с HDMI вход/выход, композит вход/выход до $600? Может кто-то сталкивался уже..
2. С чего лучше начать знакомство с тем, как обрабатывать видео на FPGA? (ссылки, ресурсы..я просто новичок в FPGA)
blackfin
Цитата(Andrew P. @ Nov 30 2014, 21:05) *
столкнулся с задачей: наложение информации/графики на входящий видео сигнал в режиме реального времени (с минимально возможной задержкой вход-выход), видео может быть как HD/цифровым таки и стандартным аналоговым.

ADV8003?
Andrew P.
Цитата(blackfin @ Nov 30 2014, 12:21) *

Возможно это вариант, но посмотрев демо evaluation board и почитав документы, мне кажется adv8003 ориентирован на on-screen-menu - отображение меню, выбор пунктов и тп. У меня задача стоит не в отображении меню, а в отображении данных с различных датчиков в режиме реального времени, вот пример:



Это повсеместно используется, даже в автомобильных видеорегистраторах, камерах безопасности и тп. но суть в возможности работы с потоком HD видео (1080) в режиме реального времени.
gk2
HDMI видеомикшер http://www.m-labs.hk/mixxeo.html. Исходники доступны
Sergey_Bekrenyov
Цитата(gk2 @ Dec 1 2014, 10:20) *
HDMI видеомикшер http://www.m-labs.hk/mixxeo.html. Исходники доступны

spartan-6 без трансиверов только 720p тянет. Проверено на Atlys
Andrew P.
Цитата(gk2 @ Dec 1 2014, 02:20) *
HDMI видеомикшер http://www.m-labs.hk/mixxeo.html. Исходники доступны

Я честно говоря слабо понимаю как видеомикшер может помочь в наложении данных (текстовая информация) на видео, только может если разобраться в исходниках и слепить что-то свое потом.

Я узнал что у Xilinx и Altera есть готовые IP Cores, которые выполняют функции обработки видео/наложения информации. Я так понимаю, что для того чтобы начать с этим разбираться, сама FPGA board пока не нужна, можно скачать Vivado/ISE (Xilinx) и начать учиться моделировать и тестировать, верно?
Sergey_Bekrenyov
Вообще коллега делал на основе примера из этой книжки для HD-SDI overlay http://academic.csuohio.edu/chu_p/rtl/fpga_vhdl.html

Сначала просто текстовый генератор, потом регистры выводил для отладки, потом гистограмму прицепил
monty
Цитата(Sergey_Bekrenyov @ Dec 1 2014, 16:25) *
spartan-6 без трансиверов только 720p тянет. Проверено на Atlys


"Не верю" (с)!
Утверждение слишком кратко.
Спартан-6 спокойно работает на 150МГц, а это 1080p60


Цитата(Andrew P. @ Dec 1 2014, 00:05) *
1. Какие есть проверенные FPGA kit с HDMI вход/выход, композит вход/выход до $600? Может кто-то сталкивался уже..
2. С чего лучше начать знакомство с тем, как обрабатывать видео на FPGA? (ссылки, ресурсы..я просто новичок в FPGA)


На чем собираетесь делать? (Xil, Alt, Latt, ...) ?

У ксилинкса есть большой набор, цену не помню, в нем есть FMC плата с дисплэйпортом (вход-выход). Через переходник за мало рублей цепляется к dvi или hdmi. Вроде бы у них же есть платки с hdmi входами (могу наврать - лучше сами поройтесь у хилинха). То же самое про аналоговые видео вх-вых - у ксилинкс есть всё.

У ксилинкса же есть куча сорцов про обработку (прием, передача , конверсия и тп) видео. Вобще это есть у всех, не только у хил.

Начать знакомство лучше всего с video demystified. это книжка. в сети ее масса. издание, конечно, лучше по свежее, но сойдет для ознакомления любое.

Если у вас бюджет ограничен, и нужно только потренироваться с видео, то можно взять и поискать какие нибудь старые реф. платы в видео вх-вых. их много. Приложите немножко усилий по поиску на сайтах производителей фпга - там всё это есть.
Sergey_Bekrenyov
Цитата(monty @ Dec 2 2014, 11:26) *
"Не верю" (с)!
Утверждение слишком кратко.
Спартан-6 спокойно работает на 150МГц, а это 1080p60

А HDMI/DVI разве параллельный?
"Учите матчасть" (с)!
Andrew P.
Цитата(monty @ Dec 2 2014, 03:26) *
На чем собираетесь делать? (Xil, Alt, Latt, ...) ?

Думаю про Xilinx, и столкнулся с тем что Spartan 6 не поддерживается уже в Vivado, может надо смотрет на Artix 7, платы вроде не особо дороже чем Spartan 6.

Цитата(monty @ Dec 2 2014, 03:26) *
Начать знакомство лучше всего с video demystified. это книжка. в сети ее масса. издание, конечно, лучше по свежее, но сойдет для ознакомления любое.

Спасибо!
DAV
Может не усложнять так всё, тем более что огромного опыта вроде нет. Наверное легче, да наверное и дешевле взять готовые HDMI микросхемы получить параллельный код, загнать его в самую дешёвую FPGA, сделать там что вы хотите и спокойно вывести на выходной HDMI чип. Получите гарантируемый результат с минимальными затратами. Да и, как показала практика, пользователь сожжёт вам выходные или входные ножки дешёвой микросхемы а не дорогой FPGA.
Конечно если Ваша работа имеет академический интерес то, как говориться "Флаг Вам в руки". В своих изделиях ни разу не возникала мысль в FPGA HDMI загнать.

Ни в коем случае не хотел Вас обидеть, с наилучшими пожеланиями, просто по роду занятий часто имею дела с пробитыми входными и выходными ножками.

Да и если стоит боевая задача, то можно сразу делать рабочую плату.
fguy
Цитата(Andrew P. @ Dec 2 2014, 17:47) *
Думаю про Xilinx, и столкнулся с тем что Spartan 6 не поддерживается уже в Vivado, может надо смотрет на Artix 7, платы вроде не особо дороже чем Spartan 6.

Если нужно готовое железо возьмите лучше ZedBoard + FMC плату ввода - на Xilinx есть готовые проекты - фулхд 60 Гц потянет без проблем - выход HDMI есть уже на самой борде + эзернет, юсби, сд-карта - программировать можно в виваде, куча ядер, включая осд смеситель, возможность писать свои фильтры на с++ в вивадо хлс - есть пример реализации фильтра собель для фулхд
Цитата(Sergey_Bekrenyov @ Dec 2 2014, 12:05) *
А HDMI/DVI разве параллельный?

смотря в каком месте - для обработки и формирования в ПЛИС это 16/24 бит шина с пиксельными тактами - фулхд 60 Гц это примерно 148 МГц - (у Xilinx это называется AXI stream), а физикал действительно последовательный - 3 гигабитных пары + такты.
monty
Цитата(Sergey_Bekrenyov @ Dec 2 2014, 16:05) *
А HDMI/DVI разве параллельный?
"Учите матчасть" (с)!


а с чего ты взял что кто-то будет напрямую засовывать это в фпга (кстати, при желании и это можно сделать)?. это надо на готовых микросхемах делать, зачем велосипед изобретать.

для обработки десериализованного (уточняю для студентов sm.gif ), то есть raw video. S-6 для этого вполне хватает.

Цитата(Andrew P. @ Dec 2 2014, 21:47) *
Думаю про Xilinx, и столкнулся с тем что Spartan 6 не поддерживается уже в Vivado, может надо смотрет на Artix 7, платы вроде не особо дороже чем Spartan 6.


Не знаю ничего про виваду - мы , както по старинке всё в исе делаем. Зачем обязательно вивада нужна? Задача то простая - от видеодекодера принять данные, изуродовать их и передать в видеоенкодер. В большинстве случаев аже ненужно будет ничего в эти м.с. прописывать.

Железо (заглянул в чулан специально) - Spartan-6 FPGA Consumer Video Kit (pro edition) - есть всё что вам нужно.
Bad0512
Цитата(monty @ Dec 4 2014, 13:30) *
Не знаю ничего про виваду - мы , както по старинке всё в исе делаем. Зачем обязательно вивада нужна? Задача то простая - от видеодекодера принять данные, изуродовать их и передать в видеоенкодер. В большинстве случаев аже ненужно будет ничего в эти м.с. прописывать.

Не всё так просто.
1. в енкодер и в декодер надо прогрузить таблички. Без этого они встанут в дефолтную моду (скорее всего standby) и на выходе будет 0.
В случае standalone платы это означает либо внешний микроконтроллер либо софт проц типа пико-микро-блейза. Есть конечно ещё вариант
с самопальной стейтмашиной под эти дела, но его мы сразу отметаем как извращенский.
2. В случае HD необходимо пересчитать как минимум CRC в строках, иначе декодер может и отреагировать неадекватно.
3. Если хочется не тупо графику выводить, а текст, то корячится встроенный знакогенератор и гемор с фонтами.
4. Надо ещё придумать какой-то удобный интерфейс для всей этой штуки, чтобы программисты потом матом не ругались.
5. Неплохо бы фильтрануть полученный сигнал, иначе на резких границах неизбежны артефакты - выходные фильтры ЦАПов никто не отменял.

А в остальном - обычная студенческая задача калибра курсового проекта. Вопрос лишь в том для какой цели делать :
"лишь бы препод отвязался" или коммерческий продукт.
Sergey_Bekrenyov
Цитата(monty @ Dec 4 2014, 10:30) *
а с чего ты взял что кто-то будет напрямую засовывать это в фпга (кстати, при желании и это можно сделать)?. это надо на готовых микросхемах делать, зачем велосипед изобретать.

Во-первых, с чего Вы взяли, что мы на ты?

Во-вторых, мой ответ был на
Цитата(gk2 @ Dec 1 2014, 10:20) *
HDMI видеомикшер http://www.m-labs.hk/mixxeo.html. Исходники доступны


Если Вы потрудитесь заглянуть в описание устройства, то все уидите
monty
Цитата(Sergey_Bekrenyov @ Dec 4 2014, 14:57) *
Во-вторых, мой ответ был на ...


Точно. Невнимательно пост прочел. Каюсь.
Andrew P.
Цитата(Bad0512 @ Dec 4 2014, 02:45) *
Не всё так просто.

Да, с HD все сложно получается..... Я пока взял поиграться Zedboard (Zynq SoC) + Vivado, но с кодировкой видео и HDMI контроллером похоже разбираться и разбираться, к сожалению простых reference design не могу найти


Цитата(Bad0512 @ Dec 4 2014, 02:45) *
А в остальном - обычная студенческая задача калибра курсового проекта. Вопрос лишь в том для какой цели делать :
"лишь бы препод отвязался" или коммерческий продукт.


ну сейчас хоть какой бы прототип попробовать сделать
Sergey_Bekrenyov
Цитата(Andrew P. @ Dec 10 2014, 00:55) *
Да, с HD все сложно получается..... Я пока взял поиграться Zedboard (Zynq SoC) + Vivado, но с кодировкой видео и HDMI контроллером похоже разбираться и разбираться, к сожалению простых reference design не могу найти




ну сейчас хоть какой бы прототип попробовать сделать

Про HDMI
Это к сожалению с Microblaze http://www.digilentinc.com/Data/Products/A...MI_PLB_demo.zip

Был чистый пример на FPGA, найти не могу

Вот еще лаба неплохая на первый взгляд http://www.dejazzer.com/ee478/labs/lab9_hdmi.pdf
Упоминается XAPP495 - там были исxодники
Burenkov Sergey
Если делать на альтере, то можно купить вот http://www.terasic.com.tw/cgi-bin/page/arc...30&PartNo=1
и вот http://www.terasic.com.tw/cgi-bin/page/arc...83&PartNo=1
и использовать набор IP Core от альтеры (Video Image Proсessing Suite - VIP) -там все достаточно наглядно и есть много примеров хороших.
VIP продается за деньги, но для отладки можно пользоваться бесплатно - работает пока программатор подключен.
Andrew P.
я понимаю что не та тема, чтобы такой вопрос задавать, но... раз уж ковыряюсь я с HDMI и Zynq... посоветуйте базовую книгу по FPGA дизайну.. актуальную
monty
Цитата(Andrew P. @ Dec 13 2014, 05:03) *
я понимаю что не та тема, чтобы такой вопрос задавать, но... раз уж ковыряюсь я с HDMI и Zynq... посоветуйте базовую книгу по FPGA дизайну.. актуальную


Удивительное молчание на простой , на первый взгляд, вопрос...
Видимо про книжки на русском вопрос?
Э...хорошо бы для начала что-то вроде простейшего курса молодого бойца по цифровой технике вообще. Чтобы четко понимать как триггер триггерит и счетчик считает. -> Основы цифровой электроники (Р. Токхейм)

А в общем про фпга Грушвицкий вполне подойдет. Максфилд Проектирование на ПЛИС. курс молодого бойца...
...как-то так..
chirik
Я бы взял вот эту плату:
http://www.terasic.com.tw/cgi-bin/page/arc...30&PartNo=1

+ плату расширения:
http://www.terasic.com.tw/cgi-bin/page/arc...o=68&No=628

Преимущества подхода "This THDB-HDMI kit contains complete reference designs with source code written in Verilog and C, for HDMI signal transmitting and receiving. Based on reference designs, users can easily and quickly develop their applications."
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.