相关疑难解决方法(0)

增加图像亮度而不会溢出

尝试提高图像亮度时遇到问题.

这是原始图像:

在此输入图像描述

我想要的图像是这样的:

在此输入图像描述

现在使用以下代码增加亮度:

    image = cv2.imread("/home/wni/vbshare/tmp/a4_index2.png",0)

    if sum(image[0])/len(image[0])<200:
        new = np.where((255-image)<image,255,image*2)
    else:
        new = image
    return new
Run Code Online (Sandbox Code Playgroud)

而且,我得到了以下图像:

在此输入图像描述

所以,似乎某些点的亮度溢出.

我试图将阈值从200更改为其他数字,例如125,100,140等.但是,图像亮度几乎保持相同的暗或溢出.

ENV:

Python:2.7.10

Opencv:3.2.0

对此有任何建议表示赞赏.

谢谢.

python opencv numpy image-processing

14
推荐指数
1
解决办法
6487
查看次数

如何提高该图像的 OCR 准确性?

我将使用 Python 中的 OpenCV 和 OCR by 来从图片中提取文本pytesseract。我有这样的图像:

输入

然后我编写了一些代码来从该图片中提取文本,但它没有足够的精度来正确提取文本。

这是我的代码:

import cv2
import pytesseract
    
img = cv2.imread('photo.jpg')
img = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
_,img = cv2.threshold(img,110,255,cv2.THRESH_BINARY)

custom_config = r'--oem 3 --psm 6'
text = pytesseract.image_to_string(img, config=custom_config)
print(text)

cv2.imshow('pic', img)
cv2.waitKey(0)
cv2.destroyAllWindows()
Run Code Online (Sandbox Code Playgroud)

我已经测试过cv2.adaptiveThreshold,但它不起作用cv2.threshold

最后,这是我的结果,与图片中的结果不同:

Color Yellow RBC/hpf 4-6
Appereance Semi Turbid WBC/hpf 2-3
Specific Gravity 1014 Epithelial cells/Lpf 1-2
PH 7 Bacteria (Few)
Protein Pos(+) Casts Negative
Glucose Negative Mucous (Few)
Keton Negative
Blood Pos(+)
Bilirubin Negative …
Run Code Online (Sandbox Code Playgroud)

python ocr opencv image-processing python-tesseract

2
推荐指数
1
解决办法
3213
查看次数

如何提高 EasyOCR 的准确性/预测?

我正在尝试从车牌中获取字符。但很少有错误的预测,比如

在此输入图像描述

我得到的输出为UP74 BD 3465,这是错误的。有许多B预测的例子8以及更多。

  • 如何提高其准确率?
  • 如何预处理图像以获得正确的预测或任何其他方法?
import matplotlib.pyplot as plt
import easyocr
from pylab import rcParams
from IPython.display import Image

rcParams['figure.figsize'] = 8, 16
reader = easyocr.Reader(['en'])

output = reader.readtext(path)
for i in range(len(output)):
    print(output[i][-2])
Run Code Online (Sandbox Code Playgroud)

python ocr text-extraction image-processing easyocr

2
推荐指数
1
解决办法
9531
查看次数