该项目旨在提高人工摘录图片中指定区域信息的效率。我们利用了PaddleHUB上的OCR技术来处理交付验收单图片。通过识别文本和计算坐标最小欧式距离,我们可以准确提取出铁塔名称,并通过文件重命名实现高效的工作流程。结果显示,该方法的正确率达到了,从而大大提升了实际工作效率。

基于OCR的自定义区域识别文件重命名
一、项目背景
在工作中,有时需要精确地将图片中的特定区域与文本信息关联起来。手动提取信息通常耗时且容易出错。为了克服这些挑战,使用飞桨平台的PaddleHUB可以轻松实现自动框选和识别图像中的目标区域,从而提高效率。通过自动化技术,您可以快速准确地从任何图片中提取所需的信息。
二、项目目标
通过PaddleHUB技术识别图片中的铁塔名称,并根据该字段完成对图片的重命名。
三、数据集
本任务提供30张交付验收单,来自https://aistudio.baidu.com/aistudio/datasetdetail/142101
四、项目实现思路
整体思路:利用hub.Module.recognize_text获取OCR结果,在此基础上通过计算最小距离,获得表单相关信息(铁塔实际名称),完成文件重命名。对每张图片进行OCR识别,并将结果保存至ocr_result文件夹。根据先验知识,获取所需内容(铁塔实际名称)的中心位置,记为目标坐标。对某个图片(表单),遍历每条识别结果,计算其中心坐标,计算该坐标和目标坐标之间的欧式距离。获得最小欧式距离及其对应的文字识别结果。根据上述结果,重命名图片文件。
五、项目代码实现
In []
# 安装依赖包 !pip uninstall paddlehub -y !pip install paddlehub shapely pyclipper %env CUDA_VISIBLE_DEVICES=0%matplotlib inline登录后复制 In []
# 解压数据集! unzip -q /home/aistudio/data/data142101/Scan_0012_0004.zip -d /home/aistudio/images登录后复制 In []
# 导入需要的包import paddlehub as hub ,cv2,os,csv,globimport os登录后复制 In []
新的项目实现:# 遍历数据集图片```python for i in range( : # 图片路径根据索引编号生成 if i < image_path = images/Scan_ + str(i) + .jpg else: image_path = images/Scan_ + str(i) + .jpg # 打印图片路径 print(image_path) # 使用Hub模块进行OCR识别,并将结果保存到ocr_result文件夹中 form = hub.Module(name=chinese_ocr_db_crnn_server).recognize_text( [cvimread(image_path, for image_path in glob.glob(image_path)], use_gpu=True, output_dir='ocr_result', visualization=True, box_thresh= text_thresh=5 ) # 初始化最小距离及对应文本 min_dis = min_text = 'none' # 遍历OCR识别结果中的每条数据 for form_data in form[['data']: data_x, data_y = # 计算文本框坐标中心,使用表格中像素值的平均值 for j in range(: data_y += int(form_data['text_box_position'][j][) data_x += int(form_data['text_box_position'][j][) # 将坐标转换为实际的像素位置 data_x = data_x / 4 data_y = data_y / # 计算距离目标中心的欧几里得距离 distance = ((data_x - + (data_y - # 更新最小距离和对应文本,如果当前距离小于最小距离,则更新最小距离及文本 if distance <= min_dis: min_dis = distance min_text = form_data['text'] print(i, image_path, min_text) os.rename(image_path, images/ + min_text + .jpg) ``` 结果: 在完成所有图片的处理后,输出结果为:```python 打印结果 images/Scan_jpg none ... images/Scan_jpg none ``` 登录后复制:```python 登录后复制 ```
六、项目结果展示
解压缩数据集后,重命名前: OCR识别结果 重命名后
七、项目总结
通过运用PaddleHUB技术,该项目成功识别并命名了图片中的铁塔名称,准确率达到,这极大地提升了工作效率。此外,该技术还能够在指定的图片区域内自动完成文件重命名,提高了实际工作的便利性与效率。
以上就是【校园AI Day-AI workshop】自定义区域识别重命名的详细内容,更多请关注其它相关文章!
- 标签: