def model(img,adjust=False,detectAngle=False): """ @@param:img, @@param:model,选择的ocr模型,支持keras\pytorch版本 @@param:adjust 调整文字识别结果 @@param:detectAngle,是否检测文字朝向 """ angle = 0 if detectAngle: angle = angle_detect(img=np.copy(img))##文字朝向检测 im = Image.fromarray(img) if angle==90: im = im.transpose(Image.ROTATE_90) elif angle==180: im = im.transpose(Image.ROTATE_180) elif angle==270: im = im.transpose(Image.ROTATE_270) img = np.array(im) text_recs,tmp,img = text_detect(img) text_recs = sort_box(text_recs) result = crnnRec(img,text_recs,model,adjust=adjust) return result,tmp,angle
def model(img, model='keras', adjust=False, detectAngle=False): """ @@param:img, @@param:model,选择的ocr模型,支持keras\pytorch版本 @@param:adjust 调整文字识别结果 @@param:detectAngle,是否检测文字朝向 """ angle = 0 if detectAngle: # 进行文字旋转方向检测,分为[0, 90, 180, 270]四种情况 angle = angle_detect(img=np.copy(img)) # 文字朝向检测 print('The angel of this character is:', angle) im = Image.fromarray(img) print('Rotate the array of this img!') if angle == 90: im = im.transpose(Image.ROTATE_90) elif angle == 180: im = im.transpose(Image.ROTATE_180) elif angle == 270: im = im.transpose(Image.ROTATE_270) img = np.array(im) # 进行图像中的文字区域的识别 text_recs, tmp, img = text_detect(img) # 识别区域排列 text_recs = sort_box(text_recs) # result = crnnRec(img, text_recs, model, adjust=adjust) return result, tmp, angle
def model(img, _model='keras', adjust=False, detect_angle=False): """ :param img: :param _model: 选择的ocr模型,支持keras\pytorch版本 :param adjust: 调整文字识别结果 :param detect_angle: 是否检测文字朝向 :return: """ angle = 0 if detect_angle: # 文字朝向检测 angle = angle_detect(img=np.copy(img)) im = Image.fromarray(img) if angle == 90: im = im.transpose(Image.ROTATE_90) elif angle == 180: im = im.transpose(Image.ROTATE_180) elif angle == 270: im = im.transpose(Image.ROTATE_270) img = np.array(im) text_recs, tmp, img = text_detect(img) text_recs = sort_box(text_recs) result = crnnRec(img, text_recs, _model, adjust=adjust) return result, tmp, angle
def model(img, adjust=False, detectAngle=False): angle = 0 if detectAngle: angle = angle_detect(img=np.copy(img)) im = Image.fromarray(img) if angle == 90: im = im.transpose(Image.ROTATE_90) elif angle == 180: im = im.transpose(Image.ROTATE_180) elif angle == 270: im = im.transpose(Image.ROTATE_270) img = np.array(im) text_recs, tmp, img = text_detect(img) text_recs = sort_box(text_recs) result = crnnRec(img, text_recs, model, adjust=adjust) return result, tmp, angle
def model(img, adjust=False, detectAngle=False): """ @img: 图片 @adjust: 是否调整文字识别结果 """ angle = 0 if detectAngle: angle = angle_detect(img=np.copy(img)) ##文字朝向检测 im = Image.fromarray(img) if angle == 90: im = im.transpose(Image.ROTATE_90) elif angle == 180: im = im.transpose(Image.ROTATE_180) elif angle == 270: im = im.transpose(Image.ROTATE_270) img = np.array(im) cfg_from_file('./ctpn/ctpn/text.yml') text_recs, img_framed, img = text_detect(img) text_recs = sort_box(text_recs) result = charRec(img, text_recs, adjust) return result, img_framed
def model(img, model='keras', adjust=False, detectAngle=False): angle = 0 if detectAngle: angle = angle_detect(img=np.copy(img)) print('The angel of this character is:', angle) im = Image.fromarray(img) print('Rotate the array of this img!') if angle == 90: im = im.transpose(Image.ROTATE_90) elif angle == 180: im = im.transpose(Image.ROTATE_180) elif angle == 270: im = im.transpose(Image.ROTATE_270) img = np.array(im) text_recs, tmp, img = text_detect(img) text_recs = sort_box(text_recs) # result = crnnRec(img, text_recs, model, adjust=adjust) return result, tmp, angle
def model(img, model, adjust=False, detectAngle=False): """ @@param:img,输入的图像数组 @@param:model,选择的ocr模型,支持pytorch版本 @@param:adjust 调整文字识别结果 @@param:detectAngle,是否检测文字朝向 """ angle = 0 if detectAngle: # 进行文字旋转方向检测,分为[0, 90, 180, 270]四种情况,下面所用的是逆时针旋转,因此需要改正 angle = angle_detect(img=np.copy(img)) ##文字朝向检测 print('The angel of this character is:', angle) im = Image.fromarray(img) print('Rotate the array of this img!') if angle == 90: im = im.transpose(Image.ROTATE_270) elif angle == 180: im = im.transpose(Image.ROTATE_180) elif angle == 270: im = im.transpose(Image.ROTATE_90) img = np.array(im) print(img) # 进行图像中的文字区域的识别 t = time.time() text_recs, tmp, img = text_detect(img) print('image area recognition finished!') print("It takes time:{}s".format(time.time() - t)) # 识别区域排列 text_recs = sort_box(text_recs) # 文本识别 t = time.time() result = crnnRec(img, text_recs, ocrMode=model, adjust=adjust) print('end-to-end text recognition finished!') print("It takes time:{}s".format(time.time() - t)) return result, tmp, angle