2016-10-04 5 views
-4

나는 번호판 분할로 작업하고 있으며, 인식 과정이 어렵다는 부분에 그림자가있는 이미지가 일부 있습니다. 편지를 지우려면 접시를 치우십시오. 고마워하고 도움을 주셔서 감사합니다!opencv 3.0에서 이미지의 그림자 지우기

다음

두 개의 이미지 :

image with shadow2

나는 MSER를 사용하기 위해 접시에 편지를 감지 원하고 그것의 분할을 한 후. 첫째, 나는 형태의 BLACKHAT 변형을 적용한 후 MSER를 적용한 후에 이미지의 전처리 (흐림 및 CLAHE)를 수행하지만 인식이 좋지 않습니다. 플레이트의 그림자를 제거하면 결과가 더 좋아질 것이라고 생각합니다. 어떻게 해야할지 모르겠어요, 응답 및 도움말! 주셔서 감사합니다, 내 코드 및 결과는 다음과 같습니다

Mat gray_neg; 
Mat element = getStructuringElement(MORPH_RECT, Size(5, 5)); 
morphologyEx(imageLoad, gray_neg, MORPH_BLACKHAT, element); 
cv::Ptr<cv::MSER> mesr1 = cv::MSER::create(2, 30, 600, 0.15, 0.2); 
std::vector<cv::Rect> bboxes1; 
vector<vector<Point> > contours1; 
mesr1->detectRegions(gray_neg.clone(), contours1, bboxes1); 

Mat image_grayBGR; 
    cvtColor(imageLoad, image_grayBGR, COLOR_GRAY2BGR); 
for (int i = 0; i < bboxes1.size(); i++){ 
    rectangle(image_grayBGR, bboxes1[i], CV_RGB(255, 0, 0)); 
} 


imshow("MSER", image_grayBGR); 

최종 결과는 나 또한 볼 수 없습니다

MSER

+1

음영에는 아무런 문제가 없습니다. 문제가 무엇인지 설명해주십시오. 어쩌면 일부 중간 이미지와 일부 코드를 제공 할 수 있습니다 ... – Piglet

+0

당신의 문제는 무엇인지 정확히 이해하지 못합니까? 번호판을 감지하고 OCR에 문제가 있거나 접시를 처음부터 감지하는 데 문제가 있습니까? –

+0

답장을 보내 주셔서 감사합니다. 저는 제 질문을 보완했습니다. 저는 MSER를 사용하여 접시 글자를 찾아 냈습니다. – Alexander33

답변

-1

입니다 플레이트의 이미지 인식에 영향을 미치는 그림자 문제. 당신이해야 할 일은 원하는 이미지 분할 알고리즘을 사용하여 각 이미지 파일의 번호판에 글자와 숫자를 격리시키는 것입니다. 그림자와 이미지의 다른 모든 부분은 노이즈 및 간섭으로 처리해야합니다. 광학 문자 인식을 돕기 위해 Thresholding과 Hough 변환 알고리즘을 사용할 수도 있습니다.

관련 문제