wx供重浩:创享日记
对话框发送:python停车场
获取完整源码源文件+说明文档+可执行文件等
在PyCharm中运行《智能停车场车牌识别计费系统》即可进入如图1所示的系统主界面。

说明:在运行程序前,先将当前的计算机连接互联网,并且需要先申请百度AI开放平台的图片识别需要的Key,并且复制该Key到项目根目录下的file子目录的key.txt文件中替换相应的内容即可。替换时需要注意不要把原来的单引号删除。
具体的操作步骤如下:
(1)识别车牌,并实现车辆入场和出场。当有车辆的车头或车尾对准摄像头后,管理员单击“识别”按钮,系统将识别该车牌,并且根据车牌判断入场或出场,显示不同信息。车辆入场时效果如图2所示,车辆驶出时效果如图3所示。


(2)收入统计。单击“收入统计”按钮,系统会根据车辆进出记录汇总出一个的收入信息,并且通过柱型图显示出来,效果如图4所示。

(3)满预警。系统会根据以往的数据自动判断一周中的哪一天会出现车位紧张的情况,从而在前一天给出预警提示,方便管理员提前做好调度,效果如图5所示。

运行方法
说明:在运行程序前,先将当前的计算机连接互联网,并且需要先申请百度AI开放平台的图片识别需要的Key,并且复制该Key到项目根目录下的file子目录的key.txt文件中替换相应的内容即可。替换时需要注意不要把原来的单引号删除。
打开PyCharm开发环境,然后在主菜单上选择File→Open菜单项,在打开的Open File or Project对话框中,选择项目CarNumber,如图1所示。

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

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

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

说明:在运行程序时,如图出现如图5所示的异常信息,那么可能是没有连接摄像头,或者摄像头出现异常。

部分源码如下,其余完整详见下载,可忽略。
# 定义颜色
BLACK = ( 0, 0, 0)
WHITE = (255, 255, 255)
GREEN = (0, 255, 0)
BLUE = (0, 120, 215)
GRAY = (96,96,96)
RED = (220,20,60)
YELLOW = (255,255,0)
DARKBLUE = (73, 119, 142)
BG = DARKBLUE # 指定背景颜色
#信息内容
txt1=''
txt2=''
txt3=''
# 窗体大小
size = 1000, 484
# 设置帧率(屏幕每秒刷新的次数)
FPS = 60
# 一共有多少车位
Total =100
# 月收入统计分析界面开关
income_switch=False
# 获取文件的路径
cdir = os.getcwd()
# 文件路径
path=cdir+'/datafile/'
# 读取路径
if not os.path.exists(path):
# 根据路径建立文件夹
os.makedirs(path)
# 车牌号 日期 时间 价格 状态
carnfile = pd.DataFrame(columns=['carnumber', 'date', 'price', 'state'])
# 生成xlsx文件
carnfile.to_excel(path+'停车场车辆表' + '.xlsx', sheet_name='data')
carnfile.to_excel(path+'停车场信息表' + '.xlsx', sheet_name='data')
# 读取文件内容
pi_table = pd.read_excel(path+'停车场车辆表.xlsx', sheet_name='data')
pi_info_table = pd.read_excel(path+'停车场信息表.xlsx', sheet_name='data')
# 停车场车辆
cars = pi_table[['carnumber', 'date', 'state']].values
# 已进入车辆数量
carn =len(cars)
# pygame初始化
pygame.init()
# 设置窗体名称
pygame.display.set_caption('智能停车场车牌识别计费系统')
# 图标
ic_launcher = pygame.image.load('file/ic_launcher.png')
# 设置图标
pygame.display.set_icon(ic_launcher)
# 设置窗体大小
screen=pygame.display.set_mode(size)
# 设置背景颜色
screen.fill(BG)
try:
cam = cv2.VideoCapture(0)
except:
print('请连接摄像头')
# 背景文图案
def text0(screen):
# 底色
pygame.draw.rect(screen, BG, (650, 2, 350, 640))
# 绘制横线
pygame.draw.aaline(screen, GREEN, (662, 50), (980, 50), 1)
# 绘制信息矩形框
pygame.draw.rect(screen, GREEN, (650, 350, 342,85),1)
# 使用系统字体
xtfont = pygame.font.SysFont('SimHei', 15)
# 重新开始按钮
textstart = xtfont.render('信息', True, GREEN)
# 获取文字图像位置
text_rect = textstart.get_rect()
# 设置文字图像中心点
text_rect.centerx = 675
text_rect.centery = 365
# 绘制内容
screen.blit(textstart, text_rect)
cars = pi_table[['carnumber', 'date', 'state']].values
if len(cars)>0:
longcar=cars[0][0]
cartime =cars[0][1]
# 使用系统字体
xtfont = pygame.font.SysFont('SimHei', 15)
# 转换当前时间 2018-12-11 16:18
localtime = time.strftime('%Y-%m-%d %H:%M', time.localtime())
htime = timeutil.DtCalc(cartime, localtime)
# 重新开始按钮
textscar = xtfont.render('停车时间最长车辆:'+str(longcar), True, RED)
texttime = xtfont.render("已停车:" + str(htime) + '小时', True, RED)
# 获取文字图像位置
text_rect1 = textscar.get_rect()
text_rect2 = texttime.get_rect()
# 设置文字图像中心点
text_rect1.centerx = 820
text_rect1.centery = 320
text_rect2.centerx = 820
text_rect2.centery = 335
# 绘制内容
screen.blit(textscar, text_rect1)
screen.blit(texttime, text_rect2)
pass
关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题?更新问题,以便editingthispost可以用事实和引用来回答它.关闭4年前。Improvethisquestion我想在固定时间创建一系列低音和高音调的哔哔声。例如:在150毫秒时发出高音调的蜂鸣声在151毫秒时发出低音调的蜂鸣声200毫秒时发出低音调的蜂鸣声250毫秒的高音调蜂鸣声有没有办法在Ruby或Python中做到这一点?我真的不在乎输出编码是什么(.wav、.mp3、.ogg等等),但我确实想创建一个输出文件。
这个问题在这里已经有了答案:关闭10年前。PossibleDuplicate:Pythonconditionalassignmentoperator对于这样一个简单的问题表示歉意,但是谷歌搜索||=并不是很有帮助;)Python中是否有与Ruby和Perl中的||=语句等效的语句?例如:foo="hey"foo||="what"#assignfooifit'sundefined#fooisstill"hey"bar||="yeah"#baris"yeah"另外,类似这样的东西的通用术语是什么?条件分配是我的第一个猜测,但Wikipediapage跟我想的不太一样。
什么是ruby的rack或python的Java的wsgi?还有一个路由库。 最佳答案 来自Python标准PEP333:Bycontrast,althoughJavahasjustasmanywebapplicationframeworksavailable,Java's"servlet"APImakesitpossibleforapplicationswrittenwithanyJavawebapplicationframeworktoruninanywebserverthatsupportstheservletAPI.ht
导读语言模型给我们的生产生活带来了极大便利,但同时不少人也利用他们从事作弊工作。如何规避这些难辨真伪的文字所产生的负面影响也成为一大难题。在3月9日智源Live第33期活动「DetectGPT:判断文本是否为机器生成的工具」中,主讲人Eric为我们讲解了DetectGPT工作背后的思路——一种基于概率曲率检测的用于检测模型生成文本的工具,它可以帮助我们更好地分辨文章的来源和可信度,对保护信息真实、防止欺诈等方面具有重要意义。本次报告主要围绕其功能,实现和效果等展开。(文末点击“阅读原文”,查看活动回放。)Ericmitchell斯坦福大学计算机系四年级博士生,由ChelseaFinn和Chri
电脑0x0000001A蓝屏错误怎么U盘重装系统教学分享。有用户电脑开机之后遇到了系统蓝屏的情况。系统蓝屏问题很多时候都是系统bug,只有通过重装系统来进行解决。那么蓝屏问题如何通过U盘重装新系统来解决呢?来看看以下的详细操作方法教学吧。 准备工作: 1、U盘一个(尽量使用8G以上的U盘)。 2、一台正常联网可使用的电脑。 3、ghost或ISO系统镜像文件(Win10系统下载_Win10专业版_windows10正式版下载-系统之家)。 4、在本页面下载U盘启动盘制作工具:系统之家U盘启动工具。 U盘启动盘制作步骤: 注意:制作期间,U盘会被格式化,因此U盘中的重要文件请注
华为OD机试题本篇题目:明明的随机数题目输入描述输出描述:示例1输入输出说明代码编写思路最近更新的博客华为od2023|什么是华为od,od薪资待遇,od机试题清单华为OD机试真题大全,用Python解华为机试题|机试宝典【华为OD机试】全流程解析+经验分享,题型分享,防作弊指南华为o
在应用开发中,有时候我们需要获取系统的设备信息,用于数据上报和行为分析。那在鸿蒙系统中,我们应该怎么去获取设备的系统信息呢,比如说获取手机的系统版本号、手机的制造商、手机型号等数据。1、获取方式这里分为两种情况,一种是设备信息的获取,一种是系统信息的获取。1.1、获取设备信息获取设备信息,鸿蒙的SDK包为我们提供了DeviceInfo类,通过该类的一些静态方法,可以获取设备信息,DeviceInfo类的包路径为:ohos.system.DeviceInfo.具体的方法如下:ModifierandTypeMethodDescriptionstatic StringgetAbiList()Obt
之前说过10之后的版本没有3dScan了,所以还是9.8的版本或者之前更早的版本。 3d物体扫描需要先下载扫描的APK进行扫面。首先要在手机上装一个扫描程序,扫描现实中的三维物体,然后上传高通官网,在下载成UnityPackage类型让Unity能够使用这个扫描程序可以从高通官网上进行下载,是一个安卓程序。点到Tools往下滑,找到VuforiaObjectScanner下载后解压数据线连接手机,将apk文件拷入手机安装然后刚才解压文件中的Media文件夹打开,两个PDF图打印第一张A4-ObjectScanningTarget.pdf,主要是用来辅助扫描的。好了,接下来就是扫描三维物体。将瓶
我想解析一个已经存在的.mid文件,改变它的乐器,例如从“acousticgrandpiano”到“violin”,然后将它保存回去或作为另一个.mid文件。根据我在文档中看到的内容,该乐器通过program_change或patch_change指令进行了更改,但我找不到任何在已经存在的MIDI文件中执行此操作的库.他们似乎都只支持从头开始创建的MIDI文件。 最佳答案 MIDIpackage会为您完成此操作,但具体方法取决于midi文件的原始内容。一个MIDI文件由一个或多个音轨组成,每个音轨是十六个channel中任何一个上的
本文主要介绍在使用Selenium进行自动化测试或者任务时,对于使用了iframe的页面,如何定位iframe中的元素文章目录场景描述解决方案具体代码场景描述当我们在使用Selenium进行自动化测试的时候,可能会遇到一些界面或者窗体是使用HTML的iframe标签进行承载的。对于iframe中的标签,如果直接查找是无法找到的,会抛出没有找到元素的异常。比如近在咫尺的例子就是,CSDN的登录窗体就是使用的iframe,大家可以尝试通过F12开发者模式查看到的tag_name,class_name,id或者xpath来定位中的页面元素,会抛出NoSuchElementException异常。解决