Нормализовать автомобильную табличку для распознавания текста в OpenCV C ++
Я делаю простую систему распознавания автомобильных знаков OCR. Я использую HaarCascades, чтобы найти автомобильную табличку, и затем мне нужно нормализовать эту табличку, чтобы вставить ее в мой модуль OCR. Я использую заливку, чтобы найти основные контуры автомобильной пластины, а затем я выполняю преобразование Хафа, чтобы найти верхнюю и нижнюю границы автомобильной пластины:
Вот часть кода, где я выполняю преобразование Хафа
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 );
}
Теперь мне нужно вырезать и повернуть эту картинку вдоль этих двух линий. Как я могу это сделать? я понимаю, что мне нужно использовать точку точка (линии [я] [0]) .. точка (линииi) но что мне с ними делать?
В общем, мне нужно получить что-то вроде этого:
Изображение, которое я получил, используя HaarCascadesПосле некоторого преобразования мне нужно получить что-то вроде этого:Поэтому на первом этапе мне нужно обрезать только верхнюю и нижнюю границу.