【问题标题】:How to convert a range of gray pixels to black with opencv?如何使用opencv将一系列灰色像素转换为黑色?
【发布时间】:2021-05-28 16:32:29
【问题描述】:

我正在使用 OpenCV 和 Tesseract。我试图将一系列灰色像素转换为黑色。例子:

正如您所见,有一种“明亮”的多灰色,我需要将其转换为全黑,以便 OCR 能够更好地读取它。

有人知道怎么做吗?

【问题讨论】:

  • 使用cv2.threshold的简单阈值。

标签: python opencv ocr


【解决方案1】:
import cv2                                                                                                                                    
import numpy as np                                                                                                                            I = cv2.imread('imgPath')
## If you are interested in thresholding based on brightness,
## using grey channel or brightness channel from HSV is always a good idea :)  
# Convert input RGB to HSV
HSV = cv2.cvtColor(I, cv2.COLOR_BGR2HSV)
# Get brightness channel
V = HSV[:, :, 2]
# Threshold all the very bright pixels
bw = 255*np.uint8(V < 200)  
# save the image you want
cv2.imwrite("bw.png", bw)  

【讨论】:

    猜你喜欢
    • 2018-12-23
    • 2020-05-25
    • 2018-03-16
    • 2019-12-13
    • 2015-10-07
    • 2016-02-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多