基于行空板的pytesseract摄像头文字识别装置
本帖最后由 虚怀若谷 于 2024-4-28 12:07 编辑## 基于行空板的pytesseract摄像头文字识别装置
## 项目介绍
在书本中读到的美好的文字,如何记录在电脑中呢?一个一个打字太麻烦了,不妨试试文字识别(OCR)功能。OCR技术是通过电子设备(例如扫描仪或摄像头、相机等)将各种印刷品的文字转化为图像信息,再利用文字识别技术将图像信息转化为可以直接在计算机上使用的人工智能技术。
本项目我们就给行空板接上摄像头,利用Python pytesseract库制作一个文字识别装置,实现拍照识别并输出纸上的文字。

## 实操:拍摄并识别文字
实现按下行空板A键用摄像头拍摄文字图片并自动识别和显示识别结果,按B键清空文字内容。
注意:行空板自带按键有HOME键、A键和B键,各按键位置如下图所示。

### 1 连接硬件
首先,将USB摄像头接入行空板USB接口。

然后,将行空板通过USB线连接到电脑上,等待行空板屏幕亮起,并显示行空板LOGO,表示连接成功。

### 2 准备软件
按照下面步骤,设置Mind+软件编程方式为 Python图形化编程,并完成行空板的加载和连接。

### 3 加载第三方库
接下来,我们将从文字识别库的加载到拍摄并自动识别书名开始逐步完成项目效果。
#### (1)安装和加载文字识别库
由于文字识别库并不属于内置库,而是属于用户自定义库功能,所以需要安装一些依赖库,安装方法如下。
首先,打开项目二资料包文件夹,找到“pytesseract”文件夹,并将文件夹拖入“行空板的文件”中。

等待上传完成后,在“行空板中的文件”里就能看到“pytesseract”文件夹。然后,单击鼠标左键打开它,找到依赖库安装文件“1-Install_dependency.py”。

接下来,将编程模式切换为代码模式,双击打开“1-Install_dependency.py”文件,出现安装代码,点击运行,自动安装依赖库。

当终端区出现“安装完成”,表示依赖库安装完成。

#### (2)加载图形化库
然后,切换回图形化模式,加载文字识别图形化库。通过“扩展库”中的“用户库”检索获得“文字识别”图形化库——“pytesseract”(检索网址为<https://gitee.com/chenqi1233/ext-pytesseract>)。

### 4 编写程序
程序需要包括摄像头初始化、读取和识别,完整示例代码如下:

### 5 运行程序
点击运行按钮,运行程序。程序运行后,等待一会行空板屏幕显示视频画面。

将摄像头对准附录中的文字样例,按下行空板A键,等待一会,终端和行空板屏幕显示识别的内容。
注意:用摄像头拍摄文字时,尽量保证要识别的文字端正、完整清晰的出现在视频画面中,以确保识别准确性。

拍摄的图片在哪里?进入“行空板中的文件”,在下图所示位置,查看和下载拍摄图片。

## 附录 文字样例

好教程666,多谢老师的教程
用了”销毁全部窗口“来退出摄像头后,再次进入画面...
老师好,咨询下,我用了”销毁全部窗口“来退出摄像头,方便屏幕显示指定文字内容,但是按B键重新打开摄像头画面后,摄像头取景框跟屏幕显示错位了,这个能帮忙看下哪里需要调整吗? nanafly 发表于 2024-9-11 01:44
老师好,咨询下,我用了”销毁全部窗口“来退出摄像头,方便屏幕显示指定文字内容,但是按B键重新打开 ...
请问销毁全部窗口这个功能是在那个模块里面
页:
[1]