1
« en: Martes 5 de Mayo de 2009, 18:30 »
tengo un problema estoy creando un programa con una base de datos donde se guardan los datos de un usuario... el programa ya esta hecho 100% con reconocimiento biometrico y toma fotos desde una webcam...
AYUDA POR FAVOR...
pero tengo un problema y es que no falta el cliente que coloca la super cámara digital como web cam para tomar una foto y me están subiendo fotos de mas de 3MB en la base de datos y la están saturando... luego dicen que es que el programa no sirve que porque es muy lento... en fin mi duda esta en que si alguien sabe de una manera de restringir el tamaño y la resolución con que se toma la foto, es decir que no importe con que tipo de cámara se tome la foto el tamaño max sea de 200Kb y resolución de 150x150 como max...
miren este es el codigo java que tengo para tomar la foto estoy usando la librería javax.media si alguien sabe de una mejor también estoy abierto a nuevas posibilidades
public void Inicializar(){
try {
//El nombre del driver para que pueda ser utilizada cualquier WebCam, que este instalada en el equipo
String dir = "vfw:Microsoft WDM Image Capture (Win32):0";
di = CaptureDeviceManager.getDevice(dir);
ml = new MediaLocator("vfw://0");
video = Manager.createRealizedPlayer(ml);
video.start();
comp = video.getVisualComponent();
if (comp != null) {
ui.ShowWebCam(comp);
}
}
catch (Exception e) {
e.printStackTrace();
}
}
public Image tomarFoto(){
// se captura la imagen y se colaca en un buffer
FrameGrabbingControl fgc = (FrameGrabbingControl)
video.getControl("javax.media.control.FrameGrabbingControl");
buf = fgc.grabFrame();
// se convierte de tipo bufer a tipo Image para poder ser reproducida y almacenada
btoi = new BufferToImage((VideoFormat)buf.getFormat());
img = btoi.createImage(buf);
// Retornamos la foto en una variable tipo Image
return img;
}