CN112270256A - 一种多人互动直播教学面部探测节流装置 - Google Patents
一种多人互动直播教学面部探测节流装置 Download PDFInfo
- Publication number
- CN112270256A CN112270256A CN202011160280.4A CN202011160280A CN112270256A CN 112270256 A CN112270256 A CN 112270256A CN 202011160280 A CN202011160280 A CN 202011160280A CN 112270256 A CN112270256 A CN 112270256A
- Authority
- CN
- China
- Prior art keywords
- priorbox
- user
- video
- matched
- positive sample
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000001514 detection method Methods 0.000 title claims abstract description 38
- 230000002452 interceptive effect Effects 0.000 title claims abstract description 22
- 230000001815 facial effect Effects 0.000 title claims description 6
- 238000004891 communication Methods 0.000 claims abstract description 14
- 238000000034 method Methods 0.000 claims description 17
- 238000012549 training Methods 0.000 claims description 12
- 230000005540 biological transmission Effects 0.000 claims description 10
- 230000009471 action Effects 0.000 claims description 6
- 238000004364 calculation method Methods 0.000 claims description 6
- 238000013480 data collection Methods 0.000 claims description 6
- 230000000694 effects Effects 0.000 claims description 6
- 239000003822 epoxy resin Substances 0.000 claims description 6
- 229920000647 polyepoxide Polymers 0.000 claims description 6
- 238000005516 engineering process Methods 0.000 claims description 5
- 230000008569 process Effects 0.000 claims description 5
- 230000004807 localization Effects 0.000 claims description 4
- 238000013475 authorization Methods 0.000 claims description 3
- 230000008859 change Effects 0.000 claims description 3
- 238000013136 deep learning model Methods 0.000 claims description 3
- 238000002474 experimental method Methods 0.000 claims description 3
- 230000006870 function Effects 0.000 claims description 3
- 238000007654 immersion Methods 0.000 claims description 3
- 238000007689 inspection Methods 0.000 claims description 3
- 230000007246 mechanism Effects 0.000 claims description 3
- 238000012545 processing Methods 0.000 claims description 3
- 238000012163 sequencing technique Methods 0.000 claims description 3
- 230000011664 signaling Effects 0.000 claims description 3
- 238000013528 artificial neural network Methods 0.000 abstract description 3
- 238000010586 diagram Methods 0.000 description 3
- 238000012952 Resampling Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000013467 fragmentation Methods 0.000 description 1
- 238000006062 fragmentation reaction Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000011897 real-time detection Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/16—Human faces, e.g. facial parts, sketches or expressions
- G06V40/161—Detection; Localisation; Normalisation
- G06V40/166—Detection; Localisation; Normalisation using acquisition arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09B—EDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
- G09B5/00—Electrically-operated educational appliances
- G09B5/08—Electrically-operated educational appliances providing for individual presentation of information to a plurality of student stations
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/40—Support for services or applications
- H04L65/403—Arrangements for multi-party communication, e.g. for conferences
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/65—Network streaming protocols, e.g. real-time transport protocol [RTP] or real-time control protocol [RTCP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/14—Systems for two-way working
- H04N7/15—Conference systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V2201/00—Indexing scheme relating to image or video recognition or understanding
- G06V2201/07—Target detection
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Signal Processing (AREA)
- Biophysics (AREA)
- Biomedical Technology (AREA)
- Data Mining & Analysis (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computational Linguistics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Computer Networks & Wireless Communication (AREA)
- Life Sciences & Earth Sciences (AREA)
- Oral & Maxillofacial Surgery (AREA)
- Human Computer Interaction (AREA)
- Business, Economics & Management (AREA)
- Educational Administration (AREA)
- Educational Technology (AREA)
- Image Analysis (AREA)
Abstract
本发明公开了一种多人互动直播教学面部探测节流装置,包括用于多个移动设备相互通信的连接模块和用于对视频进行裁剪的目标检测模块;所述连接模块采用可相互通信的WebRTC解决方案,WebRTC是HTML5规范,可用于直接在浏览器和设备之间添加实时媒体通信,此多人互动直播教学面部探测节流装置,通过引入深度神经网络SSD模型,检测视频数据中用户的面部位置信息,同时实施相应的剪裁,减少视频数据流量,提高连接稳定和上课质量,增加用户满意度,同时节约服务器流量。
Description
技术领域
本发明涉及直播教学技术领域,具体为一种多人互动直播教学面部探测节流装置。
背景技术
随着在线直播教育的普及,教育机构的产能也被无限放大。对比传统课堂,在线直播可能可以让学生获得更优质的教育资源,更低的成本,更好的利用碎片化时间,不受时间和空间的限制。
直播课的核心解决方案为一般需要多端支持交互式直播,如手机、平板电脑和PC电脑。所以技术上主要使用可相互通信的WebRTC解决方案。
当创建一个点对点连接时,webRTC会根据客户端的网络情况动态的改变码率以满足稳定的会话要求,也可以通过设定码率最大/最小值,稳定在一个合适的范围。但在多对多的直播互动课时,动态码率只会对本地客户端的码率进行动态调整,以适应网络的抖动,但其他客户端的情况会更复杂。
如图1所示,当clientA网络状态好时,它的码率可能在设定最大值如2800,但clientB此时的网络抖动比较大,所以A的流通过server端转发给B时,不光用户B的体验很差,而且入流量较大也会让抖动的带宽有更大的影响,从而进一步降低自己的码率,甚至丢包。那么其他用户便会和B无法建立稳定的连接。
所以如果可以减少视频数据的大小,就可以有效提高视频流畅度,提高视频互动的稳定性。为此,提出一种多人互动直播教学面部探测节流装置。
发明内容
本发明的目的在于提供一种多人互动直播教学面部探测节流装置,以解决上述背景技术中提出的问题。
为实现上述目的,本发明提供如下技术方案:一种多人互动直播教学面部探测节流装置,包括用于多个移动设备相互通信的连接模块和用于对视频进行裁剪的目标检测模块。
优选的,所述连接模块采用可相互通信的WebRTC解决方案,WebRTC是HTML5规范,可用于直接在浏览器和设备之间添加实时媒体通信。
优选的,所述WebRTC包括:
捕捉摄像头,建立通信的第一步是获取用户的设备的摄像头和麦克风权限,先检测设备的可用性,然后获取用户授权并与设别建立连接,最后在从设备获取一段数据流;
视频截取,当使用系统获取摄像头权限以后,就可以从设备中获取用户的实时视频数据。视频数据主要采集用户在上课时的活动,给课堂增加沉浸的互动式上课体验,所以视频数据采集的主体时用户本身,对于除用户外的其它环境数据并不需要。但由于不同用户的设备、用户的上课环境,甚至上课的动作等都会使视频采集数据中,用户本体的实际占比有很大的不同。所以项目中使用SSD深度学习模型对用户面进行识别,在采集的视频数据中只保留用户的主体目标,从而减少网络的传输数据量,提高I/O效率,提升视频流畅度。同时也为后续更多个性化课堂做了技术铺垫;
传输层,主要处理数据包丢失、数据包排序以及建立用户间连接等问题,通过传输层API可以轻松获知用户网络的波动,并及时对连接状态的变化作出反应;
会话管理,通常使用信令负责在浏览器中建立管理多个连接。
优选的,所述连接模块的多人视频通信采用Router解决方案,Router的办法使得H.264SVC基础设施普及,基于中心点从每个客户端接受一个流并发送到每个参与者,中心节点只做数据包检查和转发,而不是昂贵的编码和实际的媒体解码。
优选的,所述多人互动直播教学面部探测节流装置还包括Janus通用服务器,实现与浏览器建立WebRTC媒体通信、与浏览器交换JSON消息,以及在浏览器和服务器端应用程序逻辑之间中继rtp/rtcp和消息,任何特定的特性和应用程序都需要在服务器端插件中实现,然后浏览器可以通过Janus核心联系这些插件,以利用它们提供的功能。
一种目标检测方法,包括以下步骤:
S1:算法的主体机构是VGG16,将最后两个全连接层改成卷积层,并随后增加了4个卷积层来构造网络结构;
S2:对其中6个不同大小的featuremap输出分别用两个不同的3*3的kernal核进行卷积,一个输出分类用的置信度,每个defaultbox生成21(classes+1backgroud)个类别的置信度,另一个输出回归用的位置,每个defaultbox生成4个坐标值(x,y,w,h),此外,这个6个featuremap还经过了Priorbox层生成priorbox,上述的6个featuremap中每一层的数量是给定的(8732个);
将前面三个计算结果分别合并然后传给loss层。
一种defaultbox计算方法,在实际实验中,defaultbox的shape数量越多,效果越好,每一个defaultbox会有6各种不同shape,计算如下:
ar={1,2,3,1/2,1/3};
这里smin是0.2,表示最底层scale是0.2;smax是0.9,表示最高层是0.9。ar表示有5种固定的纵横比,是defaultbox的宽,是defaultbox的高,宽高的的乘积是scale的平方,另外在纵横比为1时,还增加一个中defaultbox:
一种正负样本获得方法,正样本的获得是通过priorbox和groundtruth进行匹配,首先为每一个ground-truthbox找到最匹配的priorbox放入候选正样本集,然后将剩下的priorbox出发,寻找与groundtruthbox满足IoU≥0的最大匹配,如果找到也放入候选正样本集,这样可以保证每个groundtruthbox都至少有一个匹配样本;
负样本来自不符合groundtruthboxes,而且数量远远多于正样本集,这样会造成正负样本不均衡,训练时难以收敛。所以先将每个物体上对应的predictionsloss进行排序,在候选正样本集中,选择loss最高的priorbox集合与候选正样本集进行匹配,box索引同时存在于这两个集合里则匹配成功,而匹配不成功的正样本则删除(因为这个正样本不在难例例,已经很接近grountruth,不需要再训练),再从候选负样本集中选择loss最高的几个priorbox与候选负样本集匹配,匹配成功则作为负样本。
一种目标回归方法,以priorbox为基准,SSD模型的回归不光需要考虑中心偏差,宽、高缩放,还有回归目标,所以设计一个编解码过程,用于将预测输出映射到实际检测框坐标上:
输入:预定义priorbox=[dx,dy,dwdh];
预测输出predictbox=[dx,dy,dwdh]:
编码系数priorvariance=[0.1,0.1,0.2,0.2];
输出:decodebox,
编码则一般用以归一化gt来计算回归loss:
输入:预定义priorbox=[dx,dy,dwdh];
原始groudtruthbox=[dx,dy,dwdh];
编码系数priorvariance=[0.1,0.1,0.2,0.2];
输出:encodebox,
一种网络架构,SSD的结构在VGG16网络的基础上进行修改,训练时同样为conv1_1,conv1_2,conv2_1,conv2_2,conv3_1,conv3_3,conv4_1,conv4_2,conv4_3,conv5_1,conv5_2,conv5_3(512),fc6经过3*3*1024的卷积,fc7经过1*1*1024的卷积,conv6_1,conv6_2,conv7_1,conv7_2,conv8_1,conv8_2,conv9_1,conv9_2,loss。同时针对conv4_3(4),fc7(6),conv6_2(6),conv7_2(6),conv8_2(4),conv9_2(4)的每一个再分别采用两个3*3大小的kernal进行卷积,这两个kernal时并列的,分别用来检测confidence和localization,其中permute层是交换层,将卷积后的维度进行变化输出。
与现有技术相比,本发明的有益效果是:
本发明通过引入深度神经网络SSD模型,检测视频数据中用户的面部位置信息,同时实施相应的剪裁,减少视频数据流量,提高连接稳定和上课质量,增加用户满意度,同时节约服务器流量。
附图说明
图1为本发明Router缺陷示意图;
图2为本发明为不同大小8*8和4*4两种featuremap示意图;
图3为本发明网络架构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参阅图1-3,本发明提供一种技术方案:一种多人互动直播教学面部探测节流装置,包括用于多个移动设备相互通信的连接模块和用于对视频进行裁剪的目标检测模块。
优选的,所述连接模块采用可相互通信的WebRTC解决方案,WebRTC是HTML5规范,可用于直接在浏览器和设备之间添加实时媒体通信。
优选的,所述WebRTC包括:
捕捉摄像头,建立通信的第一步是获取用户的设备的摄像头和麦克风权限,先检测设备的可用性,然后获取用户授权并与设别建立连接,最后在从设备获取一段数据流;
视频截取,当使用系统获取摄像头权限以后,就可以从设备中获取用户的实时视频数据。视频数据主要采集用户在上课时的活动,给课堂增加沉浸的互动式上课体验,所以视频数据采集的主体时用户本身,对于除用户外的其它环境数据并不需要。但由于不同用户的设备、用户的上课环境,甚至上课的动作等都会使视频采集数据中,用户本体的实际占比有很大的不同。所以项目中使用SSD深度学习模型对用户面进行识别,在采集的视频数据中只保留用户的主体目标,从而减少网络的传输数据量,提高I/O效率,提升视频流畅度。同时也为后续更多个性化课堂做了技术铺垫;
传输层,主要处理数据包丢失、数据包排序以及建立用户间连接等问题,通过传输层API可以轻松获知用户网络的波动,并及时对连接状态的变化作出反应;
会话管理,通常使用信令负责在浏览器中建立管理多个连接。
所述连接模块的多人视频通信采用Router解决方案,Router的办法使得H.264SVC基础设施普及,基于中心点从每个客户端接受一个流并发送到每个参与者,中心节点只做数据包检查和转发,而不是昂贵的编码和实际的媒体解码。
WebRTC本身只支持点对点,群聊只能客户端通过发多路音视频数据给别的客户端,对于客户端压力非常大,所以无法支持更多人的群聊,而且有些NAT是无法通过点对点对连的,所以需要一个中转服务器来中转,业界比较成熟的方案为:kurento、licode、janus和mediasoup等开源解决方案,综合考虑使用janus为主要架构。
所述多人互动直播教学面部探测节流装置还包括Janus通用服务器,实现与浏览器建立WebRTC媒体通信、与浏览器交换JSON消息,以及在浏览器和服务器端应用程序逻辑之间中继rtp/rtcp和消息任何特定的特性和应用程序都需要在服务器端插件中实现,然后浏览器可以通过Janus核心联系这些插件,以利用它们提供的功能。
这种插件的例子可以是回声测试(echo)、会议桥接(conferencebridges)、媒体记录器(mediarecorders)、SIP网关等应用程序的实现。
在客户端中使用MediaPipe平台,构建了一套目标检测SSD模型。在采集视频数据之后送入网络中,推断出视频流中,用户的面部位置。根据面部位置为中心,对视频进行剪裁,再将剪裁后的视频流数据发送到服务端RTC。
模型SSD(singleshotmultiboxdetector),SSD物体检测模型是一个单一深度神经网络,便于训练和优化,同时提高检测的速度,在保证精度的情况下,同时保证检测速度。
SSD将输出一系列离散化的边界框(BoundingBoxes),这些边界框在不同层上的featuremaps生成,对应着不同的纵横比。
在检测阶段:
1.要计算出每一个默认框(defaultbox)中的物体,其属于每个类别的可能性,即score;
2.同时对这些边界框的形状(shape)进行微调,以使得其符合无力的外接矩形;
3.为了处理相同物体的不同尺寸情况,结合了不同分辨率的featuremaps的预测。相对于需要objectproposal的检测模型,SSD完全去掉了proposals生成,像素重采样和feature重采样这些阶段,使用模型更易训练,同时也更容易将检测模型融合进系统中。
SSD特点:
1.在保证精度的同时,提高了检测的速度,从而可以应用于实时检测系统;
2.为了提高检测结果的精度,在不同层的featuremaps上去检测目标和框偏移(boxoffset),同时还能得到不同纵横比的预测。
3.能够在分辨率较低的情况下,保证精度。同时整个端到端的设计,也使得训练变成容易,在检测速度和检测进度之间取得较好的权衡。
一种目标检测方法,包括以下步骤:
S1:算法的主体机构是VGG16,将最后两个全连接层改成卷积层,并随后增加了4个卷积层来构造网络结构;
S2:对其中6个不同大小的featuremap输出分别用两个不同的3*3的kernal核进行卷积,一个输出分类用的置信度,每个defaultbox生成21(classes+1backgroud)个类别的置信度,另一个输出回归用的位置,每个defaultbox生成4个坐标值(x,y,w,h),此外,这个6个featuremap还经过了Priorbox层生成priorbox,上述的6个featuremap中每一层的数量是给定的(8732个);
将前面三个计算结果分别合并然后传给loss层。
其中defaultbox是指每个featuremap的每个小格(cell)上都有一系列固定大小的box,如图2为不同大小8*8和4*4两种featuremap,分别有64和16个cell,每个cell又会有k个不同形状的defaultbox,每个defaultbox都需要预测c个类别和4个偏移(offset)。那么如果一个featuremap的大小是m*n,也就一共有(c+4)*k*m*n个输出。这些输出个数的含义是:采用3*3的kernel对该层卷积时的kernel个数,包含两部分:数量c*k*m*n是类别confidence输出,表示类别;数量4*k*m*n是localization输出,表示位置偏移。
训练中对于每个图像样本,需要先将priorbox与groundtruthbox做匹配,匹配成功说明这个priorbox所包含的是目标,但离目标的groundtruthbox还有段距离,训练的目的是保证priorbox的分类confidence的同时将priorbox尽可能回归到groundtruthbox。
所以每一个featuremap单元格而言,共有6种defaultbox。
这样在不同feature层有不同scale,在同样feature层又有不同的纵横比,因此可以覆盖输入图像中的各种形状和大小。
从每一个featuremap上获得priorbox时,会从这6种种进行选择。如下表所示最后会得到38*38*4+19*19*6+10*10*6+5*5*4+3*3*4+1*1*4=8732个priorbox。
一种defaultbox计算方法,在实际实验中,defaultbox的shape数量越多,效果越好,每一个defaultbox会有6各种不同shape,计算如下:
ar={1,2,3,1/2,1/3};
这里smin是0.2,表示最底层scale是0.2;smax是0.9,表示最高层是0.9。ar表示有5种固定的纵横比,是defaultbox的宽,是defaultbox的高,宽高的的乘积是scale的平方,另外在纵横比为1时,还增加一个中defaultbox:
一种正负样本获得方法,正样本的获得是通过priorbox和groundtruth进行匹配,首先为每一个ground-truthbox找到最匹配的priorbox放入候选正样本集,然后将剩下的priorbox出发,寻找与groundtruthbox满足IoU≥0的最大匹配,如果找到也放入候选正样本集,这样可以保证每个groundtruthbox都至少有一个匹配样本;
负样本来自不符合groundtruthboxes,而且数量远远多于正样本集,这样会造成正负样本不均衡,训练时难以收敛。所以先将每个物体上对应的predictionsloss进行排序,在候选正样本集中,选择loss最高的priorbox集合与候选正样本集进行匹配,box索引同时存在于这两个集合里则匹配成功,而匹配不成功的正样本则删除(因为这个正样本不在难例例,已经很接近grountruth,不需要再训练),再从候选负样本集中选择loss最高的几个priorbox与候选负样本集匹配,匹配成功则作为负样本。
一种目标回归方法,以priorbox为基准,SSD模型的回归不光需要考虑中心偏差,宽、高缩放,还有回归目标,所以设计一个编解码过程,用于将预测输出映射到实际检测框坐标上:
输入:预定义priorbox=[dx,dy,dwdh];
预测输出predictbox=[dx,dy,dwdh]:
编码系数priorvariance=[0.1,0.1,0.2,0.2];
输出:decodebox,
编码则一般用以归一化gt来计算回归loss:
输入:预定义priorbox=[dx,dy,dwdh];
原始groudtruthbox=[dx,dy,dwdh];
编码系数priorvariance=[0.1,0.1,0.2,0.2];
输出:encodebox,
一种网络架构,SSD结构在VGG16网络的基础上进行修改,训练时同样为conv1_1,conv1_2,conv2_1,conv2_2,conv3_1,conv3_3,conv4_1,conv4_2,conv4_3,conv5_1,conv5_2,conv5_3(512),fc6经过3*3*1024的卷积,fc7经过1*1*1024的卷积conv6_1,conv6_2,conv7_1,conv7_2,conv8_1,conv8_2,conv9_1,conv9_2,loss。同时针对conv4_3(4),fc7(6),conv6_2(6),conv7_2(6),conv8_2(4),conv9_2(4)的每一个再分别采用两个3*3大小的kernal进行卷积,这两个kernal时并列的,分别用来检测confidence和localization,其中permute层是交换层,将卷积后的维度进行变化输出,具体如图3。
使用训练好的模型部署在系统中,在平板测试中该模型的最大FPS为58,在桌面端的最大FPS为23。所以检测时间设置为0.5s。
当的到检测目标后,只对分类为person的目标前准确率前2个目标(课堂互动中系统默认单人上课)。之后设定扩展框,以目标框为中心进行扩展,且适应标准视频分辨率的长宽比进行设定,保证一定图像冗余。最后以扩展框为最终视频采集边界进行后续的操作及视频流的传输。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。
尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由所附权利要求及其等同物限定。
Claims (10)
1.一种多人互动直播教学面部探测节流装置,其特征在于:包括用于多个移动设备相互通信的连接模块和用于对视频进行裁剪的目标检测模块。
2.根据权利要求1所述的一种多人互动直播教学面部探测节流装置,其特征在于:所述连接模块采用可相互通信的WebRTC解决方案,WebRTC是HTML5规范,可用于直接在浏览器和设备之间添加实时媒体通信。
3.根据权利要求2所述的一种多人互动直播教学面部探测节流装置,其特征在于:所述WebRTC包括:
捕捉摄像头,建立通信的第一步是获取用户的设备的摄像头和麦克风权限,先检测设备的可用性,然后获取用户授权并与设别建立连接,最后在从设备获取一段数据流;
视频截取,当使用系统获取摄像头权限以后,就可以从设备中获取用户的实时视频数据。视频数据主要采集用户在上课时的活动,给课堂增加沉浸的互动式上课体验,所以视频数据采集的主体时用户本身,对于除用户外的其它环境数据并不需要。但由于不同用户的设备、用户的上课环境,甚至上课的动作等都会使视频采集数据中,用户本体的实际占比有很大的不同。所以项目中使用SSD深度学习模型对用户面进行识别,在采集的视频数据中只保留用户的主体目标,从而减少网络的传输数据量,提高I/O效率,提升视频流畅度。同时也为后续更多个性化课堂做了技术铺垫;
传输层,主要处理数据包丢失、数据包排序以及建立用户间连接等问题,通过传输层API可以轻松获知用户网络的波动,并及时对连接状态的变化作出反应;
会话管理,通常使用信令负责在浏览器中建立管理多个连接。
4.根据权利要求3所述的一种多人互动直播教学面部探测节流装置,其特征在于:所述连接模块的多人视频通信采用Router解决方案,Router的办法使得H.264SVC基础设施普及,基于中心点从每个客户端接受一个流并发送到每个参与者,中心节点只做数据包检查和转发,而不是昂贵的编码和实际的媒体解码。
5.根据权利要求4所述的一种多人互动直播教学面部探测节流装置,其特征在于:所述多人互动直播教学面部探测节流装置还包括Janus通用服务器,实现与浏览器建立WebRTC媒体通信、与浏览器交换JSON消息,以及在浏览器和服务器端应用程序逻辑之间中继rtp/rtcp和消息,任何特定的特性和应用程序都需要在服务器端插件中实现,然后浏览器可以通过Janus核心联系这些插件,以利用它们提供的功能。
6.一种目标检测方法,其特征在于:包括以下步骤:
S1:算法的主体机构是VGG16,将最后两个全连接层改成卷积层,并随后增加了4个卷积层来构造网络结构;
S2:对其中6个不同大小的featuremap输出分别用两个不同的3*3的kernal核进行卷积,一个输出分类用的置信度,每个defaultbox生成21(classes+1backgroud)个类别的置信度,另一个输出回归用的位置,每个defaultbox生成4个坐标值(x,y,w,h),此外,这个6个featuremap还经过了Priorbox层生成priorbox,上述的6个featuremap中每一层的数量是给定的(8732个);
将前面三个计算结果分别合并然后传给loss层。
8.一种正负样本获得方法,其特征在于:正样本的获得是通过priorbox和groundtruth进行匹配,首先为每一个ground-truthbox找到最匹配的priorbox放入候选正样本集,然后将剩下的priorbox出发,寻找与groundtruthbox满足IoU≥0的最大匹配,如果找到也放入候选正样本集,这样可以保证每个groundtruthbox都至少有一个匹配样本;
负样本来自不符合groundtruthboxes,而且数量远远多于正样本集,这样会造成正负样本不均衡,训练时难以收敛。所以先将每个物体上对应的predictionsloss进行排序,在候选正样本集中,选择loss最高的priorbox集合与候选正样本集进行匹配,box索引同时存在于这两个集合里则匹配成功,而匹配不成功的正样本则删除(因为这个正样本不在难例例,已经很接近grountruth,不需要再训练),再从候选负样本集中选择loss最高的几个priorbox与候选负样本集匹配,匹配成功则作为负样本。
9.一种目标回归方法,其特征在于:以priorbox为基准,SSD模型的回归不光需要考虑中心偏差,宽、高缩放,还有回归目标,所以设计一个编解码过程,用于将预测输出映射到实际检测框坐标上:
输入:预定义priorbox=[dx,dy,dwdh];
预测输出predictbox=[dx,dy,dwdh]:
编码系数priorvariance=[0.1,0.1,0.2,0.2];
输出:decodebox,
编码则一般用以归一化gt来计算回归loss:
输入:预定义priorbox=[dx,dy,dwdh];
原始groudtruthbox=[dx,dy,dwdh];
编码系数priorvariance=[0.1,0.1,0.2,0.2];
输出:encodebox,
10.一种网络架构,其特征在于:SSD的结构在VGG16网络的基础上进行修改,训练时同样为conv1_1,conv1_2,conv2_1,conv2_2,conv3_1,conv3_3,conv4_1,conv4_2,conv4_3,conv5_1,conv5_2,conv5_3(512),fc6经过3*3*1024的卷积,fc7经过1*1*1024的卷积,conv6_1,conv6_2,conv7_1,conv7_2,conv8_1,conv8_2,conv9_1,conv9_2,loss。同时针对conv4_3(4),fc7(6),conv6_2(6),conv7_2(6),conv8_2(4),conv9_2(4)的每一个再分别采用两个3*3大小的kernal进行卷积,这两个kernal时并列的,分别用来检测confidence和localization,其中permute层是交换层,将卷积后的维度进行变化输出。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011160280.4A CN112270256A (zh) | 2020-10-27 | 2020-10-27 | 一种多人互动直播教学面部探测节流装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011160280.4A CN112270256A (zh) | 2020-10-27 | 2020-10-27 | 一种多人互动直播教学面部探测节流装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112270256A true CN112270256A (zh) | 2021-01-26 |
Family
ID=74342538
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011160280.4A Pending CN112270256A (zh) | 2020-10-27 | 2020-10-27 | 一种多人互动直播教学面部探测节流装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112270256A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115442348A (zh) * | 2022-11-09 | 2022-12-06 | 成都华栖云科技有限公司 | 一种基于多协议多终端交互的教学实时互动方法及系统 |
-
2020
- 2020-10-27 CN CN202011160280.4A patent/CN112270256A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115442348A (zh) * | 2022-11-09 | 2022-12-06 | 成都华栖云科技有限公司 | 一种基于多协议多终端交互的教学实时互动方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102005142B (zh) | 一种用于教学的信息交互方法 | |
CN111274910B (zh) | 场景互动方法、装置及电子设备 | |
CN111754985B (zh) | 一种语音识别模型的训练以及语音识别的方法和装置 | |
Narayanaswamy et al. | A low-power, lightweight unit to provide ubiquitous information access application and network support for InfoPad | |
US20050114528A1 (en) | System, server, method and program for providing communication service | |
CN105637472B (zh) | 具有广义屏幕描述的屏幕内容共享系统的框架 | |
JP2011512772A (ja) | マルチメディア会議イベントの参加者を自動的に識別する技術 | |
CN107808004A (zh) | 模型训练方法和系统、服务器、存储介质 | |
US10726247B2 (en) | System and method for monitoring qualities of teaching and learning | |
CN105553978A (zh) | 带式输送机可视化辅助维修系统及流媒体的交互过程 | |
CN106302362A (zh) | 多媒体内容发送方法、分享方法、接收方法及对应装置 | |
CN111901621A (zh) | 一种基于直播内容识别的互动直播教学节流装置和方法 | |
CN112270256A (zh) | 一种多人互动直播教学面部探测节流装置 | |
CN113839838B (zh) | 基于云边协同的联邦学习的业务类型识别方法 | |
Sacchetto et al. | Web-based networked music performances via WebRTC: a low-latency PCM audio solution | |
WO2021082479A1 (zh) | 调整视频流的属性的方法和装置 | |
CN103051858A (zh) | 视讯通信实时屏幕互动装置、方法及系统 | |
JP2005208710A (ja) | 同期制御方法、コミュニケーション同期制御装置および双方向コミュニケーションシステム | |
CN114338625B (zh) | 实时通信方法、装置、设备及存储介质 | |
CN112115703B (zh) | 文章评估方法及装置 | |
CN112818702B (zh) | 多用户多语种协同语音翻译系统与方法 | |
TWI713370B (zh) | 視訊通話品質保障方法及系統 | |
CN111259729A (zh) | 一种表情识别方法和装置 | |
Yang | Intelligent Improvement Measures for the Broadcasting and Hosting Major based on Multimedia and Virtual Reality | |
CN114363557B (zh) | 一种面向语义保真的虚拟会议方法及三维虚拟会议系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
TA01 | Transfer of patent application right | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20220418 Address after: 361005 Room 303, No. 16, second Wanghai Road, software park, Xiamen Torch High tech Zone, Xiamen, Fujian Applicant after: Xiamen Jiuqu Education Technology Co.,Ltd. Address before: 361006 room 526, building B, 291-2 Taiwan Street, Jiangtou, Huli District, Xiamen City, Fujian Province Applicant before: Xiamen Qianshi Technology Co.,Ltd. |
|
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |