Código QR de reconocimiento de Raspberry Pi

 

https://amazefcc233.com/archives/148/

Listo

En el contenido proporcionado en este tutorial, debe instalar las siguientes herramientas:

    • sudo apt-get install python-imaging
    • sudo apt-get install qrencode
    • sudo apt-get install python-pygame
      Si desea reconocer el código QR sin la necesidad de admitir chino, puede usar el comando de una tecla:
    • sudo apt-get install zbar-tools
      Si desea admitir chino, entonces ... siga las instrucciones en el tutorial para operar.

 

main.py

 

#! / usr / bin / env python 
# - * - codificación: UTF-8 - * - 
'' ' 
programa principal 
' '' 

import qrcode 

while (True): 
    print ("1: creación de qrcode") 
    print ("2: reconocimiento de qrcode ") 
    print (u" 3: salir ") 
    select = int (input (u" por favor elija: ")) 
    if select == 1: 
        qrcode.erzeugen () 
    elif select == 2: 
        result = qrcode.lesen ( ) .strip () 
        print (resultado) 
    elif select == 3: 
        print (u "Complete el programa ...") 
        break

  qrcode.py

#! / usr / bin / env python 
# - * - codificación: UTF-8 - * - 
import os, signal, subprocess 
from picamera import PiCamera 

strfile1 = "qrcode" 

def erzeugen (): 
    text = input (u "enter text QRCode : ") 
    os.system (" qrencode -o "+ strfile1 +". png '"+ text +"' ") 
    print (u" QRCode en: "+ strfile1 +". png ") 

def lesen (): 
    os.system (" raspistill -t 1000 -w 320 -h 240 -o /home/pi/Desktop/cam/qrcode/image.jpg ") 
    print (u" raspistill terminado ") 
    # zbarcam = subproceso.Popen (" zbarcam --raw - nodisplay / dev / video0 ", stdout = subprocess.PIPE, shell = True, preexec_fn = os.setsid) 
    #print u" zbarcam se inició correctamente ..."" 
    # qrcodetext = zbarcam.stdout.readline ()
    zbarcam = subprocess.Popen ("zbarimg --raw /home/pi/Desktop/cam/qrcode/image.jpg", stdout = subprocess.PIPE, shell = True, preexec_fn = os.setsid) 
    qrcodetext = zbarcam.stdout.readline () .decode () 
    if qrcodetext! = "": 
        #print (qrcodetext) 
        pass 
    else: 
        print (u "qrcodetext 为 空") 

    # os.killpg (zbarcam.pid, signal.SIGTERM) 
    print (u "zbarcam se detuvo con éxito ... ") 
    qrresult = f" QRCode: {qrcodetext} " 
    return (qrresult)

  

No es necesario admitir el reconocimiento del código QR chino

Mientras todos los preparativos anteriores se hayan completado con éxito, puede ejecutar el código. Es lógico pensar que no debería haber problemas.

 

 

Necesidad de admitir el reconocimiento del código QR chino

Piense de nuevo antes de leer lo siguiente: ¿Realmente necesito admitir chino?
......
......
......
Si la respuesta sigue siendo sí, entonces por favor siga leyendo. De lo contrario, utilice una forma conveniente y rápida que no sea compatible con chino.
Porque esta parte del contenido incluirá algunos contenidos relacionados con la compilación y la instalación.

Instalar la biblioteca frontal

Primero, ejecute el siguiente comando para instalar la biblioteca de herramientas

 
wget http://www.imagemagick.org/download/delegates/jpegsrc.v9b.tar.gz 
tar -xzvf jpegsrc.v9b.tar.gz 
cd jpeg.9b 
./configure 
make 
sudo make install

  Entonces, es hora de instalar Imagemagick.

wget https://www.imagemagick.org/download/ImageMagick.tar.gz 
# El nombre de la carpeta puede ser diferente. Por favor, manejarlo con flexibilidad. 
cd ImageMagick-7.0.8-68 
./configure 
make 
sudo make install 
sudo ldconfig / usr / local / lib 
# Verifique que la instalación sea exitosa 
convert -version

  Y, también necesitamos configurar una ola de enlaces blandos:

sudo ln -s / usr / local / include / ImageMagick-7 / usr / local / include / ImageMagick 
sudo ln -s / usr / local / include / ImageMagick-7 / MagickWand / usr / local / include / wand

  

Compila e instala zbar

Primero, descargue una copia del código fuente de zbar y prepare el compilador:

sudo apt-get install python-gtk2-dev 
sudo apt-get install libqt4-dev 
wget http://downloads.sourceforge.net/project/zbar/zbar/0.10/zbar-0.10.tar.gz 
tar -zxvf zbar-0.10 .tar.gz

  Luego, necesitamos editar el código para que pueda admitir chino.

# Ingrese el directorio 
cd zbar.0.10 / zbar / qrcode / 
vim qrdectxt.c

  Encuentre el código que se muestra en la imagen (sobre la línea 64) y reemplace el código en la parte encerrada en un círculo del marco rojo
(el contenido del reemplazo es el código japonés. Si desea reconocer el japonés, reemplace el otro código, pero no reemplace utf- 8)

 

 

 

 Encuentre el código como se muestra en la imagen en el mismo archivo, y organice el orden de codificación
(se recomienda colocar primero el chino)
snipaste_20191019_141214.png

Guardar y salir.
¡Entonces, puede comenzar el trabajo de compilación!

# Primero regrese a su propio directorio (el directorio es solo un ejemplo, puede ser diferente para diferentes personas) 
cd /home/pi/Desktop/build/zbar-0.10 
# El siguiente código ** no ** usará el comando zbarcam después de la instalación. Si desea utilizar zbarcam, elimine el comando --disable-video e instale las bibliotecas correspondientes 
usted mismo. / Configure --disable-video -without-qt -without-gtk -without-x -with-jpeg 
make 
sudo make install

  

 

 

Supongo que te gusta

Origin www.cnblogs.com/kekeoutlook/p/12723837.html
Recomendado
Clasificación