Форум программистов, компьютерный форум, киберфорум
Наши страницы
C++ Builder
Войти
Регистрация
Восстановить пароль
 
 
<-=olllegicus=->
7 / 2 / 0
Регистрация: 03.04.2007
Сообщений: 4
#1

Как получить изображение с веб-камеры - C++ Builder

03.04.2007, 01:18. Просмотров 46480. Ответов 119
Метки нет (Все метки)

Помогите, как получить изображение с веб-камеры через билдер, а то я хочу сделать веб-камерный шпион, но не знаю как.
2
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.04.2007, 01:18
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Как получить изображение с веб-камеры (C++ Builder):

Изображение с веб камеры
Я написал программу которая снимает изображение с веб камеры!!! Возможно...

Изображение с Web-камеры
Привет, ребят... не гоните в другие темы... я согласен, что в этой теме:...

Снимок с веб-камеры
нашел такой пример, который выводит на окно видео в режиме онлайн с вэб камеры ...

Снимок с веб камеры
как снять в билдер с++ снимок с веб камеры? в компонент TImage к примеру.

Запись видео с веб камеры
Новичок в этом деле. Я даже не знаю в какую тему мой вопрос опубликовать....

Захват видео с веб-камеры (C++)
Здравствуйте! Я установил Visual Studio 2015 Community и библиотеку OpenCV...

119
Elizium
9 / 9 / 1
Регистрация: 03.02.2007
Сообщений: 3
25.05.2007, 03:36 #2
Лучший ответ Сообщение было отмечено как решение

Решение

Создание видеоокна и открытие источника видеосигнала:
C++
1
2
3
hWndC=capCreateCaptureWindow("",WS_CHILD, this->Left, this->Top, this->Width, this->Height, this->Handle, 11011);
capDriverConnect (hWndC,0);
Timer1->Enabled=true;
Обработчик получения видео с источника по таймеру:
C++
1
2
3
capGrabFrame(hWndC);
if(capEditCopy(hWndC))
Image1->Picture->LoadFromClipboardFormat(CF_BITMAP, Clipboard()->GetAsHandle(CF_BITMAP),0);
Закрытие источника сигнала (если этого не сделать, то при следующему обращению к драйверу камеры до перезагрузки системы, система выдаст, что драйвер уже используется):
C++
1
capDriverDisconnect(hWndC);
9
olllegic
0 / 0 / 0
Регистрация: 28.05.2007
Сообщений: 1
31.05.2007, 19:03 #3
Спасибо большое
0
sitesv
24 / 22 / 4
Регистрация: 22.04.2010
Сообщений: 667
01.02.2011, 20:59 #4
Сделал все, что здесь описано, происходит запрос выбора вэбкамеры, после которого в if
C++
1
2
3
4
if(capEditCopy(hWndC))
        {
                Image1->Picture->LoadFromClipboardFormat(CF_BITMAP,Clipboard()->GetAsHandle(CF_BITMAP),0);
        }
при пошаговом просмотре указатель никогда не попадает....
1
Samrisbe
1351 / 721 / 66
Регистрация: 28.01.2011
Сообщений: 1,979
03.02.2011, 00:25 #5
Добрый день. Для начинающих нельзя подробней, ато компилятор ругается...
плиз...
0
LK
Заблокирован
03.02.2011, 00:42 #6
Лучший ответ Сообщение было отмечено как решение

Решение

Как ругается ? Обыкновенным матом, или пробует чего сообщить ?
3
Vlad_IT
1440 / 346 / 60
Регистрация: 03.04.2010
Сообщений: 2,095
03.02.2011, 00:58 #7
А как для шпиона? Это нельзя на форуме обсуждать. Да и как? Если почти во всех новых Веб камерах встраивают светодиод и в том случае если камера работает то он загорается, а значит и жертва узнает что за ней следят и выключает камеру. Может я ошибаюсь
0
Samrisbe
1351 / 721 / 66
Регистрация: 28.01.2011
Сообщений: 1,979
03.02.2011, 01:27 #8
Вот такие ошибки выдает компилятор.
Как получить изображение с веб-камеры
0
LK
Заблокирован
03.02.2011, 01:37 #9
И не надо каждый раз делать скрин ошибок - достаточно в окне сообщений выделить строки с ошибками и нажать CTRL+C, или в контекстном меню выбрать Copy . Быстрее, да и читать на форуме удобнее.

Можно попробовать #include <vfw.h>.
1
Samrisbe
1351 / 721 / 66
Регистрация: 28.01.2011
Сообщений: 1,979
03.02.2011, 02:03 #10
Количество ошибок уменьшилось.
Сори, вопрос не по теме (LK, вы мне какие книги по BuilderC++ и просто С++, посоветуете изучить)...ато уже стыдно...
[C++ Er,ror] Unit1.cpp(16): E2451 Undefined symbol 'hWndC'
[C++ Error] Unit1.cpp(24): E2451 Undefined symbol 'hWndC'
[C++ Error] Unit1.cpp(26): E2268 Call to undefined function 'Clipboard'
[C++ Error] Unit1.cpp(26): E2288 Pointer to structure required on left side of -> or ->*
[C++ Error] Unit1.cpp(31): E2451 Undefined symbol 'hWndC'
0
LK
Заблокирован
03.02.2011, 02:26 #11
сам начинал с C++ для "чайников" (Стефан Р. Дэвис) и Архангельский, Программирование в С++ Builder 6 (есть поновее , версии Билдера до RAD 2009: Программирование в С++ Builder, седьмое издание) .

Добавлено через 3 минуты
hWndC - это, скорее всего,
C++
1
2
TForm1 *Form1;
HWND hWndC;
Добавлено через 3 минуты
И, подозреваю, Вы не сделали
C++
1
2
3
#include <vcl.h>
#include <Clipbrd.hpp> // <-----------
#pragma hdrstop
Добавлено через 10 минут
подобное
[C++ Error] Unit1.cpp(26): E2288 Pointer to structure required on left side of -> or ->*
получится, если в выражении написать, например
C++
1
str.c_str()
вместо
C++
1
AnsiString(str).c_str()
, ищите .
1
Samrisbe
1351 / 721 / 66
Регистрация: 28.01.2011
Сообщений: 1,979
03.02.2011, 02:29 #12
Все работает, спасибо!
Книжку тоже скачал, спасибо!
0
Samrisbe
1351 / 721 / 66
Регистрация: 28.01.2011
Сообщений: 1,979
04.02.2011, 02:59 #13
Лучший ответ Сообщение было отмечено как решение

Решение

Вот такая у меня получилась незамыславатая форма...
Спасибо всем кто помог ее сделать...
Может кому и пригодится...
5
Вложения
Тип файла: rar CAMERA.rar (466.7 Кб, 1158 просмотров)
LK
Заблокирован
04.02.2011, 03:07 #14
У меня нет ВСВ6 - сделайте ЕХЕ , чтобы можно было запускать на другом компутере http://www.cyberforum.ru/cpp-builder/thread15180.html .
Гм, скомпилировалось .
Хорошо бы вырабатывать у себя привычку делать подсказки (Hint) , в данном случае - для кнопок.
2
Samrisbe
1351 / 721 / 66
Регистрация: 28.01.2011
Сообщений: 1,979
04.02.2011, 03:17 #15
Добрый вечер. В архиве все файлы проекта включая Project.exe. Кстати вопрос-почему изоброжение на небольшой экран выходит не полностью, а когда растяну форму и image1 тогда все нормально, может чего в инспекторе объектов "поднаболтать"?
А звук с микрофона компа, паралельно сложно добавить?
А потом это все в видеоформате (мр4) сохранить?
0
LK
Заблокирован
04.02.2011, 03:23 #16
У меня нет камеры - проверить не могу, но, с большой долей вероятности - потому, что вот здесь
C++
1
2
3
4
5
6
7
8
9
hWndC=capCreateCaptureWindow("",WS_CHILD, this->Left,
                                          this->Top,
                                          this->Width,
                                          this->Height,
                                          this->Handle,
                                          11011);
 
capDriverConnect (hWndC,0);
Timer1->Enabled=true;
вы указываете относительно формы - на форму указывает this , эквивалентно Form1, попробуйте так:
C++
1
2
3
4
5
6
7
8
hWndC=capCreateCaptureWindow("",WS_CHILD, this->Left,
                                          this->Top,
                                          DBImage1->Width,
                                          DBImage1->Height,
                                          this->Handle,
                                          11011);
capDriverConnect (hWndC,0);
Timer1->Enabled=true;
или DBImage2.
1
Samrisbe
1351 / 721 / 66
Регистрация: 28.01.2011
Сообщений: 1,979
04.02.2011, 03:36 #17
Скомпилировал немного лучше стало но всеравно, видна только часть.
А еще вопрос по этой теме: Изображение можно перевернуть чтоб получился эфект зеркала?

не по теме: у меня есть 2007 билдер, который уже radstudio типа 57000 рублей стоит, мне он не понравился, пока болемение освою С++ даже в шестом билдере можно сотворить хорошую программу.
0
LK
Заблокирован
04.02.2011, 04:46 #18
Цитата Сообщение от Samrisbe Посмотреть сообщение
1. Скомпилировал немного лучше стало но всеравно, видна только часть.
2. А еще вопрос по этой теме: Изображение можно перевернуть чтоб получился эфект зеркала?
3. у меня есть 2007 билдер, который уже radstudio типа 57000 рублей стоит, мне он не понравился, пока болемение освою С++
4. даже в шестом билдере можно сотворить хорошую программу.
1. Поиграйте с this->Width, this->Height, вместо которых можете спокойно указать числа 300, 300 и т.д., "подогнав" изображение под нужный размер
2. Да, зачем ?
3. Забудьте 2007 и пробуйте RAD XE
4. В ВСВ6 всегда было "можно сотворить хорошую программу"

И еще я не понимаю, для чего там DBImage , если есть просто Image ?

п.2.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
// Горизонтальное отражение
Image1->Canvas->CopyRect(Rect(0, 0,
                         Image1->Width,
                         Image1->Height),
                         Image1->Canvas,
                         Rect(Image1->Width, 0, 0,
                         Image1->Height));
// Вертикальное отражение
Image1->Canvas->CopyRect(Rect(0, 0,
                         Image1->Width,
                         Image1->Height),
                         Image1->Canvas,
                         Rect(0, Image1->Height,
                         Image1->Width, 0));
1
Samrisbe
1351 / 721 / 66
Регистрация: 28.01.2011
Сообщений: 1,979
04.02.2011, 06:28 #19
DВImage мне внешне больше понравился изза стиля границ.
0
LK
Заблокирован
04.02.2011, 13:18 #20
Отсительно размера - еще можно попробовать в OnFormCreate (или в инспекторе объектов) указать
C++
1
DBImage2->Strech = true;
1
04.02.2011, 13:18
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
04.02.2011, 13:18
Привет! Вот еще темы с решениями:

Черный экран при снимке с веб камеры
Всем привет. Надыбал такой код и поставил на кнопку:...

Снимок с веб камеры без использования буфера
Всем привет. Такой вопрос: можно ли копировать снимок не в буфер, а например,...

Как получить из веб-страницы только полезную информацию, отбросив весь «мусор» (навигацию, рекламу и тд)
Здравствуйте уважаемые как же давно я тут не писал. Есть некая задачка по...

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


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru