Bueno, una aproximación para identificar colores podría ser esta. Son una pruebas sencillas, pero básicamente o que hacer es a partir de un color de referencia, intentar identificar el mismo color (con una tolerancia) en la imagen de la bandera (en este caso).
Además intenta identificar aquellos puntos que nos servirán para calcular luego el ángulo que necesitamos.
Aquí y con la imagen que nos has dado funciona bien, el problema es que una foto real con muchos más tonos, mucho más ruido y bastante mas "imprecisa" habrá que "afinar" mucho más el algoritmo, pero supongo que te puede servir de partida.
AÑADO:
Me dejé el link.