我使用pyocr與Pillow和OpenCV一起從PDF文檔中提取文本。但是,PDF文檔是表單,這意味着在某些情況下,表單中項目的標籤位於文檔的最左側,而項目的值位於文檔的右側。一個例子是(點間距加點,但不存在於圖像中):在Pyocr中將文本方向從左到右更改爲
桔子價格:....................... ............... $ 15.75
蘋果價格:.......................... ............. $ 12.51
當我將圖像轉換爲文本時,它看起來就像這樣:
價格橘子:蘋果/ nprice/N 15.75 $/N $ 12.51
基本上,正在從上到下閱讀文本,然後從左到右,而不是從左到右正確然後從上到下。
在我對這個在線問題的研究中,有許多答案突出顯示瞭如何檢測文本的方向,但我已經知道我希望我的文本在所有情況下從左到右流動。所以,我的問題是,有沒有辦法在pyocr中更改默認設置,以便它始終從左向右讀取文本。我希望我的轉換後的文字是這樣的:
價格桔子:$ 15.75/N 價格的蘋果:$ 12.51/N
這是我目前使用的pyocr代碼:
def image_to_OCR(req_image_list,final_text):
tool = pyocr.get_available_tools()[0]
for img in req_image_list:
txt = tool.image_to_string(
PI.open(io.BytesIO(img)),
lang='eng',
builder=pyocr.builders.TextBuilder()
)
final_text.append(txt)
return(final_text)