def findPossibleCharsInPlate(imgGrayscale, imgThresh): listOfPossibleChars = [] contours = [] imgThreshCopy = imgThresh.copy() contours, npaHierarchy = cv2.findContours(imgThreshCopy, cv2.RETR_LIST, cv2.CHAIN_APPROX_SIMPLE) for contour in contours: possibleChar = total_char.PossibleChar(contour) if checkIfPossibleChar(possibleChar): listOfPossibleChars.append(possibleChar) return listOfPossibleChars
def findPossibleCharsInScene(imgThresh): listOfPossibleChars = [] intCountOfPossibleChars = 0 imgThreshCopy = imgThresh.copy() imgContours, contours, npaHierarchy = cv2.findContours( imgThreshCopy, cv2.RETR_LIST, cv2.CHAIN_APPROX_SIMPLE) height, width = imgThresh.shape imgContours = np.zeros((height, width, 3), np.uint8) for i in range(0, len(contours)): if product.showSteps == True: cv2.drawContours(imgContours, contours, i, product.SCALAR_WHITE) possibleChar = total_char.PossibleChar(contours[i]) if char_detection.checkIfPossibleChar(possibleChar): intCountOfPossibleChars = intCountOfPossibleChars + 1 listOfPossibleChars.append(possibleChar) if product.showSteps == True: print("\nstep 2 - len(contours) = " + str(len(contours))) print("step 2 - intCountOfPossibleChars = " + str(intCountOfPossibleChars)) cv2.imshow("2a", imgContours) return listOfPossibleChars