# -*-coding: utf-8-*-
import cv2
import numpy as np
import matplotlib.pyplot as plt
def stretch(img):
max_val = float(img.max())
min_val = float(img.min())
for i in range(img.shape[0]):
for j in range(img.shape[1]):
img[i, j] = (255 / (max_val - min_val)) * img[i, j] - (255 * min_val) / (max_val - min_val)
return img
def dobinaryzation(img):
max_val = float(img.max())
min_val = float(img.min())
x = max_val - ((max_val - min_val) / 2)
ret, threshedimg = cv2.threshold(img, x, 255, cv2.THRESH_BINARY)
return threshedimg
def find_retangle(contour):
y, x = [], []
for p in contour:
y.append(p[0][0])
x.append(p[0][1])
return [min(y), min(x), max(y), max(x)]
def locate_license(img, orgimg):
contours, hierarchy = cv2.findContours(img, cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_SIMPLE)
# 找出最大的三个区域
blocks = []
for c