Icono del sitio AranaCorp

Gestión de una cámara IP con Python

Ya sea para controlar su apartamento o el progreso de su impresión en 3D, puede ser útil utilizar una cámara IP para disponer de las imágenes desde cualquier lugar. En este tutorial, utilizaremos una cámara IP de la que recuperaremos las imágenes a través de Python.

Este tutorial se puede aplicar en el ordenador o en la Raspberry Pi.

Material

Configuración de la cámara Wansview Q5

Siga la guía proporcionada con la cámara y el software para conectar la cámara a la red Wifi y sincronizar su cámara con el software. Una vez que la cámara está configurada, puede recuperar información como la dirección IP y el ID en la aplicación o el software.

En los ajustes de la cámara, encontrará la dirección IP y la dirección MAC en «Información del dispositivo».

En el menú «Aplicación local», encontrará el nombre de usuario y la contraseña en «Cuenta local» y el flujo RTSP en «RTSP»:

La url del flujo RTSP tiene esta forma

rtsp://user:password@ipaddress:rtspPort

Esta última información, que reúne todas las demás, nos permitirá acceder a las imágenes de la cámara.

Nota: Tenga en cuenta que si la cámara está apagada, la dirección IP puede cambiar durante el reinicio. Por lo tanto, tendrá que modificar la dirección IP en su código.

No voy a entrar en los detalles de la configuración porque es poco probable que utilices la misma cámara y la guía que generalmente se proporciona es suficiente. No obstante, si encuentras algún problema, no dudes en decírnoslo en los comentarios.

Configuración de IP Camera Viewer 4

Por lo general, cada cámara viene con su propio software y aplicación para smartphones con todas las funciones necesarias. Por razones prácticas, es posible que desee utilizar otro software. Le mostraré cómo configurar una cámara en IP Camera Viewer que funciona con una multitud de marcas de cámaras IP.

La cámara está conectada a la red y podemos recuperar las imágenes mediante el software. Ahora veremos cómo recuperar las imágenes de la cámara utilizando un script de Python.

Código Python para leer el flujo RTSP

Para recuperar las imágenes, utilizaremos la biblioteca OpenCV que permite crear algoritmos de procesamiento de imágenes. Para acceder al flujo RTSP, sólo tenemos que especificar la URL de la cámara.

import cv2

def main(args):

	#cap = cv2.VideoCapture(0) #default camera
	cap = cv2.VideoCapture('rtsp://user:password@ipaddress:rtspPort') #IP Camera
	
	while(True):
		ret, frame = cap.read()
		frame=cv2.resize(frame, (960, 540)) 
		cv2.imshow('Capturing',frame)
		
		if cv2.waitKey(1) & 0xFF == ord('q'): #click q to stop capturing
			break

	cap.release()
	cv2.destroyAllWindows()
	return 0

if __name__ == '__main__':
    import sys
    sys.exit(main(sys.argv))

Una vez iniciado el script, aparece una ventana con el vídeo del flujo RTSP de la cámara IP. Para cerrar la ventana, basta con pulsar la tecla «q».

Una vez que tenga acceso a las imágenes de la cámara, podrá realizar un procesamiento de imágenes para reconocer objetos, detectar movimientos, etc.

Ejemplo de aplicación

Reconocimiento y seguimiento del color para un futuro proyecto

Aplicaciones

Sources

Salir de la versión móvil