1

スペイン語で OCR を使用するプロジェクトに取り組んでいます。カメラは、テキスト行のさまざまなフレームをキャプチャします。テキスト行には次の内容が含まれます。

Este texto, es una prueba del dispositivo lector para no videntes.

いくつかの操作の後、次のような文字列が得られます。

s1 = "Este texto, es una p!"
s2 = "fste texto, es una |prueba u.-"
s3 = "jo, es una prueba del dispo‘"
s4 = "prueba del dispositivo \ec"
s5 = "del dispositivo lector par:"
s6 = "positivo lector para no xndev"
s7 = "lector para no videntes"
s8 = "¡r para no videntes."

次のような最終的な文字列でスキャンされた行のテキストを取得できるように、文字列を結合したいと思います。

sf = "Este texto, es una prueba del dispositivo lector para no videntes."

まずSequenceMatcher、2 つの文字列の間で使用しようとしましたが、効果的ではありませんでした。

# -*- coding: utf-8 -*-
from difflib import SequenceMatcher as sq
s1 = "Este texto, es una p!"
s2 = "fste texto, es una prueba u.-"
match = sq(None, s1, s2).find_longest_match(0, len(s1), 0, len(s2))
print unicode(s1 + s2[match.b + match.size:])

|結果には、またはのような無効な文字が含まれています!

>>>Este texto, es una p!|prueba u.-

s2との間s3:

>>>fste texto, es una |prueba u.-prueba del dispo‘

など。 Windows 7 で python 2.7 を使用しています。

4

1 に答える 1