OpenCV项目7-图像识别之车牌识别 1.图片读取2.图片灰度化3.haar级联分类器创建、绘制4.形态学二值化、开运算5.图片显示 1.图片读取 import pytesseract # OCR工具 img = cv2.imread('./chinacar.jpeg') 2.图片灰度化 gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY) 3.haar级联分类器创建、绘制 car = cv2.CascadeClassifier('./haarcascade_russian_plate_number.xml') # haar级联俄国盘数字 cars = car.detectMultiScale(gray) for (x, y, w, h) in cars: cv2.rectangle(img, (x, y), (x + w, y + h), (0, 0, 255), 2) roi = gray[y: y + h, x: x + w] 4.形态学二值化、开运算 ret, roi_bin = cv2.threshold(roi, 0, 255, cv2.THRESH_BINARY | cv2.THRESH_OTSU) cv2.imshow('roi', roi_bin) # kernel = cv2.getStructuringElement(cv2.MORPH_RECT, (3, 3)) kernel = np.ones(shape=(3, 3), dtype=np.uint8) roi = cv2.morphologyEx(roi_bin, cv2.MORPH_OPEN, kernel, iterations=1) cv2.imshow('roi2', roi) # config:模式 psm:页面分割模式即把图片当做一个单词 oem:3即原始算法 print(pytesseract.image_to_string(roi, lang='chi_sim+eng', config='--psm 8 --oem 3')) 5.图片显示 cv2.imshow('img', img) cv2.waitKey(0) cv2.destroyAllWindows() 让5N555