簡體   English   中英

是否可以在 python 中使用 opencv 提取彩色背景區域內的文本?

[英]is it possible to extracting text inside colored background region using opencv in python?

我從原始圖像中獲得了以下表格區域:

在此處輸入圖像描述

我正在嘗試從該表中提取文本。但是當使用閾值時,整個灰色區域會變暗。例如,如下所示,

在此處輸入圖像描述

我使用的閾值類型,

thresh_value = cv2.threshold(original_gray, 128, 255, cv2.THRESH_BINARY_INV +cv2.THRESH_OTSU)[1]

是否可以將灰色背景提取並更改為白色,然后讓文本像素保持黑色?

您應該在 Python/OpenCV 中使用自適應閾值。

輸入:

在此處輸入圖像描述

import cv2
import numpy as np

# read image
img = cv2.imread("text_table.jpg")

# convert img to grayscale
gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)

# do adaptive threshold on gray image
thresh = cv2.adaptiveThreshold(gray, 255, cv2.ADAPTIVE_THRESH_MEAN_C, cv2.THRESH_BINARY, 11, 11)

# write results to disk
cv2.imwrite("text_table_thresh.jpg", thresh)

# display it
cv2.imshow("thresh", thresh)
cv2.waitKey(0)


結果

在此處輸入圖像描述

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM