Технический форум по робототехнике.
Aseris » 22 фев 2011, 13:32
Предлагаю в данной теме обсуждать работу mini2440 + CMOS/USB камерой
Прочитав представленные в разделе темы наткнулся на упоминание запаздывания кадров до 0.5С с камеры идущей как аксессуар, хотя процессор имеет аппаратную часть отвечающую за работу видео тормозить не должен...
В данный момент хочу прицепить камеру от Samsung E700 и гарантированно обрабатывать под линуксом 7-10 кадров в секунду. Вот думаю или придется использовать RT linux, или это все возможно будет реализовать на том что идет в комплекте с платой.
Weekend » 22 фев 2011, 20:13
А каким образов в данной ситуации поможет RT Linux? Думаю, что ни как не поможет.
Aseris » 23 фев 2011, 15:32
Тем чтоб гарантированно отрабатывать нужное количество кадров, ибо если например строится лайн трейсер на основе камеры, то как то не интересно чтобы он с запозданием отрабатывал изменение трассы перед обьективом.
Плюс я хочу синхронно с захватом кадров включать выключать например подсветку для хитрой фильтрации помех..
Может мне на первое время хватит обычного ядра с подправленным драйвером.
Зачем здесь ОС... лень самому писать работу с памятью, сетью, etc.
Weekend » 23 фев 2011, 16:23
Но скорость отработки RT ни как не увеличит.
Aseris » 24 фев 2011, 02:20
RT даст гарантированное время реакции а не увеличение производительности.
Столько людей на форуме имеют mini2440 + CMOS camera, и никаких отзывов, неужели никто не пробовал ничего?
serg_io » 24 фев 2011, 19:53
И что есть уже портирвоаный RTLinux для S3C2440? Я сам пытался разобраться в этом вопросе, но так ничего толком и не нашел. RTAI нет готового под этот проц, пробовал PREEMPT_RT патч - грузится, но такие драйвера как SD/USB рубят ось намертво.
Palachzzz » 19 мар 2011, 13:01
mini2440 + CMOS camera, и никаких отзывов, неужели никто не пробовал ничего?
Эмм.. пробовал на обычных QTopia, Debian и Gentoo запаздывание одинаково велико (0,5С), и не важно какой метод просмотра- на экран или транслирование в сеть.
При использовании MINI без ОС (test2440), запаздывания нет при выводе на экран.
Aseris » 07 май 2011, 23:36
Пришла камера, дошли руки поэкспериментировать.
Родные дрова и софта под линукс что идет в комплекте с платой ужасно тормознутые, как говорил народ запаздывание налицо. Порывшись в интернете наткнулся на проектик
http://code.google.com/p/s3c2440camera/Пересобрав ядро 2.6.32.2 с поддержкой камеры как модуль, плюс попутно выкинул все что мне ненужно(usb, SCSI.. etc) и включив поддержку ex2, ex3, reiserfs, jafs. Как читаем здесь
http://roboforum.ru/forum96/topic8415.html и в нете
ulinux.zip
- кому лень, или не знает как собрать, вот образ для u-boot
- (1.87 МиБ) Скачиваний: 0
Все собиралось на Calculate Linux Roboforum Build, берем тут
http://roboforum.ru/forum10/topic8216.htmlСкачиваем сорсы нового драйвера отсюда
http://code.google.com/p/s3c2440camera/downloads/list, правим мейкфайл под наш огород: прописываем путь к собранному ядру, прописываем компилятор.
- Код: Выделить всё • Развернуть
СС=armv4tl-softfloat-linux-gnueabi-gcc
...
KERNELDIR ?=/home/minin2440/kernels/linux-2.6.23.2
затем
make
make test_capture
вот ленивым:
pack.zip
- модуль и тестовая программа
- (15.45 КиБ) Скачиваний: 0
переписываем на наш rootfs файлы s3c2440camera.ko, test_capture
запускаем mini2440
пишем
insmod /s3c2440camera.ko
проверяем
./test_capture /dev/video1 320 240 testimg 10
В первых 3х файлах окажется мусор, видимо буферы камеры не заполнены. Потом имеем на выходе пары файлов ..._CbCr.PPM ..._Y.PGM
фреймрейт ~60fps
Простой программкой, в моем случае простым скриптом на матлабе смотрим что получилось, конвертируя из YCbCr в RGB
![screeshot.jpg (20.13 КиБ) Просмотров: 4952 screeshot.jpg](./download/file.php?id=20438&t=1&style=9&sid=ef7ac62457272af85722d3563cd7993f)
- Результат (защитная пленка не снята)
Следующий шаг вывести поток с камеры на фреймбуффер.
Strijar » 08 май 2011, 12:44
Запаздывание скорей всего из-за буферизации. Так точно сделано для at91sam9 - выделяется нужное количестко буферов (по умолчанию для 4 кадров) и по кругу в них пишется - "с головы". По кругу же, но "с хвоста" читается. Вот и считайте если у вaс 7 fps то буфер из 4 кадров как раз и дает 0.5 сек. Но это справедливо если пользовать stream способ у v4l, если брать покадрово (capture) то задержки не будет, но это слегка медленней.
Aseris » 08 май 2011, 13:54
На счет родной софты не знаю, ее авторы делится исходниками не захотели, а буферизация там по ощущениям в кадров 10 - 20
Aseris » 20 май 2011, 00:40
Дошли руки до приложения выводящего кадры на фреймбуфер
запускаем
./fb_teset /dev/video0 320 240 9что это за параметры программа рассказывает если ее без них запустить
"наслаждаемся" картинкой.
Все еще где-то есть вредные буферы.. ибо тормоза поменьше но в несколько кадров есть... штуки 2-3... подозреваю что они прячутся в прослойке v4l2 между камерой и приложением ...
Кто нибудь знает вменяемую ссылку на инфу по работе с v4l2?
UncleSam » 30 авг 2011, 05:44
День добрый.
А трансляцию через сеть не пробовали осуществить?
Сейчас появилось свободное время, разбираюсь. Первым делом хочется попробовать видео на большого брата гнать.
Michael7 » 21 янв 2013, 19:56
у меня задержка изображения от USB камеры 3-4 сек.
камеру считываю средствами OpenCV.
Ктото сталкивался с подобной проблемой, как решить?
пробовал считывать камеру этой библиотекой
http://code.google.com/p/libv4l2cam/ , но не получается данные подогнать для отображения в OpenCV.