This discussion is archived
3 Replies Latest reply: Oct 10, 2012 8:51 AM by 956165 RSS

SI_StillImage matching performance

brianotn Newbie
Currently Being Moderated
Hi

I'm developing an image matching system for a test set of 1000 images using SI_StillImage but keep hitting performance issues. As an example, when I first run the query below, it executes in around 60 seconds. The second run takes about twice as long and subsequent runs take progressively longer.
SELECT b.image_id, 
SI_FeatureList
          ( 
           SI_AverageColor(a.image),    35/100,
           SI_ColorHistogram(a.image),  21/100,
           SI_PositionalColor(a.image), 45/100,
           SI_Texture(a.image),         10/100
          ).SI_Score(b.image)
       score
FROM images a, images b
WHERE a.image_id = 1
ORDER BY score ASC
I've had similar issues with simpler matching, e.g. just using average color, which I've overcome by generating a table of results with pair wise image comparison scores in advance to use as a cache, but I can't do that in this case as ultimately, I'd like users to be able to specify the weights for each feature interactively.

I've a similar system in the past based on ORDImage signatures using the built-in indextype which worked really quickly in comparison but SI_StillImage doesn't have that option.

Any ideas?

Thanks

Brian

Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production
Windows 2008 R2 Server with 16Gb RAM available for Oracle

Legend

  • Correct Answers - 10 points
  • Helpful Answers - 5 points