前言
随着人工智能的不断发展,机器学习这门技术也越来越重要,本文就介绍OCR训练前ldmb文件制作的基础内容。提示:以下是本篇文章正文内容,下面案例可供参考
一、背景?
示例:是基于ocr训练而作。
二、直接上内容
1.代码
代码如下(示例):
# -*- coding:utf-8 -*-
import os
import lmdb # ?pip install?????
import cv2
import glob #????????????
import numpy as np
def checkImageIsValid(imageBin):
if imageBin is None:
return False
imageBuf = np.fromstring(imageBin, dtype=np.uint8)
img = cv2.imdecode(imageBuf, cv2.IMREAD_GRAYSCALE)
if img is None:
return False
imgH, imgW = img.shape[0], img.shape[1]
if imgH * imgW == 0:
return False
return True
def writeCache(env, cache):
with env.begin(write=True) as txn:
# for k, v in cache.iteritems(): #python2
for k, v in cache.items(): #python3
txn.put(k.encode(), str(v).encode())
def createDataset(outputPath, imagePathList, labelList, lexiconList=None, checkValid=True):
"""
Create LMDB dataset for CRNN training.
# ARGS:
outputPath : LMDB output path
imagePathList : list of image path
labelList : list of corresponding groundtruth texts
lexiconList : (optional) list of lexicon lists
checkValid : if true, check the validity of every image
"""
# print (len(imagePathList) , len(labelList))
assert (len(imagePathList) == len(labelList))
nSamples = len(imagePathList)
print('...................')
env = lmdb.open(outputPath, map_size=8589934592) #

本文介绍了如何使用Python创建OCR训练所需的LMDB数据集,通过实例展示了如何读取图片、检查有效性并将其与标签存储在LMDB中,适合深度学习入门者理解OCR数据预处理流程。
最低0.47元/天 解锁文章
574

被折叠的 条评论
为什么被折叠?



