Portal    Foro    Buscar    FAQ    Registrarse    Conectarse


Publicar nuevo tema  Responder al tema 
Página 1 de 1
 
 
Gestor Códigos QR
Autor Mensaje
Responder citando   Descargar mensaje  
Mensaje Gestor Códigos QR 
 
Aquí os traigo un nuevo programa, un FrontEnd, para los comandos qrencode y libdecodeqr, que pueden crear y leer códigos QR, respectivamente. Estos códigos se pueden emplear para organizar cajas, libros, paquetes, o indicar direcciones webs.

Os dejo algunos pantallazos:
gestorqr-captura

Además le he añadido la opción de capturar mediante la webcam, los códigos para que los "decodifique" el programa.

gestorqr-capturando-un-codigo-qr

Puede generar un archivo .html para imprimir la información (tambien se crea un archivo de imagen tipo .png)

pantallazo-generar-html-desde-gestorqr

Descarga del código fuente: Enlace

Espero que os sea útil.

Saludos
 




===================
Blog personal
Web: SoloGambas seleccion de articulos dedicados a Gambas
Visita el Curso de Gambas3 ¡¡¡Gratuito!!!
 
jsbsan - Ver perfil del usuarioEnviar mensaje privadoVisitar sitio web del usuario 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Gestor Códigos QR 
 
muchas gracias
 



 
clsource - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Gestor Códigos QR 
 
cuando trato de capturar con la webcam
sale éste error

gb.v4l: v4l2: Device is V4L2!: Recurso no disponible temporalmente
gb.v4l: v4l2: Capture ON: Argumento inválido
gb.v4l: v4l2: 'Source' not currently implemented for V4L2: Argumento inválido

y no muestra la imágen
:C
 



 
clsource - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Gestor Códigos QR 
 
Prueba con el ejemplo de camara web de gambas, a ver si te funciona...
¿que distro usas? Yo la he probado con Ubuntu.
 




===================
Blog personal
Web: SoloGambas seleccion de articulos dedicados a Gambas
Visita el Curso de Gambas3 ¡¡¡Gratuito!!!
 
jsbsan - Ver perfil del usuarioEnviar mensaje privadoVisitar sitio web del usuario 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Gestor Códigos QR 
 
uso linux mint 12 (basada en ubuntu 11.10)
que tiene un entorno gnome 3 modificado.

el ejemplo de webcam de gambas tampoco funciona bien.
se queda en el mensaje de "buscando cámara".

La cámara web funciona bien, ya que lo probé con el programa cheese
y el libdecodeqr-webcam

Saludos
 



 
clsource - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Gestor Códigos QR 
 
Bueno probando con el ejemplo
MyWebCam, logré sacar una foto.

webcamshot

Ahora tengo que ver como hacer funcionar el lector de qr.
:S
 



 
clsource - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Gestor Códigos QR 
 
Aca está mi intento de obtener el valor del código qr
aún no lo logro :C

' gambas class file

Library "libdecodeqr"
Extern qr_decoder_version() As String
Extern qr_decoder_open() As Pointer
Extern qr_decoder_close(handler As Pointer)
Extern qr_decoder_decode_image(handler As Pointer, image As Pointer) As Integer
Extern qr_decoder_get_header(handler As Pointer, header As Pointer) As Boolean
Extern qr_decoder_get_body(handler As Pointer, header As Pointer)


Library "libhighgui"
Extern cvLoadImage(path As String, loadType As Integer) As Pointer
Extern cvReleaseImage(cvImage As Pointer)

Private hWebCam As VideoDevice
Private QR_handler As Pointer
Private QR_header As Pointer
Private WebcamImage As Pointer
Private tempPath As String = User.Home &/ "tempImage.png"

Public Sub Form_Open()


    Try hWebCam = New VideoDevice("/dev/video0")
    If Error Then
        Message.Error(("Unable to open video device"))
        Return
    End If
    'hWebCam.Source = hWebCam.TV + hWebCam.PAL
    '
    Wait 0.001

    Tmr.Delay = 500
    Tmr.Enabled = True
    Me.Caption = hWebCam.Name

End

Public Sub Form_Close()

    Tmr.Enabled = False
    hWebCam = Null

End

Public Sub decode_qr()
    Dim Status As Integer
    Dim buffer As String
    
    Try WebcamImage = cvLoadImage(tempPath, 1)
    
    Try QR_handler = qr_decoder_open()
    
    Try status = qr_decoder_decode_image(QR_handler, WebcamImage)
    Print status
    
    If (qr_decoder_get_header(QR_handler, VarPtr(QR_header))) Then
      qr_decoder_get_body(QR_handler, VarPtr(buffer), QR_header.byte_size + 1)  
    Endif
    
    ' If (qr_decoder_get_header(QR_handler, QR_header)) Then
    '     qr_decoder_get_body(QR_handler, buffer, QR_header.byte_size + 1)
    '     Print buffer
    ' Endif

    
    
    ' cvNamedWindow("src", 1);
    ' / /
    ' / / load image
    ' / /
    ' IplImage * src = cvLoadImage(argv[1], 1);
    ' cvShowImage("src", src);
    '
    ' / /
    ' / / show version info
    ' / /
    ' printf("libdecodeqr version %s\n", qr_decoder_version());
    '
    ' / /
    ' / / initialize
    ' / /
    ' QrDecoderHandle decoder = qr_decoder_open();
    '
    ' / /
    ' / / Do decode using Default parameter
    ' / /
    ' short Stat = qr_decoder_decode_image(decoder, src);
    ' printf("STATUS=%04x\n", Stat);
    '
    ' / /
    ' / / get QR code header
    ' / /
    ' QrCodeHeader header;
    ' If(qr_decoder_get_header(decoder, & header)){
    '     / /
    '     / / get QR code text
    '     / / To Null terminate, a buffer size Is Larger than body size.
    '     / /
    '     char * buf = New Char[header.byte_size + 1];
    '     qr_decoder_get_body(decoder, (unsigned char * )buf, header.byte_size + 1);
    '     printf("%s\n", buf);
    ' }
    '
    ' / /
    ' / / finalize
    ' / /
    ' qr_decoder_close(decoder);
    '
    ' puts("");
    ' puts("Hit any key to end.");
    ' cvWaitKey(0);
    '
    ' cvDestroyAllWindows();
    ' cvReleaseImage( & src);
    '
    ' return(0);
    
End

Public Sub Tmr_Timer()

    Dim T1 As Date
    Dim sBuf As String
    Dim hPict As Picture
    Dim status As Integer

    Tmr.Enabled = False

    'Try PictureBox1.Picture = hWebCam.Picture
    Draw.Begin(dwgVideo)
    hPict = hWebCam.Image.Picture
    Draw.Picture(hPict, (dwgVideo.W - hPict.W) \ 2, (dwgVideo.H - hPict.H) \ 2)
    Draw.End

    Try hWebCam.Save(tempPath)
    
    decode_qr()
    
    
    'If Not Error Then Message.Info("Image saved as " & User.Home & "/temImage.png")

    'status = qr_decoder_decode_image(QR_handler, Pointer@(hWebCam.Image.Picture))

    'Print status

    ' If Not Error Then
    '     nFps = nFps + 1
    '     T1 = Now() - Fps
    '     If Second(T1) >= 1 Then
    '         Me.Caption = hWebCam.Name & " (" & nFps & " fps)"
    '         Fps = Now()
    '         nFps = 0
    '     End If
    ' End If
    Tmr.Enabled = True

End
 

 



 
clsource - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Gestor Códigos QR 
 
Bien al final me decidí por usar zbarcam
que se encuentra en el paquete zbar-tools

Código: [Descargar] [Ocultar]
  1.  
  2. Private zbar As Process  
  3.  
  4. Public Sub _new()  
  5. zbar = Exec ["zbarcam", "-q", "--raw"] For Read As "zProcess"  
  6. End  
  7.  
  8. Public Sub zProcess_read()  
  9.   Dim sData As String  
  10.  
  11.   sData = Read #Last, -255  
  12.   zCodes.Text = sData  
  13. End  
  14.  


con eso puedo leer cualquier código  con mi webcam  
 



 
clsource - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Mostrar mensajes anteriores:    
 
OcultarTemas parecidos
Tema Autor Foro Respuestas último mensaje
No hay nuevos mensajes Códigos De Escape ljma Aplicaciones/Fragmentos de Código 1 Lunes, 27 Diciembre 2010, 11:24 Ver último mensaje
ljma
No hay nuevos mensajes Estimado Forero Que Copias Códigos soplo Sobre Gambas-es 1 Lunes, 17 Enero 2011, 19:24 Ver último mensaje
fabianfv
No hay nuevos mensajes Códigos De Comprobación CRC soplo Aplicaciones/Fragmentos de Código 3 Jueves, 18 Diciembre 2014, 02:29 Ver último mensaje
viejito
No hay nuevos mensajes Gestor De Ventana, Gestor De Escritorio Shell Mundo Linux 3 Miercoles, 01 Julio 2020, 10:02 Ver último mensaje
Shell
 

Publicar nuevo tema  Responder al tema  Página 1 de 1
 

Usuarios navegando en este tema: 0 registrados, 0 ocultos y 1 invitado
Usuarios registrados conectados: Ninguno


 
Lista de permisos
No puede crear mensajes
No puede responder temas
No puede editar sus mensajes
No puede borrar sus mensajes
No puede votar en encuestas
No puede adjuntar archivos
Puede descargar archivos
No puede publicar eventos en el calendario



  

 

cron