Todo sobre el tuning de coches

Cómo seguir la cámara web si la computadora está apagada. Cómo los hackers nos espían a través de cámaras web. Cómo entender que la computadora está infectada

Un pirata informático desconocido monta un programa de Internet durante varios días seguidos, espiando a las personas que usan cámaras web. Esta no es la primera vez que los usuarios son monitoreados a través de sus propias computadoras y teléfonos inteligentes; muchos intrusos y oficiales de inteligencia occidentales lo han hecho. Lenta.ru descubrió si es posible proteger la cámara web contra la piratería.

pío aficionado

El martes 26 de abril, un miembro anónimo del tablero de imágenes de Dvach creó un hilo en el foro donde anunció un programa de Internet inusual. Prometió que en un par de horas transmitiría una transmisión de YouTube y seguiría en vivo a usuarios aleatorios de la red. Además, inesperadamente lanzan varias aplicaciones en las computadoras de las víctimas, activan la pornografía y cargan sus datos en la red.

Para que la audiencia no se aburra, el autoproclamado showman anunció "totalmente interactivo": los espectadores podrán enviar sus solicitudes al chat, que cumplirá de inmediato. Después de un tiempo, apareció un enlace al servicio Synchtube en la grabación, donde, además de la transmisión de video incorporada de YouTube, se organizó un chat y se recolectaron donaciones. Para garantizar el cumplimiento de sus solicitudes, se pidió a los usuarios que enviaran al hacker una suma simbólica de dos o tres rublos para el "desarrollo del proyecto".

Al comienzo de la transmisión, quedó claro que el atacante estaba actuando a través del sistema LuminosityLink. Los administradores de red lo utilizan comúnmente para administrar redes informáticas a distancia. Sin embargo, existen muchas versiones pirateadas del programa en Internet que se pueden configurar para espiar a los usuarios, infectarlos con virus y organizar ataques DDoS. Las instrucciones pertinentes son fáciles de encontrar en YouTube.

Durante más de dos horas de transmisión, el hacker logró conectarse a varias decenas de equipos. Por lo general, observaba lo que hacía la víctima durante un par de minutos y, de repente, mostraba varios videos o fotos en la pantalla de la persona. Entonces, una joven pareja de Rusia se vio obligada a ver porno gay y un policía ucraniano se vio obligado a ver una sangrienta pelea de artes marciales mixtas.

Al día siguiente, el hacker dominó otro entretenimiento: encender la música en VKontakte. Logré despertar a uno de los usuarios con él. El atacante trató de todas las formas posibles de enojar a la gente, porque eso era lo que esperaba la audiencia del programa. Por lo general, las víctimas inmediatamente comenzaron a escanear su computadora en busca de virus, pero el showman simplemente agregó antivirus a la lista de programas prohibidos.

Los espectadores reaccionaron con especial violencia ante varios usuarios que apagaron Internet por miedo, y ante un joven que decidió llamar a la policía. También se rieron del que entró en correspondencia con el hacker, pensando que estaba en diálogo con el servicio de soporte del proveedor de Internet. Previo a esto, el autor de la transmisión mostró información sobre enfermedades de la piel en la pantalla durante diez minutos.

Lo más curioso es que el atacante es sumamente difícil de descifrar. Dvach ha sido famoso durante mucho tiempo por garantizar el anonimato de todos los usuarios, y el pirata informático probablemente use VPN y otros servicios para enmascarar su dirección IP. Sin embargo, la red sugirió que las transmisiones fueron organizadas por Dmitry Shalashov, un conocido navegador de YouTube para varios programas de piratas informáticos, ya que la voz es similar.

Sitio para cámaras

El hacker de Dvacha está lejos de ser el único atacante que espía a las personas a través de cámaras web. En 2014, la BBC informó sobre un sitio ruso que permitía al mundo seguir cámaras web en vivo. Más de 2500 canales de EE. UU., 2000 de Francia y 1500 de los Países Bajos estaban disponibles en el recurso.

Las cámaras web de los usuarios rusos también se subieron a este portal. La edición de Threat Post encontró alrededor de 70 cámaras en funcionamiento de Moscú, Korolev, Krasnodar y otras ciudades.

Luego, los periodistas de la BBC contactaron al propietario del recurso. Afirmó que no tenía nada que ver con Rusia y se negó a reconocerse como un hacker. Según él, recibió acceso a todas las transmisiones después de ingresar una contraseña simple a las cámaras, que los propios usuarios no cambiaron de la estándar. Al mismo tiempo, el sitio web de Networkworld calculó que unas 73.000 cámaras web en 256 países estaban protegidas por defecto con una contraseña.

Realmente no hubo allanamiento. Los usuarios que no cambiaron la configuración de fábrica y las contraseñas, de hecho, proporcionaron a los atacantes acceso a sus cámaras web.

La aparición de un agregador de cámaras web sin protección era solo cuestión de tiempo. Los creadores del portal no necesitaban buscar vulnerabilidades de software ni ejecutar un sitio de phishing para robar contraseñas. Se encontraron cámaras desprotegidas mediante una simple consulta de búsqueda.

Después de una amplia publicidad, el sitio fue eliminado. Los fabricantes de cámaras inalámbricas Foscam dijeron en ese momento que cambiaron el software después del incidente y que sus cámaras ahora obligan a los usuarios a configurar contraseñas complejas, lo que les impide trabajar con la configuración de seguridad estándar de fábrica.

La verdad de Snowden

Edward Snowden, ex empleado de la Agencia de Seguridad Nacional de EE. UU., también habló sobre el hecho de que las cámaras web se utilizan para la vigilancia. En sus materiales reveladores, dijo que los servicios de inteligencia estadounidenses y británicos están interviniendo teléfonos, rastreando correspondencia en redes sociales y mensajería instantánea, transacciones de dinero y compra de boletos. Además, la NSA tiene acceso a millones de cámaras web y puede monitorear a los usuarios a través de ellas. Quedó claro que no existen tecnologías absolutamente imposibles de hackear.

Snowden proporcionó detalles sobre cómo las agencias de inteligencia monitorearon los chats de video en febrero de 2014. Según los materiales publicados, para esto se utilizó un programa especial Optic Nerve, capaz de reconocer rostros humanos. Inicialmente, se creó para combatir el crimen y, con su ayuda, se planeó buscar terroristas, pero finalmente se convirtió en una herramienta para la vigilancia masiva.

Optic Nerve fue desarrollado por la inteligencia británica. Según Snowden, el programa tomó automáticamente capturas de pantalla de chats de video seleccionados al azar cada cinco segundos y los almacenó en una base de datos especial. Entre estas imágenes, a menudo se encontraban marcos de naturaleza erótica. Optic Nerve se lanzó en 2008 y, en seis meses, la inteligencia recibió imágenes de 1,8 millones de usuarios de la red.

Para la vigilancia, la inteligencia británica utilizó solo Yahoo! Inc, y compartió datos exclusivamente con sus homólogos estadounidenses. En Yahoo! C ª. no sabía nada al respecto.

A cada uno según su obra

Sin embargo, los piratas informáticos no siempre logran eludir la responsabilidad. Por ejemplo, en 2013, se abrió un caso en los Estados Unidos contra Jared James Abrahams (Jared James Abrahams), de 19 años. El joven obtuvo acceso ilegal a las computadoras de las niñas y les tomó fotos cándidas a través de cámaras web. Luego amenazó a sus víctimas con publicar estos materiales si no le enviaban más fotos eróticas.

Abrahams también probó con su excompañera de clase Cassidy Wolf (Cassidy Wolf), la ganadora del título de Miss Teen USA 2013. La niña se negó a cumplir con las demandas de Abrahams. Llevó a cabo su amenaza y publicó imágenes tomadas desde la cámara web en línea. Como resultado, su

El software de videovigilancia más popular que funciona con todas las cámaras existentes. Xeoma se ejecuta en cualquier computadora y ni siquiera requiere instalación.

El programa tiene una interfaz concisa y posibilidades casi ilimitadas. Además del detector de movimiento habitual, Xeoma cuenta con reconocimiento de matrículas, rostros e incluso emociones. Todas las funciones funcionan en forma de módulos que pueden combinarse en cadenas y ajustarse muy finamente.

En la versión gratuita, el número de módulos está limitado a tres, lo que será suficiente para escenarios caseros y sencillos. Para tareas más serias, existen tres tipos de licencias, cuyo precio depende del número de cámaras.

  • Plataformas: Linux, iOS, Android.

Una poderosa herramienta de código abierto con una comunidad activa que es adecuada para organizar videovigilancia de cualquier complejidad. Después de la configuración, puede ver el video desde una computadora o teléfono inteligente, desde cualquier navegador.

Zoneminder funciona con cámaras de cualquier tipo, permitiéndole grabar y analizar imágenes de ellas. Gracias a la configuración avanzada, para cada cámara, puede configurar varias zonas de detección de movimiento y su sensibilidad. Capaz de enviar alertas o SMS sobre eventos específicos.

La aplicación es completamente gratuita tanto para uso doméstico como comercial.

3. iEspía

  • Plataformas: Windows, iOS, Android.

iSpy es de código abierto, lo que brinda amplias oportunidades para actualizar el programa y hace que la personalización detallada sea muy conveniente. Puede ampliar la funcionalidad con complementos para el reconocimiento de matrículas, superposición de texto, escaneo de códigos de barras.

Puede conectar un número ilimitado de fuentes. Hay un sensor de movimiento, transmisión de red, notificaciones. Además, iSpy admite la carga en YouTube, Dropbox o servidor FTP.

Como fuente, puede usar no solo cámaras USB e IP, sino también una imagen de escritorio.

  • Plataformas:

Este programa multiplataforma cuenta con un sensor de movimiento inteligente que puede distinguir a una persona de un automóvil o una mascota. Capaz de trabajar con IP y cámaras web, pero en la versión gratuita solo puede transmitir video desde una fuente.

Sighthound Video es capaz de guardar videos en servicios en la nube y tiene muchas características útiles para aquellos a quienes les gusta el concepto.

En el sitio web oficial, puede comprar un kit que garantizará la seguridad de, por ejemplo, una casa de campo, y el programa en sí puede funcionar con el servicio de automatización IFTTT.

  • Plataformas: Windows, macOS, iOS, Android.

La principal ventaja de AtHome Video Streamer es la multiplataforma. Además de aplicaciones móviles para vigilancia, el programa cuenta con versiones completas para Windows y macOS.

Es posible grabar de acuerdo con un programa, guardar videos y enviar notificaciones a un teléfono inteligente cuando se detecta movimiento. Las cámaras de los dispositivos USB, IP, Smart TV, iOS y Android se utilizan como fuentes.

  • Plataforma: Ventanas.

EyeLine Video Surveillance puede usar hasta 100 canales al mismo tiempo. Le permite utilizar cámaras web e IP como fuentes.

El programa está equipado con un detector de movimiento, un administrador de grabación de archivo y la capacidad de cargar videos a un servidor FTP. Las notificaciones de eventos se pueden recibir por correo electrónico o SMS.

EyeLine Video Surveillance es una excelente opción para cualquiera que busque un sistema de videovigilancia simple y efectivo. El programa tiene un período de prueba de dos semanas y ofrece varias opciones de suscripción con funcionalidad avanzada.

  • Plataformas: Windows, iOS, Android.

Una solución llave en mano de Milestone que combina facilidad de uso y muchas características útiles. XProtect Essential+ es adecuado para puntos de venta y uso doméstico.

El programa admite hasta ocho cámaras IP, USB y web, puede grabar movimiento en el marco y también le permite configurar zonas de detección individuales para una mayor precisión. Puede ver transmisiones desde una cantidad ilimitada de computadoras y dispositivos móviles.

XProtect Essential+ no requiere activación y la versión gratuita solo está limitada por la cantidad de cámaras. Si es necesario, se puede escalar fácilmente a uno de pago manteniendo todas las configuraciones.

¿Cómo monitorear a través de la cámara web de una computadora portátil? ¿Es posible realizar vigilancia encubierta a través de la cámara web de una computadora portátil? Sí, tal vez el software de rastreo de computadoras portátiles pueda ayudarlo con eso.

Nos gustaría llamar su atención de inmediato sobre el hecho de que la vigilancia encubierta a través de la cámara web de una computadora portátil sin el permiso del usuario de este dispositivo, la vigilancia secreta, las escuchas telefónicas y la lectura de correspondencia personal son ilegales en muchos países. Por tanto, si quieres observar a través de la webcam del portátil de forma discreta, ten en cuenta este importante dato.

¿Es posible monitorear a través de una cámara web en secreto?

A nuestros consultores a menudo se les pregunta algo como esto: "¿Es cierto que se puede espiar a una persona a través de una cámara web?" Por supuesto, es posible y es cierto que los padres observan a sus hijos a través de una cámara web, los cónyuges celosos se observan entre sí, los líderes observan a sus subordinados y los servicios especiales observan a los peligrosos alborotadores.

Todo el mundo y todo está siendo observado. Sí, y hacer esto con las tecnologías actuales es bastante simple incluso para un usuario común. Ahora, sobre qué significa "vigilancia a través de la cámara web de una computadora portátil", por qué es necesaria y cómo se lleva a cabo.

¿Cómo es la vigilancia a través de la cámara del portátil?

Vigilancia a través de la cámara web de la computadora portátil- esta es la capacidad de encender la cámara web de forma remota (estar a una distancia considerable de la computadora portátil) y ver en tiempo real lo que sucede en la habitación.

La videovigilancia a través de la webcam de un portátil te permitirá estar al tanto de todo lo que ocurre en tu hogar cuando no lo estás:

  • ¿Qué hacen los niños en la habitación?
  • si juegan en una computadora portátil, cuál es su reacción a los juegos;
  • qué hacen los perros cuando se quedan solos;
  • cómo se comporta la niñera al cuidar a su hijo;
  • y mucho más.

Si usted es el jefe de una empresa donde los empleados trabajan en computadoras portátiles en la oficina o realizan tareas con ellos, la vigilancia encubierta a través de la cámara web de la computadora portátil le permitirá ver todo lo que sucede en el campo de visión de la cámara. Estará al tanto de lo que los empleados están haciendo durante las horas de trabajo en sus lugares de trabajo. También podrá ver a través de la cámara web de una computadora portátil lo que están haciendo los trabajadores de campo en las asignaciones.

Para poder observar a través de la cámara web de una computadora portátil de forma oculta y remota, debe instalar un programa de seguimiento en esta computadora portátil. Uno de Los mejores programas de vigilancia encubierta a través de la cámara de la computadora portátil en 2019 son el programa de seguimiento de Windows Vkurse.

¿Dónde puedo descargar el software de rastreo para mi computadora portátil?

En la página de nuestro sitio web descargue el programa de seguimiento para la computadora portátil Vkurse Windows de forma gratuita. Para más información sobre cómo instalar y configurar el programa de seguimiento a través de la cámara web de un portátil, consulte el Manual en pdf. Se puede descargar en la página de Windows de VkurSe, junto al botón "Descargar".

¡Atención! Tenga en cuenta que en nuestro sitio puede:

  • descargue el archivo de instalación del programa, gratis;
  • descargar el Manual - gratis;
  • registrarse - gratis;
  • Los primeros 7 días después del registro son gratuitos.

Si te exigen dinero por el registro o el archivo de instalación, significa que estás en un sitio fraudulento, ¡cuidado!

¿Cómo activar la videovigilancia a través de la cámara web de una computadora portátil de forma remota?

Puede encender la cámara a través de su cuenta personal, que se abrirá después del registro. Los primeros 7 días funcionará gratis. Para continuar habilitando la videovigilancia a través de la cámara web de la computadora portátil de forma remota, deberá pagar una suscripción.

Durante este período de prueba, se familiarizará con las enormes funciones del programa:

  • un desglose completo de todas las acciones (una lista detallada en forma de tabla, gráfico y diagrama);
  • monitorear la pantalla de la computadora usando capturas de pantalla;
  • keylogger (contraseñas y texto);
  • estadísticas de encendido/apagado de Internet;
  • estadísticas de visitas a sitios de Internet;
  • monitorear el funcionamiento de la computadora en la impresora: qué documentos y cuántas páginas se imprimieron;
  • conectarse de forma remota al escritorio a través de Internet: software de seguimiento para una computadora portátil en línea;
  • y mucho más.

El programa VkurSe de Windows es uno de los mejores software de seguimiento de cámaras portátiles de 2019.

Como sabes, incluso si eres paranoico, no significa que no te estén siguiendo.

Hoy, cuando tu absolutamente correcto mire, esta frase es especialmente relevante: las grandes empresas han estado monitoreando sus acciones en la red durante mucho tiempo, los estafadores cibernéticos se están acostumbrando a una cuenta bancaria y las redes neuronales han aprendido a reconocer rostros y encontrar su perfil de VKontakte a partir de una foto. .

Para mantener la privacidad al menos en casa, recomendamos la nuestra de hacking. Hoy daremos una serie de recomendaciones adicionales para aquellos a quienes los atacantes aún pudieron piratear y obtener acceso a la cámara de la PC o computadora portátil.

Imagina que la luz indicadora de la cámara se enciende por un segundo y luego se apaga. Esta puede ser una llamada de atención que no debe ignorarse (a menos que desee que su vida privada se haga pública de repente). Pero incluso si el indicador está apagado, la cámara web aún puede funcionar en secreto.

Averiguar qué programas están usando la cámara es bastante fácil.

1. En primer lugar, necesitará un software especial que muestre todos los procesos asociados con un dispositivo en particular. Para este propósito, sugerimos usar Process Explorer. Este práctico programa está disponible en línea y fuera de línea.

2. Luego, debe averiguar el nombre de la cámara web en el sistema (en las versiones rusas de Windows, suena como "Nombre de objeto de dispositivo físico"). No es difícil encontrar esta información: Inicio - Panel de control - Hardware y sonido - Administrador de dispositivos.

3. A continuación, "Dispositivos de procesamiento de imágenes" - "Propiedades" de la cámara - la pestaña "Detalles". En la lista desplegable, seleccione "Nombre de objeto de dispositivo físico", que se parece a esto: "\Dispositivo\0000009c". Haga clic derecho sobre él y haga clic en "Copiar".

4. Ahora vamos a Process Explorer, abrimos la búsqueda por el botón con el icono de binoculares (o la combinación Ctrl + F), insertamos el "Physical Device Object Name" y comenzamos la búsqueda para encontrar todos los procesos usando tu webcam.

Si no se detecta actividad sospechosa, no hay nada de qué preocuparse. Por lo general, solo encontrará Skype u otras aplicaciones de videollamadas en esta lista. Sin embargo, no sea demasiado perezoso para verificar la ruta de lanzamiento. Los atacantes a menudo intentan hacer pasar un programa malicioso como una aplicación legítima, aprovechándose de la falta de atención de los usuarios comunes.

Si ve programas sospechosos que no pertenecen al sistema en la lista de Process Explorer que definitivamente no instaló, le recomendamos que cierre este proceso y ejecute el archivo .

PD El método descrito anteriormente también se puede aplicar a los micrófonos, que también pueden convertirse en un objetivo para el spyware.

A algunas personas les preocupa que la cámara web integrada en sus portátiles pueda
echarles un vistazo. Temen esto tan seriamente que a veces incluso
Cubra su ojo dormido con cinta adhesiva. Lo hacen por una razón. Bien dicho
cómo hacerse cargo mediante programación de la cámara web integrada en una computadora portátil y usarla
funcionalidad tanto para propósitos pacíficos como no muy.

Comenzamos la implementación: las primeras decepciones molestas

Estaba muy sorprendido y molesto cuando descubrí que en el gran y poderoso .NET
Framework carece por completo de la capacidad de interactuar simplemente con cámaras web.
En la cuarta versión, la situación ha mejorado (para proyectos SilverLight,
clases correspondientes), pero no tuve tiempo de probarlos, ya que el ejemplo para
Empecé a escribir este artículo incluso antes del lanzamiento oficial de VS2010 y .NET 4.

Casi desesperado, me senté con fuerza en Google. Resultados de búsqueda de runas
No me inspiré: todo lo que encontré fueron enlaces a MSDN y tecnología.
DirectDraw. Incluso traté de esbozar un ejemplo simple, pero debido a
falta de experiencia con DirectDraw, sufrí un fastidio. me las arreglé
para ensamblar una aplicación muy simple, pero aún no podía captar todo lo que contenía
fallas

Aún más desesperado, comencé a robar los recursos de nuestros camaradas occidentales.
Habiendo estudiado varias docenas de enlaces, pude desenterrar muchas cosas buenas. Entre
había todo tipo de ejemplos y pequeños artículos (a los estadounidenses no les gusta mucho
escribe). Incluso logré encontrar un ejemplo de trabajo basado en DirectDraw, pero cuando
Vi el código, estaba horrorizado. Era difícil entenderlo. Así que decidí no
molestarse, pero trate de encontrar una manera más simple. no tuve tiempo de despedirme
ejemplo en DirectDraw, ya que otro me llamó la atención. El autor del ejemplo codificado
una biblioteca completa para trabajar con cámaras web y otros dispositivos de captura de video,
utilizando la tecnología VFW (Video para Windows).

Es una pena que el proyecto del autor (hablo de la biblioteca) se castrara lo máximo posible. Todo,
lo que la biblioteca permitía hacer era mostrar la imagen desde la cámara web. sin captura
No había marcos separados, ni grabación de video ni otras características que nos fueran útiles.

Y sin embargo, mi subconsciente me decía enfáticamente que este proyecto y
tener lo que buscaba. Antes de que tuviera tiempo de echar un vistazo a su código,
Vi los nombres de mensajes win familiares y nombres no menos familiares de funciones WinAPI.
Érase una vez, tuve que escribir una aplicación de cámara web
en Delfos. Entonces me encontré con estas funciones por primera vez.

Después de mirar las clasificaciones, decidí escribir mi propia versión de la biblioteca y proporcionarle los elementos necesarios.
funcionalidad.

Pelotón, preparación No. 1

Es muy posible que haya varias cámaras web en una computadora / computadora portátil. Detrás
El ejemplo no tiene que ir muy lejos. En el trabajo, a menudo tengo que organizar
Videoconferencia sencilla. Por lo general involucran a dos personas. Cada uno de
los participantes son filmados por una cámara separada. Las cámaras mismas están conectadas a mi computadora. Cuándo
Comienzo a disparar, luego elijo en el programa para trabajar con cámaras de video el que necesito en
cámara presente. Ya que decidimos tomar el control de la cámara, debemos
descubra cómo obtener una lista de dispositivos de captura de video instalados y seleccione
con el que trabajaremos en este momento.

Para resolver esta sencilla tarea, la API de Windows proporciona una función
capGetDriverDescription(). Toma cinco parámetros:

  1. wDriverIndex: índice de controladores de captura de video. El valor del índice puede
    variar de 0 a 9;
  2. lpszName es un puntero a un búfer que contiene el nombre del controlador correspondiente;
  3. cbName: tamaño (en bytes) del búfer lpszName;
  4. lpszVer es un puntero a un búfer que contiene una descripción de un
    conductores;
  5. cbVer es el tamaño del búfer (en bytes) que almacena la descripción del controlador.

Si tiene éxito, la función devolverá VERDADERO. Descripción de nuestra función
sí, ahora veamos cómo definirlo en C#. Se hace así:


protegido estático externo bool capGetDriverDescriptionA (wDriverIndex abreviado,
ref Cadena lpszName, int cbName, ref
Cadena lpszVer, int cbVer);

Tenga en cuenta que antes de especificar el nombre de la función gancho, en
es obligatorio escribir el nombre de la DLL en la que se define. EN
en nuestro caso, este es avicap32.dll.

Entonces, la función está importada, ahora puedes escribir una clase en la que estará
ser usado. No doy el código de clase completo para obtener una lista de dispositivos
Mostraré solo el código del método clave:

Dispositivo estático público GetAllCapturesDevices()
{
String dName = "".PadRight(100);
String dVersion = "".PadRight(100);

para (breve i = 0; i< 10; i++)
{
if (capGetDriverDescriptionA(i,
ref dNombre, 100, ref dVersión,
100))
{
Dispositivo d = nuevo Dispositivo(i);
d.Nombre = dNombre.Trim();
d.Versión = dVersión.Trim();

dispositivos.Add(d);
}
}
volver (Dispositivo)dispositivos.ToArray
(tipo de (Dispositivo));
}

El código parece más fácil que nunca. El lugar más interesante en él es el ciclo en el que
se llama a la función capGetDriverDescription mencionada anteriormente. Desde MSDN nos
sabemos que el índice (el primer parámetro de la función capGetDriverDescription()) puede
rango de 0 a 9, por lo que deliberadamente ejecutamos un bucle en este
rango. El resultado de la ejecución del método será una matriz de clases de dispositivos (esta clase
Lo determiné yo mismo, ver las fuentes correspondientes).

Descubrimos obtener una lista de dispositivos, ahora cuidemos la pantalla
transmisión de video desde la cámara. Aquí la función nos servirá de mucho.
capCreateCaptureWindow() para crear una ventana de captura.

Mirando un poco hacia adelante, diré que más acciones con la cámara
ocurrir simplemente enviando mensajes a la ventana de captura. Sí exactamente,
tendrás que usar el dolorosamente familiar programador de Windows (y bromista)
función enviarMensaje().

Ahora echemos un vistazo más de cerca a la función capCreateCaptureWindow(). A ella
Se requieren seis argumentos:

  1. lpszWindowName es una cadena de terminal nulo que contiene el nombre de la ventana de captura;
  2. dwStyle - estilo de ventana;
  3. x – coordenada X;
  4. y es la coordenada Y;
  5. nWidth - ancho de la ventana;
  6. nHeight - altura de la ventana;
  7. hWnd - identificador de la ventana principal;
  8. nID es el identificador de la ventana.

El resultado de la ejecución de la función será el identificador de la ventana creada o NULL en caso
errores Dado que esta función también se aplica a WinAPI, nuevamente es necesario
importar. No proporcionaré el código de importación, ya que es prácticamente
es idéntico a lo que escribí para la función capGetDriverDescription(). Mejor de inmediato
Echemos un vistazo al proceso de inicialización de la cámara:

deviceHandle = capCreateCaptureWindowA(ref deviceIndex, WS_VISIBLE |
WS_CHILD, 0, 0, windowWidth, windowHeight, handle, 0);

si (SendMessage(deviceHandle, WM_CAP_DRIVER_CONNECT, this.index, 0) > 0)
{
SendMessage(dispositivoHandle, WM_CAP_SET_SCALE, -1, 0);
SendMessage(dispositivoHandle, WM_CAP_SET_PREVIEWRATE, 0x42, 0);
SendMessage(dispositivoHandle, WM_CAP_SET_PREVIEW, -1, 0);

SetWindowPos(deviceHandle, 1, 0, 0, windowWidth, windowHeight, 6);
}

En este código, inmediatamente después de que se crea la ventana, se intenta enviar un mensaje
WM_CAP_CONDUCTOR_CONEXIÓN. Un resultado distinto de cero de la ejecución de la función dirá
nosotros sobre su éxito.

Ahora imagina que hoy los dioses están de nuestro lado y producen
envío inmediato de varios mensajes: WM_CAP_SET_SCALE,
WM_CAP_SET_PREVIEWRATE, WM_CAP_SET_PREVIEW. Por desgracia, como es el caso de las funciones, C#
no sabe nada acerca de la existencia de estas constantes. Tendrás que volver a definirlos
por propia cuenta. He dado una lista de todas las constantes necesarias con comentarios a continuación.

//Mensaje personalizado
privado const int WM_CAP = 0x400;
//Conéctese al controlador del dispositivo de captura de video
const privado int WM_CAP_DRIVER_CONNECT = 0x40a;
// Rompe la conexión con el controlador de captura de video
const privado int WM_CAP_DRIVER_DISCONNECT = 0x40b;
//Copiar fotograma al portapapeles
const privado int WM_CAP_EDIT_COPY = 0x41e;
//Habilitar/deshabilitar el modo de vista previa
const privado int WM_CAP_SET_PREVIEW = 0x432;
//Habilitar/deshabilitar el modo de superposición
const privado int WM_CAP_SET_OVERLAY = 0x433;
// tasa de vista previa
const privado int WM_CAP_SET_PREVIEWRATE = 0x434;
//Habilitar/deshabilitar el escalado
privado const int WM_CAP_SET_SCALE = 0x435;
privado const int WS_CHILD = 0x40000000;
privado const int WS_VISIBLE = 0x10000000;
// Establecer la función de devolución de llamada para la vista previa
const privado int WM_CAP_SET_CALLBACK_FRAME = 0x405;
//Recibiendo un solo cuadro del controlador de captura de video
const privado int WM_CAP_GRAB_FRAME = 0x43c;
//Guardar el cuadro de la cámara a un archivo
const privado int WM_CAP_SAVEDIB = 0x419;

Omitiré la descripción adicional de la clase para trabajar con la cámara web. marco yo
considerado, y con todo lo demás, puedes resolverlo fácilmente encendiendo mi
fuente bien comentada. Lo único que no quiero dejar
detrás de escena es un ejemplo del uso de la biblioteca.

En total, implementé (más precisamente, agregué) un par de métodos en la biblioteca: GetAllDevices
(ya considerado), GetDevice (obteniendo un controlador de dispositivo de captura de video por
índice), ShowWindow (muestra la imagen de la cámara web), GetFrame (captura
cuadro individual a un archivo gráfico) y GetCapture (captura de transmisión de video).

Como demostración del rendimiento de la lib fabricada, esbocé
pequeña aplicación. Coloqué un componente ComboBox en el formulario
(usado para almacenar una lista de dispositivos de captura de video disponibles) y varios
botones - "Actualizar", "Iniciar", "Detener" y "Captura de pantalla". Oh sí, todavía en mi uniforme
deslumbra el componente Imagen. Lo uso para mostrar video de la cámara.

Comencemos el informe con el botón "Actualizar". Al hacer clic en él, obtengo una lista
todos los dispositivos de captura de video instalados. El interior de este controlador de eventos:

Dispositivo dispositivos = DeviceManager.GetAllDevices();
foreach (Dispositivo en dispositivos)
{
cmbDevices.Items.Add(d);
}

¿Es realmente tan simple? La biblioteca que desarrollamos se ocupa de todo el negro
trabajo y solo podemos disfrutar de la orientación a objetos
programación. El código para habilitar la visualización de la transmisión de video parece aún más simple.
de la cámara:


dispositivo seleccionado.ShowWindow(this.picCapture);

Nuevamente, todo es más simple que un nabo al vapor. Bueno, ahora echemos un vistazo al código del botón "Captura de pantalla":

Dispositivo seleccionadoDevice = DeviceManager.GetDevice(cmbDevices.SelectedIndex);
dispositivo seleccionado.FrameGrabber();

No presté mucha atención al método FrameGrabber(). en mi fuente
llamar al método guarda el marco actual directamente en la raíz del sistema
disco. Por supuesto, esto no es muy correcto, así que antes del combate usa
no olvide hacer las correcciones necesarias.

Listo #3

Ahora es el momento de hablar sobre cómo construir un sistema simple pero confiable.
sistema de videovigilancia. Por lo general, estos sistemas se basan en dos algoritmos:
diferencia entre dos marcos y modelado de fondo simple. Su implementación (código)
bastante voluminoso, así que en el último momento decidí ir por más
manera simple. Por el camino fácil se entiende el uso de los poderosos, pero hasta ahora
framework poco conocido para .NET - AForge.NET.

AForge.NET está destinado principalmente a desarrolladores e investigadores.
Con su ayuda, los desarrolladores pueden facilitar significativamente su trabajo en el desarrollo.
proyectos para las siguientes áreas: redes neuronales, trabajo con imágenes (overlay
filtros, edición de imágenes, filtrado por píxel, cambio
tamaño, rotación de imagen), genética, robótica, interacción de video
dispositivos, etc El marco viene con buena documentación. En su
describe absolutamente todas las características del producto. No seas demasiado perezoso con ella.
familiarizar. Especialmente quiero señalar la calidad del código de este producto. Todo
está escrito civilizadamente y profundizar en el código es un placer.

Ahora volvamos a nuestro problema inmediato. Para ser honesto, los medios
marco, se resuelve como dos por dos. "Entonces, ¿por qué disparaste mi cerebro? WinAPI
funciones?" - Preguntarás con disgusto. Y para que no estés en nada
limitado. Tú mismo sabes que los proyectos son diferentes. En algún lugar más conveniente para aplicar
colossus.NET, y en algún lugar es más fácil arreglárselas con la vieja y buena WinAPI.

Volvamos a nuestro problema. Para implementar el detector de movimiento, tenemos que
use la clase MotionDetector del marco anterior. Clase
funciona bien con objetos de tipo Bitmap y le permite calcular rápidamente el porcentaje
discrepancias entre las dos imágenes. En código sería algo así como
Entonces:

detector de movimiento = nuevo detector de movimiento (
nuevo detector de diferencia de dos cuadros ()
nuevo MotionAreaHighlighting());

//Procesando el siguiente cuadro
si (detector != nulo)
{
float motionLevel = detector.ProcessFrame(imagen);

if (nivel de movimiento > nivel de alarma de movimiento)
{
flash = (int) (2 * (1000 / alarmTimer.Interval));
}

si (detector.MotionProcessingAlgorithm es BlobCountingObjectsProcessing)
{
BlobCountingObjectsProcessing detector de conteo = (BlobCountingObjectsProcessing)
detector.MotionProcessingAlgorithm;
objectsCountLabel.Text = "Objetos: " + contadordetector.ObjectsCount.ToString(
);
}
demás
{
objetosCountLabel.Text = "";
}

El código anterior (sin contar la inicialización de la clase MotionDetector) lo tengo
se ejecuta cuando se recibe el siguiente cuadro de la cámara web. Después de recibir el marco,
Realizo una comparación banal (método ProcessFrame): si el valor de la variable
motionlevel es mayor que motionLevelAlarm (0.015f), lo que significa que necesita hacer sonar la alarma.
Movimiento detectado. En una de las capturas de pantalla, la demostración del trabajo es claramente visible.
detector de movimiento.

Listo #4

La cámara web se puede adaptar fácilmente para reconocer rostros y crear
una forma avanzada de iniciar sesión en el sistema? Si, después de digerir todo este material,
Si crees que es difícil, ¡entonces te equivocas! A finales de marzo en el sitio.
http://codeplex.com (alojamiento
para proyectos OpenSource de MS) apareció un ejemplo (y luego un enlace al artículo),
demostrando la implementación de un programa para el reconocimiento facial utilizando
cámaras web El ejemplo en sí se basa en el uso de nuevas características de .NET y
Luz plateada. No es realista analizar este ejemplo en el marco de un artículo de revista, ya que
El autor de la fuente intentó e hizo todo lo más elegante posible. Aquí tú y
algoritmos para trabajar con imágenes (filtro de desenfoque, reducción de ruido,
comparación píxel por píxel, estiramiento, etc.) y una demostración de los nuevos SilverLight y
mucho más. En una palabra, debe usar! Vea el enlace al proyecto y el artículo a continuación.

el final de la pelicula

Los ejemplos dados en el artículo le servirán como un buen punto de partida. En ellos
basado en fácil de estropear como una utilidad de cámara web profesional, y
recaudar varios cientos de dólares por trimestre en su venta o escribir un astuto y
spyware troyano malicioso.

Recuerda el artículo sobre . En él dije que los días de los keyloggers ya pasaron.
Ahora los datos de audio y video son especialmente relevantes. Dado que hoy
una cámara web es un atributo obligatorio de cualquier computadora portátil, es fácil de imaginar
¿Cuántos videos interesantes puedes filmar dándole a la víctima un "útil
programa" ... Sin embargo, no te dije esto :). Buena suerte en la programación, y
habrá preguntas - escribir.

www

http://blogs.msdn.com/
– Versión rusa del artículo "Silverlight 4 detección de rostros en tiempo real"
(reconocimiento facial en tiempo real con SilverLight).


http://facelight.codeplex.com/: aquí es donde se aloja el proyecto "Facelight",
permitiendo el reconocimiento facial en tiempo real. Si vas a codificar
software serio para identificar caras o iniciar sesión en el sistema, luego mire
este proyecto es imprescindible.


http://www.aforgenet.com/framework/ - aquí está
encontrará AForge .NET, un marco excelente y fácil de usar para trabajar con
vídeos, imágenes, etc

http://vr-online.ru
- todos los códigos fuente de ejemplos, así como un montón de información adicional que
puede fusionarse desde el sitio web del proyecto VR-Online.