OCR小图像与python

时间:2018-01-17 22:49:39

标签: python-2.7 ocr python-tesseract

我需要使用python 2.7的小图像,包含一个价格。

enter image description here

正如您所看到的,图像非常小,并且包含一些值。

我的目标是解码为:654.10

我尝试使用tesseract,但我没有运气。

gulp.task('sass', function () {  
  gulp.src('webroot/css/style.scss')
    .pipe(sass({includePaths: ['scss']}))
    .pipe(gulp.dest('webroot/css'))
    .pipe(browserSync.reload({stream:true});
});

我得到:

import pytesseract
print(pytesseract.image_to_string(Image.open('example.png') , lang='eng', boxes=False,config='--psm 10 --eom 3 -c tessedit_char_whitelist=€0123456789'))

我尝试使用在线转换器并像魅力(https://convertio.co/it/ocr/)一样工作,所以我认为这是可能的。

有人有更好的主意吗?

由于

(抱歉我的英语不好)

更新:

我试图在没有任何运气的情况下对图像进行阈值处理......再次......

€553 1
输出:553 0 图像输出:enter image description here

PS。我裁剪原始图像删除了€符号......但仍然出现错误。

由于

1 个答案:

答案 0 :(得分:0)

我通过调整图像大小然后应用阈值来解决我的问题。

此代码将增加图像的尺寸:

    basewidth = 300
    img = Image.open(saved_location)
    wpercent = (basewidth/float(img.size[0]))
    hsize = int((float(img.size[1])*float(wpercent)))
    img = img.resize((basewidth,hsize), Image.ANTIALIAS)
    img.save(saved_location)

感谢评论中的用户发帖。