我有一个这样的原始图像,我想稍后分割这个lisence板上的每个字符,我在用以下代码分割每个字符之前使用高斯阈值来转换板:Val_hsv = cv2.split(cv2.cvtColor(crop_frame, cv2.COLOR_BGR2HSV))[1] adaptive_tresh = threshold_local(Val_hsv, 29, offset=9, method="gaussian") thresh = (Val_hsv > adaptive_tresh).astype("uint8") * 255 thresh = cv2.bitwise_not(thresh) crop_frame = imutils.resize(crop_frame, width=400) thresh = imutils.resize(thresh, width=400) cv2.imshow("Threshold plate", thresh)结果出来的结果是太多的噪音,我想,我很困惑,有什么比这更好的结果的解决方案吗?谢谢
1 回答
料青山看我应如是
TA贡献1772条经验 获得超8个赞
我建议不要在这里使用简单的颜色分割,使用它可以轻松分割出输入图像中的黑色和红色杂色元素。cv2.adaptiveThreshold
import cv2
import numpy as np
original_image = cv2.imread("/path/to/img.jpg")
mask = cv2.inRange(original_image, np.array([210, 210, 210]), np.array([255, 255, 255]))

您可以通过试验各种颜色域(如HSV等)来进一步优化结果,这将使您对颜色阈值边界进行更精细的控制。
添加回答
举报
0/150
提交
取消
