我尝试将图像转换为具有自适应阈值的灰色和Thesh_Binary_Inv
gray = cv2.cvtColor(img1,cv2.COLOR_BGR2GRAY)
adapt1 = cv2.adaptiveThreshold(gray,130,cv2.ADAPTIVE_THRESH_GAUSSIAN_C,cv2.THRESH_BINARY_INV,153,40)
尝试使用pytesser获取牌照,但获得了一些随机值作为输出
任何人都可以帮助我从图像中提取文本以及在哪里找到如何使用kmeans或任何其他算法进行训练的教程
答案 0 :(得分:1)
从图像中提取文本时,请尝试查看图像,就好像您试图尽可能清楚地看到文本一样。我的教授曾经说过:如果人类可以看到它,电脑也可以看到它。您想要做的基本上是执行基本的预处理算法,如对比度增强,颜色空间转换,如果需要等等。在阈值处理之前想要获得的是尽可能清晰的图像,其中对字符和边缘的位置毫无疑问角色和白色背景之间尽可能明显。
您需要尝试阈值操作。开始时,我建议使用带有轨迹栏的简单固定阈值功能,这样您每次想要更改值时都不必重新运行代码。您可以在我的GitHub仓库上找到here上的代码。当然,这只是其中一个步骤。您仍然需要找到您感兴趣的区域和角色。您想要查看这些步骤的内容可能是contour finding。
训练部分将更加棘手。关于K-means here有一个漂亮的入门级教程,但我猜你还不确定如何处理它。我不确定在这里推荐什么,因为在你掌握基础知识之前,机器学习对你来说可能有点难度。无论如何,如果我这样做,我可能会去深度学习,但你需要知道测试数据以及你如何准备它将在这个过程中至关重要。这是very simple tutorial,可能会让您了解正在发生的事情。
Raaj,请记住,如果你希望人们付出努力来帮助你,那么首先要付出努力,这是一种很好的举止。你必须更好地解释你尝试了什么,你在哪里看,你得到了什么,你对我们有什么期望。我要说的是,你的照片是必须的,你甚至都懒得提供这些照片。祝你好运!