因此,我研究了牌照的文本识别。我为此使用了谷歌cloude服务。
它返回给我一系列可能的东西。但是,图像上不包含车牌的文本也会被识别。所以我以为我可以告诉python从列表中取一个与车牌图案匹配的文本。
对于德国来说,是这样的:
1或3个字母。 1个空白。1或2个字母。空格。最多4个数字。
所以我基本上有3个部分。在小情况下,可能是类似
H A 4
在最大的情况下
HHH AB 1234
希望清楚。谢谢你的帮助。
答案 0 :(得分:2)
您可以为此使用正则表达式:
^[A-Z]{1,3}\s[A-Z]{1,2}\s\d{1,4}$
说明:
----------------------------------------------------------------------
^ the beginning of the string
----------------------------------------------------------------------
[A-Z]{1,2} any character of: 'A' to 'Z' (between 1
and 2 times (matching the most amount
possible))
----------------------------------------------------------------------
\s whitespace (\n, \r, \t, \f, and " ")
----------------------------------------------------------------------
[A-Z]{1,2} any character of: 'A' to 'Z' (between 1
and 2 times (matching the most amount
possible))
----------------------------------------------------------------------
\s whitespace (\n, \r, \t, \f, and " ")
----------------------------------------------------------------------
\d{1,4} digits (0-9) (between 1 and 4 times
(matching the most amount possible))
----------------------------------------------------------------------
$ before an optional \n, and the end of the
string
答案 1 :(得分:1)
这是一种方法:
import re
string='frg3453453HHH AB 1234e456 2sf 3245 yKDEH A 4 554YFDN'
print(re.findall('[A-Z]{1,3}\s[A-Z]{1,2}\s\d{1,4}',string))
输出:
['HHH AB 1234', 'DEH A 4']