|
Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.
Temas - Froddo
Páginas: [1]
1
« en: Jueves 4 de Diciembre de 2008, 06:51 »
Hola a todos, les cuento: He tenido varios problemas al reconocer un color,principalmente por la camara web que no era muy buena(ahora esta arreglado), el cuento es que necesito insertar una sentencia de comparación del color, osea: if (la foto tomada tiene rojo) sentencia a aplicar.. end He intentado cercar el punto de interes (roi)de la foto,para comparar los bits de esta matriz, pero sin mucho éxito....,ya que muchas veces el roi no coincide con el color rojo. Les puedo comentar que el programa reconoce el color rojo, luego de bastantes pruebas puedo decir que ese tema esatá solucionado, ya que en el camino hubo problemas de brillo en el color, iluminación etc.,para que tengan una idea si la imagen tiene color rojo en la esquina superior izquierda, la imagen mostrada por matlab después del procesamiento es rojo en la esquina izq. y negro en el resto. cam=videoinput('winvideo'); preview(cam); for 0:15; pause(1); foto=getsnapshot(cam);%consigue la foto de la cámara b=rgb2hsv(foto);%cambio al plano HSV H=b(:,:,1);plano Hue c = H(:,:,1)>0.92; %rango del color rojo c = uint8(c); %acontinuación ve el rojo en los tres planos red(:,:,1) = foto(:,:,1).*c; red(:,:,2) = foto(:,:,2).*c; red(:,:,3) = foto(:,:,3).*c; %luego se puede juntar el resultado y mostar solo el color %deseado con imshow(red) end
la imagen mostrada va ser solo el rojo, pero no se en que parte el programa reconoce el color como para decir si hay rojo haces esto..ojala que se comprenda mi problema.. Bueno,me despido y gracias de antemano.. Salu2
2
« en: Jueves 13 de Noviembre de 2008, 00:10 »
Hola amigos, les pido ayuda, ya que estoy algo perdido, les cuento: necesito unir dos programas, estos estan corriendo bajo netbeans,los tengo en el mismo paquete,un programa se encarga de recibir datos y el otro es una ventanita que se encarga de mostrar los datos en la pantalla. LO IMPORTANTE DEL PROGRAMA ESTA EN LA LINEA 93 Y 98:programa que recibe los datos: package paqbascula; import java.io.*; import java.util.*; import javax.comm.*; public class Bascula implements Runnable, SerialPortEventListener { static String messageString = "P"; static SerialPort serialPort; static OutputStream outputStream; static CommPortIdentifier portId; static Enumeration portList; static InputStream inputStream; static Thread readThread; public static void main(String[] args) { portList = CommPortIdentifier.getPortIdentifiers(); while (portList.hasMoreElements()) { portId = (CommPortIdentifier) portList.nextElement(); if (portId.getPortType() == CommPortIdentifier.PORT_SERIAL) { //-------------------ciclo //-------------------escritura if (portId.getName().equals("COM1")) { try { serialPort = (SerialPort) portId.open("BasculaApp", 2000); } catch (PortInUseException e) {} try { outputStream = serialPort.getOutputStream(); } catch (IOException e) {} try { serialPort.setSerialPortParams(9600, SerialPort.DATABITS_8, SerialPort.STOPBITS_1, SerialPort.PARITY_NONE); } catch (UnsupportedCommOperationException e) {} try { outputStream.write(messageString.getBytes()); } catch (IOException e) {} //---------------fin escritura //---------------parametros lectura Bascula reader = new Bascula(); } } } } public Bascula() { try { serialPort = (SerialPort) portId.open("BasculaApp", 2000); } catch (PortInUseException e) {} try { inputStream = serialPort.getInputStream(); } catch (IOException e) {} try { serialPort.addEventListener(this); } catch (TooManyListenersException e) {} serialPort.notifyOnDataAvailable(true); try { serialPort.setSerialPortParams(9600, SerialPort.DATABITS_8, SerialPort.STOPBITS_1, SerialPort.PARITY_NONE); } catch (UnsupportedCommOperationException e) {} readThread = new Thread(this); readThread.start(); } public void run() { try { Thread.sleep(20000); } catch (InterruptedException e) {} } public void serialEvent(SerialPortEvent event) { switch(event.getEventType()) { case SerialPortEvent.BI: case SerialPortEvent.OE: case SerialPortEvent.FE: case SerialPortEvent.PE: case SerialPortEvent.CD: case SerialPortEvent.CTS: case SerialPortEvent.DSR: case SerialPortEvent.RI: case SerialPortEvent.OUTPUT_BUFFER_EMPTY: break; case SerialPortEvent.DATA_AVAILABLE: byte[] readBuffer = new byte[10]; try { // aca está la clave,es acá donde se guarda los datos recibidos, en int numBytes while (inputStream.available() > 0) { int numBytes = inputStream.read(readBuffer); //aca se debe colocar un comando que permita ingresar los datos que cambian constantemente en la etiqueta de la ventana } } catch (IOException e) {} break; } } }
Para la ventanita tengo este programa la etiqueta donde va la variable a mostrar se encuentra en la linea 16paqbascula; import java.awt.*; import java.awt.event.*; public class NewClass { public static void main( String args[] ) { IHM ihm = new IHM(); } } class IHM { public IHM(){ // Instancia un objeto Label con una cadena para inicializarlo y // que aparezca como contenido en el momento de su creación Label miEtiqueta = new Label(la varible que se guarda en el programa anterior va acá, (en teoria es numBytes) ); // Coloca la eqtiqueta sobre el objeto Frame Frame miFrame = new Frame( "Ventana" ); miFrame.setLayout( new FlowLayout() ); miFrame.add( miEtiqueta ); miFrame.setSize( 250,150 ); miFrame.setVisible( true ); // Instancia y registra un objeto receptor de eventos de ventana // para concluir la ejecucion del programa cuando el Frame se // cierres por accion del usuario sobre el miFrame.addWindowListener( new Conclusion() ); } } class Conclusion extends WindowAdapter { public void windowClosing( WindowEvent evt ) { // Concluye el programa cuando se cierra la ventana System.exit(0); } }
Por favor necesito ayuda estoy desesperado, no se como llamar de una clase a otra dentro del mismo paquete además de los detalles mencionados en el código. Me despido y muchas gracias de antemano.. Salu2
3
« en: Domingo 28 de Septiembre de 2008, 04:56 »
Hola a todos, les cuento:
Necesito que me puedan guiar en un programa que desplegue la información a una interfaz gráfica los datos que se envian al pc, por medio de una puerta Serie RS-232... necesito que por favor me guien, ya que en java soy un principiante, aunque esta semana he leido bastante y soy capaz de reconocr clases, metodos y entender un programa.. Sobre la puerta tengo claro como activar la comunicación con el pc, mi problema es la interfaz gráfica a usar...
Bueno eso es todo y gracias de antemano..
Salu2
4
« en: Miércoles 9 de Julio de 2008, 04:59 »
Hola a todos: Esperando que se encuentren bien les pido AYUDA les cuento: Me han dado una tarea y estoy muy metido ya que assembler me ha costado un monton poder acostumbrarme, la cosa es que tengo que encontrar el password del programa con el Turbo Debugger pero no puedo dar con el password. ¿cómo debo debuggear? o sea , alguna técnica que tengan ustedes ya que tienen mucha más experiencia en asm... Bueno eso es todo y gracias de antemano... Salu2 PD: les doy el link del programa(mediafire.com/?jdhf9dccgyh), pesa 408.55 KB, por si alguien me da una manito de gato y me ayuda con el password. Forma de uso: File (Alt+F), Load, “TMICRO_8.exe”
Páginas: [1]
|
|
|