Uso de Amazon Rekognition para mejorar la seguridad de la bicicleta

El ciclismo es una forma divertida de mantenerse en forma, disfrutar de la naturaleza y conectarse con amigos y conocidos. Sin embargo, conducir se está volviendo cada vez más peligroso, especialmente en situaciones en las que los ciclistas y los automóviles comparten la carretera. Según la NHTSAen los Estados Unidos, un promedio de 883 personas en bicicletas mueren en accidentes de tránsito, con un promedio de aproximadamente 45,000 accidentes solo por lesiones reportadas anualmente. Si bien las muertes totales de la bicicleta solo representan poco más del 2% de todas las muertes por tráfico en los Estados Unidos, como ciclista, todavía es aterrador ser empujado fuera de la carretera por un gran SUV o camión. Para protegerse mejor, muchos ciclistas comienzan a conducir con cámaras montadas en la parte delantera o trasera de su bicicleta. En esta publicación de blog, demostraré una solución de aprendizaje automático que los ciclistas pueden usar para identificar mejor las llamadas cercanas.

Muchos estados y países de EE. UU. En todo el mundo tienen algún tipo de Ley de 3 pies. Una ley de 3 pies requiere que los vehículos de motor proporcionen aproximadamente 3 pies (1 metro) de distancia al pasar una bicicleta. Para promover la seguridad en el camino, los ciclistas están registrando cada vez más sus viajes, y si se encuentran con una situación peligrosa en la que no se les da una distancia segura adecuada, pueden proporcionar un video del encuentro a la policía local para ayudar a corregir el comportamiento. Sin embargo, encontrar un solo encuentro en una grabación de un viaje de varias horas lleva mucho tiempo y, a menudo, requiere habilidades de video especializadas para generar un breve clip del encuentro.

Para resolver algunos de estos problemas, he desarrollado una solución simple usando Amazon Rekognition Análisis de video. Amazon Rekognition puede detectar etiquetas (esencialmente objetos) y la marca de tiempo de cuándo se detecta ese objeto en un video. Amazon Rekognition se puede usar para encontrar rápidamente cualquier vehículo que aparezca en el video de un viaje grabado.

Si la cámara de un ciclista registra un vehículo que pasa, debe determinar si el vehículo está demasiado cerca de la bicicleta, en otras palabras, si el vehículo está dentro del rango de 3 pies establecido por la ley. Si es así, entonces quiero generar un clip del encuentro, que se puede proporcionar a las autoridades relevantes. La siguiente figura muestra la vista desde la cámara de un ciclista con cajas delimitadoras que identifican un vehículo que pasa demasiado cerca de la bicicleta. Una caja en la parte inferior de la imagen muestra el área aproximada de 3 pies alrededor de la bicicleta.

Descripción general de la solución

La arquitectura de la solución se muestra en la siguiente figura.

Se carga una grabación de video a un cubo S3, donde se procesa, se detectan encuentros cercanos, se extrae el video y se proporcionan enlaces al encuentro

Los pasos de la solución son:

  1. Cuando un ciclista completa un viaje, suben sus videos MP4 desde el viaje a un Amazon Simple Storage Service (Amazon S3)
  2. El cubo ha sido configurado con un Notificación de eventos S3 que envía notificaciones creadas por objeto a un AWS Lambda
  3. La función lambda inicia un Funciones del paso de AWS flujo de trabajo que comienza llamando al StartLabelDetection API como parte de los videos de Amazon Rekognition. El StartLabelDetection La API está configurada para detectar Bus, Car, Fire Truck, Pickup Truck, Truck, Limoy Moving Van como etiquetas. Ignora otras etiquetas sin vehículos relacionadas como License Plate, Wheel, Tirey Car Mirror.
  4. La API de Amazon Rekognition devuelve un conjunto de JSON que identifica las etiquetas y marcas de tiempo seleccionadas de los objetos detectados.
  5. Este resultado JSON se envía a una función Lambda para realizar las matemáticas de geometría para determinar si una caja de vehículos se superpone con el área segura para la bicicleta.
  6. Cualquier encuentro detectado se genera y se pasa a AWS Elemental MediaConvertque puede crear fragmentos de video correspondientes a los encuentros detectados, utilizando el CreateJob API
  7. MediaConvert crea estos videos y los sube a un cubo S3.
  8. Se llama a otra función Lambda para generar URL previas firmadas de los videos. Esto permite que los videos sean descargados temporalmente por cualquier persona con la URL previa firmada.
  9. Servicio de notificación simple de Amazon (Amazon SNS) Envía un mensaje de correo electrónico con enlaces a las URL previas firmadas.

Requisitos previos

Para usar la solución descrita en esta publicación, debe tener:

  1. Una cuenta de AWS con permisos apropiados para permitirle implementar AWS CloudFormation pilas
  2. Una grabación de video en formato MP4 con la extensión .mp4 utilizando el códec H.264. El video debe ser de una cámara frontal o trasera, desde cualquier proveedor de llave (por ejemplo, GoPro, DJI o Cycliq). El tamaño máximo del archivo es de 10 GB.

Implementar la solución

  1. Implementar esta solución En su entorno o selecciona Pila de lanzamiento. Esta solución se desplegará en la región de AWS US-East-1 de AWS East (N. Virginia) US-East-1.

Pila de lanzamiento

  1. El Crear pila Aparece la página desde el panel de CloudFormation. Al final de la página, elija Próximo.
  2. En el Especificar detalles de la pila Página, ingrese la dirección de correo electrónico donde desea recibir notificaciones. Elegir Próximo.
  3. Seleccione el cuadro que dice Reconozco que AWS CloudFormation podría crear recursos de IAM y elegir Próximo. Elegir Entregar y comenzará la instalación. La solución tarda aproximadamente 5 minutos en instalarse.
  4. Recibirá un correo electrónico confirmando su suscripción de Amazon SNS. No recibirá correos electrónicos de la solución a menos que confirme su suscripción.
  5. Después de que se complete la pila, seleccione el Salidas pestaña y tome nota del nombre del cubo en la lista InputBucket.

Usando la solución

Para probar la solución, tengo un Video de muestra Donde le pedí a un conductor de acrobacias que condujera muy de cerca.

Para comenzar el procesamiento de video, cargue el video en el cubo S3 (el InputBucket desde la pestaña Salidas). El cubo tiene encriptación habilitada, así que debajo PropiedadesElijo Especificar una clave de cifrado y seleccionar Utilice la configuración de cubos para el cifrado predeterminado. Elección Subir Comienza el proceso de carga, como se muestra en la siguiente figura.

Cargando el video a S3, especifico el archivo y la configuración para el cifrado

Después de un momento, la función de paso comienza a procesarse. Después de unos minutos, recibirá un correo electrónico con enlaces a cualquier encuentro identificado, como se muestra en la siguiente figura.

Un correo electrónico que contiene enlaces para ver los encuentros detectados

En mi caso, identificó dos encuentros. En el primer encuentro identificado, monté demasiado cerca de un automóvil estacionado. Sin embargo, en el Segundo encuentro identificadomuestra un encuentro peligroso que experimenté con mi piloto de acrobacias.

Si este hubiera sido un encuentro peligroso real, el video clip podría proporcionarse a las autoridades apropiadas para ayudar a cambiar el comportamiento y hacer que el camino sea más seguro para todos.

Fijación de precios

Debido a que esta es una solución totalmente sin servidor, solo paga por lo que usa. Con Amazon Rekognition, usted paga por el minutos de video que se procesan. Con MediaConvert, usted paga minutos normalizados de video procesadoque es cada minuto de salida de video con multiplicadores que se aplican según las características utilizadas. El uso de Lambda, las funciones de pasos y SNS de la solución son mínimos y probablemente se ubicarán en el nivel gratuito para la mayoría de los usuarios.

Limpiar

Para eliminar los recursos creados como parte de esta solución, vaya a la consola CloudFormation, seleccione la pila que se implementó y elija Borrar.

Conclusión

En este ejemplo, demostré cómo usar el análisis de video de Amazon Rekognition en un escenario único. Amazon Rekognition es una poderosa herramienta de visión por computadora que le permite obtener ideas de imágenes o videos sin la sobrecarga de construir o administrar un modelo de aprendizaje automático. Por supuesto, Amazon Rekognition también puede manejar casos de uso más avanzados que el que demostré aquí.

En este ejemplo, demostré cómo usar Amazon Rekognition con otros servicios sin servidor puede producir un flujo de trabajo de procesamiento de video sin servidor que, en este caso, puede ayudar a mejorar la seguridad de los ciclistas. Si bien es posible que no sea un ciclista ávido, la solución demostrada aquí puede extenderse a una variedad de casos de uso e industrias. Por ejemplo, esta solución podría extenderse para detectar la vida silvestre en las cámaras de la naturaleza o puede usar Eventos de video de transmisión de Amazon Rekognition para detectar personas y paquetes en video de seguridad.

Empiece hoy Mediante el uso de Amazon Rekognition para el caso de uso de su visión por computadora.


Sobre el autor

Foto de autor de Mike George Mike George es un arquitecto principal de soluciones en Amazon Web Services (AWS) con sede en Salt Lake City, Utah. Le gusta ayudar a los clientes a resolver sus problemas tecnológicos. Sus intereses incluyen ingeniería de software, seguridad, inteligencia artificial (IA) y aprendizaje automático (ML).