安装tesseract
1.添加源
sudo add-apt-repository ppa:alex-p/tesseract-ocr
2.更新源
sudo apt-get update
3.安装
sudo apt-get install tesseract-ocr
4.安装中文字库
tesseract 支持 60 多种语言的识别不同,使用之前需要先下载对应语言的字
库,下载地址:https://github.com/tesseract-ocr/tessdata
下载完成之后把.traineddata 字库文件放到 tessdata 目录下,默认路径是
/usr/share/tesseract-ocr/4.00/tessdata
安装 gnome-screenshot,xclip, imagemagick
这 3 个不需要添加源,直接终端输入代码:
(注:这里的截屏是gnome-screenshot,可以根据自己的需求更换)
sudo apt-get install gnome-screenshot
sudo apt-get install xclip
sudo apt-get install imagemagick
步骤 2:制作 shell 脚本
将以下代码复制到文档,并将后缀改成.sh 并增加运行权限
#!/bin/env bash
# Dependencies: tesseract-ocr imagemagick gnome-screenshot xclip
#Name: OCR Picture
#Author:emergency food
#Fuction: 截图并提取图片中的文字
#Path: /home/Username/...
#Date: 2022-12-28
#缓存文件的目录,可以自行更改
SCR="/home/xichun/Documents/temp/"
####框选将要转换成文字的截图
gnome-screenshot -a -f ${SCR}/temp.png
####提升图片质量
mogrify -modulate 100,0 -resize 400% ${SCR}/temp.png
#should increase detection rate
#### tesseract 提取图片文字到temp.txt文件里,这里tesseract有点问题:中文会有空格,可以自行更换更好的OCR
tesseract ${SCR}/temp.png ${SCR}/temp &> /dev/null -l eng+chi1
######去除多余的空格
sed 's/ //g' ${SCR}/temp.txt > ${SCR}/temp2.txt
#cat ${SCR}/temp2.txt > ${SCR}/temp.txt
####将temp.txt文件的内容提取到剪贴板上
cat ${SCR}/temp2.txt | xclip -selection clipboard
exit