Requisitos previos : OpenCV
OpenCV
Muchas veces, hacer visión por computadora o procesamiento de imágenes usando la cámara web de nuestra PC no es una opción muy buena. Tal vez queremos aumentar la calidad de la cámara de nuestra cámara web, o queremos crear algunas aplicaciones de procesamiento de imágenes que utilizarán una cámara de Android como medio.
Este artículo usa Windows para hacer esto. Pero los conceptos básicos del código también serán los mismos en otros sistemas operativos.
Acercarse
- Descargue e instale la aplicación IP Webcam en su teléfono móvil.
- Luego, asegúrese de que su PC y su teléfono estén conectados a la misma red. Abra su aplicación de cámara web IP en ambos, haga clic en «Iniciar servidor» (generalmente se encuentra en la parte inferior). Esto abrirá una cámara en su teléfono.
- Se muestra una URL en la pantalla del teléfono, escriba la misma URL en el navegador de su PC y, en la sección «Procesador de video», haga clic en «Javascript».
- Puede ver el video capturado en su teléfono, que comienza a aparecer en su navegador. Ahora, lo que vamos a hacer es tomar los datos de la imagen de la URL usando el módulo de solicitud y convertirlos en un marco de imagen usando NumPy y, finalmente, comenzar a usar nuestra cámara de Android como una cámara web en Python.
- En el código:
- Módulo de importación
- Agregue la URL que se muestra en su teléfono
- Obtención continua de datos de la URL
- Seguir mostrando estos datos recopilados
- Cerrar ventana
Programa:
Python3
# Import essential libraries import requests import cv2 import numpy as np import imutils # Replace the below URL with your own. Make sure to add "/shot.jpg" at last. url = "http://192.168.0.103:8080/shot.jpg" # While loop to continuously fetching data from the Url while True: img_resp = requests.get(url) img_arr = np.array(bytearray(img_resp.content), dtype=np.uint8) img = cv2.imdecode(img_arr, -1) img = imutils.resize(img, width=1000, height=1800) cv2.imshow("Android_cam", img) # Press Esc key to exit if cv2.waitKey(1) == 27: break cv2.destroyAllWindows()
Producción:
Publicación traducida automáticamente
Artículo escrito por harshsinha3682 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA