python智能ai联系人管理课程设计源码汉王云名片识别

简介: python智能ai联系人管理课程设计源码汉王云名片识别

在PyCharm中运行《AI智能联系人管理》即可进入如图1所示的系统主界面。


678df7544a5447e055bae88db0d365f.png


说明:在运行程序前,先将当前的计算机连接互联网,并且需要先申请汉王云名片识别接口的服务器Key,并且复制该Key到项目的key.txt文件中替换原来的说明文字即可。


具体的操作步骤如下:

(1)添加联系人。在主界面中,单击“添加”按钮,将打开添加联系人窗口,在该窗口中,单击“选择名片”按钮,选择一张名片对应的图片,系统将自动识别该名片中的信息,并且显示到右侧的文本框中,效果如图2所示。如果没有名片也可手动输入联系人信息。

5964f53eeb552d199e6641a3bbb2719.png


(2)搜索联系人。在主界面顶部的文本框中,输入要搜索的内容,单击“搜索”按钮,将从已经保存的联系人信息中查找相应的内容,如果找到对应的内容,将显示在下方,如图3所示,否则给出显示“没有搜索内容”的提示对话框,如图4所示。


b8d0bab6156159bf7e19c5059c2cfca.png

说明:在查找联系人时,也可以单击索引字母按钮,按拼音索引来查找。


2a38155247d19072c93687f8730cb24.png

(3)编辑或删除联系人。在显示联系人时,每个联系人的右侧都有两个按钮(如图5所示),一个是“编辑”,另一个是“删除”,单击不同的按钮将实现相应的功能。


e9dfe05bd7a3de0f002a364decfafe1.png

(4)查看联系人的分布。在主界面中,单击“查看联系人分布”按钮,将打开“联系人分布”窗口,在该窗口中将以饼图显示联系人的分布,如图6所示。


d2671b56f0adeab2fa4d8c94bdd2633.png


运行方法

说明:在运行程序前,需要先申请汉王云名片识别接口的服务器Key,并且复制该Key到项目的key.txt文件中替换原来的说明文字即可。

打开PyCharm开发环境,然后在主菜单上选择File→Open菜单项,在打开的Open File or Project对话框中,选择项目business_card,如图1所示。

b8c43163ad21175ffda3c68f6181f5f.png


单击OK按钮,将弹出 Open Project对话框,在该对话框,如果想要在新的窗体中打开项目,则选中Open in new window单选按钮,否则在当前窗体中打开,则选中Open in current window单选按钮。这里在新窗体中打开文件,如图2所示。


4adaa576ffebf72ba1201ea20c4a937.png

打开项目后,在右侧的Project面板中选中程序的主文件card_main.py,并且单击鼠标右键,在弹出的快捷菜单中选择“Run ‘card_main’”菜单项运行项目,如图3所示。

37806bd6e07557100c6caafa57a0f9f.png


程序运行效果如图4所示。

f3b3a6959a92bf34002a7b520f36839.png


部分源码如下,其余完整详见下载。


from PyQt5 import QtCore, QtGui, QtWidgets
from PyQt5.QtGui import *
class Ui_Form(object):
    def setupUi(self, Form):
        Form.setObjectName("Form")
        Form.resize(1224, 725)
        font = QtGui.QFont()
        font.setFamily("Arial")
        font.setKerning(False)
        Form.setFont(font)
        self.label = QtWidgets.QLabel(Form)
        self.label.setGeometry(QtCore.QRect(25, 25, 45, 45))
        self.label.setCursor(QtGui.QCursor(QtCore.Qt.UpArrowCursor))
        # self.label.setStyleSheet("background-color: rgb(10, 46, 255);")
        self.label.setText("")
        self.label.setObjectName("label")
        self.label_2 = QtWidgets.QLabel(Form)
        self.label_2.setObjectName("label_2")
        self.lineEdit = QtWidgets.QLineEdit(Form)
        self.lineEdit.setGeometry(QtCore.QRect(450, 40, 291, 31))
        self.lineEdit.setText("")
        self.lineEdit.setObjectName("lineEdit")
        self.pushButton = QtWidgets.QPushButton(Form)
        self.pushButton.setGeometry(QtCore.QRect(680, 40, 61, 31))
        self.pushButton.setStyleSheet("color: rgb(255, 255, 255);\n"
"background-color: rgb(0, 170, 255);")
        self.pushButton.setObjectName("pushButton")
        self.pushButton_2 = QtWidgets.QPushButton(Form)
        self.pushButton_2.setGeometry(QtCore.QRect(750, 40, 81, 31))
        self.pushButton_2.setStyleSheet("background-color: rgb(0, 170, 255);\n"
"color: rgb(255, 255, 255);")
        self.pushButton_2.setObjectName("pushButton_2")
        self.scrollArea = QtWidgets.QScrollArea(Form)
        self.scrollArea.setGeometry(QtCore.QRect(10, 140, 1200, 571))
        self.scrollArea.setWidgetResizable(True)
        self.scrollArea.setObjectName("scrollArea")
        self.scrollAreaWidgetContents = QtWidgets.QWidget()
        self.scrollAreaWidgetContents.setGeometry(QtCore.QRect(0, 0, 1198, 569))
        self.scrollAreaWidgetContents.setObjectName("scrollAreaWidgetContents")
        self.gridLayoutWidget = QtWidgets.QWidget(self.scrollAreaWidgetContents)
        self.gridLayoutWidget.setGeometry(QtCore.QRect(0, 0, 1201, 571))
        self.gridLayoutWidget.setObjectName("gridLayoutWidget")
        self.pushButton_29.setObjectName("pushButton_29")
        self.horizontalLayout.addWidget(self.pushButton_29)
        self.pushButton_30 = QtWidgets.QPushButton(Form)
        self.pushButton_30.setGeometry(QtCore.QRect(1100, 40, 91, 31))
        self.pushButton_30.setStyleSheet("background-color: rgb(0, 170, 255);\n"
"color: rgb(255, 255, 255);")
        self.pushButton_30.setObjectName("pushButton_30")
————————————————


相关文章
|
12天前
|
数据采集 存储 人工智能
代理IP与AI自我进化:探索未来智能的新边界
在AI快速发展的今天,数据获取成为制约其进步的关键因素。代理IP技术通过匿名性和灵活性,帮助AI突破地域限制、绕过反爬虫机制,提升数据质量和模型训练效率,促进AI自我进化。本文通过实例和代码,探讨了代理IP在AI发展中的作用及潜在价值,强调了合理使用代理IP的重要性。
20 1
|
7天前
|
机器学习/深度学习 人工智能 UED
OOTDiffusion:开源AI虚拟试衣工具,智能适配性别和体型自动调整衣物
OOTDiffusion是一款开源的AI虚拟试衣工具,能够智能适配不同性别和体型,自动调整衣物尺寸和形状,生成自然贴合的试穿效果。该工具支持半身和全身试穿模式,操作简单,适合服装电商、时尚行业从业者及AI试穿技术爱好者使用。
88 27
OOTDiffusion:开源AI虚拟试衣工具,智能适配性别和体型自动调整衣物
|
19天前
|
人工智能 自然语言处理 算法
具身智能高校实训解决方案 ----从AI大模型+机器人到通用具身智能
在具身智能的发展历程中,AI 大模型的出现成为了关键的推动力量。高校作为培养未来科技人才的摇篮,需要紧跟这一前沿趋势,开展具身智能实训课程。通过将 AI 大模型与具备 3D 视觉的机器人相结合,为学生搭建一个实践平台。
175 64
|
7天前
|
机器学习/深度学习 Web App开发 人工智能
Amurex:开源AI会议助手,提供实时建议、智能摘要、快速回顾关键信息
Amurex是一款开源的AI会议助手,提供实时建议、智能摘要、快速回顾关键信息等功能,帮助用户提升会议效率。本文将详细介绍Amurex的功能、技术原理以及如何运行和使用该工具。
62 18
Amurex:开源AI会议助手,提供实时建议、智能摘要、快速回顾关键信息
|
2天前
|
人工智能 数据库 自然语言处理
拥抱Data+AI|DMS+AnalyticDB助力钉钉AI助理,轻松玩转智能问数
「拥抱Data+AI」系列文章由阿里云瑶池数据库推出,基于真实客户案例,展示Data+AI行业解决方案。本文通过钉钉AI助理的实际应用,探讨如何利用阿里云Data+AI解决方案实现智能问数服务,使每个人都能拥有专属数据分析师,显著提升数据查询和分析效率。点击阅读详情。
拥抱Data+AI|DMS+AnalyticDB助力钉钉AI助理,轻松玩转智能问数
|
16天前
|
人工智能 JSON 自然语言处理
智能化AI工具-语言翻译与本地化
在全球化发展的背景下,语言翻译与本地化需求日益增长。无论是跨境电商、国际合作,还是本地化应用开发,都需要高效、准确的翻译解决方案。阿里云通义千问作为一款强大的大语言模型,不仅具备出色的自然语言理解能力,还能够在多语言翻译和本地化场景中发挥重要作用。本博客将详细介绍如何基于阿里云通义千问开发语言翻译与本地化工具,包括产品介绍、程序代码以及阿里云相关产品的具体使用流程。
51 10
|
12天前
|
人工智能 运维 自然语言处理
智能化运维:AI在IT运维领域的深度应用与实践####
本文探讨了人工智能(AI)技术在IT运维领域的深度融合与实践应用,通过分析AI驱动的自动化监控、故障预测与诊断、容量规划及智能决策支持等关键方面,揭示了AI如何赋能IT运维,提升效率、降低成本并增强系统稳定性。文章旨在为读者提供一个关于AI在现代IT运维中应用的全面视角,展示其实际价值与未来发展趋势。 ####
76 4
|
14天前
|
机器学习/深度学习 人工智能 运维
智能化运维:AI与大数据在IT运维中的应用探索####
本文旨在探讨人工智能(AI)与大数据分析技术如何革新传统IT运维模式,提升运维效率与服务质量。通过具体案例分析,揭示AI算法在故障预测、异常检测及自动化修复等方面的实际应用成效,同时阐述大数据如何助力实现精准运维管理,降低运营成本,提升用户体验。文章还将简要讨论实施智能化运维面临的挑战与未来发展趋势,为IT管理者提供决策参考。 ####
|
20天前
|
JSON 开发工具 git
基于Python和pygame的植物大战僵尸游戏设计源码
本项目是基于Python和pygame开发的植物大战僵尸游戏,包含125个文件,如PNG图像、Python源码等,提供丰富的游戏开发学习素材。游戏设计源码可从提供的链接下载。关键词:Python游戏开发、pygame、植物大战僵尸、源码分享。
|
20天前
|
机器学习/深度学习 人工智能 自然语言处理
智能化软件测试:AI驱动的自动化测试策略与实践####
本文深入探讨了人工智能(AI)在软件测试领域的创新应用,通过分析AI技术如何优化测试流程、提升测试效率及质量,阐述了智能化软件测试的核心价值。文章首先概述了传统软件测试面临的挑战,随后详细介绍了AI驱动的自动化测试工具与框架,包括自然语言处理(NLP)、机器学习(ML)算法在缺陷预测、测试用例生成及自动化回归测试中的应用实例。最后,文章展望了智能化软件测试的未来发展趋势,强调了持续学习与适应能力对于保持测试策略有效性的重要性。 ####