He escrito un programa de procesamiento de imágenes en MATLAB que hace un uso intensivo de la Caja de Herramientas de Procesamiento de Imágenes de MATLAB, especialmente las operaciones morfológicas (abrir, imponer) así como también ajustar. Hacemos muchas operaciones de ajuste spline y medfilt2 y medfilt1 también mucho.¿Cómo convierto un programa de procesamiento de imágenes MATLAB a java?
Tenemos un cliente que quiere que convirtamos este programa a Java. Me gustaría escuchar una descripción detallada de una biblioteca de procesamiento de imágenes Java que puede duplicar la funcionalidad de MATLAB en el procesamiento de imágenes y splines, especialmente cómo la interfaz se compara con la de MATLAB.
He leído sobre la Biblioteca de procesamiento de imágenes avanzada de Java pero no he podido encontrar ninguna documentación detallada sobre ella en la web. Además, la poca documentación que he leído parece indicar que utiliza un modelo bastante complejo de imágenes, combinándolas en mosaicos y demás. Sería genial si hubiera una biblioteca Java que me permitiera continuar tratando las imágenes en escala de grises como arreglos en 2D o 3D.
Además, sería genial conocer cualquier problema general en la conversión entre MATLAB y Java.
Edición: nuestra aplicación actualmente segmenta las imágenes de un objeto relativamente simple. Se :
1. Starts with a 3D matrix of gray scale image slices representing a single area
2. Does a medfilt1 to even out each slice.
3. Does some imopen, imclose and imadjust operations on the image to remove some fuzziness,
4. Does some simple thresholding in various areas to find boundary points
5. Fits splines to the boundary points,
6. Uses the 3rd dimension in various ways to further perfect the point matching, especially using medfilt2.
7. Saves each slice with the boundary splines written in color on it.
Debo señalar que estamos haciendo "spline apropiado" en lugar de coincidencia de spline - spline caber es un partido de mínimos cuadrados con un número fijo de nudos - juego spline coincide con los puntos exactamente con un arbitraria numero de nudos No me gustaría implementar la coincidencia de splines desde funciones spline más simplistas.
El creador de MATLAB JA es una opción, pero me gustaría saber también lo que está disponible en Java puro y saber qué tipo de sobrecarga implica el constructor JA.
Edición 2:
Tenga en cuenta que estamos haciendo columna vertebral ajuste - mediante ajuste de un punto dado de la spline como una manera de decidir si la elimina - ya que los datos es desordenado, tenemos un proceso de eliminación de puntos de varios pasos, por lo que las splines son una parte integral del algoritmo integral. Y así, ya que no puedo encontrar ninguna mención de splines en JAI en absoluto, así que si alguien sabe una biblioteca de Java que ofrece ajuste spline menos cuadrado, eso sería maravilloso.
Editar 2.5: Estamos utilizando una aproximación de mínimos cuadrados de un conjunto de puntos con estrías y con un número fijo de nudos (0-5 nudos). Si tenemos que volver a implementar eso, las cosas se pondrán difíciles, ya que en este momento estamos usando una biblioteca contribuida por MATLAB.
Y ciertamente no queremos volver a visitar el algoritmo. Ya fue bastante difícil obtener algo que funcionó ...
Suena como búsqueda de bordes. ¿Necesita la salida de los puntos de spline o solo los límites de la imagen resaltados? – Clint