Codificação e decodificação de código QR da câmera Raspberry Pi

Codificación y decodificación de códigos QR de la cámara Raspberry Pi

Este tutorial trata sobre la creación de un código QR (código de respuesta rápida) usando Raspberry Pi B y Python 3.7. El código QR es un código óptico legible por máquina. Óptico significa que se puede decodificar utilizando cualquier dispositivo de cámara. Un competidor directo del código QR es el código de barras. La ventaja del QR sobre el código de barras es que es más rápido de leer y puede almacenar mucha más información que el código de barras. Cualquier dispositivo con cámara se puede convertir en un lector de códigos QR, mientras que los códigos de barras necesitan un dispositivo láser dedicado para descifrar los códigos de barras.

Para Raspberry Pi, hay disponible una biblioteca/paquete QR dedicado para la creación de QR. Para importar el paquete de códigos QR al código de la aplicación, primero debe instalarlo. Para instalar el paquete, abra la Terminal Raspberry Pi y escriba:

$ pip3 instalar código qr

Nota : si está trabajando con python 2 en lugar de pip3, use pip para instalar la biblioteca. Debes usar pip o pip3 para instalar todas tus bibliotecas o paquetes.

Codificación QR

A continuación se muestra una generación de código QR simple utilizando el paquete qrcode.

Primero, importé el paquete qrcode al código de la aplicación. Entonces, la instrucción qrcode.make('ENGINEERS GARAGE') codifica el texto 'ENGINEERS GARAGE' en formato qrcode. El QR codificado se guarda en la variable de código. Finalmente, para guardar el código QR en la imagen, pasé el nombre del archivo code.save('qrtest.png') en el que se guardará el código qr.

La imagen de salida se muestra arriba. El tamaño de la imagen es 290×290. Los parámetros de la imagen, como el tamaño, el color, el fondo, los bordes y el tamaño del cuadro QR, se pueden ajustar utilizando las funciones de la biblioteca qrcode. Puede importar otros paquetes de manipulación de imágenes al código de la aplicación y se pueden aplicar filtros a la imagen de salida para aumentar el brillo, el contraste y la nitidez.

Decodificando QR

Para decodificar el qrcode, necesitamos instalar algunos paquetes más. Zbarlight es un contenedor popular para Python. Se utiliza para decodificar y extraer código qr de un archivo de imagen.

Abra Terminal en Raspberry Pi y escriba lo siguiente:

$ apt-get instalar libzbar0 libzbar-dev

$ pip3 instalar zbarlight

Utilice pip si está trabajando con Python 2. Puede experimentar errores durante la compilación. Lo más probable es que el error sea que falta un paquete. Zbarlight depende de otros paquetes preinstalados en el directorio de Python, pero a veces es necesario instalarlos manualmente. Instale todos los paquetes uno por uno (para cada instalación de paquete, visite Si dice PIL no encontrado, instálelo usando el comando

instalación de pip –no-index -f -U PIL

Después de una instalación exitosa, importe el paquete zbarlight a su código. También necesita importar el atributo de imagen del paquete PIL. El paquete PIL se utiliza para importar y trabajar con imágenes.

Descripción de variables y declaraciones.

  • La variable file_path recibe la dirección de la imagen.
  • Con open(file_path, 'rb') como image_file: abra el archivo como un archivo de imagen
  • Imagen = Imagen.open(image_file) se crea el objeto de imagen
  • cargar carga el objeto de imagen que contiene los datos de píxeles
  • Codes = zbarlight.scan_codes(('qrcode'),image) Busca/decodifica el texto presente en los píxeles.

Finalmente, la declaración de impresión imprime el texto decodificado.

Utilicé Thonny ide presente en el sistema operativo Raspbian para escribir y probar código. En el lado izquierdo puedes ver la imagen generada colocada en el escritorio. Puedes ver Thonny ide qr en el código de extracción. La ruta del archivo de imagen qr apunta al escritorio. El resultado de la decodificación se muestra en la ventana del shell debajo de la ventana del código.

Hagamos este proyecto de bricolaje: ¿Dónde comprar piezas?
Raspberry pi (Electrónica Mouser)

Conteúdo Relacionado

En cada vehículo hay una red de sensores integrada...
El controlador del motor es uno de los componentes...
ESP32-CAM es un módulo de cámara compacto que combina...
La evolución de los estándares USB ha sido fundamental...
SCHURTER anuncia una mejora de su popular serie SWZ...
Visual Communications Company (VCC) ha anunciado sus nuevos tubos...
A Sealevel Systems anuncia o lançamento da Interface Serial...
A STMicroelectronics introduziu Diodos retificadores Schottky de trincheira de...
Determinar uma localização precisa é necessário em várias indústrias...
O novo VIPerGaN50 da STMicroelectronics simplifica a construção de...
A Samsung Electronics, fornecedora de tecnologia de memória avançada,...
O mercado embarcado tem uma necessidade de soluções de...
Probablemente se haya encontrado con el término " resistencia...
Probablemente tenga un aislante de soporte si ha notado...
Probablemente haya visto un aislante colocado en postes de...
Probablemente hayas visto aisladores de grillete entronizados en postes...
Probablemente hayas experimentado situaciones en las que controlar un...
Regresar al blog

Deja un comentario

Ten en cuenta que los comentarios deben aprobarse antes de que se publiquen.