如何在opencv中使用python语言清理图像中的线条并确保图像不失真
Posted
技术标签:
【中文标题】如何在opencv中使用python语言清理图像中的线条并确保图像不失真【英文标题】:How to clean lines in image and make sure image is not distorted using python language in opencv 【发布时间】:2021-06-05 22:49:28 【问题描述】:如何清除图像上的线条并确保图像不失真? 1st picture
2nd picture
【问题讨论】:
【参考方案1】:这个目的和去噪没有单一的解决方案,但是你可以使用以下两个参数,虽然由于线条和图像的颜色,很难完全去除。
# apply morphology close and open to make mask
kernel = cv2.getStructuringElement(cv2.MORPH_ELLIPSE, (10,10))
morph = cv2.morphologyEx(thresh, cv2.MORPH_CLOSE, kernel, iterations=1)
mask = cv2.morphologyEx(morph, cv2.MORPH_OPEN, kernel, iterations=1)
然后:
# do OTSU threshold
gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
otsu = cv2.threshold(gray, 0, 255, cv2.THRESH_BINARY+cv2.THRESH_OTSU)[1]
【讨论】:
以上是关于如何在opencv中使用python语言清理图像中的线条并确保图像不失真的主要内容,如果未能解决你的问题,请参考以下文章
基于python语言的opencv如何把图片中指定区域截取出来?