С Новым годом! Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.91/335: Рейтинг темы: голосов - 335, средняя оценка - 4.91
7 / 2 / 0
Регистрация: 03.04.2007
Сообщений: 4

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

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

Студворк — интернет-сервис помощи студентам
Помогите, как получить изображение с веб-камеры через билдер, а то я хочу сделать веб-камерный шпион, но не знаю как.
2
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
03.04.2007, 01:18
Ответы с готовыми решениями:

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

Изображение с Web-камеры
Привет, ребят... не гоните в другие темы... я согласен, что в этой теме: https://www.cyberforum.ru/cpp-builder/thread1737.html Всё...

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

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

Решение

Создание видеоокна и открытие источника видеосигнала:
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
31.05.2007, 19:03
Спасибо большое
27 / 25 / 5
Регистрация: 22.04.2010
Сообщений: 772
01.02.2011, 20:59
Сделал все, что здесь описано, происходит запрос выбора вэбкамеры, после которого в if
C++
1
2
3
4
if(capEditCopy(hWndC))
        {
                Image1->Picture->LoadFromClipboardFormat(CF_BITMAP,Clipboard()->GetAsHandle(CF_BITMAP),0);
        }
при пошаговом просмотре указатель никогда не попадает....
1
 Аватар для Samrisbe
1365 / 732 / 67
Регистрация: 28.01.2011
Сообщений: 2,069
03.02.2011, 00:25
Добрый день. Для начинающих нельзя подробней, ато компилятор ругается...
плиз...
0
 Аватар для cpp_developer
20124 / 5691 / 417
Регистрация: 09.04.2010
Сообщений: 22,546
Записей в блоге: 1
03.02.2011, 00:42
Лучший ответ Сообщение было отмечено как решение

Решение

Как ругается ? Обыкновенным матом, или пробует чего сообщить ?
3
 Аватар для Vlad_IT
1452 / 360 / 61
Регистрация: 03.04.2010
Сообщений: 2,096
03.02.2011, 00:58
А как для шпиона? Это нельзя на форуме обсуждать. Да и как? Если почти во всех новых Веб камерах встраивают светодиод и в том случае если камера работает то он загорается, а значит и жертва узнает что за ней следят и выключает камеру. Может я ошибаюсь
0
 Аватар для Samrisbe
1365 / 732 / 67
Регистрация: 28.01.2011
Сообщений: 2,069
03.02.2011, 01:27
Вот такие ошибки выдает компилятор.
0
 Аватар для cpp_developer
20124 / 5691 / 417
Регистрация: 09.04.2010
Сообщений: 22,546
Записей в блоге: 1
03.02.2011, 01:37
И не надо каждый раз делать скрин ошибок - достаточно в окне сообщений выделить строки с ошибками и нажать CTRL+C, или в контекстном меню выбрать Copy . Быстрее, да и читать на форуме удобнее.

Можно попробовать #include <vfw.h>.
1
 Аватар для Samrisbe
1365 / 732 / 67
Регистрация: 28.01.2011
Сообщений: 2,069
03.02.2011, 02:03
Количество ошибок уменьшилось.
Сори, вопрос не по теме (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
 Аватар для cpp_developer
20124 / 5691 / 417
Регистрация: 09.04.2010
Сообщений: 22,546
Записей в блоге: 1
03.02.2011, 02:26
сам начинал с 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
1365 / 732 / 67
Регистрация: 28.01.2011
Сообщений: 2,069
03.02.2011, 02:29
Все работает, спасибо!
Книжку тоже скачал, спасибо!
0
 Аватар для Samrisbe
1365 / 732 / 67
Регистрация: 28.01.2011
Сообщений: 2,069
04.02.2011, 02:59
Лучший ответ Сообщение было отмечено как решение

Решение

Вот такая у меня получилась незамыславатая форма...
Спасибо всем кто помог ее сделать...
Может кому и пригодится...
Вложения
Тип файла: rar CAMERA.rar (466.7 Кб, 1485 просмотров)
5
 Аватар для cpp_developer
20124 / 5691 / 417
Регистрация: 09.04.2010
Сообщений: 22,546
Записей в блоге: 1
04.02.2011, 03:07
У меня нет ВСВ6 - сделайте ЕХЕ , чтобы можно было запускать на другом компутере Компиляция программы под С++ Builder, чтобы работала на других компьютерах .
Гм, скомпилировалось .
Хорошо бы вырабатывать у себя привычку делать подсказки (Hint) , в данном случае - для кнопок.
2
 Аватар для Samrisbe
1365 / 732 / 67
Регистрация: 28.01.2011
Сообщений: 2,069
04.02.2011, 03:17
Добрый вечер. В архиве все файлы проекта включая Project.exe. Кстати вопрос-почему изоброжение на небольшой экран выходит не полностью, а когда растяну форму и image1 тогда все нормально, может чего в инспекторе объектов "поднаболтать"?
А звук с микрофона компа, паралельно сложно добавить?
А потом это все в видеоформате (мр4) сохранить?
0
 Аватар для cpp_developer
20124 / 5691 / 417
Регистрация: 09.04.2010
Сообщений: 22,546
Записей в блоге: 1
04.02.2011, 03:23
У меня нет камеры - проверить не могу, но, с большой долей вероятности - потому, что вот здесь
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
1365 / 732 / 67
Регистрация: 28.01.2011
Сообщений: 2,069
04.02.2011, 03:36
Скомпилировал немного лучше стало но всеравно, видна только часть.
А еще вопрос по этой теме: Изображение можно перевернуть чтоб получился эфект зеркала?

не по теме: у меня есть 2007 билдер, который уже radstudio типа 57000 рублей стоит, мне он не понравился, пока болемение освою С++ даже в шестом билдере можно сотворить хорошую программу.
0
 Аватар для cpp_developer
20124 / 5691 / 417
Регистрация: 09.04.2010
Сообщений: 22,546
Записей в блоге: 1
04.02.2011, 04:46
Цитата Сообщение от 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
1365 / 732 / 67
Регистрация: 28.01.2011
Сообщений: 2,069
04.02.2011, 06:28
DВImage мне внешне больше понравился изза стиля границ.
0
 Аватар для cpp_developer
20124 / 5691 / 417
Регистрация: 09.04.2010
Сообщений: 22,546
Записей в блоге: 1
04.02.2011, 13:18
Отсительно размера - еще можно попробовать в OnFormCreate (или в инспекторе объектов) указать
C++
1
DBImage2->Strech = true;
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
04.02.2011, 13:18
Помогаю со студенческими работами здесь

Снимок с веб-камеры
нашел такой пример, который выводит на окно видео в режиме онлайн с вэб камеры http://pastebin.com/c9LCaLRT (из за ограничения...

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

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

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

Черный экран при снимке с веб камеры
Всем привет. Надыбал такой код и поставил на кнопку: hWndC=capCreateCaptureWindow(&quot;&quot;,WS_CHILD, this-&gt;Left, this-&gt;Top,...


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Изучаю kubernetes
lagorue 13.01.2026
А пригодятся-ли мне знания kubernetes в России?
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/ O1rJuneU_ls https:/ / vkvideo. ru/ video-115721503_456239114
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR ВВЕДЕНИЕ Введу сокращения: аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru