Ubuntu tesseract使用全是干货

文字检测

方案

利用opencv二值化处理。最后检测使用google的开源库libtesseract识别文字。

tesseract安装

apt install libtesseract-dev
# 前面那个是英文,后面那个是中文
apt install tesseract-oct tesseract-ocr-chi-sim

手册

手册

qt creator中使用

pro文件中加入下面内容

CONFIG += link_pkgconfig
PKGCONFIG += tesseract opencv4 lept

使用

// 前面是opencv的内容,不明白请自行学习
#include <opencv2/highgui.hpp>
#include <opencv2/opencv.hpp>
#include <iostream>
#include <tesseract/baseapi.h>
#include <leptonica/allheaders.h>using namespace std;
using namespace cv;static char* get_picture_text(char *file_name);int main(int argc, char **argv)
{Mat srcImage = imread("../../image/chineseTest.png", 1);if(!srcImage.data){cout<<"Open chineseTest error!!!"<<endl;return -1;}Mat imageGuussian;GaussianBlur(srcImage, imageGuussian, Size(3,3), 0);Mat thresholdImage;threshold(imageGuussian, thresholdImage, 150, 255, ADAPTIVE_THRESH_GAUSSIAN_C);Mat distImage;erode(thresholdImage, distImage, Mat::ones(5,5,CV_8U));dilate(distImage, distImage, Mat::ones(5,5,CV_8U));char *temp_file = "temp_file.png";imwrite(temp_file, distImage);cout<<"Get the image text:"<<get_picture_text(temp_file)<<endl;while(waitKey(-1) != 27);return 0;
}static char* get_picture_text(char *file_name)
{char *ret_text;tesseract::TessBaseAPI *api = new tesseract::TessBaseAPI();// 英文用"eng",中文简体用"chi_sim"if(api->Init(NULL, "chi_sim")){cout<<"Couldn't init tesseract!"<<endl;return NULL;}Pix *image = pixRead(file_name);api->SetImage(image);ret_text = api->GetUTF8Text();api->End();delete api;pixDestory(&image);return ret_text;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/710038.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

[LeetCode]143.重排链表

143. 重排链表 - 力扣&#xff08;LeetCode&#xff09;https://leetcode.cn/problems/reorder-list/description/ 题目 示例 解题思路 寻找链表中点 链表逆序 合并链表 注意到目标链表即为将原链表的左半端和反转后的右半端合并后的结果。 这样我们的任务即可划分为三步&a…

Redis 8种基本数据类型及常用命令和数据类型的应用场景

小伙伴们好&#xff0c;欢迎关注&#xff0c;一起学习&#xff0c;无限进步 文章内容为学习的一些笔记及工作中遇到的一些问题 文章目录 Redis 五大数据类型keyStringListSetHashSorted Set 三种特殊类型Geospatial 地理位置HyperloglogBitmap Redis 五大数据类型 redis 官方网…

Python中的os库

一.OS库简介 OS是Operating System的简写&#xff0c;即操作系统。 OS库是一个操作系统接口模块&#xff0c;提供一些方便使用操作系统相关功能的函数。 二.OS库常用函数 2.1文件和目录 2.1.1&#xff1a;os.getcwd() 作用&#xff1a;返回当前工作目录&#xff0c;结果是…

Python中re(正则)模块的使用

re 是 Python 标准库中的一个模块&#xff0c;用于支持正则表达式操作。通过 re 模块&#xff0c;可以使用各种正则表达式来搜索、匹配和操作字符串数据。 使用 re 模块可以帮助在处理字符串时进行高效的搜索和替换操作&#xff0c;特别适用于需要处理文本数据的情况。 # 导入…

怎样把python字符串中的emoji表情包去掉或忽略?

要从Python字符串中去掉或忽略表情符号&#xff0c;可以使用正则表达式来过滤掉所有的Unicode码点大于\uFFFF的字符。这些字符通常是表情符号。 以下是一个示例代码&#xff1a; import redef remove_emojis(text):emoji_pattern re.compile("["u"\U0001F600…

如何在Window系统部署BUG管理软件并结合内网穿透实现远程管理本地BUG

文章目录 前言1. 本地安装配置BUG管理系统2. 内网穿透2.1 安装cpolar内网穿透2.2 创建隧道映射本地服务3. 测试公网远程访问4. 配置固定二级子域名4.1 保留一个二级子域名5.1 配置二级子域名6. 使用固定二级子域名远程 前言 BUG管理软件,作为软件测试工程师的必备工具之一。在…

微信小程序开启横屏调试

我们先打开小程序项目 开启真机运行 目前是一个竖屏的 然后打开全局配置文件 app.json 给下面的 window 对象 下面加一个 pageOrientation 属性 值为 landscape 运行结果如下 然后 我们开启真机运行 此时 就变成了个横屏的效果

Android、ios 打包一键生成自定义尺寸应用图标

这里以uniapp 打包为例 这里是打包时分别需要使用的尺寸 打开一键生成应用图标 在线工具 一键生成应用图标https://icon.wuruihong.com/ 上传你的应用图标 上传后在这里添加你需要用到的尺寸 开始生成 下载你批量生成的图标

使用Python,networkx绘制有向层级结构图

使用Python&#xff0c;networkx绘制有向层级结构图 1. 效果图2. 源码2.1 tree.txt2.2 pyNetworkx.py参考 上一篇介绍了&#xff1a;1. 使用Python&#xff0c;networkx对卡勒德胡赛尼三部曲之《群山回唱》人物关系图谱绘制 当前博客介绍&#xff1a; 2. 使用Python&#xff0c…

11408

果然很terrible

仿牛客网项目---社区首页的开发实现

从今天开始我们来写一个新项目&#xff0c;这个项目是一个完整的校园论坛的项目。主要功能模块&#xff1a;用户登录注册&#xff0c;帖子发布和热帖排行&#xff0c;点赞关注&#xff0c;发送私信&#xff0c;消息通知&#xff0c;社区搜索等。这篇文章我们先试着写一下用户的…

剑指offer面试题21 包含min函数的栈

考察点 双栈知识点 题目 分析 题目需要一个能够得到栈的最小元素的min函数&#xff0c;并且min函数&#xff0c;pop&#xff0c;push都要求是O(1)的时间复杂度。遇到栈思维要往双栈上考虑&#xff0c;这种情况一个栈肯定完成不了&#xff0c;需要一个辅助栈&#xff0c;既然…

个人玩航拍,如何申请无人机空域?

我们在《年会不能停》一文中&#xff0c;有分享我们在西岭雪山用无人机拍摄的照片和视频&#xff0c;有兴趣可以去回顾。 春节的时候&#xff0c;趁着回老家一趟&#xff0c;又将无人机带了回去&#xff0c;计划拍一下老家的风景。 原本以为穷乡僻壤的地方可以随便飞&#xf…

Javaweb之SpringBootWeb案例之 SpringBoot原理的详细解析

3. SpringBoot原理 SpringBoot使我们能够集中精力地去关注业务功能的开发&#xff0c;而不用过多地关注框架本身的配置使用。而我们前面所讲解的都是面向应用层面的技术&#xff0c;接下来我们开始学习SpringBoot的原理&#xff0c;这部分内容偏向于底层的原理分析。 在剖析Sp…

华为OD技术面试案例4-2024年

个人情况&#xff1a;985本&#xff0c;目标院校非计算机专业&#xff0c;情况比较特殊&#xff0c;23年11月研究生退学&#xff0c;电子信息类专业。 初识od&#xff1a;10月底打算退学的时候在智联、BOSS上疯狂投硬件方面的岗位。投了大概一两天后有德科和HW的HR打电话给我介…

Go开发 入门以VSCode为例

一、Go环境搭建 1.1 安装 进入Golang官网 https://go.dev&#xff0c;点击 Download 若无法打开网页可以使用国内的Go语言中文网 https://studygolang.com/dl 进入下载 找到合适的平台点击链接下载即可&#xff08;这里以Windows距离&#xff09; 下载完成后 Next Next 安…

threejs 大场景下,对小模型进行贴图处理

接上篇小模型的删除☞threeJS 大模型中对小模型进行删除-CSDN博客 针对已有模型&#xff0c;根据数据状态进行贴图处理&#xff0c;例如&#xff1a;机房内电脑告警状态、电脑开关机状态下的不同状态贴图等 示例模型还是以丛林小屋为例&#xff1a;针对该模型中的树干进行贴图…

Android进阶之路 - RecyclerView停止滑动后Item自动居中(SnapHelper辅助类)

之前一直没注意 SnapHelper 辅助类的功能&#xff0c;去年的时候看到项目中仅通过俩行代码设置 RecyclerView 后就提升了用户体验&#xff0c;觉得还是很有必要了解一下&#xff0c;尝试过后才发现其 PagerSnapHelper、LinearSnapHelper 子类可以作用于不同场景&#xff0c;且听…

加速AI测试领域的进化,顶尖专家与名校教授强强联合,助你快速成为人工智能测试领域的精英

随着人工智能在各行各业的广泛应用&#xff0c;学习并掌握AI技术在软件测试中的应用变得至关重要。不仅能使你跟上行业的发展趋势&#xff0c;还能提升你的竞争力。而且&#xff0c;市场对具备AI测试技能的测试工程师的需求正日益增长&#xff0c;这使得掌握这些技能能够帮助你…

走进中国电车领跑企业“NI蔚来”丨共谋商业,共话ESG

期盼与热望将冬季的寒冷拂去&#xff0c;复旦大学-华盛顿大学EMBA项目迎来了一位新朋友——美国圣路易斯华盛顿大学奥林商学院的新任院长Michael Mazzeo教授。Mazzeo院长在上海进行了为期3天的访问。这里是 Mazzeo院长上任后国际访问交流之旅的第一站。      漫步校园&…