Como el procesamiento es costoso en tiempo, la librería ofrece un ejecutor que devuelve un Future, para evitar bloquear la ejecución del llamante mientras dura el procesamiento.
Es posible configurar fácilmente el paralelismo para el cálculo de la transformada con el uso de multiples hilos.
En la clase RadonTransformCalculator se calculan los valores de la transformada y se almacenan en un array bidimensional.
Tras el procesamiento, se pueden analizar los valores de la transformación, usando los índices del array para acceder a los valores.
Esos índices pueden traducirse fácilmente a un elemento (Rho, Theta) (ρ, θ) mediante la llamada a la función del objeto resultado que es de tipo RadonTransformResult.
También se ofrece la posibilidad de obtener los N valores máximos, dando la opción de descartar duplicados (distintos (ρ, θ) que son muy cercanos) a través de una tolerancia, y también se puede aplicar al mismo tiempo un filtrado sobre (ρ, θ) para descartar previamente los que no cumplan con nuestras condiciones.
Por ejemplo, si estás buscando líneas casi horizontales o verticales, y hay una diagonal con un valor muy alto, pues se podría descartar ese valor.