2011-01-27 15 views

Respuesta

5

Sugiero dividir la imagen en distintas regiones, cada una del tamaño del espacio que necesita para la superposición de texto. Calcule alguna medida de "energía" visual, como la desviación estándar, y elija la región con el valor más bajo. También podría deslizar una ventana alrededor, buscando un espacio arbitrario de baja energía, pero esto sería mucho más costoso desde el punto de vista computacional.

+1

Exactamente que estaba pensando. También estaba pensando ... ¿Cómo puedo enhebrarlo para acelerar el "deslizamiento": p – Bengie

+0

Imagino que no es necesario encontrar la mejor ventana para el nivel de píxel. Si tan solo escanear una grilla de ventanas distintas no funciona, probaría dos grillas intercaladas antes de ir a escaneo píxel por píxel. – Predictor

4

Si tiene la caja de herramientas de procesamiento de imágenes para Matlab, puede ejecutar un filtro de entropía (ENTROPYFILT) en la imagen, haciendo coincidir el tamaño del filtro con el tamaño del texto. Entonces, todo lo que necesita hacer es encontrar el resultado del filtro con el valor más pequeño, y usted tiene el centro de donde desea colocar el texto.

+0

¿Sabes dónde puedo encontrar documentación sobre lo que EntropyFilt está haciendo en segundo plano? – maxfridbe

+0

@maxfridbe: En la ayuda, hace referencia a 'Gonzalez, R.C., R.E. Woods, S.L. Eddins, "Procesamiento digital de imágenes usando MATLAB", Capítulo 11.'. Además, supongo que utiliza la misma idea básica que 'entropy', que calcula la entropía de toda la imagen. Escriba 'edit entropy' para ver el código. – Jonas

Cuestiones relacionadas