String comparison in Java

I have tons of files laying around, mostly of the manually named in a iffy. Naturally this results in some misspellings. If you want to use the file name as an input for further automated processing, like categorizing of images, this greatly diminishes the value of your collection. Therefore I looked into methods of adaptive correction. I choose an adaptive approach because I do not want to use a prefabricated dictionary, where certain words might be missing or in my case, the use of different languages makes this approach useless. Of course these techniques are not limited to file names but can also be applied to a text.
„String comparison in Java“ weiterlesen

Image Comparison with Java (Part III)

The result of the last article was the outfluence of my search for a skeleton algorithm. The result was obviously not what I looked for but worthwhile none the less. The reason for this mismatch is the proper name for the skeleton algorithm: Voronoi Skeletons or medial axis transformation (MAT) are more common names.
„Image Comparison with Java (Part III)“ weiterlesen

Image Comparison with Java (Part II)

As described in the first part a more competitive algorithm for image comparison is based on a description of the picture. Here is the ultimate goal describing an image:

  • Dimensions of the image
  • Hue of the image (Mean of the histogram)
  • Tags for the picture (extracted from the context)
  • List of shapes in the image

Where as a shape is:

  • Form
  • Hue of the shape

It is conceivable trivial to process an image to display these characteristics, but it is not trivial to find a description of the shapes that is easily comparable.
The following describes an algorithm to find the contours in a binary image. The basic idea for the algorithm is described in the article on Morphological Image Processing. „Image Comparison with Java (Part II)“ weiterlesen

Image Comparison with Java (Part I)

It was several years ago, when I had the idea for image comparison. Then the chosen language had been C# because the features of DirectX. As it happens with such ideas they got put aside. Today I revisited the idea and made some discoveries:

  • I changed form Windows to Linux, so a .Net based language may not be optimal
  • DirectX is not portible as is OpenGL
  • Java provides now functionality for image processing
  • With the upcoming version 7 of the JDK, Java gets excellent OpenGL support

Therefore I would like to outline the ideas a bit further.
„Image Comparison with Java (Part I)“ weiterlesen