【Python • 项目实战】pytesseract+pyqt实现图片识别软件小项目——(一)创建项目和画界面

【Python • 项目实战】pytesseract+pyqt实现图片识别软件小项目——(一)创建项目和画界面经过上次学习,我们安装了tesseract识别引擎,并通过pytesseract实现了快速识别图片的内容。本篇我们将使用pyqt+tesseract实现一个图片识别的桌面应用小项目。以上就是本篇的全部内容。本篇完成了项目的创建绘制软件界面添加点击事件本次的小工具只是这个项目中的一部分,实际上后面我们还会加入pdf格式转化等工具,直到本项目做到可以发布的地步,请期待后面的文章吧。…

【Python • 项目实战】pytesseract+pyqt实现图片识别软件小项目——(一)创建项目和画界面

本文默认你已经学习了上一篇文章,如果你还没有学习,就赶快去学习吧。关注博主,学习更多内容。


前言

经过上次学习,我们安装了tesseract识别引擎,并通过pytesseract实现了快速识别图片的内容。

本篇我们将使用pyqt+tesseract实现一个图片识别的桌面应用小项目。


一、创建项目

1. 从模板创建项目

首先我们需要一个pyqt的项目模板,供我们直接使用,而不必每次都重复搞那么多东西。打开模板地址,然后点击Use this templat按钮
【Python • 项目实战】pytesseract+pyqt实现图片识别软件小项目——(一)创建项目和画界面
接下来在Repository name输入你所创建的项目名称,选择你是否需要创建私人仓库,这个看个人意愿,然后点击Create repository from template从模板创建项目。

【Python • 项目实战】pytesseract+pyqt实现图片识别软件小项目——(一)创建项目和画界面
如下图,项目就创建好了
【Python • 项目实战】pytesseract+pyqt实现图片识别软件小项目——(一)创建项目和画界面

2. 使用pycharm打开项目

在仓库页面点击code按钮,然后复制克隆的地址
【Python • 项目实战】pytesseract+pyqt实现图片识别软件小项目——(一)创建项目和画界面
然后打开Pycharm,点击Get from VCS
【Python • 项目实战】pytesseract+pyqt实现图片识别软件小项目——(一)创建项目和画界面
然后填入刚才复制的克隆链接,如下图,然后点击clone按钮,等待项目加载完毕,
【Python • 项目实战】pytesseract+pyqt实现图片识别软件小项目——(一)创建项目和画界面
等待Pycharm自动打开以下页面,说明项目就创建好了
【Python • 项目实战】pytesseract+pyqt实现图片识别软件小项目——(一)创建项目和画界面

3. 安装Pyqt5库

Pycharm中,打开settings,找到项目管理这个页面,点击+号开始安装
【Python • 项目实战】pytesseract+pyqt实现图片识别软件小项目——(一)创建项目和画界面
主要安装两个包,一个是pyqt,一个是pyqt-sip,安装步骤就是先在左边选择要安装的包,然后指定版本,只要是5就可以了,然后点击Install Package就会安装包了。pyqt5-sip也是同样的步骤。
【Python • 项目实战】pytesseract+pyqt实现图片识别软件小项目——(一)创建项目和画界面

4. 安装Pyqt5库(备用)

有可能3的办法行不通,国内下载插件总是有点问题,所以提供备用选项,只要执行以下命令就行了,在使用之前建议给pip换成国内源,比如阿里源。

pip install pyqt5

5. 运行模板程序

【Python • 项目实战】pytesseract+pyqt实现图片识别软件小项目——(一)创建项目和画界面
运行后出现如下页面,表示环境搭建成功,
【Python • 项目实战】pytesseract+pyqt实现图片识别软件小项目——(一)创建项目和画界面

二、制作软件界面

1. 画界面

首先,一个比较重要的就是我们需要画一个软件的界面,在view包下选择UI_MainWindow.ui,右键,选择External Tools,在选择Qt Designer打开设计界面
【Python • 项目实战】pytesseract+pyqt实现图片识别软件小项目——(一)创建项目和画界面

如果你没有这一步的内容,建议你安装pyqt5的环境,这里暂且不讲,我在后面的文章会详细讲解怎么用pycharm搭建pyqt5开发环境。如果你现在就像尝试,可以看这篇文章

【Python • 项目实战】pytesseract+pyqt实现图片识别软件小项目——(一)创建项目和画界面
然后按照以下步骤打开主界面的设计器

  1. 点击打开按钮
  2. 选择UI_MainWindow.ui文件
  3. 点击打开窗体的打开按钮
  4. 如果出现testRes.qrc不存在的情况,请更新到res/testRes.qrc

【Python • 项目实战】pytesseract+pyqt实现图片识别软件小项目——(一)创建项目和画界面
首先把所有的组件都删除,全部框选,右键删除
【Python • 项目实战】pytesseract+pyqt实现图片识别软件小项目——(一)创建项目和画界面
然后拖动组件到界面,如下图,
【Python • 项目实战】pytesseract+pyqt实现图片识别软件小项目——(一)创建项目和画界面
以下是拖动过程

截图按钮

  1. 拖动pushbutton到界面
  2. 在界面中的按钮上右击,选择改变样式表写入以下内容
border: 0;
background:#fff;
border-radius:10px;
  1. 双击界面的按钮,输入截图
  2. 在界面右侧的属性编辑器中找到objectName,改为capture_btn
    【Python • 项目实战】pytesseract+pyqt实现图片识别软件小项目——(一)创建项目和画界面
    【Python • 项目实战】pytesseract+pyqt实现图片识别软件小项目——(一)创建项目和画界面

标签

拖动三个标签到界面上,进行如下图的改变
【Python • 项目实战】pytesseract+pyqt实现图片识别软件小项目——(一)创建项目和画界面
下面这个标签托大点,用来放图片,并在右侧属性编辑器中找到objectName,改为picture_label
【Python • 项目实战】pytesseract+pyqt实现图片识别软件小项目——(一)创建项目和画界面

文本编辑框

拖动文本编辑框到界面,然后在右侧属性编辑器中找到objectName,改为text_edit,找到readOnly,右侧勾选
【Python • 项目实战】pytesseract+pyqt实现图片识别软件小项目——(一)创建项目和画界面
【Python • 项目实战】pytesseract+pyqt实现图片识别软件小项目——(一)创建项目和画界面

【Python • 项目实战】pytesseract+pyqt实现图片识别软件小项目——(一)创建项目和画界面

2. 绑定按钮事件

qt的事件机制就是信号槽,网上大多资料都是手动绑定事件的,这里我们使用qt设计器绑定事件。

1. 工具栏开启编辑信号槽

【Python • 项目实战】pytesseract+pyqt实现图片识别软件小项目——(一)创建项目和画界面

2. 编辑信号槽

在截图按钮上拖动,但是注意不要拖到别的地方去,如下图哪个红线就可以。然后再配置连接张选择clicked()
【Python • 项目实战】pytesseract+pyqt实现图片识别软件小项目——(一)创建项目和画界面
然后在右侧点击编辑,在新出来的窗口中点击号新增一个槽
【Python • 项目实战】pytesseract+pyqt实现图片识别软件小项目——(一)创建项目和画界面
添加名字为capture_btn_clicked()的槽,然后一路Ok保存
【Python • 项目实战】pytesseract+pyqt实现图片识别软件小项目——(一)创建项目和画界面
【Python • 项目实战】pytesseract+pyqt实现图片识别软件小项目——(一)创建项目和画界面
然后保存界面即可。

3. 编译界面文件

在pycharm上,找到UI_MainWindow.ui并右键,执行pyuic,如下图
【Python • 项目实战】pytesseract+pyqt实现图片识别软件小项目——(一)创建项目和画界面

4. 添加点击事件

在controller包下面的MainWindow.py,添加如下代码

    @pyqtSlot()
    def capture_btn_clicked(self):
        print('按钮被点击')

【Python • 项目实战】pytesseract+pyqt实现图片识别软件小项目——(一)创建项目和画界面
然后运行程序,看看效果
【Python • 项目实战】pytesseract+pyqt实现图片识别软件小项目——(一)创建项目和画界面
点击按钮后在控制台输出了我们想要的内容,事件添加完成。


总结

以上就是本篇的全部内容。本篇完成了

  • 项目的创建
  • 绘制软件界面
  • 添加点击事件

本次的小工具只是这个项目中的一部分,实际上后面我们还会加入pdf格式转化等工具,直到本项目做到可以发布的地步,请期待后面的文章吧。

PyQt5DesignMode是本人结合MVC思想与pyqt5实现的一个项目模板,旨在可以用pyqt5实现多窗口应用,如果你感兴趣就给我个star吧。

欢迎订阅本专栏,学习更多python知识。

今天的文章【Python • 项目实战】pytesseract+pyqt实现图片识别软件小项目——(一)创建项目和画界面分享到此就结束了,感谢您的阅读,如果确实帮到您,您可以动动手指转发给其他人。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/32779.html

(0)
编程小号编程小号

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注