Python 结果不同
我正在使用tesseract检测图像和PDF上的文本。我已经在OSX El Capitan上安装了它,它工作得很好。此外,我还将其安装在Ubuntu 16.04服务器上。但它的表现不是很好。在相同的图像上,结果是不同的。这两个系统的版本相同:Tesseract 4.00 Alpha,Leptonica 1.74.1 OSX UbuntuPython 结果不同,python,imagemagick,jpeg,ocr,tesseract,Python,Imagemagick,Jpeg,Ocr,Tesseract,我正在使用tesseract检测图像和PDF上的文本。我已经在OSX El Capitan上安装了它,它工作得很好。此外,我还将其安装在Ubuntu 16.04服务器上。但它的表现不是很好。在相同的图像上,结果是不同的。这两个系统的版本相同:Tesseract 4.00 Alpha,Leptonica 1.74.1 OSX Ubuntu tesseract 4.00.00alpha leptonica-1.74.1 libjpeg 8d (libjpeg-turbo 1.4.2) : libpn
tesseract 4.00.00alpha
leptonica-1.74.1
libjpeg 8d (libjpeg-turbo 1.4.2) : libpng 1.2.54 : libtiff 4.0.6 : zlib 1.2.8
我在两个系统上都使用Wand包装器使用imagemagick/libmagick dev将image/pdf文件转换为python格式的jpeg。我想这和jpeg编码有关。为什么会这样
all_pages = WI(filename=args['image'], resolution=300)
all_pages.compression_quality = 100
#i set the compression type but this doesn't changed anything
#all_pages.compression = 'jpeg2000'
image_jpeg = all_pages.convert('jpg')
single_image = WI(image=image_jpeg.sequence[0])
blob = single_image.make_blob("jpg")
single_image.close()
all_pages.close()
img = PI.open(BytesIO(blob)).convert("L")
greyImg = np.array(img)
# do some image processing
pIm_bw = PI.fromarray(output)
builder = pyocr.builders.LineBoxBuilder()
print("LineBoxBuilder set")
txt = tool.image_to_string(
pIm_bw,
lang=language,
builder=builder
)
原始文件出现问题。当我在处理之前保存文件并使用opencv(imread)再次加载时,两个系统上的结果是相同的。为什么会发生这种情况?如果使用相同的jpeg文件,是否会发生这种情况?是的,它发生在相同的文件上。问题发生在原始文件上。当我在处理之前保存文件并使用opencv(imread)再次加载时,两个系统上的结果是相同的。为什么会发生这种情况?如果使用相同的jpeg文件,会发生这种情况吗?是的,会发生在相同的文件上。
all_pages = WI(filename=args['image'], resolution=300)
all_pages.compression_quality = 100
#i set the compression type but this doesn't changed anything
#all_pages.compression = 'jpeg2000'
image_jpeg = all_pages.convert('jpg')
single_image = WI(image=image_jpeg.sequence[0])
blob = single_image.make_blob("jpg")
single_image.close()
all_pages.close()
img = PI.open(BytesIO(blob)).convert("L")
greyImg = np.array(img)
# do some image processing
pIm_bw = PI.fromarray(output)
builder = pyocr.builders.LineBoxBuilder()
print("LineBoxBuilder set")
txt = tool.image_to_string(
pIm_bw,
lang=language,
builder=builder
)