code barre 2d dataMatrix
Le
remy

bonjour
je cherche a décode un code barre 2d dataMatrix
et non pas Qrcode
donc une webcam + une lib
http://videocapture.sourceforge.net/
un bout de code vite fait et pas très propre
import sys
from PyQt4 import QtGui, QtCore
from VideoCapture import Device
import time
class Example(QtGui.QWidget):
def __init__(self):
super(Example, self).__init__()
self.initUI()
def initUI(self):
hbox = QtGui.QHBoxLayout(self)
pixmap = QtGui.QPixmap("image.jpg")
lbl = QtGui.QLabel(self)
lbl.setPixmap(pixmap)
hbox.addWidget(lbl)
self.setLayout(hbox)
self.move(300, 200)
self.setWindowTitle('webcam')
self.show()
lbl.show()
cam = Device()
while True:
time.sleep(0.2)
print "pause"
cam.saveSnapshot('image3.jpg')
pixmap = QtGui.QPixmap("image3.jpg")
lbl.setPixmap(pixmap)
lbl.repaint()
def main():
app = QtGui.QApplication(sys.argv)
ex = Example()
sys.exit(app.exec_())
if __name__ == '__main__':
main()
mais comme j'ai pas de compilateur sous Windows
je ne peut pas utiliser
http://libdmtx.wikidot.com/libdmtx-python-wrapper
donc si quelle qu'un a la ou les dll qui vont bien
je suis preneur et dans la fouler comme je ne souhaite pas utiliser
Wrappers python utilisant du code java
bon bref je suis coincé parce que j'ai rien trouver 100 % python
a moins que ? une idée peut être
merci remy
--
http://remyaumeunier.chez-alice.fr/
je cherche a décode un code barre 2d dataMatrix
et non pas Qrcode
donc une webcam + une lib
http://videocapture.sourceforge.net/
un bout de code vite fait et pas très propre
import sys
from PyQt4 import QtGui, QtCore
from VideoCapture import Device
import time
class Example(QtGui.QWidget):
def __init__(self):
super(Example, self).__init__()
self.initUI()
def initUI(self):
hbox = QtGui.QHBoxLayout(self)
pixmap = QtGui.QPixmap("image.jpg")
lbl = QtGui.QLabel(self)
lbl.setPixmap(pixmap)
hbox.addWidget(lbl)
self.setLayout(hbox)
self.move(300, 200)
self.setWindowTitle('webcam')
self.show()
lbl.show()
cam = Device()
while True:
time.sleep(0.2)
print "pause"
cam.saveSnapshot('image3.jpg')
pixmap = QtGui.QPixmap("image3.jpg")
lbl.setPixmap(pixmap)
lbl.repaint()
def main():
app = QtGui.QApplication(sys.argv)
ex = Example()
sys.exit(app.exec_())
if __name__ == '__main__':
main()
mais comme j'ai pas de compilateur sous Windows
je ne peut pas utiliser
http://libdmtx.wikidot.com/libdmtx-python-wrapper
donc si quelle qu'un a la ou les dll qui vont bien
je suis preneur et dans la fouler comme je ne souhaite pas utiliser
Wrappers python utilisant du code java
bon bref je suis coincé parce que j'ai rien trouver 100 % python
a moins que ? une idée peut être
merci remy
--
http://remyaumeunier.chez-alice.fr/
---------------------------------------------------
Alors faut installer , en dual boot , une distribution
linux 100 % python .
Un cd live de Ubuntu se trouve facilement en kiosque .
cela ne vas pas être possible les poste sont déjà en prod et sous
windows ,je m'oriente tranquillement vers une solution 100% java
mais pour la web cam cela semble assez bordélique
a moins que je prenne un scanete qui lit directement les code barre 2d
dans tout les cas le bouzin et en pause actuellement
remy
--
http://remyaumeunier.chez-alice.fr/
--------------------------------------------------------------------
http://blog.holytag.fr/2011/06/21/mcdonalds-relance-ses-offres-promo-par-code-barre-2d-holytag/
http://zxing.org/w/decode.jspx
http://zxing.org/w/docs/javadoc/com/google/zxing/MultiFormatReader.html
remy
--
http://remyaumeunier.chez-alice.fr/
pour ceux que cela interesse un bout de code java
pour faire un wrapper python
import java.awt.Graphics;
import java.awt.Image;
import java.awt.image.BufferedImage;
import javax.swing.ImageIcon;
import com.google.zxing.*;
import com.google.zxing.common.*;
import com.google.zxing.client.j2se.*;
public class Test {
public static void main(String[] argv) throws Exception
{
BufferedImage image = toBufferedImage(new
ImageIcon("image.jpg").getImage());
LuminanceSource source = new BufferedImageLuminanceSource(image) ;
BinaryBitmap bitmap = new BinaryBitmap(new HybridBinarizer(source));
Result result = new MultiFormatReader().decode(bitmap);
System.out.println(result.getText() );
}
public static BufferedImage toBufferedImage(Image image) {
image = new ImageIcon(image).getImage();
BufferedImage bimage = new BufferedImage(image.getWidth(null),
image.getHeight(null), BufferedImage.TYPE_INT_ARGB);
Graphics g = bimage.createGraphics();
g.drawImage(image, 0, 0, null);
g.dispose();
return bimage;
}
}
un pour de script
CLASSPATH=./lib/core.jar:./lib/javase.jar:./
export CLASSPATH
javac Test.java
java Test
et les jar sont http://code.google.com/p/zxing/downloads/list
et en plus cela fonctionne si si
remy
--
http://remyaumeunier.chez-alice.fr/
Si ça peut te rendre service, j'ai un bout de code qui, sous Windows,
ouvre une webcam, capture une photo, et ferme la webcam.
J'ai mis le code là :
http://www.mclaveau.com/gvrac/webcam-une-photo.zip
Attention, ça ne marche pas à tous les coups, et il faut que la webcam
puisse être ouverte par script (perso, ça marche si j'ai ouvert la
webcam avec un autre logiciel (Skype), quelques minutes auparavant).
Et puis aussi, c'est du code brut, expérimental.
@+
--
MCi
merci
--
http://remyaumeunier.chez-alice.fr/