Girar una imagen a su estado original

Tengo un programa que necesita tomar una foto tomada por un iphone (o cualquier tipo de cámara decente) de una cuadrícula de 7x10 con un grueso borde negro alrededor de los bordes. Esta imagen se puede recibir girada hacia la derecha o hacia la izquierda (no hay que preocuparse por la inclinación). Ya tengo una imagen de la cuadrícula en su estado original, pero necesito obtener la imagen que estoy tomando y rotarla a su estado "perfecto / original".

Idea 1: rendimiento Hog / malos resultados

Umbral de la imagen que recibo y la imagen de cuadrícula perfecta que ya tengo. Compare cada píxel para la rotación 0, obtenga un puntaje total y guárdelo. Haga esto girando la imagen de los incrementos de 1 a 359. La puntuación más baja es la rotación que necesitamos para que la imagen vuelva a su estado original.

Idea 2: Todavía no estoy seguro de cómo hacer esto

Umbral de la imagen que recibo y la imagen de cuadrícula perfecta que ya tengo. Dibuja una línea a través del centro de la imagen vertical y horizontalmente. Encuentre la rotación basada en el recuento de píxeles negros por el que pasaron la línea vertical y horizontal. Esto requeriría algún tipo de trigonometría que no soy muy bueno para comprender.

¿Alguien tiene alguna otra idea para que esto funcione?

Cualquier ayuda para orientarme en la dirección correcta sería muy apreciada.

¡Gracias!

Respuesta 1

Estoy tratando de hacer un método para codificar a SHA (128,256,512) con o sin sal. El método para no salt es una cripta String estática privada (cadena String, método String) {MessageDigest md; tratar {...

Estoy tratando de crear un juego de Tanques pero todavía estoy aprendiendo cómo hacer programación gráfica en Java. Inicialmente intenté mover una de dos imágenes (cuál depende de qué jugador vaya) con ...

Tengo varias clases (FloatOperand, BooleanOperand, IntegerOperand) que son muy similares. Solo difieren en el método "parse" que se llama (parseFloat, parseBoolean, etc.). ¿Podría reemplazar esto ...

Soy relativamente nuevo en trabajar con Java y he venido de un fondo C / C ++. En mi aplicación, necesito una serie de clases que simplemente contendrán datos. En lugar de tener un archivo por clase de datos, yo ...