|
Получение изображения с IP-камеры | ☑ | ||
---|---|---|---|---|
0
greemodineser
01.11.12
✎
13:47
|
Есть самопальная складская конфигурация, к которой требуется прекрутить возможность более-менее автоматизированного занесения снимков складских позиций в БД.
Под "более-менее" подразумевается следующая картина: Есть кладовщик, у которого есть небольшой столик со штативчиком с камерой. На столик кладется выбранная позиция, и далее кладовщик нажимая кнопку в специальной обработке заносит фотку в справочник "Номенклатура". Задача несколько осложняется тем, что все рабочие места имеют лишь терминальный доступ к 1С-серверу, что затрудняет использование web-usb-камеры, давая возможность прибегнуть лишь к IP-камере. Это было описание общей ситуации, а теперь конкретный вопрос, который, как мне кажется, вытекает из этого описания (может быть вы увидите другое решение): Как бы мне закодить получение изображения в реальном времени с IP-камеры на поле картинки на форме толстого приложения 1С? |
|||
1
PiotrLoginov
01.11.12
✎
14:57
|
Мб воспользоваться сторонним приложением получения снимка с камеры, имеющим управление из командной строки? Когда-то интересовался темой, но сейчас ссылки не дам, хотя уверен, поиск в сети будет не долгим. А дальше дело техники: вешаем на кнопку выполнение определенной команды и забираем программно из приготовленной папки готовое изображение. Имхо даже вариант с расшаренной usb-камерой может прокатить.
|
|||
2
greemodineser
01.11.12
✎
15:39
|
На самом деле работа с IP-камерой довольно проста. В большинстве случаев она представляет собой web-сервер выдающий видео-поток в нужном формате. Вполне можно получать изображение http-запросом, и тогда мой вопрос сводится вот к чему:
Если я хочу на поле картинки на форме иметь изображение а реальном времени (пусть и с небольшим fps), а с правочник дергать отдельные мгновенные кадры по нажатию кнопки, как мне организовать зацикленный запрос к http-серверу средствами 1С? Есть ли какой-нибудь таймер, или что-нибудь в этом роде? |
|||
3
Spieluhr
01.11.12
✎
16:00
|
(2) Попробуйте в форме ПодключитьОбработчикОжидания()
|
|||
4
greemodineser
01.11.12
✎
16:43
|
(3) Судя по написанному в СП должно подойти. Спасибо, попробую.
|
|||
5
greemodineser
02.11.12
✎
13:42
|
ОбработчикОжидания отрабатывает с максимальной частотой раз в секунду. Хотелось бы чего-нибудь пошустрее (
|
|||
6
BigHarry
02.11.12
✎
13:44
|
(5) Зачем шустрее? Ваш кладовщик будет нажимать на кнопку чаще одного раза в секунду?
|
|||
7
greemodineser
02.11.12
✎
13:48
|
Кладовщик должен видеть, что попадает в поле зрения камеры до того, как он нажмет кнопку "Сохранить картинку". Периодическое получение картинки нужно не для ее сохранения, а для получения изображения в режиме реального времени.
|
|||
8
BigHarry
02.11.12
✎
13:56
|
Видел похожее, но там через TWAIN интерфейс было организовано, превью тоже имелось, но ессно - отображение картинки во время превью делал драйвер или ПО камеры без участия 1С, в момент снимка - 1С засасывала картинку. Реализовано было на камере Genius, точно модель не знаю - не разглядывал, но через USB.
Возможно что реальней вам это будет прикрутить через тонкого клиента, видеопоток на сервер через тырнет - это слабое место... |
|||
9
greemodineser
02.11.12
✎
14:09
|
(8) У меня это вряд ли слабое место, потому что и терминальный сервер (на котором стоит 1С) и IP-камера находятся в одной локальной сети. Разово дергать картинку с камеры я уже умею, все что мне нужно на данном этапе - делать это без участия юзера хотя бы на 3-4 fps.
|
|||
10
greemodineser
26.11.12
✎
14:17
|
В общем пришел к комбинированному решению - превратил USB web-камеру в IP с помощью специальной программулины. Теперь изображение с нее получаю обычными http-запросами. Одна проблема остается - частота обновления 1 кадр в секунду (максимум, что можно выжать из ОбработчикаОжидания) как-то не радует.
Поэтому как не крути, а вопрос остается: есть ли другие способы выполнять на форме действие с заданным периодом < 1сек.? |
|||
11
AndyD
26.11.12
✎
14:21
|
<Интервал> (обязательный)
Тип: Число. Интервал времени в секундах с точностью до 1/10 секунды, через который будет осуществляться вызов процедуры (положительное число). Если указано значение меньше 1, то значение третьего параметра должно быть равно Истина. сделай 2 обработчика ожидания, которые вызывают друг друга на однократное выполнение с интервалом 1/10 секунды |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |