Oracle FAQ Your Portal to the Oracle Knowledge Grid
HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US
 

Home -> Community -> Usenet -> c.d.o.server -> Re: comparacion de imagenes con Visual Information retrieval

Re: comparacion de imagenes con Visual Information retrieval

From: Barbara Boehmer <baboehme_at_hotmail.com>
Date: 8 Oct 2005 23:01:52 -0700
Message-ID: <1128834597.055669.60610@g44g2000cwa.googlegroups.com>


sys_at_ORA92> HOST MD d:\tesis\imagenes

sys_at_ORA92> HOST COPY c:\oracle\cat.bmp d:\tesis\imagenes\00001.bmp/v

sys_at_ORA92> HOST COPY c:\oracle\dog.bmp d:\tesis\imagenes\00002.bmp/v

sys_at_ORA92> HOST COPY c:\oracle\cat.bmp d:\tesis\imagenes\00003.bmp/v

sys_at_ORA92> HOST COPY c:\oracle\dog.bmp d:\tesis\imagenes\00004.bmp/v

sys_at_ORA92> create or replace directory imagedir as 'd:\tesis\imagenes'   2 /

Directory created.

sys_at_ORA92> CREATE USER alberto IDENTIFIED BY jalberto   2 /

User created.

sys_at_ORA92> GRANT CONNECT, RESOURCE TO alberto   2 /

Grant succeeded.

sys_at_ORA92> grant read on directory imagedir to alberto   2 /

Grant succeeded.

sys_at_ORA92> connect alberto/jalberto
Connected.
sys_at_ORA92> @ LOGIN
sys_at_ORA92> SET ECHO OFF

GLOBAL_NAME



alberto_at_ORA92

alberto_at_ORA92> create table imagen_tabla

  2  	     (CodigoImagen number primary key,
  3  	     imagen ordsys.ordimage,
  4  	     imagen_firma ordsys.ordimagesignature)
  5 /

Table created.

alberto_at_ORA92> create or replace procedure ImportarImagen(dest_id number, filename
  2 varchar2) is

  3  	     img ordsys.ordimage;
  4  	     ctx raw(64) := null;
  5  begin
  6  	     delete from imagen_tabla where CodigoImagen = dest_id;
  7  	     insert into imagen_tabla (CodigoImagen, imagen,
imagen_firma)
  8  	     values (dest_id, ordsys.ordimage.init(),
  9  ordsys.ordimageSignature.init())
 10  	     returning imagen into img;
 11  	     img.importFrom(ctx, 'file', 'IMAGEDIR', filename);
 12  	     update imagen_tabla set imagen=img where
CodigoImagen=dest_id;
 13 end;
 14 /

Procedure created.

alberto_at_ORA92> create or replace procedure llamarImagen is   2 begin

  3  importarImagen(1,'00001.bmp');
  4  importarImagen(2,'00002.bmp');
  5  importarImagen(3,'00003.bmp');
  6  importarImagen(4,'00004.bmp');

  7 end;
  8 /

Procedure created.

alberto_at_ORA92> EXECUTE llamarimagen

PL/SQL procedure successfully completed.

alberto_at_ORA92> create or replace procedure agrega_firma is   2 t_image ORDSYS.ORDImage;
  3 image_sig ORDSYS.ORDImageSignature;   4 n number :=0 ;
  5 BEGIN
  6 loop
  7 n := n + 1;
  8 SELECT imagen, imagen_firma INTO t_image, image_sig FROM imagen_tabla
  9 WHERE CodigoImagen=n FOR UPDATE;
 10
 11 image_sig.generateSignature(t_image);  12 UPDATE imagen_tabla SET imagen_firma = image_sig WHERE CodigoImagen =n;
 13 exit when n = 4;
 14 end loop;
 15 END;
 16 /

Procedure created.

alberto_at_ORA92> EXECUTE agrega_firma()

PL/SQL procedure successfully completed.

alberto_at_ORA92> CREATE OR REPLACE PROCEDURE comparaimagen   2 AS
  3 BEGIN
  4 FOR r1 IN
  5 (SELECT * FROM imagen_tabla)
  6 LOOP

  7  	 FOR r2 IN
  8  	   (SELECT * FROM imagen_tabla
  9  	    WHERE  ORDSYS.IMGSimilar
 10  		     (imagen_firma,
 11  		      r1.imagen_firma,
 12  		      'color="0,2" texture="0,1" shape="0,5" location="0,2"',
 13  		      25) = 1
 14  	    AND    codigoimagen > r1.codigoimagen)
 15  	 LOOP
 16  	   DBMS_OUTPUT.PUT_LINE
 17  	     ('Imagen_tabla.codigoimagen ' || r1.codigoimagen
 18  	      || ' = Imagen_tabla.codigoimagen '
 19  	      || r2.codigoimagen);
 20  	 END LOOP;

 21 END LOOP;
 22 END;
 23 /

Procedure created.

alberto_at_ORA92> ALTER SESSION SET NLS_NUMERIC_CHARACTERS = ',.'   2 /

Session altered.

alberto_at_ORA92> SET SERVEROUTPUT ON
alberto_at_ORA92> EXECUTE comparaimagen()
Imagen_tabla.codigoimagen 1 = Imagen_tabla.codigoimagen 3 Imagen_tabla.codigoimagen 2 = Imagen_tabla.codigoimagen 4

PL/SQL procedure successfully completed. Received on Sun Oct 09 2005 - 01:01:52 CDT

Original text of this message

HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US