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

房子做水电的时候是不是要先埋网站汉中市建设工程质量安全监督站官网

房子做水电的时候是不是要先埋网站,汉中市建设工程质量安全监督站官网,响应式网站例子,自己建设网站不会咋办呀最近开始学习opencv使用#xff0c;跟着b站一起做实战项目#xff0c;跟大家分享一下学习成果#xff0c;大佬勿喷 项目演示 pytesseract 是一个用于文字识别#xff08;OCR#xff0c;光学字符识别#xff09;的 Python 库#xff0c;它是 Tesseract OCR 引擎的 Python… 最近开始学习opencv使用跟着b站一起做实战项目跟大家分享一下学习成果大佬勿喷 项目演示 pytesseract 是一个用于文字识别OCR光学字符识别的 Python 库它是 Tesseract OCR 引擎的 Python 封装。 功能 文字识别pytesseract 可以将图像中的文字转换为文本。它支持多种语言和文字的识别。多平台支持适用于 Windows、macOS 和 Linux 操作系统。简单易用提供简单的 API方便在 Python 中集成和使用。 基于Tesseract OCR Tesseract 是一个开源的OCR引擎由 Google 开发和维护。它支持多种文件格式和语言能够进行精确的文字识别。pytesseract 则为 Python 提供了便捷的接口使开发者能够利用 Tesseract 的强大功能进行文字识别。 安装与配置 安装通常使用 pip install pytesseract 命令来安装。配置pytesseract 需要 Tesseract OCR 引擎的支持因此在使用前需要先安装 Tesseract并将其路径配置到 pytesseract 中以便程序能够找到并调用 Tesseract。 使用方法 简单的文字识别使用 pytesseract.image_to_string() 方法进行基本的图像文字识别。详细控制通过 pytesseract.image_to_boxes()、pytesseract.image_to_data() 等方法可以获取更详细的识别结果如字符的位置、置信度等信息。 适用场景 文档数字化将扫描的文档转换为可编辑的文本。图像处理处理包含文本的图像提取关键信息。自动化任务在自动化流程中从图像中提取所需的文字信息。 总体来说pytesseract 是一个强大且广泛使用的 Python 库为开发者提供了便捷的方式来实现图像中的文字识别功能。 实战教程 首先我们在Pycharm中新建一个项目然后添加pytesseract库和opencv-python库 import cv2 import pytesseract# 设置 pytesseract 使用的 Tesseract OCR 引擎路径 pytesseract.pytesseract.tesseract_cmdC:\\Program Files\\Tesseract-OCR\\tesseract.exe img cv2.imread(2.png) # 将图像从 BGR 格式转换为 RGB 格式pytesseract 要求输入为 RGB 格式 img cv2.cvtColor(img,cv2.COLOR_BGR2RGB) cv2.imshow(result,img)# 显示处理后的图像窗口窗口名为 result cv2.waitKey(0)# 等待用户按下任意键后关闭窗口参数为0表示无限等待 写下这段代码后运行即可读取2.png并显示为‘result’ 接下来我们要给这些字母画上框框首先需要得到这些字母的坐标 因此我们使用pytesseract.image_to_boxes(img)来获取字母的坐标 Z 728 8 832 110 0 从左到右依次为字符左下角的横坐标左下角的纵坐标右上角的横坐标右上角的纵坐标OCR 引擎对该字符识别的置信度。 获取到坐标后我们将使用for b in boxes.splitlines():对每一个边界框信息进行遍历使用b b.split( )将每行的信息分割成单独的元素。 使用x, y, w, h int(b[1]), int(b[2]), int(b[3]), int(b[4]) 提取边界框的坐标信息。x为左下角的横坐标y为左下角的纵坐标w为右上角的横坐标h为右上角的纵坐标 接下来就可以使用cv2.rectangle来进行画矩形了 cv2.rectangle(img,(x,himg-h),(w,himg-y),(0,0,255),3) cv2.rectangle(img, pt1, pt2, color, thickness, lineType, shift)  img: 这是要绘制矩形的图像对象通常是一个 NumPy 数组。 pt1: 这是矩形的顶点之一用元组 (x1, y1) 表示其中 (x1, y1) 是矩形左上角的坐标。 pt2: 这是矩形的对角线顶点用元组 (x2, y2) 表示其中 (x2, y2) 是矩形右下角的坐标。 color: 这是矩形的颜色。它可以是一个表示颜色的元组如 (B, G, R)其中 B、G、R 分别是蓝色、绿色和红色的强度。例如红色可以用 (0, 0, 255) 表示。如果你在灰度图像上工作可以直接传入一个灰度值。 thickness: 这是矩形边框的粗细以像素为单位。如果设置为负值例如 cv2.FILLED则函数会填充矩形内部。 lineType: 这是可选参数用于指定线条类型。默认情况下它是 cv2.LINE_8表示8连通线条。你也可以使用 cv2.LINE_AA 来获取抗锯齿线条。 shift: 这是可选参数指定坐标点的小数位数。通常情况下不需要设置使用默认值即可。 在这里我发现pytesseract库的原点坐标是在左下角而opencv库的原点是在左上角因此我画了一个示例图以便大家理解 这时我们的代码是这样的 import cv2 import pytesseractpytesseract.pytesseract.tesseract_cmdC:\\Program Files\\Tesseract-OCR\\tesseract.exe img cv2.imread(2.png) # 将图像从 BGR 格式转换为 RGB 格式pytesseract 要求输入为 RGB 格式 img cv2.cvtColor(img,cv2.COLOR_BGR2RGB) himg, wimg, _ img.shape# 获取图像的高度和宽度 # 使用 pytesseract 进行图像文本检测并返回每个检测框的坐标信息 boxes pytesseract.image_to_boxes(img) # 遍历每个检测框 for b in boxes.splitlines():b b.split( ) #将每行的信息分割成单独的元素print(b)x,y,w,h int(b[1]),int(b[2]),int(b[3]),int(b[4])# 绘制矩形框注意 OpenCV 的坐标系统以左上角为原点cv2.rectangle(img,(x,himg-h),(w,himg-y),(0,0,255),3) cv2.imshow(result,img) cv2.waitKey(0) 运行后得到这个图像可以看出来我们的每一个字母都被完整的框出来了接下来我们使用cv2.putText()将他的内容显示在字母旁边 cv2.putText(img, text, org, fontFace, fontScale, color, thickness, lineType, bottomLeftOrigin) img需要绘制文本的图像必须是一个 numpy 数组。 text要绘制的文本内容通常是一个字符串。 org文本的起始坐标即文本左下角的位置以 (x, y) 形式表示其中 (0, 0) 是图像的左上角。 fontFace字体类型/字体族例如 cv2.FONT_HERSHEY_SIMPLEX、cv2.FONT_HERSHEY_PLAIN 等。这些字体类型可以通过 cv2.putText() 函数来调用。 fontScale字体大小因子指定字体大小相对于字体的基础大小的比例。 color文本颜色通常是一个元组 (B, G, R)每个颜色通道的取值范围是 0 到 255。 thickness文本线条的粗细默认值为 1。如果设置为大于 1 的整数则会增加文本的粗细。 lineType文本线条的类型默认值是 cv2.LINE_8表示 8 连通线条。可以选择 cv2.LINE_AA 来获得抗锯齿线条。 bottomLeftOrigin可选参数默认为 False。如果设置为 True则文本的起始点是左下角。通常为 False表示文本的起始点是左上角。 在这里我们附上完整代码 import cv2 import pytesseract# 设置 pytesseract 的路径根据你的安装路径修改 pytesseract.pytesseract.tesseract_cmd C:\\Program Files\\Tesseract-OCR\\tesseract.exe# 读取图像 img cv2.imread(2.png)# 将图像从 BGR 格式转换为 RGB 格式因为 pytesseract 使用 RGB 格式 img cv2.cvtColor(img, cv2.COLOR_BGR2RGB)# 获取图像的高度和宽度 himg, wimg, _ img.shape# 使用 pytesseract 库识别图像中的文本并返回文本框的信息 boxes pytesseract.image_to_boxes(img)# 遍历每个文本框的信息 for b in boxes.splitlines():b b.split( ) # 将每行文本框信息分割成列表print(b) # 打印每个文本框的信息# 提取文本框的坐标信息左下角和右上角x, y, w, h int(b[1]), int(b[2]), int(b[3]), int(b[4])# 在图像上绘制矩形框cv2.rectangle(img, (x, himg - h), (w, himg - y), (0, 0, 255), 3)# 在矩形框上方显示文本内容cv2.putText(img, b[0], (x - 20, himg - y), cv2.FONT_HERSHEY_COMPLEX, 1, (100, 100, 255))# 显示带有文本框和识别结果的图像 cv2.imshow(result, img)# 等待按键输入来关闭窗口 cv2.waitKey(0)# 关闭所有打开的窗口 cv2.destroyAllWindows()最后再看一下我们的项目结果展示 项目结果 这样就OK了感兴趣的可以点个关注最近会一直更新谢谢
http://www.zqtcl.cn/news/388964/

相关文章:

  • 便宜购物网站大全网站建设简介联系方式
  • 网站没有后台登陆文件夹公司怎么建立网站吗
  • 营销网站建设流程图网站开发目前主要用什么技术
  • 网站建设与管理维护 李建青大连网站设计费用
  • 网站建设制作心得团队盐都区城乡建设局网站
  • 网页设计公司网站设计结婚网站模版
  • 做文字图网站设计师网站资源
  • 建筑材料采购网站做早餐烧菜有什么网站
  • 单页网站怎么做外链网站js特效
  • 网站模板 黑白中国域名交易平台
  • 网站高端设计少儿编程加盟十大机构
  • 海尔网站建设的目标是什么财务公司业务范围
  • 天津做艺术品的网站2h1g做视频网站
  • 网站建设项目的预算百度推广登陆首页
  • 网站图片展示方式有哪些深圳做网站比较好天涯
  • 专业长春网站建设工作室安徽省工程建设信息网查询信息
  • 计算机网站开发实现总结关键词优化的作用
  • 网站流量统计模板商务网站安全方案设计
  • 做网站最专业的公司用php做的网站用什么数据库
  • 做网站可以不用框架吗网站301做下
  • 萍乡做网站深圳市福田区住房和建设局官网
  • 网站架构需求wordpress过去指定分类文章
  • 房管局备案查询网站功能型网站开发
  • 聊城手机网站建设服务自己开网站做职称论文可以吗
  • 企业网站禁忌手机端网站开发页
  • 深圳外贸商城网站建设wordpress 空搜索
  • 做微信的网站有哪些shop商城系统
  • 网站落地页如何做优化大师免费下载安装
  • 本地计算机做网站服务器做算命网站
  • 广州网站建设公司万齐网络科技做围棋题网站