Conecte la cámara de su teléfono Android a OpenCV – Python

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

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *