123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475 |
- import base64
- import json
- import re
- import sys
- import time
- import paddlehub as hub
- import cv2
- from PIL import Image
- import logging
- import numpy as np
- use_model = "mobile"
- use_gpu = False
- # img_data = "./1.jpg"
- img_data = "D:/Project/PaddleOCR-release-2.0/train_data/bidi_data/orgs_data/train/text_304.jpg"
- np_images = [cv2.imread(img_data)]
- def only_recognize():
- ocr = hub.Module(name="chinese_text_detection_db_"+use_model)
- results = ocr
- def only_detect():
- ocr = hub.Module(name="chinese_text_detection_db_"+use_model)
- results = ocr.detect_text(
- images=np_images, # 图片数据,ndarray.shape 为 [H, W, C],BGR格式;
- use_gpu=use_gpu, # 是否使用 GPU;若使用GPU,请先设置CUDA_VISIBLE_DEVICES环境变量
- output_dir='../ocr_result', # 图片的保存路径,默认设为 ocr_result;
- visualization=True, # 是否将识别结果保存为图片文件;
- box_thresh=0.5 # 检测文本框置信度的阈值;
- ) # 识别中文文本置信度的阈值;
- for result in results:
- print(results)
- def detect_and_recognize():
- ocr = hub.Module(name="chinese_ocr_db_crnn_"+use_model)
- results = ocr.recognize_text(
- images=np_images, # 图片数据,ndarray.shape 为 [H, W, C],BGR格式;
- use_gpu=use_gpu, # 是否使用 GPU;若使用GPU,请先设置CUDA_VISIBLE_DEVICES环境变量
- output_dir='../ocr_result', # 图片的保存路径,默认设为 ocr_result;
- visualization=True, # 是否将识别结果保存为图片文件;
- box_thresh=0.5, # 检测文本框置信度的阈值;
- text_thresh=0.0) # 识别中文文本置信度的阈值;
- for result in results:
- data = result['data']
- save_path = result['save_path']
- for infomation in data:
- if infomation['text'] == "":
- print("no text")
- continue
- print('text: ', infomation['text'], '\nconfidence: ',
- infomation['confidence'], '\ntext_box_position: ',
- infomation['text_box_position'])
- def image_bigger():
- img = cv2.imread("./1.jpg", -1)
- height, weight = img.shape[:2]
- print(height, weight)
- fx = 0.7
- fy = 1.2
- enlarge = cv2.resize(img, (0, 0), fx=fx, fy=fy, interpolation=cv2.INTER_CUBIC)
- print(enlarge.shape[:2])
- cv2.imwrite("./1_1.jpg", enlarge)
- # img.save("./1_1.jpg", "jpeg")
- if __name__ == '__main__':
- only_detect()
- # image_bigger()
- # detect_and_recognize()
|