首页 / 专利库 / 人工智能 / 机器学习 / 人工神经网络 / 自组织映射 / 基于深度学习的自习室座位状态检测方法与座位管理系统

基于深度学习的自习室座位状态检测方法与座位管理系统

阅读:91发布:2020-05-11

专利汇可以提供基于深度学习的自习室座位状态检测方法与座位管理系统专利检索,专利查询,专利分析的服务。并且本 发明 公开了一种基于 深度学习 的自习室座位状态检测方法与座位管理系统,涉及教学资源管理技术领域,其采用 计算机视觉 的方式代替传统的 硬件 点阵等来实现的座位使用情况检测,减少了硬件资源的使用;采用基于深度学习的目标检测 算法 进行物体检测,比传统的目标检测算法有更高的检测 精度 ;能够在不增加任何额外硬件的情况下判断占座;不仅可以得到自习室的上座率,而且可以得到每一个座位的使用情况;系统无意识、非强制且人性化;系统不仅可以方便学生,也能方便管理者还能为一些该方面的研究者提供数据支持。,下面是基于深度学习的自习室座位状态检测方法与座位管理系统专利的具体信息内容。

1.一种基于深度学习的自习室座位状态检测方法,其特征在于,包括以下步骤:
S1、确定N类物体,N为正整数,搜集包含N类物体的图像数据,对所述图像数据进行标注并清洗后形成数据集,用该数据集训练基于深度学习的目标检测模型;
S2、为N类物体中每类物体均定义分值,设定离座时间阈值和物体累加分值阈值,物体累加分值阈值有两个,且由小到大依次为第一累加分值阈值和第二累加分值阈值;
S3、拍摄获取自习室的座位图像Ⅰ,建立自习室座位在座位图像Ⅰ中的像素位置与在真实场景中行列位置之间的连接,输出座位映射表;
S4、拍摄获取自习室的座位图像Ⅱ,所述座位图像Ⅱ与所述座位图像Ⅰ的拍摄获取条件相同,根据座位映射表和座位图像Ⅱ,将座位图像Ⅱ中每个座位范围包含的物体信息转换成真实场景中每个座位范围内的物体累加分值信息,得到座位分值表,所述座位分值表包含各座位的行坐标、列坐标和物体累加分值,所述物体累加分值为一个座位范围内所有物体分值的累加值;
S5、根据座位分值表中各座位的物体累加分值以及离座时间阈值,判定各座位的状态,输出得到座位状态表,所述座位状态表包括各座位的行坐标、列坐标和状态值;
当一个座位的物体累加分值大于或等于所述第二累加分值阈值,则判定该座位为正常使用状态,状态值为0;
当一个座位的物体累加分值不为零,且该座位的最近一次正常使用状态出现的时刻到当前时刻的时长没有超过所述离座时间阈值,则判定该座位为暂时离开状态,状态值为1;
当一个座位的物体累加分值小于所述第一累加分值阈值,且该座位的最近一次正常使用状态出现的时刻到当前时刻的时长超过所述离座时间阈值,则判定该座位为无人使用状态,状态值为2,新的座位使用者可自行处理座位上的物体,并使用该座位;
当一个座位的物体累加分值大于或等于所述第一累加分值阈值,且小于所述第二累加分值阈值,且该座位的最近一次正常使用状态出现的时刻到当前时刻的时长超过所述离座时间阈值,则判定该座位为占座状态,状态值为3,通知自习室管理人员清理该座位上的物体。
2.根据权利要求1所述基于深度学习的自习室座位状态检测方法,其特征在于,N=8,8类物体分别为笔记本电脑、书包、手提包、平板电脑、书、杯、抱枕和人,其中人的分值为50分,笔记本电脑、平板电脑、书包和手提包的分值均为10分,水杯、抱枕和书的分值均为1分,所述第一累加分值阈值为10分,所述第二累加分值阈值为50分。
3.根据权利要求2所述基于深度学习的自习室座位状态检测方法,其特征在于,所述步骤S3中,所述座位映射表是由基于手工绘制的座位映射方法产生的,具体包括以下步骤:
A1、拍摄获取自习室的座位图像Ⅰ,在座位图像Ⅰ上依照整个座位区域中的行、列和边缘用鼠标手工绘制出行与行之间的行分界线、列与列之间的列分界线以及整个座位区域的边界线,其中行分界线与整个座位区域的上、下边界线统称为行线,列分界线与整个座位区域的左右边界线统称为列线,记录每一条线段的起点和终点的像素坐标,如果该线段的斜率绝对值大于1或不存在斜率,则判定该线段为列线,否则判定该线段为行线;
A2、根据线段起点和终点的像素坐标,计算出所有行线与所有列线的交点像素坐标,并保存到二维列表Aα中,二维列表Aα中一行的元素是一条行线与所有列线的交点像素坐标,一列的元素是一条列线与所有行线的交点像素坐标;
A3、对二维列表Aα中所有的交点像素坐标先按照横坐标从小到大的顺序进行排序,再按照纵坐标从大到小的顺序进行排序,在二维列表Aα中,由相邻的四个交点像素坐标确定一个四边形网格,记录相邻的四个交点像素坐标为四边形网格的四个点像素坐标;
A4、依次计算出二维列表Aα中每个四边形网格的正副对角线交点的像素坐标,并将其作为该四边形网格的中心像素坐标,按顺序保存所有中心像素坐标到二维列表Aβ中,每一个中心像素坐标在二维列表Aβ中的索引值,等于其在真实场景中对应行列的行坐标减1、列坐标减1后组成的坐标;
A5、根据二维列表Aα与二维列表Aβ,以行为单位,输出中心像素坐标、中心像素坐标在二维列表Aβ中的索引值在横纵坐标均加1后的新值、中心像素坐标在二维列表Aα中对应的四个角点像素坐标,得到座位映射表。
4.根据权利要求2所述基于深度学习的自习室座位状态检测方法,其特征在于,所述步骤S3中,所述座位映射表是由基于梯度下降的座位映射方法产生的,具体包括以下步骤:
B1、拍摄获取自习室的座位图像Ⅰ,在座位图像Ⅰ上人工标出整个座位区域的四个角点,将该四个角点作为透视变换的四个基准点,保存四个基准点的像素坐标,并输入当前自习室的行数与列数;
B2、采用与座位图像Ⅰ完全相同的拍摄条件,采集自习室的座位图像b1,座位图像b1经过透视变换后得到座位图像b1',用行分界线将座位图像b1'均分成R行,将座位图像b1'的上边界线、每条行分界线和下边界线在纵轴上的投影点的像素坐标,按照从小到大的顺序储存到一维的行列表Bα1中;用列分界线将座位图像b1'均分成C列,将座位图像b1'的左边界线、每条列分界线和下边界线在横轴上的投影点的像素坐标,按照从小到大的顺序储存到一维的列列表Bα2中;备份行列表Bα1到行列表B'α1,备份列列表Bα2到列列表B'α2,行列表Bα1与列列表Bα2构成初始座位映射表;
B3、将座位图像b1'送入所述目标检测模型中进行检测,输出座位图像b1'的检测结果;
设在座位图像b1'的检测结果中,物体人的中心像素坐标,在行列表Bα1中每相邻两元素确定的两条行线所夹的区域内均有分布,设在行列表Bα1中,第l个与第l+1个元素所确定的两条行线与座位图像b1'的左、右边界线所围成的矩形区域为Trl,其中l大于等于0小于R;设中心像素坐标落在矩形区域Trl内的所有物体人的边框与矩形区域Trl相交部分的面积的平均值为Slv,且中心像素坐标落在矩形区域Trl内的所有物体人的边框的面积的平均值为S'lv,其中v表示物体人的边框与两条行分界线不同的位置关系,取值为1、2和3中的一个,v=
1表示物体人的边框与两行线均相交,v=2表示物体人的边框只与第l条行线相交,v=3表示物体人的边框只与第l+1条行线相交;设Slv与S'lv的比值为plv,则pl1、pl2与pl3分别由式(1)、(2)与(3)确定;
其中yl表示行列表Bα1第l个元素的纵坐标,且y0与yR为已知值; 与 表示在满足v值的条件下,中心像素坐标落在矩形区域Trl内所有物体人的边框高度的平均值与中心像素坐标的纵坐标的平均值;
设在座位图像b1'的检测结果中,物体人的中心像素坐标,在列列表Bα2中每相邻两元素确定的两条列线所夹的区域内均有分布;设在列列表Bα2中,第t个与第t+1个元素所确定的两条列线与座位图像b1'的上、下边界线所围成的矩形区域为Tct,其中t大于等于0小于C;设中心像素坐标落在矩形区域Tct内的所有物体人的边框与矩形区域Tct相交部分的面积的平均值为Stj,且中心像素坐标落在矩形区域Tct内的所有物体人的边框的面积的平均值为S'tj,其中j表示物体人的边框与两条列分界线不同的位置关系,取值为1、2和3中的一个,j=
1表示物体人的边框与两列分界线均相交,j=2表示物体人的边框只与第t条列分界线相交,j=3物体人的边框只与第t+1条行分界线相交;设Stj与S'tj的比值为qtj,则qt1、qt2与qt3分别由式(4)、(5)与(6)确定;
其中xt表示列列表Bα2第t个元素的横坐标,且x0与xC为已知值, 与 表示在满足j值的条件下,中心像素坐标落在矩形区域Stj内所有物体人的边框高宽的平均值与中心像素坐标的横坐标的平均值,则有式(7)与式(8)
其中σpv2,表示在R+1条行线所确定的R个行区域内,满足v条件的R个plv以0.8为中心的二阶矩;σqj2表示在C+1条列线所确定的C个列区域内,满足j条件的C个qtj以0.8为中心的二阶矩;
采用梯度下降法最小化σpv2与σqv2,则有式(9)与式(10)
其中α控制梯度下降的速率,l从1到R-1,用更新后的yl覆盖原行列表Bα1中的yl,更新时需保证 且 H为座位图像b1'高度,Yl为行列表B'α1中第l个元素的纵
坐标;t从1到C-1,用更新后的xt覆盖原列列表Bα2中的xt,更新时需保证 且
W为座位图像d1'宽度,Xt为列列表B'α2中第t个元素的横坐标;
B4、采用与座位图像Ⅰ完全相同的拍摄获取条件,定时采集自习室座位图像bu,其中u为大于1的整数,且每采集一次座位图像bu,u值加1;
B5、将座位图像bu经过透视变换得到座位图像bu',将座位图像bu'送入所述目标检测模型中进行检测,将座位图像bu'的检测结果中物体人的中心像素坐标与边框宽高依次添加到二维列表Bβ中,其中二维列表Bβ中的每一行存放一个物体人的中心像素坐标与边框宽高;
如果连续采集座位图像bu的时间没有超过1小时则返回步骤B4,否则继续执行步骤B6;
B6、根据二维列表Bβ中所有物体人的中心像素坐标与边框宽高,以及初始座位映射表中元素确定的行线与列线,计算出所有的 与 利用式(1)、式(2)与式(3)计算出所有的plv,利用式(7)与式(9)更新初始座位映射表的行列表,计算出所有的 与 利用式(4)、式(5)与式(6)计算出所有的qtj,利用式(8)与式(10)更新初始座位映射表的列列表,如果初始座位映射表的更新次数小于24次,则返回步骤B4,否则,输出此时的初始座位映射表,并将其作为最终的座位映射表。
5.根据权利要求1所述基于深度学习的自习室座位状态检测方法,其特征在于,N=9,9类物体分别为笔记本电脑、书包、手提包、平板电脑、书、水杯、抱枕、人和椅子,其中人的分值为50分,笔记本电脑、平板电脑、书包和手提包的分值均为10分,水杯、抱枕和书的分值均为1分,椅子的分值为0分,所述第一累加分值阈值为10分,所述第二累加分值阈值为50分。
6.根据权利要求5所述基于深度学习的自习室座位状态检测方法,其特征在于,所述步骤S3中,所述座位映射表是由基于目标检测的座位映射方法产生的,具体包括以下步骤:
C1、拍摄获取自习室的座位图像Ⅰ,在座位图像Ⅰ上人工标出整个座位区域的四个角点,将该四个角点作为透视变换的四个基准点,保存四个基准点的像素坐标,并输入当前自习室的行数与列数;
C2、采用与座位图像Ⅰ完全相同的拍摄条件,采集自习室的座位图像ck,其中k为大于0的整数,且每采集一次座位图像ck则k加1,根据四个基准点的像素坐标对座位图像ck进行一次透视变换,得到座位图像c'k;
C3、将座位图像c'k送入所述目标检测模型中进行检测,如果座位图像c'k的检测结果中出现物体人,则返回步骤C2,如果座位图像c'k的检测结果中没有出现物体人,且当前系统时间在10:00到16:00之间,此刻距上一次输出的时刻的时间已超过24小时,则输出各物体椅子所对应的中心像素坐标和边框宽高数据;
C4、根据各物体椅子所对应的中心像素坐标及边框宽高获取自习室座位的行与行之间的行分界线、列与列之间的列分界线,并将列分界线、座位图像c'k的左边界线与右边界线在横轴上投影点的坐标储存到列列表Cα1中,将行分界线、座位图像c'k的上边界线与下边界线在纵轴上投影点的坐标储存到行列表Cα2中;
C5、分别对列列表Cα1与行列表Cα2中的坐标按从小到大的顺序进行排序,得到的新列列表Cα1与新行列表Cα2构成初始座位映射表;
C6、根据真实场景中的行数、列数、新列列表Cα1中相邻两元素确定的列宽、新行列表Cα2中相邻两元素确定的行宽,修正新列列表Cα1与新行列表Cα2,对应得到列列表Cβ1与行列表Cβ2;
若列列表Cβ1与行列表Cβ2是首次生成,则列列表Cβ1与行列表Cβ2一起构成最终的座位映射表;
若列列表Cβ1与行列表Cβ2不是首次生成,则先求取当前列列表Cβ1中的各元素与所有之前存在的列列表Cβ1中对应元素的平均值,并将该平均值存入列列表Cγ1中对应位置,再求取当前行列表Cβ2中的各元素与所有之前存在的行列表Cβ2中对应元素的平均值,并将该平均值存入行列表Cγ2,列列表Cγ1与行列表Cγ2一起构成最终的座位映射表。
7.根据权利要求4或6所述基于深度学习的自习室座位状态检测方法,其特征在于,所述步骤S4中,获取所述座位分值表的物体归属方法包括以下步骤:
D1、拍摄获取自习室的座位图像Ⅱ,导入并解析座位映射表,按照座位映射表中所描述的真实场景中的行数R与列数C,生成一个R*C的空白二维列表,并将二维列表中的每个元素赋初值为,其中(a,b)表示元素在二维列表中的位置,a+1表示真实场景中座位的行坐标,b+1表示真实场景中座位的列坐标,0表示座位初始的物体累加分值,所得到的二维列表作为初始座位分值表;
D2、将座位图像Ⅱ经过透视变换后输入所述目标检测模型中进行检测,将座位图像Ⅱ检测结果中物体中心像素坐标的纵坐标与座位映射表的行列表中的各元素的纵坐标比较,得到物体在真实场景中归属行列的行坐标,将座位图像Ⅱ检测结果中物体中心像素坐标的横坐标与列列表中的各元素的横坐标比较,得到物体在真实场景中归属行列的列坐标,所得到的行坐标和列坐标一起构成物体在真实场景中最终归属行列的坐标;
D3、根据物体的类别、分值及其最终归属行列的坐标,将物体的分值与初始座位分值表中对应行列位置的分值求和,用求和所得到的值覆盖初始座位分值表中的原值,如果座位图像Ⅱ经过目标检测出的所有物体都已归属,则输出最终的座位分值表,否则跳转至步骤D2。
8.根据权利要求3所述基于深度学习的自习室座位状态检测方法,其特征在于,所述步骤S4中,获取所述座位分值表的物体归属方法包括以下步骤:
E1、拍摄获取自习室的座位图像Ⅱ,导入并解析座位映射表,并按照座位映射表中所描述的真实场景中的行数R与列数C,生成一个R*C的空白二维列表,并将该二维列表中的每个元素赋初值为,其中(a,b)表示元素在二维列表中的位置,a+1表示真实场景中座位的行坐标,b+1表示真实场景中座位的列坐标,0表示座位初始的物体累加分值,所得到的二维列表作为初始座位分值表;
E2、将座位图像Ⅱ输入所述目标检测模型中进行检测,将座位图像Ⅱ检测结果中物体中心像素坐标的纵坐标,与座位映射表中的真实场景行列坐标对应的中心像素坐标的纵坐标比较,得到物体在真实场景中第一可能归属行列的行坐标,设为M,其中1≤m≤R,将座位图像Ⅱ检测结果中物体中心像素坐标的横坐标,与座位映射表中的真实场景行列坐标对应的中心像素坐标的纵坐标比较,得到物体在真实场景中第一可能归属行列的列坐标,设为N,其中1≤n≤R,则为物体在真实场景中第一可能归属行列的坐标;
E3、将位置及在真实场景中与其邻近的8个位置在座位映射表中对应的中心像素坐标,分别与物体的中心像素坐标求欧式距离,则距离最小者对应位置的行列坐标为物体在真实场景中第二可能归属行列的坐标,设为
E4、找到位置在座位映射表中对应的四个角点像素坐标,并求该位置四个角点像素坐标所确定的四边形网格的四条边线的函数方程,在真实场景中分别找到与位置邻近的8个位置在座位映射表中对应的四个角点像素坐标,并求该8个位置中各位置的四个角点像素坐标所确定的四边形网格的四条边线的函数方程,通过边线的函数方程判断物体的中心点与与边线的位置关系,找到物体中心像素坐标所属的网格,则该网格在座位映射表中所对应的行列坐标为物体在真实场景中最终归属行列的坐标;
E5、根据物体的类别、分值及其最终归属行列的坐标,将物体的分值与初始座位分值表中对应行列位置的分值求和,用求和所得到的值覆盖初始座位分值表中的原值,如果座位图像Ⅱ经过目标检测出的所有物体都已归属,则输出最终的座位分值表,否则跳转至步骤E2。
9.一种根据权利要求3所述基于深度学习的自习室座位状态检测方法得到的自习室座位管理系统,其特征在于,包括:
采集设备,其布置在自习室,用于写入自习室信息、采集自习室座位图像与生成座位映射表;
处理设备,其用于接收来自于采集设备的自习室座位图像与座位映射表文件,判定自习室中各座位的状态,输出座位状态码与人数,其中座位状态码是将座位状态表一维化,且转换成字符串后的结果,包含自习室所有座位的状态信息;
交互模,其用于给座位使用者提供查询各自习室座位状态的入口、给自习室管理人员提供增删查改自习室信息的入口;
web服务器,其用于结构化的储存自习室、学校、座位使用者和自习室管理人员的信息,其通过Flask框架下的后台程序对外部访问进行控制,并对采集模块与交互模块的请求进行解析和响应,通过关系数据库MySQL组织数据。
10.根据权利要求9所述的自习室座位管理系统,其特征在于,所述采集设备包括:
摄像头,用于采集自习室座位图像;
台,其固定在自习室墙壁上,用于支撑安装所述摄像头,并能带动所述摄像头水平旋转或者竖直旋转;
处理器模块,其自带wifi模块,写入有linux操作系统系统,其用于控制所述摄像头采集图像以及控制所述云台旋转,用于实现基于手工绘制的座位映射方法以生成座位映射表,并将座位映射表与自习室座位图像一起传输至所述处理设备。

说明书全文

基于深度学习的自习室座位状态检测方法与座位管理系统

技术领域

[0001] 本发明属于教学资源管理技术领域,具体涉及一种基于深度学习的自习室座位状态检测方法与座位管理系统。

背景技术

[0002] 高校自习室是学生课后学习的最好场所。但很多高校自习室人均座位数量偏少,就使得自习室座位成为了稀缺资源。同时,自习室占座现象明显,许多座位长时间出现书在人不在的情形,宝贵的座位资源常常被闲置,又导致自习室座位利用率低下。最后导致教室外许多人等待却一座难求,而室内则留有许多被占的空座。另外,自习室的座位状态无论是对于使用者还是管理员常常都是不可知的,这就使得座位使用者的折返率与寻找座位的时间大幅增加,而且管理员也无法采用最有效的方法去行使自己座位资源调配的职权,这也在一定程度上加剧了座位资源短缺的矛盾。针对这一现象,需要开发一个有效的座位状态检测方法与座位管理系统,将自习室座位资源透明化,方便使用者和管理员高效地使用和灵活地调配有限的座位资源,提升自习室座位利用率。
[0003] 座位管理系统的研究已经有十余年的历史,结合上述的背景分析,并且针对本发明将提出的方法与系统,以下将从两个方面对已有技术进行阐释评述,它们是座位状态检测方法与占座管理方式。
[0004] 座位状态检测,即通过一些手段来获得一间自习室里的座位使用状况,可以直接,也可以间接。直接的检测方法现有的主要有三种:第一种是通过硬件检测阵列来实现的,每个座位都是一个节点,每一个节点都配有一个检测模,最后所有节点通过有线或者无线的方式连接,就构成一个硬件检测阵列,该方法可以精确检测出自习室中每个座位的使用情况,但其在实施时需要安装巨量的硬件,且硬件之间存在密切的联系,这就使得系统的部署和维护变得非常困难,最重要的是硬件不容易升级与换代;第二种方法是通过扫码确认来实现的,给每一个座位贴上一个唯一标识的二维码,手机扫码入座,手机扫码暂离,手机扫码离开,该方法把硬件阵列弱化成了一张张分立的薄纸片,也可以检测出自习室中每个座位的使用情况,但是座位使用者需要的操作却繁琐了许多,而且设计者忽略了座位使用者的惰性,这种把系统的准确性与可靠性全交到座位使用者手中不是一个明智的选择,有时为了提升系统的准确性,该方法甚至会引入很多惩罚性的措施来逼迫座位使用者扫码;第三种是通过计算机视觉来实现的,准确的说是目标检测算法,拍摄一张图像,并且检测其中包含的目标、目标所在的位置与目标所占的范围,进而分析出座位使用情况。该方法将检测工作集中到了一个点上,即摄像头,最终的效果更多的依赖软件实现,这是一个很优的检测方式,但是已有的技术往往使用传统的目标检测算法,准确率低而且无法获得自习室每个座位的使用情况,最终实现的就只是一个不太精准的人数统计器。间接的检测方式主要指一种通过座位预约情况来间接得出座位使用情况的方法,有时为了增加准确性也会设计座位确认环节,该方法如果不附加座位确认环节,就只能起到限制人数的作用而流于粗放;
如果增加座位确认环节,又显得强制、繁琐与不人性化。
[0005] 占座管理,包括占座的判断和占座的处理,现有的方法主要有两种。第一种方式,将判断和处理作为同一个问题来对待,主要通过改变桌椅结构来实现,比如桌子和椅子上的重量不满足一定关系就折叠桌面,或者检测到人离开时间超时就将桌面上的物品收入桌内;该方法涉及到大量的桌椅的换代,而且当桌面上存在电脑,易碎物品,盛的杯子时可能会引起很多麻烦。第二种方式,则将判断和处理分开进行,判断由系统检测做出,而处理常常需要借助管理员或者使用者之手;这是当前技术大环境下比较合理的方式,但是现有的技术常常需要通过大量的硬件来实现判断。

发明内容

[0006] 本发明在于提供一种基于深度学习的自习室座位状态检测方法与座位管理系统,其能够缓解上述问题。
[0007] 为了缓解上述的问题;本发明采取的技术方案如下:
[0008] 第一方面,本发明提供了一种基于深度学习的自习室座位状态检测方法,包括以下步骤:
[0009] S1、确定N类物体,N为正整数,搜集包含N类物体的图像数据,对所述图像数据进行标注并清洗后形成数据集,用该数据集训练基于深度学习的目标检测模型;
[0010] S2、给N类物体中每类物体均定义出分值,设定离座时间阈值和物体累加分值阈值,物体累加分值阈值有两个,且由小到大依次为第一累加分值阈值和第二累加分值阈值;
[0011] S3、拍摄获取自习室的座位图像Ⅰ,建立自习室座位在座位图像Ⅰ中的像素位置与在真实场景中行列位置之间的连接,输出座位映射表,所述座位映射表包含自习室座位在座位图像Ⅰ中的像素位置与在真实场景中的行列位置之间的连接映射关系;
[0012] S4、拍摄获取自习室的座位图像Ⅱ,所述座位图像Ⅱ与所述座位图像Ⅰ的拍摄获取条件相同,根据座位映射表和座位图像Ⅱ,将座位图像Ⅱ中每个座位范围包含的物体信息转换成真实场景中每个座位范围内的物体累加分值信息,得到座位分值表,所述座位分值表中包含各座位的行坐标、列坐标和物体累加分值三个部分,所述物体累加分值为一个座位范围内所有物体分值的累加总分值;
[0013] S5、根据座位分值表中各座位的物体累加分值以及离座时间阈值,判定各座位的状态,输出得到座位状态表,所述座位状态表包括各座位的行坐标、列坐标和状态值;
[0014] 当一个座位的物体累加分值大于或等于所述第二累加分值阈值,则判定该座位为正常使用状态,状态值为0;
[0015] 当一个座位的物体累加分值不为零,且该座位的最近一次正常使用状态出现的时刻到当前时刻的时长没有超过所述离座时间阈值,则判定该座位为暂时离开状态,状态值为1;
[0016] 当一个座位的物体累加分值小于所述第一累加分值阈值,且该座位的最近一次正常使用状态出现的时刻到当前时刻的时长超过所述离座时间阈值,则判定该座位为无人使用状态,状态值为2,新的座位使用者可自行处理座位上的物体,并使用该座位;
[0017] 当一个座位的物体累加分值大于或等于所述第一累加分值阈值,且小于所述第二累加分值阈值,且该座位的最近一次正常使用状态出现的时刻到当前时刻的时长超过所述离座时间阈值,则判定该座位为占座状态,状态值为3,通知自习室管理人员清理该座位上的物体。
[0018] 本技术方案的技术效果是:采用座位映射方法,能够在图像与真实场景之间建立起可靠的连接;采用基于深度学习的目标检测模型来检测座位上存在的物体,并结合座位映射方法将目标检测模型检测出来的物体像素位置与真实场景的行列位置对应,再用物体归属方法得到每一个座位的使用情况;这不仅可以更精确的推测出自习室的上座率,而且可以较为精准的推测出每个座位的具体使用情况;此外占座检测是通过目标检测模型检测除人之外的其他物体并结合人离座计时来实现的,不需要增加额外的软硬件。
[0019] 可选地,所述步骤S1中,N=8,8类物体分别为笔记本电脑、书包、手提包、平板电脑、书、水杯、抱枕和人;其中人的分值为50分,笔记本电脑、平板电脑、书包和手提包的分值均为10分,水杯、抱枕和书的分值均为1分,所述第一累加分值阈值为10分,所述第二累加分值阈值为50分。
[0020] 本技术方案的技术效果是:8类物体基本能够涵盖自习室内常见的所有物体,根据在各座位范围对该8类物体的检测,能够较为精准的判断座位的使用情况。
[0021] 可选地,所述步骤S3中,所述座位映射表的产生方法选用基于手工绘制的座位映射方法,包括以下步骤:
[0022] A1、拍摄获取自习室的座位图像Ⅰ,在座位图像Ⅰ上依照整个座位区域中的行、列和边缘用鼠标手工绘制出行与行之间的行分界线、列与列之间的列分界线以及整个座位区域的边界线,其中行分界线与整个座位区域的上、下边界线统称为行线,列分界线与整个座位区域的左右边界线统称为列线,记录每一条线段的起点和终点的像素坐标,如果该线段的斜率绝对值大于1或不存在斜率,则判定该线段为列线,否则判定该线段为行线;
[0023] A2、根据线段起点和终点的像素坐标,计算出所有行线与所有列线的交点像素坐标,并保存到二维列表Aα中,二维列表Aα中一行的元素是一条行线与所有列线的交点像素坐标,一列的元素是一条列线与所有行线的交点像素坐标;
[0024] A3、对二维列表Aα中所有的交点像素坐标先按照横坐标从小到大的顺序进行排序,再按照纵坐标从大到小的顺序进行排序,使得各交点像素坐标在二维列表Aα中的储存分布与在座位图像Ⅰ中的空间分布一致,在二维列表Aα中,由相邻的四个交点像素坐标确定一个四边形网格,记录相邻的四个交点像素坐标为四边形网格的四个点像素坐标;
[0025] A4、依次计算出二维列表Aα中每个四边形网格的正副对角线交点的像素坐标,并将其作为该四边形网格的中心像素坐标,按顺序保存所有中心像素坐标到二维列表Aβ中,每一个中心像素坐标在二维列表Aβ中的索引值,等于其在真实场景中对应行列的行坐标减1、列坐标减1后组成的坐标;
[0026] A5、根据二维列表Aα与二维列表Aβ,以行为单位,输出中心像素坐标、中心像素坐标在二维列表Aβ中的索引值在横纵坐标均加1后的新值、中心像素坐标在二维列表Aα中对应的四个角点像素坐标,得到座位映射表。
[0027] 本技术方案的技术效果是:在不更换采集设备使用场景且不移动采集设备的情况下,该方法只需在采集设备安装时配置一次,而后便可直接沿用配置生成的座位映射表。而且人工手动绘制行列线,准确率高,稳定性好。
[0028] 可选地,所述步骤S3中,所述座位映射表的产生方法选用基于梯度下降的座位映射方法,包括以下步骤:
[0029] B1、拍摄获取自习室的座位图像Ⅰ,在座位图像Ⅰ上人工标出整个座位区域的四个角点,将该四个角点作为透视变换的四个基准点,保存四个基准点的像素坐标,并输入当前自习室的行数与列数;
[0030] B2、采用与座位图像Ⅰ完全相同的拍摄条件,采集自习室的座位图像b1,座位图像b1经过透视变换后得到座位图像b1',用行分界线将座位图像b1'均分成R行,将座位图像b1'的上边界线、每条行分界线和下边界线在纵轴上的投影点的像素坐标,按照从小到大的顺序储存到一维的行列表Bα1中;用列分界线将座位图像b1'均分成C列,将座位图像b1'的左边界线、每条列分界线和下边界线在横轴上的投影点的像素坐标,按照从小到大的顺序储存到一维的列列表Bα2中;备份行列表Bα1到行列表B'α1,备份列列表Bα2到列列表B'α2,行列表Bα1与列列表Bα2构成初始座位映射表;
[0031] B3、将座位图像b1'送入所述目标检测模型中进行检测,输出座位图像b1'的检测结果;
[0032] 设在座位图像b1'的检测结果中,物体人的中心像素坐标,在行列表Bα1中每相邻两元素确定的两条行线所夹的区域内均有分布,设在行列表Bα1中,第l个与第l+1个元素所确定的两条行线与座位图像b1'的左、右边界线所围成的矩形区域为Trl,其中l大于等于0小于R;设中心像素坐标落在矩形区域Trl内的所有物体人的边框与矩形区域Trl相交部分的面积的平均值为Slv,且中心像素坐标落在矩形区域Trl内的所有物体人的边框的面积的平均值为S'lv,其中v表示物体人的边框与两条行分界线不同的位置关系,取值为1、2和3中的一个,v=1表示物体人的边框与两行线均相交,v=2表示物体人的边框只与第l条行线相交,v=3表示物体人的边框只与第l+1条行线相交;设Slv与S'lv的比值为plv,则pl1、pl2与pl3分别由式(1)、(2)与(3)确定;
[0033]
[0034]
[0035]
[0036] 其中yl表示行列表Bα1第l个元素的纵坐标,且y0与yR为已知值; 与 表示在满足v值的条件下,中心像素坐标落在矩形区域Trl内所有物体人的边框高度的平均值与中心像素坐标的纵坐标的平均值;
[0037] 设在座位图像b1'的检测结果中,物体人的中心像素坐标,在列列表Bα2中每相邻两元素确定的两条列线所夹的区域内均有分布;设在列列表Bα2中,第t个与第t+1个元素所确定的两条列线与座位图像b1'的上、下边界线所围成的矩形区域为Tct,其中t大于等于0小于C;设中心像素坐标落在矩形区域Tct内的所有物体人的边框与矩形区域Tct相交部分的面积的平均值为Stj,且中心像素坐标落在矩形区域Tct内的所有物体人的边框的面积的平均值为S'tj,其中j表示物体人的边框与两条列分界线不同的位置关系,取值为1、2和3中的一个,j=1表示该物体人的边框与两列分界线均相交,j=2表示该物体人的边框只与第t条列分界线相交,j=3该物体人的边框只与第t+1条行分界线相交;设Stj与S'tj的比值为qtj,则qt1、qt2与qt3分别由式(4)、(5)与(6)确定;
[0038]
[0039]
[0040]
[0041] 其中xt表示列列表Bα2第t个元素的横坐标,且x0与xC为已知值, 与 表示在满足j值的条件下,中心像素坐标落在矩形区域Stj内所有物体人的边框高宽的平均值与中心像素坐标的横坐标的平均值,则有式(7)与式(8)
[0042]
[0043]
[0044] 其中σpv2,表示在R+1条行线所确定的R个行区域内,满足v条件的R个plv以0.8为中2
心的二阶矩;σqj表示在C+1条列线所确定的C个列区域内,满足j条件的C个qtj以0.8为中心的二阶矩;
[0045] 采用梯度下降法最小化σpv2与σqv2,则有式(9)与式(10)
[0046]
[0047]
[0048] 其中α控制梯度下降的速率,l从1到R-1,用更新后的yl覆盖原行列表Bα1中的yl,更新时需保证 且 H为座位图像b1'高度,Yl为行列表B'α1中第l个元素的纵坐标;t从1到C-1,用更新后的xt覆盖原列列表Bα2中的xt,更新时需保证
且 W为座位图像d1'宽度,Xt为列列表B'α2中第t个元素的横坐标;
[0049] B4、采用与座位图像Ⅰ完全相同的拍摄获取条件,定时采集自习室座位图像bu,其中u为大于1的整数,且每采集一次座位图像bu,u值加1;
[0050] B5、将座位图像bu经过透视变换得到座位图像bu',将座位图像bu'送入所述目标检测模型中进行检测,将座位图像bu'的检测结果中物体人的中心像素坐标与边框宽高依次添加到二维列表Bβ中,其中二维列表Bβ中的每一行存放一个物体人的中心像素坐标与边框宽高;如果连续采集座位图像bu的时间没有超过1小时则返回步骤B4,否则继续执行步骤B6;
[0051] B6、根据二维列表Bβ中所有物体人的中心像素坐标与边框宽高,以及初始座位映射表中元素确定的行线与列线,计算出所有的 与 利用式(1)、式(2)与式(3)计算出所有的plv,利用式(7)与式(9)更新初始座位映射表的行列表,计算出所有的 与 利用式(4)、式(5)与式(6)计算出所有的qtj,利用式(8)与式(10)更新初始座位映射表的列列表,如果初始座位映射表的更新次数小于24次,则返回步骤B4,否则,输出此时的初始座位映射表,并将其作为最终的座位映射表。
[0052] 本技术方案的技术效果是:该方法在配置时只需输入行列数与标出透视变换的四个基准点,而后便可自动生成座位映射表,调试周期短,且使用时间越长生成的座位映射表性能越好。具有很高的灵活性,并且可以修正座位间距的变化带来的误差,易于应对变化的场景。另外,透视变换后的图像会变得比较规整,最后得到的行列分界线平行于图像边界,这大大降低了座位状态归属的难度。
[0053] 可选地,N=9,9类物体分别为笔记本电脑、书包、手提包、平板电脑、书、水杯、抱枕、人和椅子,其中人的分值为50分,笔记本电脑、平板电脑、书包和手提包的分值均为10分,水杯、抱枕和书的分值均为1分,椅子的分值为0分,所述第一累加分值阈值为10分,所述第二累加分值阈值为50分。
[0054] 可选地,所述步骤S3中,所述座位映射表的产生方法选用目标检测的座位映射方法,包括以下步骤:
[0055] C1、拍摄获取自习室的座位图像Ⅰ,在座位图像Ⅰ上人工标出整个座位区域的四个角点,将该四个角点作为透视变换的四个基准点,保存四个基准点的像素坐标,并输入当前自习室的行数与列数;
[0056] C2、采用与座位图像Ⅰ完全相同的拍摄条件,采集自习室的座位图像ck,其中k为大于0的整数,且每采集一次座位图像ck则k加1,根据四个基准点的像素坐标对座位图像ck进行一次透视变换,得到座位图像c'k;
[0057] C3、将座位图像c'k送入所述目标检测模型中进行检测,如果座位图像c'k的检测结果中出现物体人,则返回步骤C2,如果座位图像c'k的检测结果中没有出现物体人,且当前系统时间在10:00到16:00之间,此刻距上一次输出的时刻的时间已超过24小时,则输出各物体椅子所对应的中心像素坐标和边框宽高数据;
[0058] C4、根据各物体椅子所对应的中心像素坐标及边框宽高获取自习室座位的行与行之间的行分界线、列与列之间的列分界线,并将列分界线、座位图像c'k的左边界线与右边界线在横轴上投影点的坐标储存到列列表Cα1中,将行分界线、座位图像c'k的上边界线与下边界线在纵轴上投影点的坐标储存到行列表Cα2中;
[0059] C5、分别对列列表Cα1与行列表Cα2中的坐标按从小到大的顺序进行排序,得到的新列列表Cα1与新行列表Cα2构成初始座位映射表;
[0060] C6、根据真实场景中的行数、列数、新列列表Cα1中相邻两元素确定的列宽、新行列表Cα2中相邻两元素确定的行宽,修正新列列表Cα1与新行列表Cα2,对应得到列列表Cβ1与行列表Cβ2;
[0061] 若列列表Cβ1与行列表Cβ2是首次生成,则列列表Cβ1与行列表Cβ2一起构成最终的座位映射表;
[0062] 若列列表Cβ1与行列表Cβ2不是首次生成,则先求取当前列列表Cβ1中的各元素与所有之前存在的列列表Cβ1中对应元素的平均值,并将此平均值存入列列表Cγ1中对应位置,再求取当前行列表Cβ2中的各元素与所有之前存在的行列表Cβ2中对应元素的平均值,并将此平均值存入行列表Cγ2中对应位置,列列表Cγ1与行列表Cγ2一起构成最终的座位映射表。
[0063] 本技术方案的技术效果是:该方法调试的周期极短、在安装配置采集设备时,也只需输入当前教室的行列数、输入当前教室的标识信息和标出透视变换的四个基准点,灵活性很高,易于应对变化的场景。
[0064] 可选地,若所述座位映射表的产生方法选用基于目标检测的座位映射方法和基于梯度下降的座位映射方法中的任意一种,则所述步骤S4中,获取所述座位分值表的物体归属方法包括以下步骤:
[0065] D1、拍摄获取自习室的座位图像Ⅱ,导入并解析座位映射表,并按照座位映射表中所描述的真实场景中的行数R与列数C,生成一个R*C的空白二维列表,并将二维列表中的每个元素赋初值为,其中(a,b)表示元素在二维列表中的位置,a+1表示真实场景中座位的行坐标,b+1表示真实场景中座位的列坐标,0表示座位上初始的物体累加分值,所得到的二维列表作为初始座位分值表;
[0066] D2、将座位图像Ⅱ经过透视变换后输入所述目标检测模型中进行检测,将输出的检测结果中物体中心像素坐标的纵坐标与座位映射表的行列表中的各元素的纵坐标比较,得到物体在真实场景中归属行列的行坐标,将输出的检测结果中物体中心像素坐标的横坐标与列列表中的各元素的横坐标比较,得到物体在真实场景中归属行列的列坐标,所得到的行坐标和此列坐标一起构成物体在真实场景中最终归属行列的坐标;
[0067] D3、根据物体的类别、分值及其最终归属行列的坐标,将物体的分值与初始座位分值表中对应行列位置的分值求和,用求和所得到的值覆盖初始座位分值表中的原值,如果座位图像Ⅱ经过目标检测出的所有物体都已归属,则输出最终的座位分值表,否则跳转至步骤D2。
[0068] 可选地,若所述座位映射表的产生方法选用基于手工绘制的座位映射方法,则所述步骤S4中,获取所述座位分值表的物体归属方法包括以下步骤:
[0069] E1、拍摄获取自习室的座位图像Ⅱ,导入并解析座位映射表,并按照座位映射表中所描述的真实场景中的行数R与列数C,生成一个R*C的空白二维列表,并将二维列表中的每个元素赋初值为,其中(a,b)表示元素在二维列表中的位置,a+1表示真实场景中座位的行坐标,b+1表示真实场景中座位的列坐标,0表示座位上初始的物体累加分值,所得到的二维列表作为初始座位分值表;
[0070] E2、将座位图像Ⅱ输入所述目标检测模型中进行检测,将输出的检测结果中物体中心像素坐标的纵坐标,与座位映射表中的真实场景行列坐标对应的中心像素坐标的纵坐标比较,得到物体在真实场景中第一可能归属行列的行坐标,设为M,其中1≤m≤R,将输出的检测结果中物体中心像素坐标的横坐标,与座位映射表中的真实场景行列坐标对应的中心像素坐标的纵坐标比较,得到物体在真实场景中第一可能归属行列的列坐标,设为N,其中1≤n≤R,则即为该物体在真实场景中第一可能归属行列的坐标,跳转至步骤E3;
[0071] E3、将位置本身及在真实场景中与位置邻近的8个位置在座位映射表中对应的中心像素坐标,分别与该物体的中心像素坐标求欧式距离,则距离最小者对应位置的行列坐标就是该物体在真实场景中第二可能归属行列的坐标,设为
[0072] E4、找到位置在座位映射表中对应的四个角点像素坐标,并求该位置四个角点像素坐标所确定的四边形网格的四条边线的函数方程,在真实场景中分别找到与位置邻近的8个位置在座位映射表中对应的四个角点像素坐标,并求该8个位置中各位置的四个角点像素坐标所确定的四边形网格的四条边线的函数方程,通过边线的函数方程判断物体的中心点与与边线的位置关系,找到物体中心像素坐标所属的网格,则该网格在座位映射表中所对应的行列坐标为物体在真实场景中最终归属行列的坐标;
[0073] E5、根据物体的类别、分值及其最终归属行列的坐标,将物体的分值与初始座位分值表中对应行列位置的分值求和,用求和所得到的值覆盖初始座位分值表中的原值,如果座位图像Ⅱ经过目标检测出的所有物体都已归属,则输出最终的座位分值表,否则跳转至步骤E 2。
[0074] 本技术方案的技术效果是:通过获取到每一个物体应该归属于哪一个座位范围,来判断一个座位范围内有哪些物体,继而保证该座位范围内物体分值累加结果所代表的座位状态是真实、准确的。
[0075] 第二方面,本发明提供了一种自习室座位管理系统,包括:
[0076] 采集设备,其布置在自习室,用于写入自习室信息、采集自习室座位图像与生成座位映射表;
[0077] 处理设备,其用于接收来自于采集设备的自习室座位图像与座位映射表文件,判定自习室中各座位的状态,输出座位状态码与人数,其中座位状态码是将座位状态表一维化,且转换成字符串后的结果,包含自习室所有座位的状态信息;
[0078] 交互模块,其用于给座位使用者提供查询各自习室座位状态的入口、给自习室管理人员提供增删查改自习室信息的入口;
[0079] web服务器,其用于结构化的储存自习室、学校、座位使用者和自习室管理人员的信息,其通过Flask框架下的后台程序对外部访问进行控制,并对采集模块与交互模块的请求进行解析和响应,通过关系数据库MySQL组织数据。
[0080] 本技术方案的技术效果是:提供一个能够实现上述自习室座位状态检测方法的系统,方便各方人员查询和管理高校自习室座位,通过它,座位的使用者可以接近实时的获取其所在学校的每一个自习室的座位使用情况,这样他们可以更好的安排自己的学习时间,也可以更快的找到自习室座位,因而有效的降低他们因找不到座位而折返的概率。通过它,自习室的管理人员也可以更为有效的管理自习室座位资源;
[0081] Flask框架下的后台程序比较简单,配置灵活,有多种方法配置,环境部署简单,低耦合,可以兼容多种数据库、模板;关系数据库MySQL使用的核心线程是完全多线程,支持多处理模块,有多种列类型,通过一个高度优化的类库实现SQL函数库并像他们能达到的一样快速,而且可以工作在不同的平台上。
[0082] 可选地,所述图像采集模块包括:
[0083] 摄像头,用于采集自习室座位图像;
[0084] 台,其固定在自习室墙壁上,用于支撑安装所述摄像头,并能带动所述摄像头水平旋转或者竖直旋转;
[0085] 处理器模块,其自带wifi模块,写入有linux操作系统系统,其用于控制所述摄像头采集图像以及控制所述云台旋转,用于实现基于手工绘制的座位映射方法以生成座位映射表,并将座位映射表与自习室座位图像一起传输至所述处理设备。
[0086] 本技术方案的技术效果是:通过处理器模块控制云台的水平旋转和竖直旋转,能够实现对摄像头正对角度的调整,以从最佳拍摄角度获取自习室座位图像。
[0087] 为使本发明的上述目的、特征和优点能更明显易懂,下文特举本发明实施例,并配合所附附图,作详细说明如下。

附图说明

[0088] 为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
[0089] 图1是本发明实施例1提供的一种基于深度学习的自习室座位状态检测方法的流程图
[0090] 图2是本发明实施例2提供的基于手工绘制的座位映射方法的实现流程图;
[0091] 图3是本发明实施例2提供的基于手工绘制的座位映射方法关键思想图形化表示和一种座位映射表格式;
[0092] 其中,A1、网格中心点,也是座位中心点;A2、行与列的交点,也是网格的角点;A3、2*3座位区域的右边缘线;A4、2*3座位区域的下边缘线;A5、2*3座位区域的左边缘线;A6、2*
3座位区域的上边缘线;A7、行与行之间的分界线;A8、列与列之间的分界线;
[0093] 图4是本发明实施例3提供的基于梯度下降的座位映射方法的实现流程图;
[0094] 图5是本发明实施例4提供的基于目标检测的座位映射方法的实现流程图;
[0095] 图6是本发明实施例4提供的基于目标检测的座位映射方法关键思想的图形化表示;
[0096] 其中,C1、纵轴,也是2*3座位区域的左边缘线;C2、横轴,也是2*3座位区域的下边缘线;C3、行与行之间分界线;C4、分界线C3在纵轴上的投影,或是分界线C3的起始点;C5、2*3座位区域的上边缘线;C6、2*3座位区域的右边缘线;C7、椅子的中心像素坐标;C8、椅子的边框;C9、列与列之间的分界线;C10、分界线C9在横轴上的投影,或是分界线C9的起始点;
[0097] 图7是本发明实施例5、6提供的物体归属方法的流程图;
[0098] 图8是本发明实施例5、6提供的物体归属方法关键思想的图形化表示;
[0099] 图9是本发明实施例7提供的自习室座位管理系统结构图;
[0100] 图10是本发明实施例7提供的自习室座位管理系统主机核心软件的流程图;
[0101] 图11是本发明实施例7提供的微信小程序自习室座位使用情况页设计样图;
[0102] 图12是本发明实施例7提供的微信小程序统计页设计样图;
[0103] 图13是本发明实施例8提供的图像采集设备的结构样图。

具体实施方式

[0104] 为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。
[0105] 因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0106] 实施例1
[0107] 请参照图1,本发明提供了一种基于深度学习的自习室座位状态检测方法,包括以下步骤:
[0108] S1、确定N类物体,N为正整数,搜集包含N类物体的图像数据,对所述图像数据进行标注并清洗后形成数据集,用该数据集训练基于深度学习的目标检测模型;
[0109] S2、给N类物体中每类物体均定义出分值,设定离座时间阈值和物体累加分值阈值,物体累加分值阈值有两个,且由小到大依次为第一累加分值阈值和第二累加分值阈值;
[0110] S3、拍摄获取自习室的座位图像Ⅰ,建立自习室座位在座位图像Ⅰ中的像素位置与在真实场景中行列位置之间的连接,输出座位映射表,所述座位映射表包含自习室座位在座位图像Ⅰ中的像素位置与在真实场景中的行列位置之间的连接映射关系;
[0111] S4、拍摄获取自习室的座位图像Ⅱ,所述座位图像Ⅱ与所述座位图像Ⅰ的拍摄获取条件相同,根据座位映射表和座位图像Ⅱ,将座位图像Ⅱ中每个座位范围包含的物体信息转换成真实场景中每个座位范围内的物体累加分值信息,得到座位分值表,所述座位分值表中包含各座位的行坐标、列坐标和物体累加分值三个部分,所述物体累加分值为一个座位范围内所有物体分值的累加总分值;
[0112] S5、根据座位分值表中各座位的物体累加分值以及离座时间阈值,判定各座位的状态,输出得到座位状态表,所述座位状态表包括各座位的行坐标、列坐标和状态值;
[0113] 当一个座位的物体累加分值大于或等于所述第二累加分值阈值,则判定该座位为正常使用状态,状态值为0;
[0114] 当一个座位的物体累加分值不为零,且该座位的最近一次正常使用状态出现的时刻到当前时刻的时长没有超过所述离座时间阈值,则判定该座位为暂时离开状态,状态值为1;
[0115] 当一个座位的物体累加分值小于所述第一累加分值阈值,且该座位的最近一次正常使用状态出现的时刻到当前时刻的时长超过所述离座时间阈值,则判定该座位为无人使用状态,状态值为2,新的座位使用者可自行处理座位上的物体,并使用该座位;
[0116] 当一个座位的物体累加分值大于或等于所述第一累加分值阈值,且小于所述第二累加分值阈值,且该座位的最近一次正常使用状态出现的时刻到当前时刻的时长超过所述离座时间阈值,则判定该座位为占座状态,状态值为3,通知自习室管理人员清理该座位上的物体。
[0117] 在本实施例中,采用更精确的基于深度学习的目标检测模型来检测座位上存在的物体;并且提出一套有效的座位状态检测方法,将模型检测出来的物体的像素位置与真实场景的行列位置对应,然后得到座位状态;这不仅可以更精确的推测出自习室的上座率,而且可以较为精准的推测出每个座位的使用情况。另外,占座检测是通过目标检测模型检测除人之外的其他物体并结合人离座计时来实现的,不仅不需要增加任何额外硬件,而且软件复杂度也基本没有增加。
[0118] 在本实施例中,由于直接能够获取到的是一张含有自习室座位及其使用状态信息的自习室座位图像,并且目标检测模型输出的结果也只是图像中含有的大部分的N类物体的名称、像素中心坐标和边框宽高的集合,而期望的输出却是真实场景中某行某列座位的使用情况,所以两者之间需要一个桥梁来建立连接,因此采用了座位映射方法,以建立自习室座位在座位图像Ⅰ中的像素位置与在真实场景中行列位置之间的连接。
[0119] 在本实施例中,判断某个座位的状态是通过该座位范围内存在的物体来推测的,所以需要知道每一个座位范围包含哪些物体,因此本实施例中输出了座位分值表,该表中包含座位的行坐标、列坐标和累加分值,其中累加分值中蕴含了物体的信息。然后通过座位分值表、累加分值阈值与离座时间阈值就可以判断出每个座位的状态,输出座位状态表,该表中包含座位的行坐标、列坐标和状态值。
[0120] 目前最常用的基于深度学习的目标检测模型包括YOLO、SSD、Faster-R-CNN和RetinaNet等。在模型选择时应根据时效性要求权衡精度与速度,并且充分考虑支持系统运行的硬件设备的算
[0121] 实施例2
[0122] 请参考图2和图3,针对实施例1步骤S3中座位映射表的产生方法,其选用基于手工绘制的座位映射方法,给N赋值8,即将物体分为了8类,且分别为笔记本电脑、书包、手提包、平板电脑、书、水杯、抱枕和人,其中人的分值为50分,电脑、平板电脑、书包和手提包的分值均为10分,水杯、抱枕和书的分值均为1分,第一累加分值阈值设定为10分,第二累加分值阈值设定为50分。其中除人外,其它7类物体基本能够涵盖自习室内学生常带的所有物品,人特指人的上半身,根据在各座位范围内对该8类物体的检测结果,能够较为精准的判断座位的使用情况。
[0123] 基于手工绘制的座位映射方法包括以下步骤:
[0124] A1、拍摄获取自习室的座位图像Ⅰ,在座位图像Ⅰ上依照整个座位区域中的行、列和边缘用鼠标手工绘制出行与行之间的行分界线、列与列之间的列分界线以及整个座位区域的边界线,其中行分界线与整个座位区域的上、下边界线统称为行线,列分界线与整个座位区域的左右边界线统称为列线,记录每一条线段的起点和终点的像素坐标,如果该线段的斜率绝对值大于1或不存在斜率,则判定该线段为列线,否则判定该线段为行线;
[0125] A2、根据线段起点和终点的像素坐标,计算出所有行线与所有列线的交点像素坐标,并将它们保存到二维列表Aα中,二维列表Aα中一行的元素是一条行线与所有列线的交点像素坐标,一列的元素是一条列线与所有行线的交点像素坐标;
[0126] A3、对二维列表Aα中所有的交点像素坐标先按照横坐标从小到大的顺序进行排序,再按照纵坐标从大到小的顺序进行排序,使得各交点像素坐标在二维列表Aα中的储存分布与在座位图像Ⅰ中的空间分布一致。即以座位图像Ⅰ左上角为起点,该交点在座位图像Ⅰ上的所有交点中处于几行几列,则在二维列表Aα中也应处于几行几列,绝对的一一对应,防止因划线顺序的不一致而导致二维列表Aα中交点排列顺序与空间位置不一致。此时在二维列表Aα中,相邻两行、相邻两列的四个交点像素坐标确定了一个四边形网格在座位图像Ⅰ中包围了一个像素范围,该范围为真实场景中一个座位所占的区域在座位图像Ⅰ上的映射,确定四边形网格的四个交点像素坐标为四边形网格的角点像素坐标;
[0127] A4、依次计算出二维列表Aα中每相邻两行、相邻两列的四个元素确定的四边形网格的正副对角线交点的像素坐标,并将其作为该四边形网格的中心像素坐标,该中心像素坐标代表了真实场景中一个座位所占区域的中点在座位图像Ⅰ中的映射,按顺序保存所有中心像素坐标到二维列表Aβ中,此时每一个中心像素坐标在二维列表Aβ中的索引值,就等于其在真实场景中对应行列的行坐标减1、列坐标减1后组成的坐标;
[0128] A5、结合二维列表Aα与二维列表Aβ,以行为单位,输出中心像素坐标、中心像素坐标在二维列表Aβ中的索引值在横纵坐标均加1后的新值、中心像素坐标在二维列表Aα中对应的四个角点像素坐标,得到座位映射表。
[0129] 在本实施例中,实施前提是座椅位置固定且采集设备位置固定,这样才能保证在系统运行过程中的座位映射不会出现偏差,如果更换场地或者移动了采集设备则需要重新进行配置,即再一次通过上述步骤生成新的座位映射表。
[0130] 本实施例中绘制行线或者列线的方式除了用鼠标,还可以用笔在触摸屏上绘制。
[0131] 在本实施例中,计算两线段交点的方式可以是,先由起点和终点求到两个线段的方程,然后计算得到交点坐标;在实际使用中,为了达到更好的效果,需要给方法配上良好的交互方式,并且应至少有线段显示,线段移动、线段撤销和线段删除等功能。
[0132] 针对本实施例中座位映射表的产生方法,如果是在经过透视变换后的图像上用基于手工绘制的座位映射方法,则不需要像上述那样繁琐的去绘制各行各列的分界线,只需要在图像的上边缘和左边缘附近的打上分界点,然后记录这些分界点即可。
[0133] 图3中上边的图上包含行线A7、列线A8、角点A2、边缘线A3、A4、A5、A6和网格中心点A1的标识,网格中标出的坐标即真实场景的行列坐标;下边则是给出的一种座位映射表样例。
[0134] 实施例3
[0135] 请参考图4,针对实施例1步骤S3中座位映射表,其生成方法选用基于梯度下降的座位映射方法,给N赋值8,即将物体分为了8类,且分别为笔记本电脑、书包、手提包、平板电脑、书、水杯、抱枕和人,其中人的分值为50分,电脑、平板电脑、书包和手提包的分值均为10分,水杯、抱枕和书的分值均为1分,第一累加分值阈值设定为10分,第二累加分值阈值设定为50分。
[0136] 基于梯度下降的座位映射方法包括以下步骤:
[0137] B1、拍摄获取自习室的座位图像Ⅰ,在座位图像Ⅰ上人工标出整个座位区域的四个角点,将该四个角点作为透视变换的四个基准点,保存四个基准点的像素坐标,并输入当前自习室的行数与列数;
[0138] B2、采用与座位图像Ⅰ完全相同的拍摄条件,采集自习室的座位图像b1,座位图像b1经过透视变换后得到座位图像b1',用行分界线将座位图像b1'均分成R行,将座位图像b1'的上边界线、每条行分界线和下边界线在纵轴上的投影点的像素坐标,按照从小到大的顺序储存到一维的行列表Bα1中;用列分界线将座位图像b1'均分成C列,将座位图像b1'的左边界线、每条列分界线和下边界线在横轴上的投影点的像素坐标,按照从小到大的顺序储存到一维的列列表Bα2中;备份行列表Bα1到行列表B'α1,备份列列表Bα2到列列表B'α2,行列表Bα1与列列表Bα2构成初始座位映射表;
[0139] B3、将座位图像b1'送入所述目标检测模型中进行检测,输出座位图像b1'的检测结果;
[0140] 设在座位图像b1'的检测结果中,物体人的中心像素坐标,在行列表Bα1中每相邻两元素确定的两条行线所夹的区域内均有分布,设在行列表Bα1中,第l个与第l+1个元素所确定的两条行线与座位图像b1'的左、右边界线所围成的矩形区域为Trl,其中l大于等于0小于R;设中心像素坐标落在矩形区域Trl内的所有物体人的边框与矩形区域Trl相交部分的面积的平均值为Slv,且中心像素坐标落在矩形区域Trl内的所有物体人的边框的面积的平均值为S'lv,其中v表示物体人的边框与两条行分界线不同的位置关系,取值为1、2和3中的一个,v=1表示物体人的边框与两行线均相交,v=2表示物体人的边框只与第l条行线相交,v=3表示物体人的边框只与第l+1条行线相交;设Slv与S'lv的比值为plv,则pl1、pl2与pl3分别由式(1)、(2)与(3)确定;
[0141]
[0142]
[0143]
[0144] 其中yl表示行列表Bα1第l个元素的纵坐标,且y0与yR为已知值; 与 表示在满足v值的条件下,中心像素坐标落在矩形区域Trl内所有物体人的边框高度的平均值与中心像素坐标的纵坐标的平均值;
[0145] 设在座位图像b1'的检测结果中,物体人的中心像素坐标,在列列表Bα2中每相邻两元素确定的两条列线所夹的区域内均有分布;设在列列表Bα2中,第t个与第t+1个元素所确定的两条列线与座位图像b1'的上、下边界线所围成的矩形区域为Tct,其中t大于等于0小于C;设中心像素坐标落在矩形区域Tct内的所有物体人的边框与矩形区域Tct相交部分的面积的平均值为Stj,且中心像素坐标落在矩形区域Tct内的所有物体人的边框的面积的平均值为S'tj,其中j表示物体人的边框与两条列分界线不同的位置关系,取值为1、2和3中的一个,j=1表示该物体人的边框与两列分界线均相交,j=2表示该物体人的边框只与第t条列分界线相交,j=3该物体人的边框只与第t+1条行分界线相交;设Stj与S'tj的比值为qtj,则qt1、qt2与qt3分别由式(4)、(5)与(6)确定;
[0146]
[0147]
[0148]
[0149] 其中xt表示列列表Bα2第t个元素的横坐标,且x0与xC为已知值, 与 表示在满足j值的条件下,中心像素坐标落在矩形区域Stj内所有物体人的边框高宽的平均值与中心像素坐标的横坐标的平均值,则有式(7)与式(8)
[0150]
[0151]
[0152] 其中σpv2,表示在R+1条行线所确定的R个行区域内,满足v条件的R个plv以0.8为中心的二阶矩;σqj2表示在C+1条列线所确定的C个列区域内,满足j条件的C个qtj以0.8为中心的二阶矩;
[0153] 采用梯度下降法最小化σpv2与σqv2,则有式(9)与式(10)
[0154]
[0155]
[0156] 其中α控制梯度下降的速率,l从1到R-1,用更新后的yl覆盖原行列表Bα1中的yl,更新时需保证 且 H为座位图像b1'高度,Yl为行列表B'α1中第l个元素的纵坐标;t从1到C-1,用更新后的xt覆盖原列列表Bα2中的xt,更新时需保证
且 W为座位图像d1'宽度,Xt为列列表B'α2中第t个元素的横坐标;
[0157] B4、采用与座位图像Ⅰ完全相同的拍摄获取条件,定时采集自习室座位图像bu,其中u为大于1的整数,且每采集一次座位图像bu,u值加1;
[0158] B5、将座位图像bu经过透视变换得到座位图像bu',将座位图像bu'送入所述目标检测模型中进行检测,将座位图像bu'的检测结果中物体人的中心像素坐标与边框宽高依次添加到二维列表Bβ中,其中二维列表Bβ中的每一行存放一个物体人的中心像素坐标与边框宽高;如果连续采集座位图像bu的时间没有超过1小时则返回步骤B4,否则继续执行步骤B6;
[0159] B6、根据二维列表Bβ中所有物体人的中心像素坐标与边框宽高,以及初始座位映射表中元素确定的行线与列线,计算出所有的 与 利用式(1)、式(2)与式(3)计算出所有的plv,利用式(7)与式(9)更新初始座位映射表的行列表,计算出所有的 与 利用式(4)、式(5)与式(6)计算出所有的qtj,利用式(8)与式(10)更新初始座位映射表的列列表,如果初始座位映射表的更新次数小于24次,则返回步骤B4,否则,输出此时的初始座位映射表,并将其作为最终的座位映射表。
[0160] 本实施例的步骤B3中,控制梯度下降的速率α决定了参数更新的速度,需要根据实际情况来调整;另外限定每一个参数的范围是为了保证不会因为参数的更新而导致某些行列的消失;
[0161] 本实施例中由于自习室座位图像在经过了透视变换之后变得比较规整,即行分界线近似平行与横轴,列分界线近似平行与纵轴,所以推测出的行分界线是平行于横轴的,通过在纵轴上的点就可以唯一确定,列分界线是平行于纵轴的,通过在横轴上的一个点也可唯一确定。
[0162] 实施例4
[0163] 请参考图5和图6,针对实施例1的步骤S3,座位映射表的产生方法选用基于目标检测的座位映射方法;给N赋值9,即将物体分为了9类,且分别为笔记本电脑、书包、手提包、平板电脑、书、水杯、抱枕、人和椅子,其中人的分值为50分,电脑、平板电脑、书包和手提包的分值均为10分,水杯、抱枕和书的分值均为1分,椅子为0分,第一累加分值阈值设定为10分,第二累加分值阈值设定为50分。人特指人的上半身,而且物体椅子只用于产生座位映射表。
[0164] 基于目标检测的座位映射方法,包括以下步骤:
[0165] C1、拍摄获取自习室的座位图像Ⅰ,在座位图像Ⅰ上人工标出整个座位区域的四个角点,将该四个角点作为透视变换的四个基准点,保存四个基准点的像素坐标,并输入当前自习室的行数与列数;
[0166] C2、采用与座位图像Ⅰ完全相同的拍摄条件,采集自习室的座位图像ck,其中k为大于0的整数,且每采集一次座位图像ck则k加1,根据四个基准点的像素坐标对座位图像ck进行一次透视变换,得到座位图像c'k;
[0167] C3、将座位图像c'k送入所述目标检测模型中进行检测,如果座位图像c'k的检测结果中出现物体人,则返回步骤C2,如果座位图像c'k的检测结果中没有出现物体人,且当前系统时间在10:00到16:00之间,此刻距上一次输出的时刻的时间已超过24小时,则输出各物体椅子所对应的中心像素坐标和边框宽高数据;
[0168] C4、根据各物体椅子所对应的中心像素坐标及边框宽高获取自习室座位的行与行之间的行分界线、列与列之间的列分界线,并将列分界线、座位图像c'k的左边界线与右边界线在横轴上投影点的坐标储存到列列表Cα1中,将行分界线、座位图像c'k的上边界线与下边界线在纵轴上投影点的坐标储存到行列表Cα2中;
[0169] C5、分别对列列表Cα1与行列表Cα2中的坐标按从小到大的顺序进行排序,得到的新列列表Cα1与新行列表Cα2构成初始座位映射表;
[0170] C6、根据真实场景中的行数、列数、新列列表Cα1中相邻两元素确定的列宽、新行列表Cα2中相邻两元素确定的行宽,修正新列列表Cα1与新行列表Cα2,对应得到列列表Cβ1与行列表Cβ2;
[0171] 若列列表Cβ1与行列表Cβ2是首次生成,则列列表Cβ1与行列表Cβ2一起构成最终的座位映射表;
[0172] 若列列表Cβ1与行列表Cβ2不是首次生成,则先求取当前列列表Cβ1中的各元素与所有之前存在的列列表Cβ1中对应元素的平均值,并将此平均值存入列列表Cγ1中对应位置,再求取当前行列表Cβ2中的各元素与所有之前存在的行列表Cβ2中对应元素的平均值,并将此平均值存入行列表Cγ2中对应位置,列列表Cγ1与行列表Cγ2一起构成最终的座位映射表。
[0173] 本实施例步骤C3中,由于任何时候都可能出现目标检测模型没有检测到人的情况,这就导致了座位映射表的更新时间变得不确定,所以添加时间限制,比如限制必须在白天,且光线好的概率较大时间段内,且不能更新的太频繁。
[0174] 图6中为了方便表示,只取了透视变换后的局部图像做分析;图中标明了物体椅子的中心点如C7、物体椅子的边框如C8、分界线C3,C9、分界线起点C4,C10、和边界线C1,C2,C5,C6;分界线本身不会被保存,保存的是能够确定分界线的起点坐标。
[0175] 本实施例步骤C4中,推测分界线位置的详细过程如下:参考图6的拍摄方式,即行号越小对应的像素坐标越大;首先在所述目标检测模型的检测结果里,找到所有物体椅子中心像素坐标中纵坐标最大者,并且找到该物体椅子的边框在边界线1上的投影所覆盖的区间内包含的所有中心像素坐标;这些中心像素坐标都对应一个矩形的物体椅子的边框,如边框8,记录下每个边框离边界2最远侧边界的纵坐标,并对这些值取平均;以该平均值为纵坐标,零为横坐标的点,即为第一行与第二行分界线3在边界线1上的投影点4;接着在检测结果里,且满足物体椅子中心像素坐标的纵坐标大于行分界线3纵坐标条件的物体椅子中再进行相同的操作,得到第二行与第三行分界线在纵轴上的投影点,以此类推,直到检测结果里所有的物体椅子都被分配完;列与行的推测过程类似。
[0176] 本实施例中,由于目标检测模型输出的检测结果中,可能把同类的多个物体检测成一个物体,在本实施例中即表现在把多个椅子检测成了一个椅子,这就使得该物体“椅子”边框错误,在步骤C6的处理过程中可以通过实施例3中所涉的面积比值的方式来判断,以舍弃属于这一情况的物体,增加推测的准确性。
[0177] 实施例5
[0178] 请参考图7和图8,如果座位映射表是由基于目标检测的座位映射方法产生的,或者是由基于梯度下降的座位映射方法产生的,则获取座位分值表的物体归属方法包括以下步骤:
[0179] D1、拍摄获取自习室的座位图像Ⅱ,导入并解析座位映射表,并按照座位映射表中所描述的真实场景中的行数R与列数C,生成一个R*C的空白二维列表,并将二维列表中的每个元素赋初值为,其中(a,b)表示该元素在二维列表中的位置,a+1表示真实场景中座位的行坐标,b+1表示真实场景中座位的列坐标,0表示座位初始的物体累加分值,所得到的二维列表作为初始座位分值表;
[0180] D2、将座位图像Ⅱ经过透视变换后输入所述目标检测模型中进行检测,将座位图像Ⅱ检测结果中物体中心像素坐标的纵坐标与座位映射表的行列表中的各元素的纵坐标比较,得到物体在真实场景中归属行列的行坐标,将座位图像Ⅱ检测结果中物体中心像素坐标的横坐标与列列表中的各元素的横坐标比较,得到物体在真实场景中归属行列的列坐标,所得到的行坐标和列坐标一起构成物体在真实场景中最终归属行列的坐标;
[0181] D3、根据物体的类别、分值及其最终归属行列的坐标,将物体的分值与初始座位分值表中对应行列位置的分值求和,用求和所得到的值覆盖初始座位分值表中的原值,如果座位图像Ⅱ经过目标检测出的所有物体都已归属,则输出最终的座位分值表,否则跳转至步骤D 2。
[0182] 实施例6
[0183] 请参考图7和图8,如果座位映射表是由基于手工绘制的座位映射方法产生的产生的,则步骤S4中获取座位分值表的物体归属方法包括以下步骤:
[0184] E1、拍摄获取自习室的座位图像Ⅱ,导入并解析座位映射表,并按照座位映射表中所描述的真实场景中的行数R与列数C,生成一个R*C的空白二维列表,并将该二维列表中的每个元素赋初值为,其中(a,b)表示该元素在二维列表中的位置,a+1表示真实场景中座位的行坐标,b+1表示真实场景中座位的列坐标,0表示座位初始的物体累加分值,所得到的二维列表作为初始座位分值表;
[0185] E2、将座位图像Ⅱ输入所述目标检测模型中进行检测,将座位图像Ⅱ检测结果中物体中心像素坐标的纵坐标,与座位映射表中的真实场景行列坐标对应的中心像素坐标的纵坐标比较,得到物体在真实场景中第一可能归属行列的行坐标,设为M,其中1≤m≤R,将座位图像Ⅱ检测结果中物体中心像素坐标的横坐标,与座位映射表中的真实场景行列坐标对应的中心像素坐标的纵坐标比较,得到物体在真实场景中第一可能归属行列的列坐标,设为N,其中1≤n≤R,则为该物体在真实场景中第一可能归属行列的坐标;
[0186] E3、将位置及在真实场景中与其邻近的8个位置在座位映射表中对应的中心像素坐标,分别与该物体的中心像素坐标求欧式距离,则距离最小者对应位置的行列坐标为该物体在真实场景中第二可能归属行列的坐标,设为
[0187] E4、找到位置在座位映射表中对应的四个角点像素坐标,并求该位置四个角点像素坐标所确定的四边形网格的四条边线的函数方程,在真实场景中分别找到与位置邻近的8个位置在座位映射表中对应的四个角点像素坐标,并求该8个位置中各位置的四个角点像素坐标所确定的四边形网格的四条边线的函数方程,通过边线的函数方程判断物体的中心点与与边线的位置关系,找到物体中心像素坐标所属的网格,则该网格在座位映射表中所对应的行列坐标为物体在真实场景中最终归属行列的坐标;
[0188] E5、根据物体的类别、分值及其最终归属行列的坐标,将物体的分值与初始座位分值表中对应行列位置的分值求和,用求和所得到的值覆盖初始座位分值表中的原值,如果座位图像Ⅱ经过目标检测出的所有物体都已归属,则输出最终的座位分值表,否则跳转至步骤E 2。
[0189] 本实施例的步骤E4中,由一个四边形的四个角点,可以计算得到相应的四个边线的函数方程,然后将物体的中心像素坐标带入这些方程,通过得到的方程结果的正负来判定该中心点是位于边线的上方,还是下方,或者是左方还是右方。
[0190] 图8只画了2*2的一个区域,其中图形的中心位置落在某个小区域内表征某个物体的中心像素坐标落在该小区域内,图中的每一个小区域就是真实场景中的一个座位,而每个座位的唯一标识就是其行列坐标;图中用不同的形状表示不同的物体,它们的分值在实施例2中定义,而每个座位的累加分值就是该座位上所有被检测出的物体的得分值之和,图中给出了一种座位分值表的格式。
[0191] 实施例7
[0192] 请参考图9,本发明提供了一种自习室座位管理系统,该系统是基于实施例2得到的,其包括:
[0193] 采集设备,其布置在自习室,用于写入自习室信息、采集自习室座位图像与生成座位映射表;
[0194] 处理设备,其用于接收来自于采集设备的自习室座位图像与座位映射表文件,通过对接收到的自习室座位图像的处理分析,并结合座位映射表来判定自习室中各座位的状态,最后输出座位状态码与人数,其中座位状态码是将座位状态表一维化,且转换成字符串后的结果,包含自习室所有座位的状态信息;
[0195] 交互模块,其用于给一般使用者提供查询各自习室座位状态的入口、给管理员提供增删查改自习室信息的入口,本实施例中交互模块选用手机终端;
[0196] web服务器,其用于结构化的储存关于自习室、学校、一般使用者和管理员等对象的信息,并对外部的访问进行控制,对交互模块与处理模块的请求进行解析与响应;
[0197] 在本实施例中,座位的使用者可以从交互模块接近实时的获取其所在学校的每一个自习室的座位使用情况,这样他们可以更好的安排自己的学习时间,也可以更快的找到自习室座位,因而有效的降低他们因找不到座位而折返的概率;自习室管理人员也可以通过交互模块给出的占座提示去现场确认并且处理占座,提升管理效率;虽然不像包含预约的系统那样强制的限制人数,但是本系统依旧可以起到限制人数、提升自习室利用率的作用,并且更人性化一些。另外,只要在同一平台的学校,他们的宏观座位使用情况将可以被任何的平台使用者查阅,这就方便了一些工作者的调查与分析。
[0198] 在本实施例中,处理设备为主机,主机以采集设备输出的自习室图像与座位映射表文件为输入,输出是人数和座位状态码。本发明中,主机的使用实施方式是在每一个校区安装配置一个高性能主机,该主机与各自习室的采集设备通过有线或无线的方式相连,然后该主机负责处理该校区所有采集设备的输出,并且分别生成各自的座位状态码与人数,然后传到web服务器中的指定位置;
[0199] 主机的选择需要根据所连采集设备的数量来决定。一般情况下,系统规定,更新一次座位状态的时间为60秒,所以主机需要在60秒之内处理完所有当前批次的输入,并且把输出准确发送到web服务器的指定位置。
[0200] 主机的软件部分。首先需要训练出满足要求的基于深度学习的目标检测模型。在实施例2中提到的8类物体都是比较常见的,可以在如COCO、Open Image、ImageNet等公开的数据集上获取符合要求的标注图像数据,然后经过筛选与清洗形成一个专的数据集。为了减少目标检测模型训练过程中对数据量的依赖并提升模型训练的成功率,采用迁移学习的方式。有了一个优秀的模型参数,主机的软件才能真正发挥作用,核心流程图见图10,对于每一个读入的自习室座位图像和与其同名的座位映射表,通过基于深度学习的目标检测模型可以得到图像中包含的N类物体中的大部分物体的预测信息,并统计出人数;然后结合预测信息与座位状态表,利用依照实施例6中物体归属方法而写的座位状态归属程序生成座位分值表,再结合该自习室以往座位状态信息、系统时间、累加分值阈值和离座阈值判断,生成座位状态码。最后,解析座位状态表或者图像文件的文件名中包含的关键信息,通过HTTP协议将座位状态码与人数发送到关键信息所确定的数据库表格的某一行中,完成一次更新。
[0201] 处理设备的使用实施方式除本发明实施例所采用的外,还有以下两种:
[0202] 第一种,处理设备与采集设备统一到一个设备上,合称座位状态检测设备,座位状态检测设备安装在每个自习室,集图像采集、座位映射表生成、座位状态码生成等于一身,而且只要信息一生成,就可以直接传到web服务器指定位置;这样的方法,座位状态检测设备与web服务器直接相连,座位状态检测设备独立性高,理论上座位状态检测设备配置好之后联网即连入系统,进而简化了系统部署过程。
[0203] 第二种,云计算,如果采用实例3中的座位映射方法,则采集设备需要完成自习室图像的采集、重要配置信息的输入和座位映射表文件的生成,如果不是采用实例3中的座位映射方法,则采集设备只需要完成自习室图像的采集和重要配置信息的输入,其余所有的处理运算过程都在web服务器中完成。这样的方法,采集设备与web服务器直接相连,所以采集设备独立性高,理论上采集设备配置好之后联网即连入系统,进而简化了系统部署过程。
[0204] 针对本实施例采用的座位映射方法,处理设备与采集设备的配合使用实施方式除本发明实施例所采用的外,还有以下一种重要方式:
[0205] 采集设备只需要完成自习室图像的采集和重要配置信息的输入,然后将命名后的图像传到处理模块的高性能主机;再为高性能主机连接显示设备与输入设备,并在高性能主机上完成基于手工绘制的座位映射方法,生成各自习室的座位映射表文件,并以图像名字为其命名;这样的方式大大的降低采集设备的负担,用性能较低的处理器也可以胜任,另外不用在安装时去划线以生成座位映射表文件,大大降低了安装时的难度与复杂度,这样就可以由专门的人利用高性能主机的输入输出设备,根据已经安装好的采集设备发来的图像,生成各自的座位映射表文件,而安装人员只需要输入配置信息与调整摄像头角度即可,分工可以更明确;另外,高性能主机是连入公网的,也就是说负责生成座位映射表文件的工作人员,可以在任何有网的地方控制该主机,然后使用相关程序为需要生成或者需要重新生成座位映射表的自习室,生成座位映射表文件,这就避免了本发明实施例中要求绘制人员必须到场的情况出现。便于安装、平常的维护与更换使用场景或者设备移动后重新生成座位映射表文件。只要是采用基于手工绘制的座位映射方法的系统均可以采用上述操作简化安装过程、减轻采集设备负担,即使处理设备采用的是服务器。
[0206] 在本实施例中,Web服务器,需要实现数据的结构化储存、信息的管理和访问的控制等功能。数据的结构化储存依赖MySQL、信息的管理与访问的控制依赖于在Flask框架下编写的后台管理程序。MySQL数据库中应至少包含管理员信息表、用户信息表、座位信息表和学校信息表四个个表格。管理员信息表用于保存管理员信息,应至少包含管理员账号、管理员密码、管理员电话三个属性,规定所有的管理员由后台直接指定,不参与前台的注册。用户信息表用于保存用户信息,应至少包含用户账号、用户密码、验证token码三个属性,用户通过前台登录与注册。座位信息表用于保存座位信息,应至少包含唯一标识的ID,规定ID组成:学校代码.校区名小写全拼.楼栋名小写全拼.层数.教室编号、座位数、学校代码、校区名小写全拼、楼栋名小写全拼、层数、教室编号、人数、状态码九个属性。学校信息表用于保存学校信息,应至少包括学校代码、学校名、学校名小写全拼、校区名、校区名小写全拼、楼栋名、楼栋名小写全拼七个属性。管理员具有修改座位信息表的权限,而用户只有访问座位信息表的权限,如果再加上一个学生信息表限制,则用户将只具有访问其所在学校对应的座位信息表的权限。在Flask框架下编写的后台管理程序主要需要完成访问控制,请求的解析与响应等任务
[0207] 在本实施例中,交互模块是自习室座位管理系统使用的入口,由于智能手机终端在自习室座位使用者中一般是人手一个,因此交互模块最好的选择是手机终端。选择微信小程序,因为微信的用户群广大,而且小程序不用安装、开发周期短。用户通过微信小程序访问Web服务器,查询数据库中信息;管理员通过微信小程序访问Web服务器增删查改数据库中信息。系统所涉微信小程序主要包含4个主界面,它们分别是首页、发现页、统计页和个人信息页。首页链接到中国科普网、网易科技、人民网等有益学生的网站。发现页由若干个页面构成,从楼栋页到层数页,再从层数页到自习室室页,从自习室页到自习室座位使用情况页,一层一层点进,最后到自习室座位使用情况页,自习室座位使用情况页设计样图如图11所示。深浅不同的颜色表征了座位不同的使用状态,为了保证不同大小的自习室在形式上保持统一,所以在没有座位的地方加入了一些空白占位框。统计页显示各学校或校区整体的自习室座位利用率,设计样图如图12所示,该页没有任何跳转页面,只是单纯的分页显示。个人信息页显示当前账号信息,包括用户名、头像、昵称、所在学校、偏好设置等,其中偏好设置是指用户可以根据自己的习惯填写自己喜欢的楼栋与层数,设置以后在发现页就直接从层数页开始显示,从而跳过了前两层页面的操作。另外,个人信息页还链接到登录页和普通用户注册页。普通用户登录成功后将回到个人信息页,而管理员用户登录成功后将跳转到其专有页面,并在此完成添加、修改或删除Web服务器的数据库的座位信息表的某一行内容,实际作用就是完成添加、修改或删除了某一间教室。
[0208] 在本实施例中,自习室座位管理系统安装部署流程如下:
[0209] 现假设有一个学校需要安装部署本发明所提供的自习室座位管理系统,上述系统只是一个基本框架,实际使用的系统肯定会比上述更加丰满合理,具体操作步骤如下:
[0210] 第一步:在数据库的对应表格中,添加该学校的相关信息,并且为该学校或者校区指定若干的管理员。
[0211] 第二步:在该学校或者是校区安装并配置高性能主机,高性能主机中包含所有需要的软件,连入网络之后测试它是否能够准确的更新数据库中内容。
[0212] 第三步:管理员到各自习室安装采集设备,并通过微信小程序向数据库对应表格中添加该教室,即增加一行。由于该学校或者该校区的信息已经已被添加到数据库中,所以学校代码、校区名、楼栋名称等都通过下拉列表的方式选择输入,只需要键盘输入层数与自习室编号即可,然后系统会自动将输入的内容按照规则翻译成该教室的ID,并添加学校代码、校区名、楼栋名等属性到指定位置。通过微信小程序填入该自习室的相关信息,如行列数、座位数等、过道位置、最后一行空缺的位置数等,其中必须输入行列数与座位数。
[0213] 第四步:在微信小程序的发现页的第四层页面上查询该自习室内部座位的分布及其具体使用情况,第三步完成之后便可查询到,如果查询到的结果不是默认显示,即不是全部都是占位框,则说明安装成功。
[0214] 实施例8
[0215] 请参考图13,针对实施例7中采集设备的设计,其结构包括:
[0216] 摄像头2,用于采集自习室座位图像;
[0217] 云台1,固定在自习室墙壁上,用于支撑所述摄像头2;其含有两个机,能带动所述摄像头2水平旋转或者竖直旋转;
[0218] 处理器模块3,其写入有linux操作系统系统,用于控制所述摄像头2采集图像、控制所述云台1旋转,用于实现自习室配置信息的输入,还用于实现基于手工绘制的座位映射方法以生成座位映射表,并将座位映射表与自习室座位图像一起传输给所述处理模块。
[0219] 在本实施例中,为了提升系统的准确性,采集模块得到的图像应该尽可能多的保留自习室的细节、尽可能的清晰,而且自习室往往明度不高,所以摄像头2应该成像质量高而且能够适应低照度环境;摄像头2景深应该尽量深,保证在自习室范围内,除对焦点外的所有点依旧是清晰的。摄像头2的广度由使用的具体场景和安装的位置决定,应至少满足其视角范围稍大于自习室的整个座位区域。
[0220] 在本实施例中,由于采集模块还要完成座位映射表的生成,其间涉及许多图像图形操作,故处理器模块3性能应在价格允许范围内尽可能高。
[0221] 采集设备的软件,由于采集设备的安装配置过程中涉及远程控制,而且实施例2中所述的划线操作均是在远程电脑端完成,所以首先应在远程控制上有软件支持,并配有合理、友好、简洁的操作界面。然后就是实现采集设备功能的核心软件,可以分成三个流程来实现,抑或是三种模式,即安装模式、配置模式与运行模式。安装模式,主要涉及远程控制云台上的两个舵机的转角,还有就是返回所摄的自习室图像;通过远程调整两个舵机的转角进而使摄像头正对位置落在整个座位区域的中央,并且让整个座位区域在图像中表现的规整,对称。配置模式,主要涉及实施例2中所述方法的实现,画行列线,生成座位映射,然后将座位映射表输出到文本文件中形成座位映射表文件,最后将座位映射表文件发送给处理设备;文件名命名规则:与实施例7中所述MySQL中座位信息表ID相同。运行模式,定时采集一幅自习室图像,并以与座位映射表文件相同的名字给图像命名,发送图像到处理设备。
[0222] 以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈