Normalizar placa de coche para OCR en OpenCV C ++
Estoy haciendo un sistema simple de reconocimiento de placas de automóviles OCR. Estoy usando HaarCascades para encontrar la placa del automóvil, y luego necesito normalizar esta placa, para ponerla en mi módulo OCR. Estoy usando el relleno para encontrar los contornos principales de una placa de automóvil, y luego realizo la transformación de Hough, para encontrar los límites superior e inferior de una placa de automóvil:
Aquí hay una parte del código, donde realizo la transformación Hough ^
HoughLinesP(canny_img, lines, 1, CV_PI/180, 80, 80, 30 );
for ( size_t i = 0; i < lines.size(); i++ ) {
line (output, Point(lines[i][0], lines[i][3]), Point(lines[i][4], lines[i][5]), Scalar(0,0,255), 1, 8 );
}
Ahora necesito cortar y rotar esta imagen a lo largo de estas dos líneas. ¿Cómo puedo hacer esto? entiendo que necesito usar el punto Punto (líneas [i] [0]) .. Punto (líneasi), pero ¿qué debo hacer con ellos?
Básicamente, necesito obtener algo así:
Imagen que obtuve usando HaarCascadesDespués de alguna transformación, necesito obtener algo como esto:Entonces, en el primer paso, necesito cortar solo los internos superiores e inferiores.