当前位置: 首页 > news >正文

新乡建设公司网站中小企业信息网官网

新乡建设公司网站,中小企业信息网官网,科技公司网站制作模板,什么叫网站降权通过PaddleOCR识别图片中的文字,将识别结果报存到es中,利用es查询语句返回结果图片。 技术逻辑 PaddleOCR部署、es部署创建mapping将PaddleOCR识别结果保存至es通过查询,返回结果 前期准备 PaddleOCR、es部署请参考https://blog.csdn.net…

通过PaddleOCR识别图片中的文字,将识别结果报存到es中,利用es查询语句返回结果图片。

技术逻辑

  • PaddleOCR部署、es部署
  • 创建mapping
  • 将PaddleOCR识别结果保存至es
  • 通过查询,返回结果

前期准备

PaddleOCR、es部署请参考https://blog.csdn.net/zhanghan11366/article/details/137026144?spm=1001.2014.3001.5502

创建mapping

from elasticsearch import Elasticsearch# 连接Elasticsearch
es_client = Elasticsearch("http://0.0.0.0:9200/", basic_auth=("elastic", "ZargEZ7NmJRkXLFlEqgE"))# 创建新的ES index
mapping = {'properties': {'description': {'type': 'text','analyzer': 'ik_smart','search_analyzer': 'ik_smart'},"insert_time": {"type": "date","format": "yyyy-MM-dd HH:mm:ss"},"image_path":{'type': 'text'}}
}es_client.indices.create(index='wechat_search_ocr', ignore=400)
result = es_client.indices.put_mapping(index='wechat_search_ocr', body=mapping)
print(result)

将PaddleOCR识别结果保存至es

核心代码展示

def image_ocr(image_dir):files = os.listdir(image_dir)image_files = [file for file in files if file.endswith(('jpg', 'jpeg', 'png', 'gif'))]for image_file in image_files:image_path = os.path.join(image_dir, image_file)if not os.path.isfile(image_path):print(f"文件不存在:{image_path}")continueimage = cv2.imread(image_path)if image is None:print(f"无法读取图像:{image_path}")continueimage_base64 = cv2_to_base64(image)data = {'images': [image_base64]}headers = {"Content-type": "application/json"}url = "http://192.168.30.71:8866/predict/ch_pp-ocrv3"try:r = requests.post(url=url, headers=headers, data=json.dumps(data))r.raise_for_status()  # 检查请求是否成功ocr_results = r.json().get("results", [])if ocr_results:description = "\n".join([ocr_record["text"].strip() for ocr_record in ocr_results[0]["data"]])doc = {"description": description,"insert_time": dt.now().strftime("%Y-%m-%d %H:%M:%S"),"image_path": image_file}es_client.index(index="wechat_search_ocr", body=doc)print("成功插入到 Elasticsearch 中!")else:print("OCR 服务返回结果为空!")except Exception as e:print(f"处理图像 {image_path} 时发生错误:{str(e)}")

通过查询,返回结果

核心代码展示

def image_search_by_text(query_str):result = []# 对query进行全文搜索queries = query_str.split()dsl = {"query": {"bool": {"must": [{"match": {"description": _}} for _ in queries]}},"size": 5}search_result = es_client.search(index='wechat_search_ocr', body=dsl)return search_resultdef image_search_interface(query_str):# 查询图像search_results = image_search_by_text(query_str)# 构建结果images=[]for hit in search_results['hits']['hits']:image_filename = hit['_source']['image_path']image_path = os.path.join('./data', image_filename)image = Image.open(image_path).convert('RGB')images.append(image)if len(images) >= 3:images = images[:3]else:for _ in range(3 - len(images)):images.append(None)return images[0], images[1], images[2]

结果如下:
在这里插入图片描述

http://www.yayakq.cn/news/495289/

相关文章:

  • 加强网站的建设工作的通知网站改版后 搜索不到
  • 网站开发多少钱农民做3d地形比较好的网站
  • 如何在word上做网站网址做网站好的公司
  • 如何建设专题网站成都住建局官网个人住房信息查询
  • 杭州学网站建设wordpress3.5.1zhcn
  • 厦门高端网站建设公司门户网站建设重建方案
  • 高端网站鉴赏西宁做网站的网络公司
  • 上海手机网站建设方案软文网站外包
  • 网站建设经费保障建好网站是不是还得维护
  • 嘉定网站设计开发贷款网站织梦模板源码
  • 太原富库网站建设建设工商联网站的意义
  • 怎么请人做网站一个简单校园网的设计
  • 动漫网站建设规划书模板老板办公室装修设计
  • 免费tickle网站舆情研判分析报告
  • 事业单位网站登录模板怎么制作小程序教程
  • 甜品网站设计商城网站功能文档
  • 网站制作目标及要求宣传片制作公司有哪些
  • 可以用来做论文引用的网站网站建设十年杜绝模板
  • 一站式进货平台网站建设湛江小程序开发公司
  • 网站建设维护保密协议网站设计风格分析
  • php怎么做网站网络规划设计师属于高级职称吗
  • 个人网站设计论文范文wordpress侧栏高度
  • 在百度怎么建立自己的网站吗tk免费域名注册网站
  • ysl千人千色t9t9t9t9合肥网络优化公司有几家
  • 网站建设的业务流程图哪些网站容易做seo优化
  • 改变关键词对网站的影响公司自己的网站叫什么
  • 怎样破解网站后台密码设计公司logo设计大全
  • tk网站的dns修改电商网站基本功能
  • 济南网站建设代理怎样进入wordpress仪表盘
  • 南宁做网站方案做网站客户最关心的是什么