Описание: робот, управляемый через сеть |
Поиск в теме | Версия для печати |
nick2008 |
Отправлено: 01 Июля, 2008 - 00:36:56
|
Главнокомандующий
Сообщений всего: 275
Дата рег-ции: Март 2008
|
Понимаешь, Vcom, странности в этом есть.
DSPack - стоит копнуть гугл - о нем отзывы как о единственном раскрученном софте для каптуринга к Дельфи. Лучше его нет. Странность - на паре компьютеров он идет как надо (не зевает). То бишь, может быстродействие дешевого лоптопа его не устраивает, для рендеринга (каптуринга). Это может быть аппаратным задвигом - ввиду частичной работоспособности. Я купил Дельфи 7 и Vs 2005 pRO "для икспириментов".
Может у меня Дельфи было слишком левое. Перепоставлю Дельфи и откомпилирую программу снова. Если произойдут качественные изменения, то это объяснит странности DSPack. Глаз то в робототехнике как глаза нужен. Все одно без него никуда. Так что постараюсь, отпишу итоги.
Крыша Эрмитажа поди узнаваема. Я вижу эту проекцию, но с другой точки. А этот выставили жестящики. Им своя работа нравится. Там что-то вроде Зимнего сада виднеется. Ну.. ангел, Исакий.. все как положено, все там есть. Город этот, мне уютно в нем.
день был солнечным.. вижу, как фотоэлементный фонарь полыхает
зарядился к ночи глядя..
http://artspb.com/onlinebook/weather/index.php |
|
|
nick2008 |
Отправлено: 02 Июля, 2008 - 11:10:55
|
Главнокомандующий
Сообщений всего: 275
Дата рег-ции: Март 2008
|
Драйвер оптической мыши на Висте - скачал, 72 мегабайта.. крутенько
Вот она, VCom, неберучка пакета DSPack (Дельфи 7) - при выходе из программы она остается висеть в памяти в Процессах, на оранжерейном лоптопе она зевает каптуринг (когда делает, когда нет - глупо циклю), на другой машине с той же операционкой XP - не зевает.
var SysDev: TSysDevEnum;
procedure TSDIAppForm.FormCreate(Sender: TObject);
var i : Integer;
begin
SysDev:= TSysDevEnum.Create(CLSID_VideoInputDeviceCategory);
FilterGraph.ClearGraph;
FilterGraph.Active := false;
Filter.BaseFilter.Moniker := SysDev.GetMoniker(0);
FilterGraph.Active := true;
with FilterGraph as ICaptureGraphBuilder2 do
RenderStream(@PIN_CATEGORY_PREVIEW, nil,
Filter as IBaseFilter, SampleGrabber as IBaseFilter,
VideoWindow as IbaseFilter);
FilterGraph.Play;
end;
При вызове запроса на каптуринг
SDIAppForm.SampleGrabber.GetBitmap(Form5.Image1.Picture.Bitmap);
FlgGrabber:=true;
В таймере - скидывание на диск
if FlgGrabber then begin FlgGrabber:=false;
ImageJPG:=TJPEGImage.Create;
ImageJPG.Assign(Form5.Image1.Picture.Bitmap);
ImageJPG.Compress;
ImageJPG.SaveToFile(FileGrabber); ImageJPG.Free;
end;
Завершение
SDIAppForm.SampleGrabber.Free;
SDIAppForm.Filter.Free;
SDIAppForm.FilterGraph.Free;
SysDev.Free;
(Destroy вырубает дебаггер)
Вот такая вот неберучка, вот такая вот, блин, некрасота.. (лапки сложил) |
|
|
nick2008 |
Отправлено: 04 Июля, 2008 - 10:27:59
|
Главнокомандующий
Сообщений всего: 275
Дата рег-ции: Март 2008
|
Треад (thread) - это ветвь, я думал, ты о нашей ветви говоришь. Я не знаю такого инструмента каптуринга. Что такое треад???
Понимаешь, тот лоптоп - временное явление. Я туда оболочку поставлю и поизучаю его. Чего это он химичит. Если почтенный какой-нибудь дельфовед скажет еще (правда, я неохотно хожу по форумам), чего она процессы не выгружает, то и дело в шляпе. Мне же мало каптурить - мне связку с моим матлабом нужно сохранить, который помимо еще ацп-цап обслуживает. Я достиг предела аппаратных новаций.. может даже приложение найдется, созданному.
Есть ведь и еще одно решение - Dorgem, готовая программа каптуринга. Она тоже умеет обновлять фото в цикле и делает это хорошо. На "старой машине" можно обойтись ею. Какая разница, кто будет заплевывать диск раз в минуту. Но меня удивляет DSPack.. это довольно профессиональный софт, и вдруг такая немощность.. при которой диск становится буфером из-за зевков. |
|
|
nick2008 |
Отправлено: 05 Июля, 2008 - 00:57:39
|
Главнокомандующий
Сообщений всего: 275
Дата рег-ции: Март 2008
|
Потоки так или иначе живут, запускаемые таймером. Общее время делится на всех.
Но у меня и так таймер задействован для выполнения каптион. Основная программа задает очередность действий, а таймер действия выполняет, в частности - каптурит фигню эту.
Может таймер накрывать сам себя и мешать самому себе, на длительной операции.. сейчас посмотрю, сделал ли я флаг, выхода из программы прерывания по таймеру, если он засел в каптуринге.. не мешает ли таймер сам себе рестартуя процесс..
Потоки я буду иметь в виду.. любопытный ход, и в самом деле.. мне скорость пока не нужна, особо то, параллелить. Преимущества этого хода неочевидны...
Беда настоящая, это выгрузка программы.. когда я выхожу из программы, она висит в потоках (видных по ctrl-alt-del).. видимо драйвер камеры создает чего то там, и оно не выгружается.. |
|
|
nick2008 |
Отправлено: 07 Июля, 2008 - 21:46:50
|
Главнокомандующий
Сообщений всего: 275
Дата рег-ции: Март 2008
|
Решил я проблему, Vcom, и весьма необычным образом.
Вебкамера неохотно отдавала картинку и несколько дней висела в сети схема записи картинки на диск раз в минуту. Понятно, что это плохо, но этим преодолевалась 'лень камеры'. Причем две другие камеры на других компах не ленились, но компы то за пределами оранжереи.
Насилие над винчестером, тоже плохо.
Ввел я двойной буфер памяти, не поленился, и организовал считку туда. Если содержимое буферов различно - картинка обновилась, она писалась на диск. Если нет, чтение в буферы (а не на винчестер) повторялось.
Получил поразительный результат. Если сделать паузу между записью сначала в первый буфер, а потом во второй, то драйвер засыпал и буферы заполнялись одинаковой картинкой (вопреки здравому смыслу). Раза с пятнадцатого получалось различие.
Если убрать паузу между чтениями, камера в таком режиме скоростного опроса умудрялась заполнить оба буфера разными кадрами. Парадоксально. На драйвер немедленный запрос второй картинки действовал вынуждающе, как удар в заднее место. Из него тут же вываливалась новая картинка.
Таперича у меня видеоглаз работает через эти два буфера, а запись на диск делается раз в час (для растений более и не нужно).
Блах.. во как..\n\n(Добавление)
Да, верно, Vcom. Мне кажется, там не один, а свора процессов запускается драйвером камеры. Один носит имя основной программы.
Но я не умею из Дельфы гасить процесс, даже зная его имя. Скорее всего имена - номера, присваиваются динамически, и стандартная процедура завершения не имеет списка адресов или имен ненужных на машине процессов.
Желательно бы их давить, конечно. А то выход из программы получается идиотическим. Она не высвобождает память машины.
Для оранжереи это неважно, поскольку там программа работает сутками и месяцами, без выгрузки. Но для опытов неудобно.
Если бы научиться их грохать некой командой.. но какой, бог знает.\n\n(Добавление)
Здесь проблема расписана.. у мужика тоже форма гасится, а процесс остается..
ну и кто в лес, кто по дрова.. нет жесткого завершения (OnClose мягок)
http://forum.shelek.ru/index.php...pic,11416.0.html
винды мешают, скорее всего..
Вижу, как фонарь зажегся.. приятно, глаз работает.. оставил на память
неплохие на май-робот картинки, хороший художник рисует |
|
|
nick2008 |
Отправлено: 08 Июля, 2008 - 10:53:56
|
Главнокомандующий
Сообщений всего: 275
Дата рег-ции: Март 2008
|
да я пробовал Terminate.. не помогло. Видимо дескриптор процесса, ей не дотянуться.. там что-то нетривиальное. Свой то процесс она автоматом должна убивать. Не убивает, потому что втянута во что-то..
Новая мысль, Vcom. Обзавелся я глазом, значит, робототехническим. Можно лоптоп на тележке катать - типа, как тута делают. Глазастый. Но, вообще то, глаз висит в сети. А у меня есть в сети же говорящая программа. Типа, воспринимающая собеседников не за дерьмо. Что ежели этот глаз, в сети распределенный, этой дуре железнай приделать... ну, чтобы она хоть чего то видела. А то ведь слепая. А так, она скажем, к окну лицом стоит, цветы нюхает. Хорошая позиция. Так, помаленьку, смотришь, где то глаз, где то рука, робот то и соберется. Ну.. пусть пока поливает.
Поеду сегодня в Ботанический. Там другая проблема, шторки. Нужны большие шторки - причем вертикальные. Горит от солнца живность под стеклами. |
|
|
nick2008 |
Отправлено: 09 Июля, 2008 - 16:24:55
|
Главнокомандующий
Сообщений всего: 275
Дата рег-ции: Март 2008
|
У меня сам сервер иногда спит. Сейчас они подправили, зимой было чаще. Я захожу сейчас, ничего - работает, интернет эксплорером, конечно.
Говорящие программы, не новость, но к этой, раз она сетевая, подведены данные от рецепсоров и глаза. Причем робот эксплуатирует алгоритм, беря его прямо из книги http://artspb.com/onlinebook/avatar/index.php
Это новенькое. Поскольку виден и алгоритм реализации (на последней странице). Изменения выполняются коррекцией записей, там же. Открытый алгоритм.
Сегодня был в Ботаническом. Там заинтересовались фитомониторингом растений, через сетку. Да и пора бы.. |
|
|
|
Поиск в теме | Версия для печати |
Страниц (14): « 1 2 [3] 4 5 6 7 8 9 ... » В конец |
« Обо всем » |
Все гости форума могут просматривать этот раздел. Только зарегистрированные пользователи могут создавать новые темы в этом разделе. Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
|
|
|
|
|