项目使用PyQt5接口百度AI文字识别服务,使用SQLite为数据库引擎,开发实现普通文字识别、身份证识别、银行卡识别、驾驶证识别、行驶证识别和车牌识别的集成系统,百度AI的文字识别还有很多别的功能,可以根据个体不同需要调入。
Github地址:https://github.com/shanghaixuhuan/myOCR
不同的文字识别用的是一个界面代码,主要区别在于对图片处理后的字符串提取的区别。
普通文字识别
import sys
import time
import random
from aip import AipOcr
from PyQt5.QtWidgets import (QDialog,QApplication,QLabel,QPushButton,
QFileDialog,QMessageBox,QPlainTextEdit,QHBoxLayout,
QVBoxLayout)
from PyQt5.QtGui import QIcon,QFont
from PyQt5.QtSql import QSqlQuery,QSqlDatabase
import qdarkstyle
from PyQt5 import QtGui
APP_ID = ' ' #写入APP_ID
API_KEY = ' ' #写入API_KEY
SECRET_KEY = ' ' #写入SECRET_KEY
aipOcr = AipOcr(APP_ID, API_KEY, SECRET_KEY)
options = {
'detect_direction': 'true',
'language_type': 'CHN_ENG',
}
class BasicRecognize(QDialog):
def __init__(self):
super(BasicRecognize,self).__init__()
self.text = ""
self.strTime = ""
self.basicid = ""
self.filePath = ""
self.initUI()
def initUI(self):
self.resize(700,600)
self.setWindowTitle("myOCR——普通文字识别")
self.setWindowIcon(QIcon("./images/Icon.png"))
self.plabel = QLabel(self)
self.plabel.setFixedSize(400,300)
self.obtn = QPushButton(self)
self.obtn.setText("打开本地图片")
self.obtn.setFont(QFont("苏新诗柳楷繁", 15))
self.obtn.clicked.connect(self.openimage)
self.obtn.setFixedSize(180,40)
self.sbtn = QPushButton(self)
self.sbtn.setText("开 始 识 别")
self.sbtn.setFont(QFont("苏新诗柳楷繁", 15))
self.sbtn.clicked.connect(self.recognize)
self.sbtn.setFixedSize(180,40)
self.v1box = QVBoxLayout()
self.v1box.addWidget(self.obtn)
self.v1box.addWidget(self.sbtn)
self.h1box = QHBoxLayout()
self.h1box.addWidget(self.plabel)
self.h1box.addLayout(self.v1box)
self.tlabel = QLabel(self)
self.tlabel.setText("识\n别\n结\n果")
self.tlabel.setFont(QFont("苏新诗柳楷繁", 15))