Работа с изображением.

Cbkby
Offline
Зарегистрирован: 11.09.2017

Как с помощью ардуино разбить изображение в матрицу с перемеными о 0 до 8. Каждая цифра соответствует своему сочетанию цветов Rgb светодиода. Вообщем чего я хочу добится. Будит крутиться пиксильная лента. Нужно транслировать видео. Такой механический экран. Думал если разбить изображение в матрицу и потом с определенной частотой просто отображать столбцы пиксельной лентой. Еще как-то частоту кадров разбить. Кто может с этим помоч или дать ссылку если это реализованно где-то? 

ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

Cbkby пишет:

Как с помощью ардуино разбить изображение в матрицу с перемеными о 0 до 8.

разбивать надо заранее и иметь уже готовым - разбитым. Дай Вам Бог успеть показать. Куда там ещё разбивать.

Cbkby
Offline
Зарегистрирован: 11.09.2017

Ясно. Есть ли софт для этого. В ручную это сделать просто не реально, мне кажеться. Можно на С написать прогрумму, но у меня нет опыта работы с видео. Брать по кадрово, заносить разрешение, разбивать на количество пикселей и определять цвет пиксиля. Если лы библиотеки для этого? Разобьеться это все на таблици, каждый кадр.Ну там уже думаю не сложно будит, и вполне реализуемо. Вообще логика верна, это так делается?

b707
Offline
Зарегистрирован: 26.05.2017

Cbkby пишет:

Ясно. Есть ли софт для этого. В ручную это сделать просто не реально, мне кажеться. Можно на С написать прогрумму, но у меня нет опыта работы с видео. Брать по кадрово, заносить разрешение, разбивать на количество пикселей и определять цвет пиксиля. Если лы библиотеки для этого? Разобьеться это все на таблици, каждый кадр.Ну там уже думаю не сложно будит, и вполне реализуемо. Вообще логика верна, это так делается?

Вы не в ту дверь зашли. Все это "несложно и вполне реализуемо", но только не на ардуино. Посчитайте сами. Матрица для одного единственного кадра даже в самом голимом разрешении 240p будет весить примерно 100Кб. В то время как у наиболее распространенной ардуино Уно - всего 2К ОЗУ, у наиболее мощной Меги - 8К. То есть даже задача вывести на экран статичную картинку - совершенно непосильная для любой ардуины.

 Вам нужно идти другим путем - считать видео на отдельном процессоре, причем думаю классом не ниже Интел Атом, а вот для управления пиксельными лентами задействовать ардуины. При чем несколько. я думаю по одной ардуине на пять-десять лент, иначе они даже с этим не будут успевать управляться.

andriano
andriano аватар
Offline
Зарегистрирован: 20.06.2015

Cbkby, арифметику в школе изучали?

Сформулируйте свои хотелки в виде хоть каких-нибудь цифр: сколько пикселей изображения планируете обрабатывать, и сколько раз в секунду это планируется делать?

Cbkby
Offline
Зарегистрирован: 11.09.2017

Вы либо не внимательно прочитали, либо я криво обьяснил. Переработака происходит на пк, в таблици. Потом на флешку, в ардуино. Думая мега вполне справится. 320x240 Мне даже такое разрешение ненужно, с плотностью пикселей ленты, на это разрешение нужно 3 с лишним метра. Будит около 2 метров.  Допустим 2 метра это 128 пикселей. Переработать любое видео в 128, потом разбить на картинки, а картинки на пиксили и в таблицу. Меня интересует лишь програмное разбиение видео на кадры, кадры на на пиксили и сохранение цвета пиксилей в виде текстового документа. 

b707
Offline
Зарегистрирован: 26.05.2017

Cbkby пишет:

Вы либо не внимательно прочитали, либо я криво обьяснил.

Да вроде нет, все что вы теперь написали - не меняет вывода. Пусть у вас кадр высотой "всего" 128 точек. В стандартном соотношении 4:3 при одном байте на точку это выходит 22 Кб на кадр. А у меги вся память всего 8 кб.

Сколько кадров в секунду вы планируете показывать? Думаю. если читать с флешки, на меге вы и 1 FPS ни в жизнь не получите.

sadman41
Offline
Зарегистрирован: 19.10.2016

А я так понимаю, что весь кадр в память грузить не нужно. Отображается только один столбец кадра. Типа такого: