一种图像同步显示方法及装置的制造方法
【技术领域】
[0001] 本发明设及一种图像同步显示方法,尤其设及一种用于同屏显示的图像同步显示 的方法,特别是设及一种由计算机执行的在网络教学领域中使用的同屏显示方法W及使用 所述方法的网络教学系统。
【背景技术】
[0002] 传统教学方式的教学模式越来越不适应教育发现的需要,由于受场地限制W及课 堂的不可重复性,通常会存在W下缺陷:学生座位前后顺序的问题,导致后面的学生无法看 清楚黑板或者投影的内容,课后学生只能复习笔记,无法回放上课的过程。
[0003] 针对传统教学方式,现有技术中已经存在的网络教学方法的基本方式是:将预先 录制好的教师的音和/或视频信息存储在用户终端,并对应将运些信息上传到网络教学平 台系统的服务器,由学生对应读取所述信息进行学习。通过运样的方法,可W让每个学生获 得平等的听课感受,W及课后随时可W回放上课过程的渠道。
[0004] 运种网络教学方法,需要将教师用户终端上显示的内容W及教师展示的内容或操 作需要通过网络同步发送给学生用户终端,实现屏幕显示信息的共享。
[0005] 现有技术1(《中国图象图形学报》,第8卷第9期,2003年9月,张丽萍等,"一种基于 拷屏和压缩技术的屏幕共享方案")公开了常见的屏幕共享包括两种方式:利用操作系统底 层的GUI矢量指令实现;利用拷屏和压缩技术实现屏幕共享,屏幕显示内容不是通过拆解成 具体的绘图命令来实现,而是通过先拷贝屏幕图像,然后进行数据压缩处理并传到客户端, 最后由客户端解码显示来实现拷屏内容的重现。
[0006] 可见,现有的网络教学系统通常包括,教学信息提供终端(教师用户终端)、教学信 息接收终端(学生用户终端)、服务器(本地服务器或后台远程服务器)、教学设备(电子白 板、投影等)、有线或无线互联网络。运些终端主要是台式电子计算机,采用的网络通常是基 于网线的有线网络。运导致教学设备需要事先进行安装,一旦安装后又不便于移动。作为参 与教和学的人员,都不能带走自己使用的终端,在教学过程完成后不便于再使用,比如学生 不方便复习。
[0007] 现有的网络教学系统在同图像同步显示的处理上还存在W下问题:学生用户终端 接收同屏数据的速度缓慢,教学过程不流杨,存在卡顿现象。运是因为现有网络教学系统在 传送同屏数据的过程中,多数采用视频流及教师根据自己的判断手动屏幕截图的方式,导 致学生用户终端用户数量过多的时候,需要传送大量数据,多并发进行网络传送,经常出现 速度缓慢,显示不流杨,数据卡顿的现象,影响到了学生的上课体验,而且教师一边讲课一 边还要考虑适时进行截屏操作,有时候会忘记截屏发送给学生,而学生又无法判断有没有 获得及时的截屏图像,影响教学效果。
[000引近年来,为了便于图像数据的网络传送,提高传送效率和流杨性,涌现了很多图像 压缩算法,使得图像文件的存储节约大量的空间,也使得网络传送更快更有效。图像格式 压缩类型通常包括两种,即有损压缩和无损压缩。很多图像和视频压缩标准都使用了离散 余弦变换DCT(Discrete Cosine Transform)变换,例如肝EG、MPEG。
[0009] 现有技术2(《现代计算机》,2006年第5期,黄帆,"基于压缩域的肝EG图像检索技 术")公开了一种图像压缩方法。如图1所示,基于DCT变换的JPEG有损压缩编码步骤通常包 括,首先,把图像分成若干个8X8矩阵的块,其中每块由一个直流特征值化C特征值)和63个 交流特征值(AC特征值)组成;第二,进行正向DCT变换处理,把空间域转换成频率域表示,目 的是使得能力集中在少数的特征值上;第Ξ,根据量化表对DCT频率特征值进行有损量化, 消除视觉冗余;第四,对量化后的特征值进行"Z"型排序,形成一维特征值序列;第五,对DC 特征值用差分脉冲编码调制(DPMC)算法进行编码,对AC特征值用行程长度编码(RLE)进行 无损压缩;最后,对经过所述处理的DC和AC特征值进行化ffman编码。DC特征值和AC特征值 代表了图像中每一块的纹理特征和像素值,是构成图像的主要因素。但是,现有技术中图像 的获取如屏幕拷贝(或称截屏)要么人工手动进行,要么根据时间设定自动截屏发送,但是 都存在截屏发送的信息是否重复,是否有效的问题,不必要的或者重复图像的发送会增加 网络传送的负担,还会影响用户的体验。
[0010] 在网络教学过程中,为了模拟与实际教学方式相同的效果,提高网络教学质量,需 要及时将教师用户终端上显示的电子板书、W及其他教学内容同屏显示到学生用户终端 上。运需要高效智能的图像和操作指令的获取、压缩和传送W及相应的网络教学方法和系 统。
【发明内容】
[0011] 针对现有技术存在的问题,本发明旨在提供一种图像同步显示方法,使用计算机 可执行的本发明的所述方法,可W实现学生用户终端与教师用户终端实时智能的图像同步 显不效果。
[0012] 需要说明的是,本发明中的网络教学并不局限于学生和教师的教学形式,其可W 包括W教师用户和学生用户、或培训用户为参与主体的在线网络教学、远程网络教学、本地 网络教学,和W企事业单位员工等为参与主体的在线网络会议、远程网络会议、本地网络会 议,W及其他的利用网络进行在线交流和/或文件内容展示的交流/交互形式,比如远程协 同工作等。
[0013] 根据本发明的目的之一,提供一种图像同步显示方法,用于包括教师用户终端、学 生用户终端、服务器和网络的网络教学系统,包括W下步骤:
[0014] -教师用户终端启动步骤,准备获取用于同步显示的数据;
[0015] -同屏显示数据获取步骤,获取用于同步显示的同屏显示图像数据;
[0016] -同屏应用数据获取步骤,获取用于同步显示的同屏应用操作数据;
[0017] -图像压缩步骤,采用肝EG格式压缩获取的所述同屏显示图像数据;
[0018] -图像发送判断步骤,判断经过所述压缩步骤压缩的相邻两幅所述同屏显示图像 是否相同,根据判断结果确定是否发送所述图像;
[0019] -确定发送图像分割步骤,分割确定要发送的经过压缩的所述图像数据和所述应 用数据,形成发送数据包;
[0020] -数据包发送步骤,基于UDP协议W组播模式向多个用户终端发送所述数据包;
[0021] -线程监控步骤,用于在基于UDP协议传送时对线程进行实时监控,对丢包数据进 行补发操作;
[0022] -过期数据处理步骤,用于丢弃所述网络教学系统中的过期数据,保证网络传输 的杨通;
[0023] -同步显示步骤,用于在接收数据的所述学生用户终端上实现同步显示。
[0024] 所述同屏显示数据是教师用户终端的屏幕上显示的内容,包括电子白板、投影输 入装置、手写输入装置、黑板或白板及图像采集装置包括照相机和摄像机采集的图像数据;
[0025] 所述采集的图像数据是BMP格式的,或者需要转换成BMP格式。
[00%]通过教师用户终端上的客户端或者APP记录传送指令及坐标点数据包括化th路径 坐标数据的方式获得需要的同屏应用数据。
[0027] 所述化th路径坐标数据的记录过程如下:
[0028] A1、解析记录的化th路径坐标数据,并存放至临时的指令坐标堆找中,然后对屏幕 进行初始布局,在屏幕的化nvas画布上先设置背景图案;
[00巧]A2、新建一个Bitmap,并W此Bitmap生成一个临时画布tempthrivas;
[0030] A3、将tempBitmap背景设置为透明,运样做的目的是把临时画布temptCanvas的目 标,定位在新建的tempBi tmap上;
[0031 ] A4、通过所述构造后,提取指令堆找中的坐标指令,--还原,通过tempt化η vas进 行从写,temptCanvas的一切化aw函数,都会把相应的图像画在临时的tempBitmap上,运样 在动作回溯的过程中,画点,画线调用temptCanvas而不是原先屏幕上的Canvas,包括 temptCanvas.drawPoint,temptCanvasRect;
[0032] A5、所有的指令坐标堆找执行完毕后,执行Canvas.化awBi tmap (tempBitmap, 0,0, nul 1) ; temptCanvas负责的是将各种画笔痕迹画在temp Bitmap上,而Canvas负责将 t empB i tmap绘制到屏幕上。
[0033] 在执行所述图像压缩步骤前,将未压缩的所述图像数据进行备份,形成原始图像 备份数据库,当用户收到压缩的图像而需要查看更精细的图像时,可W通过点击操作从所 述原始图像备份数据库中下载原始图像。
[0034] 在执行完所述图像发送判断步骤后,将确定不同步显示给学生用户终端的压缩图 像的原始备份数据从所述数据库中删除。
[0035] 所述图像压缩步骤进一步包括肝EG图像一次压缩和图像二次压缩。
[0036] 在所述肝EG图像一次压缩过程中,在对所述图像进行压缩处理时,将每幅所述图 像的DC特征值和AC特征值复制另存为独立的数据文件;
[0037] 根据所述复制另存的数据文件,依次计算前后两幅相邻图像的所述DC和AC特征值 的差异值,即DC和AC特征向量各分量之差的总和,差异值越大说明前后两幅图像的差别越 大,差异值越小或者没有差异说明前后两幅图像的差别越小或者没有差别,判断为运幅图 像无需传送到学生用户终端进行同步显示。
[0038] 所述特征值的差异值的计算方法为:
[0039] 将前后相邻两幅图像的DC和AC特征值值进行对比,
[0040] 对于DC特征值值,对比其分量的正负号,如果分量同号标记为1,否则标记为0;
[0041] 对于AC特征值值,根据设定的对比阔值,如果分量之差超过对比阔值标记为0,否 则标记为1;
[0042] 由此,求出0或1的数目,相加求和,可W得出前后相邻两幅图像之间的差异值;其 中,
[0043] 0的数目越多表明特征向量的差异越大,图像的差异越大。
[0044] 设置多个存储复制另存的DC和AC特征值存储文件,存储满一个文件夹,就使用另 一个存储文件,之后系统清空所述存储满的文件夹备用。
[0045] 当长时间检测到前后截屏的内容没有变化时,逐步自动延长截取屏幕图像内容的 时间。
[0046] 当检测到差异值保持在一定范围内基本平稳时,将当前屏幕的内容作为第一版板 书内容进行标记;
[0047] 当检测到差异值出现较大变化时,判断为新的一个版面的板书或新的显示内容开 始。
[0048] 所述图像二次压缩步骤,根据图像大小与结合系统指定的文件字节数的{:最小值、 最大值}: {minSize,maxSize},设置进一步的压缩比率:
[0049] If(image.getBytes()>maxSize)
[00加]{压缩比率= image.getBytes()/maxSize*系统定义偏移量}
[0051] Else,
[0052] {压缩比率= 1}.
[0053] 根据由压缩图像构成的图像的大小与指定的文件字节数的{minSize,maxSize}获 得图像压缩比率:
[0054] 如果图像的大小大于最大值,
[0055] 压缩比率二图像大小/最大值*系统定义偏移量,否则,压缩比率=1;其中,
[0化6] 所述偏移量设置为0.4~0.6之间。
[0057]所述压缩获得的肝EG图像W及同屏应用数据包大于报文的限制长度时,会按照报 文等比,将所述肝EG图像W及同屏应用数据包分割成若干子数据包,即 [005引分割成若干临时TMP文件,运些分割的临时TMP文件通过网络W组播方式进行传 送,学生用户终端获得所有的分割TMP文件后,对分割TMP文件进行合并,形成完整的肝EG图 像,并在学生用户终端本地显示。
[0059] 根据数据长度,动态计算并拆分数据,并且最大的拆分数量不超过5个运样两组条 件进行综合计算,从而得到一个较优的报文数组进行发送。
[0060] 所述学生用户终端的客户端在收到了来自教师用户终端的组播数据包时,会先校 验收到的数据是否已经接受完全,如果接受完全会将数据报文进行合并还原;
[0061 ]在每收到一个数据报文的同时,立刻给教师用户终端发送反馈信息;
[0062] 学生用户终端接收到指令信息后,会向教师用户终端发送反馈信息。
[0063] 所述线程监控步骤具体包括:
[0064] 线程监控步骤B1、数据报文发送处理步骤:
[0065] 教师用户终端对发送的数据报文进行签名编号,确保每次发送的报文组ID统一并 且唯一,然后将数据报文发送至无线AP的组播地址,范围在234.5.*.*组播网段间固定组播 地址,教师用户终端在启动程序时会自动计算组播地址,确保在一个网络环境内特别是局 域网络环境内,每个课堂都独立占用为一个组播地址;
[0066] B2、自守护线程启动步骤:
[0067] 在数据报文发送后,教师用户终端会启动一个自守护线程,启动计时器,并建立补 发堆找,将本次的发送数据、发送目标存入补发堆找,在到达自守护线程启动时间后,没有 收到学生用户终端的数据报文反馈,自守护线程会启动数据报文补发处理,对没有反馈的 学生用户终端补充发送数据包;
[0068] B3、反馈守护线程启动步骤:
[0069] 教师用户终端发送完组播UDP数据包后,当第一次收到学生用户终端的反馈消息 后,会自动启动反馈守护线程,该线程会按照拆分后的数据包对用户终端的反馈进行保证 重传处理,同时停止自守护线程;
[0070] B4、报文反馈步骤:
[0071] 学生用户终端的客户端在收到了来自教师用户终端的组播数据包时,会先校验收 到的数据是否已经接受完全,如果接受完全会将数据报文进行合并还原;在每收到一个数 据报文的同时,立刻给教师用户终端发送反馈信息。
[0072] 所述过期数据处理步骤具体过程如下:
[0073] C1、教师用户终端上传组播报文到服务器,服务器通过网络传输把组播报文给学 生用户终端;
[0074] C2、学生用户终端收到的组播报文时,如果报文签名为当前正在处理的报文组,贝U 将报文信息入找,并反馈信息发送给教师用户终端;
[0075] C3、如果学生用户终端收到的组播报文签名比当前找中处理的数据新,则表明找 中的数据已经过期,会将找中数据清空,同时将新数据入找,等待报文数据接收完全后进行 后续处理;
[0076] C4、如果学生用户终端收到的组播报文签名比当前找中处理的数据旧,则表明该 收到的数据报文已经过期,系统放弃当前接收到的数据报文;
[0077] C5、教师用户终端收到学生用户终端的数据报文反馈信息,如果报文时间戳已经 过期,表明学生用户终端延迟收到消息,数据已过期,教师用户终端对该数据报文进行丢 弃,不进行其它任何处理,如果收到的数据报文时间戳为当前发送数据包,则对该反馈信 息进行接收。
[0078] 所述同步显示步骤,在学生用户终端上的客户端或APP中,
[0079] 内置有图像子数据包合并显示模块,用于将接收到的若干子数据包如若干临时 TMP文件,合并形成完整的肝EG图像,并在学生用户终端上进行显示,完成同屏显示的目的; W及,
[0080] 内置有与教师用户终端同样的文件操作逻辑模块,在同屏应用过程中,学生用户 终端事前加载本次课堂的电子文件资源,教师在讲课直播过程中,学生用户终端将通过服 务器获得的教师操作电子文档/文件的操作指令数据如指令及坐标点数据,利用已经内置 的逻辑模块结合下载的课堂电子文件资源,通过所述逻辑模块自动模拟教师的操作,完成 同屏应用的目的。
[0081] 学生用户终端将实时接收到的图像进行本地显示,并将一系列接收到的同步图像 数据保存成可再现的视频流;
[0082] 将所述视频流的播放与有关教师的音频录音根据时间特征匹配起来,形成带有语 音的视频流。
[0083] 根据本发明的另一目的,提供一种图像同步显示装置,用于包括教师用户终端、学 生用户终端、服务器和网络的网络教学系统,包括处理器;W及
[0084] 计算机可读存储介质,具有由所述处理器执行用于执行操作的计算机可读程序代 码,所述操作包括:
[0085] -教师用户终端启动步骤,准备获取用于同步显示的数据;
[0086] -同屏显示数据获取步骤,获取用于同步显示的同屏显示图像数据;
[0087] -同屏应用数据获取步骤,获取用于同步显示的同屏应用操作数据;
[0088] -图像压缩步骤,采用肝EG格式压缩获取的所述同屏显示图像数据;
[0089] -图像发送判断步骤,判断经过所述压缩步骤压缩的相邻两幅所述同屏显示图像 是否相同,根据判断结果确定是否发送所述图像;
[0090] -确定发送图像分割步骤,分割确定要发送的经过压缩的所述图像数据和所述应 用数据,形成发送数据包;
[0091] -数据包发送步骤,基
于UDP协议W组播模式向多个用户终端发送所述数据包;
[0092] -线程监控步骤,用于在基于UDP协议传送时对线程进行实时监控,对丢包数据进 行补发操作;
[0093] -过期数据处理步骤,用于丢弃所述网络教学系统中的过期数据,保证网络传输 的杨通;
[0094] -同步显示步骤,用于在接收数据的所述学生用户终端上实现同步显示。
[00M]所述同屏显示数据是教师用户终端的屏幕上显示的内容,包括电子白板、投影输 入装置、手写输入装置、黑板或白板及图像采集装置包括照相机和摄像机采集的图像数据;
[0096] 所述采集的图像数据是BMP格式的。
[0097] 通过教师用户终端上的客户端或者APP记录传送指令及坐标点数据包括化th路径 坐标数据的方式获得需要的同屏应用数据。
[0098] 所述化th路径坐标数据的记录过程如下:
[0099] A1、解析记录的化th路径坐标数据,并存放至临时的指令坐标堆找中,然后对屏幕 进行初始布局,在屏幕的化nvas画布上先设置背景图案;
[0100] A2、新建一个 Bitmap,并 W此Bitmap 生成一个临时画布tempthrivas;
[0101 ] A3、将tempBitmap背景设置为透明,运样做的目的是把临时画布temptCanvas的目 标,定位在新建的tempBi tmap上;
[0102] A4、通过所述构造后,提取指令堆找中的坐标指令,--还原,通过tempt化η vas进 行从写,temptCanvas的一切化aw函数,都会把相应的图像画在临时的tempBitmap上,运样 在动作回溯的过程中,画点,画线调用temptCanvas而不是原先屏幕上的Canvas,包括 temptCanvas.drawPoint,temptCanvasRect;
[0103] A5、所有的指令坐标堆找执行完毕后,执行Canvas.化awBi tmap (tempBitmap, 0,0, nul 1) ; temptCanvas负责的是将各种画笔痕迹画在temp Bitmap上,而Canvas负责将 t empB i tmap绘制到屏幕上。
[0104] 在执行所述图像压缩步骤前,将未压缩的所述图像数据进行备份,形成原始图像 备份数据库,当用户收到压缩的图像而需要查看更精细的图像时,可W通过点击操作从所 述原始图像备份数据库中下载原始图像。
[0105] 在执行完所述图像发送判断步骤后,将确定不同步显示给学生用户终端的压缩图 像的原始备份数据从所述数据库中删除。
[0106] 所述图像压缩步骤进一步包括肝EG图像一次压缩和图像二次压缩。
[0107] 在所述肝EG图像一次压缩过程中,在对所述图像进行压缩处理时,将每幅所述图 像的DC特征值和AC特征值复制另存为独立的数据文件;
[0108] 根据所述复制另存的数据文件,依次计算前后两幅相邻图像的所述DC和AC特征值 的差异值,即DC和AC特征向量各分量之差的总和,差异值越大说明前后两幅图像的差别越 大,差异值越小或者没有差异说明前后两幅图像的差别越小或者没有差别,判断为后面的 运幅图像无需传送到学生用户终端进行同步显示。
[0109] 所述特征值的差异值的计算方法为:
[0110] 将前后相邻两幅图像的DC和AC特征值值进行对比,
[0111] 对于DC特征值值,对比其分量的正负号,如果分量同号标记为1,否则标记为0;
[0112] 对于AC特征值值,根据设定的对比阔值,如果分量之差超过对比阔值标记为0,否 则标记为1;
[0113] 由此,求出0或1的数目,相加求和,可W得出前后相邻两幅图像之间的差异值;其 中,
[0114] 0的数目越多表明特征向量的差异越大,图像的差异越大。
[0115] 设置多个存储复制另存的DC和AC特征值存储文件,存储满一个文件夹,就使用另 一个存储文件,之后系统清空所述存储满的文件夹备用。
[0116] 当长时间检测到前后截屏的内容没有变化时,逐步自动延长截取屏幕图像内容的 时间。
[0117] 当检测到差异值保持在一定范围内基本平稳时,将当前屏幕的内容作为第一版板 书内容进行标记;
[0118] 当检测到差异值出现较大变化时,判断为新的一个版面的板书或新的显示内容开 始。
[0119] 所述图像二次压缩步骤,根据图像大小与结合系统指定的文件字节数的{:最小值、 最大值}: {minSize,maxSize},设置进一步的压缩比率:
[0120] If(image.getBytes()>maxSize)
[0121 ] {压缩比率=image. ge1:B5ftes( VmaxSize* 系统定义偏移量}
[0122] Else,
[0123] {压缩比率= 1}.
[0124] 根据由压缩图像构成的图像的大小与指定的文件字节数的{minSize,maxSize}获 得图像压缩比率:
[0125] 如果图像的大小大于最大值,
[0126] 压缩比率二图像大小/最大值*系统定义偏移量,否则,压缩比率=1;其中,
[0127] 所述偏移量设置为0.4~0.6之间。
[0128] 所述压缩获得的肝EG图像W及同屏应用数据包大于报文的限制长度时,会按照报 文等比,将所述肝EG图像W及同屏应用数据包分割成若干子数据包,即
[0129] 分割成若干临时TMP文件,运些分割的临时TMP文件通过网络W组播方式进行传 送,学生用户终端获得所有的分割TMP文件后,对分割TMP文件进行合并,形成完整的肝EG图 像,并在学生用户终端本地显示。
[0130] 根据数据长度,动态计算并拆分数据,并且最大的拆分数量不超过5个运样两组条 件进行综合计算,从而得到一个较优的报文数组进行发送。
[0131] 所述学生用户终端的客户端在收到了来自教师用户终端的组播数据包时,会先校 验收到的数据是否已经接受完全,如果接受完全会将数据报文进行合并还原;
[0132] 在每收到一个数据报文的同时,立刻给教师用户终端发送反馈信息;
[0133] 学生用户终端接收到指令信息后,会向教师用户终端发送反馈信息。
[0134] 所述线程监控步骤具体包括:
[0135] 线程监控步骤B1、数据报文发送处理步骤:
[0136] 教师用户终端对发送的数据报文进行签名编号,确保每次发送的报文组ID统一并 且唯一,然后将数据报文发送至无线AP的组播地址,范围在234.5.*.*组播网段间固定组播 地址,教师用户终端在启动程序时会自动计算组播地址,确保在一个网络环境内特别是局 域网络环境内,每个课堂都独立占用为一个组播地址;
[0137] B2、自守护线程启动步骤:
[0138] 在数据报文发送后,教师用户终端会启动一个自守护线程,启动计时器,并建立补 发堆找,将本次的发送数据、发送目标存入补发堆找,在到达自守护线程启动时间后,没有 收到学生用户终端的数据报文反馈,自守护线程会启动数据报文补发处理,对没有反馈的 学生用户终端补充发送数据包;
[0139] B3、反馈守护线程启动步骤:
[0140] 教师用户终端发送完组播UDP数据包后,当第一次收到学生用户终端的反馈消息 后,会自动启动反馈守护线程,该线程会按照拆分后的数据包对用户终端的反馈进行保证 重传处理,同时停止自守护线程;
[0141] B4、报文反馈步骤:
[0142] 学生用户终端的客户端在收到了来自教师用户终端的组播数据包时,会先校验收 到的数据是否已经接受完全,如果接受完全会将数据报文进行合并还原;在每收到一个数 据报文的同时,立刻给教师用户终端发送反馈信息。
[0143] 所述过期数据处理步骤具体过程如下:
[0144] C1、教师用户终端上传组播报文到服务器,服务器通过网络传输把组播报文给学 生用户终端;
[0145] C2、学生用户终端收到的组播报文时,如果报文签名为当前正在处理的报文组,贝U 将报文信息入找,并反馈信息发送给教师用户终端;
[0146] C3、如果学生用户终端收到的组播报文签名比当前找中处理的数据新,则表明找 中的数据已经过期,会将找中数据清空,同时将新数据入找,等待报文数据接收完全后进行 后续处理;
[0147] C4、如果学生用户终端收到的组播报文签名比当前找中处理的数据旧,则表明该 收到的数据报文已经过期,系统放弃当前接收到的数据报文;
[0148] C5、教师用户终端收到学生用户终端的数据报文反馈信息,如果报文时间戳已经 过期,表明学生用户终端延迟收到消息,数据已过期,教师用户终端对该数据报文进行丢 弃,不进行其它任何处理,如果收到的数据报文时间戳为当前发送数据包,则对该反馈信息 进行接收。
[0149] 所述同步显示步骤,在学生用户终端上的客户端或APP中,
[0150] 内置有图像子数据包合并显示模块,用于将接收到的若干子数据包如若干临时 TMP文件,合并形成完整的肝EG图像,并在学生用户终端上进行显示,完成同屏显示的目的; W及,
[0151] 内置有与教师用户终端同样的文件操作逻辑模块,在同屏应用过程中,学生用户 终端事前加载本次课堂的电子文件资源,教师在讲课直播过程中,学生用户终端将通过服 务器获得的教师操作电子文档/文件的操作指令数据如指令及坐标点数据,利用已经内置 的逻辑模块结合下载的课堂电子文件资源,通过所述逻辑模块自动模拟教师的操作,完成 同屏应用的目的。
[0152] 学生用户终端将实时接收到的图像进行本地显示,并将一系列接收到的同步图像 数据保存成可再现的视频流;
[0153] 将所述视频流的播放与有关教师的音频录音根据时间特征匹配起来,形成带有语 音的视频流。
[0154] 根据本发明的又一目的,提供一种网络教学系统,包括服务器和多个用户终端,其 特征在于,可W执行上述的方法或者包括上述图像同步显示装置,用于将所述多个用户终 端之一的屏幕上显示的图像内容发送到其他所述终端上实现同步显示。
[0155] 通过使用本发明的方法和装置,由于系统定时截取屏幕内容并进行压缩处理,具 备了随时可W进行传送的能力,提高了传送的效果,缩短了传送的时间。利用图像压缩过程 中解析获得的特征值值实现了截屏图像内容的快速比对,实现了同步图像的智能判断,自 动同步传送,无需手动操作,而且由于尽量避免了传送重复的屏幕内容,减轻了学生用户终 端存储的压力,又能保证内容的全面性,此外由于对屏幕图像内容进行了标记和判断,有助 于提高学生复习的效率,比如在复习时,可W直接看每一板书的最后几个版面,一般就是比 较全面的板书内容,无需一一浏览前面的过程板书图像,提高了复习效率,而如果想看讲解 的过程和进度,又不会错过有关内容。
[0156] 本发明的网络教学系统摆脱了由固定课室、讲台、教案、课本、黑板、粉笔等组成的 传统教学系统及方式,实现现代化的互联网互动式的教学方式,摆脱了时空的限制,通过数 据库储存电子课本,实现减轻了携带沉重的教材课本的负担,提高了教学效率,互动性和趣 味性。
[0157] 本发明的用户终端设计轻便、小巧方便携带,有效地解决了现有电教室教学系统, 原有台式电脑机柜笨重、占用空间大、设备多、布线复杂、操作不便、排除故障难的问题。
[0158] 同屏教学使得学生在课堂上能随时精准的看到教师对于重点知识的标注,教师也 可W在讲解的过程中对教案随时进行标注,让每个学生在自己的教学设备上看到教师的批 注,更清楚的了解相关的知识点。免去了之前学生在课堂上跟不上教师的教学速度,跟不上 教师的讲解的问题。
[0159] 通过高比率的图像压缩方法,缩小传送的视频流及图像的数量大小学生回家W 后,可W通过课堂回放,查看自己遗漏的、拿不准的知识点,巩固学习效果。
[0160]本发明的核屯、在于,在现有技术的基础上,W有机的系统化的方式解决了网络教 学系统中显示图像和应用图像数据同步显示的问题,在有些技术的使用上,个别现有技术 中可能有独立的应用,但是没有任何启示或公开将运些技术有机结合起来系统化的并进行 改进的创造性应用,而且取得了本发明的意想不到的技术效果。
【附图说明】
[0161 ]图1是现有技术中的肝EG图像压缩步骤;
[0162] 图2是根据本发明的网络教学系统的基本构成示意图;
[0163] 图3是根据本发明的网络教学系统的具体示例图;
[0164] 图4是根据本发明的网络教学系统的用户终端示意图;
[0165] 图5是根据本发明的同步显示方法的基本步骤示意图;
[0166] 图6-1至6-3是根据本发明的获取路径坐标数据过程的示意图;
[0167] 图7是根据本发明的图片压缩流程示意图;
[0168] 图8是根据本发明的肝EG亮度和色度量化表;
[0169] 图9是根据本发明的经Z字形扫描后DCT特征值的序号;
[0170] 图10是根据本发明的基于UDP协议的数据发送架构示意图;
[0171] 图11是根据本发明的线程监控示意图;
[0172] 图12是根据本发明的学生用户端同屏显示示意图;和
[0173] 图13是根据本发明的学生用户端反馈机制示意图。
【具体实施方式】
[0174] 如图2所示,根据本发明的图像同步显示方法所设及的网络教学系统示意图,所述 网络教学系统包括:后台服务器、多个用户终端(学生终端、老师用教学终端)W及互联网, 所述服务器可W是本地服务器和/或部署在远程主机上的远程服务器或网络云端的云端服 务器,所述网络教学系统的客户端运行在所述用户终端上。此外,还可W包括放映设备等。 所述网络为互联网,可W是局域网(如校园网)和广域互联网,可W是有线互联网,也可W是 无线互联网,或者运些网络的任意组合。所述客户端可W是各种软件客户端或者手机APP。
[0175] 如图3所示,根据本发明的图像同步显示方法所设及的网络教学系统的具体示例 图,所述网络教学系统示例包括云数据中屯、部分、校园内网模式部分、互联网直连模式部 分。所述云数据中屯、包括至少一台服务器,其上可W包括图书资源、课程资源、教学软件、视 频资源。所述校园内网模式部分包括接入交换机、校园本地服务器、校园AC接入点、W及通 过分支VLAN连接的设置于教室的多个班级AP,在每个教室内包括多台学生终端、投影设备、 电子白板和教师终端。所述互联网直连模式部分可W通过互联网直接与元数据中屯、连接, 无需校园服务器。
[0176] 需要再次说明的是,本发明中所述的网络教学并不局限于学生和教师的教学形 式,其可W包括W教师用户和学生用户、或培训用户为参与主体的在线网络教学、远程网络 教学、本地网络教学,和W企事业单位员工等为参与主体的在线网络会议、远程网络会议、 本地网络会议,W及其他的利用网络进行在线交流和/或文件内容展示的交流/交互形式, 比如远程协同工作等。
[0177]如图4所示,根据本发明的网络教学系统的用户终端的结构示意图。作为本发明的 网络教学系统可W采用的典型的用户终端,但本发明不限于运种用户终端。有关运种典型 终端的具体描述请参见中国发明专利申请201410553620.8,有关其结构的具体介绍在此不 再寶述。简单描述如下:
[017引所述用户终端包括主机1,该主机1包括有底壳11和中框14,底壳11和中框14之间 固定安装有主板12、液晶屏13和触控屏15,所述主板12上设置有主板电路,该主板电路包括 有上述音频降噪电路和CPU忍片,所述CPU与所述音频降噪电路中CM6571忍片通过USB接口 连接。所述触控屏15为电容电磁复合式双层触摸屏,上层为电容屏,下层为电磁屏。
[01巧]主板12上还设置有电池121、3G模块、SIM卡槽、1C卡插槽124和磁卡磁头123,所述 3G模块、SIM卡槽、IC卡插槽124和磁卡磁头123均与主板电路连接,主板电路与电池121连 接,通过电池121供电;磁卡磁头123用于读取磁卡磁条信息,1C卡插槽124用于插1C卡,读取 1C卡信息。本发明通过1C卡插槽和磁卡磁头可实现银行卡的刷卡,便于教学培训机构的现 场缴费,同时也可通过发放会员卡,实现刷卡签到、会员管理目的。
[0180] 主板12上设置有FPC连接器122,通过该FPC连接器122可与液晶屏13连接。
[0181] 底壳11后端设置有一个开口槽111,中框14的后端设置有一个容置槽2,该容置槽2 对应位于所述开口槽111中,且在所述开口槽111中还设置有一个可翻转打开的翻转盖板3, 所述翻转盖板3翻转后可与容置槽2对应形成一个密封腔。底壳11的后端还设置有一个插孔 112,该插孔112中可对应固定电磁笔7,该电磁笔7内置有控制电路、电磁笔感应模块和供电 电池,所述控制电路与电磁笔感应模块及供电电池电连接,一端为电磁笔尖,另一端激光笔 端,电磁笔中部设有降噪话筒,降噪话筒连接控制电路,所述控制电路设有蓝牙模块,用于 传输声音信号,该电磁笔不仅可W直接在触摸屏上书写,同时拿在手里可充
当话筒和激光 遥控器使用。
[0182] 在底壳11的底部还设置有一个用于固定3G模块的卡盖115,另外为了达到较好的 视角,在底壳11后端底部设置有一个后支撑垫114,前端底部设置有一个前支撑垫113, W使 整个主机1处于一定倾斜角度,方便用户观看使用。
[0183] 高拍仪,设置于上述容置槽2中,其包括有主支架4、副支架5和拍照杆6,所述主支 架4 一端通过转轴件41与固定安装在容置槽2中的连接件42转动连接,另一端则通过第一垂 直转轴54与副支架5-端活动连接。
[0184] 副支架5包括副支架上盖51、副支架下盖52W及安装在副支架上盖51、副支架下盖 52之间的线路板53,该线路板53通过设置于主支架4内的线路与主板12上的主板电路连接。
[0185] 概括来说,可W采用的用户终端,包括:处理器、网络模块、控制模块和显示模块W 及智能操作系统;所述用户终端上可W设有通过数据总线连接各种拓展类设备和配件的多 种数据接口;所述智能操作系统包括Windows、ArKlroid及其改进、iOS为运行平台,在其上可 W安装、运行应用软件,实现在智能操作系统下的各种应用软件、服务和应用程序商店/平 台的功能。
[0186] 所述用户终端可W使用满足相应性能要求的用户个人的各种移动可接入设备,如 平板电脑、智能手机、笔记本电脑等,只要运些设备安装有基于本发明的方法或装置的应用 软件即可。例如,可W使用定制的10.1英寸的Android平板电脑。所述用户终端需要使用登 陆账号进入系统的客户端。用户终端可W包括教师用户终端、学生用户终端W及家长用户 终端等,不同用户使用不同身份登陆相应的用户终端的客户端,设备进入相对应的系统界 面,实现相应的功能。
[0187] 本发明中,所述用户终端可W通过RJ45/Wi-Fi/蓝牙/2G/3G/4G/G.hn/Zigbee/Z-ware/RFID等网络连接方式连接到互联网,并借助互联网连接到其它的终端或其它电脑及 设备,通过1394/USB/串行/SATA/SCSI/PCI-E/Thunderbol
t/数据卡接口等多种数据接口或 者总线方式,通过皿 MI/YpbPr/SPDIF/AV/DVI/VGA/TRS/SCART/Displaypod等音视频接口 等连接方式,来连接各种拓展类设备和配件,可W组成了一个会议/教学设备互动平台系 统。
[0188] 所述用户终端可W带有软件形式的声音捕捉控制模块和动作捕捉控制模块,或通 过数据总线板载硬件形式的声音捕捉控制模块和动作捕捉控制模块,来实现声控和形控功 能;通过音视频接口连接显示/投影模块、麦克风、音响设备和其它音视频设备,来实现显 示、投影、声音接入、音视频播放,W及数字或模拟的音视频输入和输出功能;通过数据接口 连接摄像头、麦克风、电子白板、RFID读取设备,实现影像接入、声音接入、电子白板的使用 控制和录屏,RFID读取功能,并通过相应的接口可接入和管控移动存储设备、数字设备和其 它设备;通过化NA/IGRS技术和互联网络技术,来实现的包括多屏设备之间的操控、互动和 甩屏等功能。
[0189] 本发明中,所述处理器定义为包括但不限于:指令执行系统,如基于计算机/处理 器的系统、专用集成电路(ASIC)、计算设备、或能够从非暂时性存储介质或非暂时性计算机 可读存储介质取得或获取逻辑并执行非暂时性存储介质或非暂时性计算机可读存储介质 中包含的指令的硬件和/或软件系统。所述处理器还可W包括任意控制器,状态机,微处理 器,基于互联网络的实体、服务或特征,或它们的任意其它模拟的、数字的和/或机械的实现 方式。
[0190] 本发明中,计算机可读存储介质定义为包括但不限于:能够包含、存储或保持程 序、信息及数据的任意介质。计算机可读存储介质包括许多物理介质中的任一种,如电子介 质、磁性介质、光介质、电磁介质或半导体介质。合适计算机可读存储介质W及用户终端和 服务器使用的存储器的更具体示例包括但不限于:磁性计算机盘(如软盘或硬驱)、磁带、随 机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器化PROM)、光盘(CD)或数 字视频光盘(DVD)、蓝光存储盘、固态硬盘(SSD)、闪存。
[0191] 所述后台服务器可存储教师用户终端录制上传的课程信息,并通过录制课程的ID 和时间戳与所述课程信息进行匹配。所述后台服务器上部署有Cent OS 6.4或W上系统,使 用MQL数据库,用于终端互动数据包括音频、视频和文本文件的存储,形成目录和索引,用于 读取及调用,还储存系统运行产生的包括事件信息、登录信息、日志信息,用于课件编辑管 理系统对课件的上传、管理。
[0192] 所述教师用户终端、学生用户终端及后台服务器之间通过网络连接,Ξ者之间可 通过RJ45接口实现有线通信,或通过WIFI模块、3GPCI-E模块及26、36、46、56模块等各种可 使用商用无线通信方式实现无线网络通信。所述模块中可W插入有SIM卡。所述教师用户终 端用于对教师课程进行录制,并对应W数据流和音频流的方式上传保存在后台服务器中; 所述学生用户终端用于获取录制课程的ID,并对应从后台服务器中读取与时间戳对应的 数据流和音频流。所述数据流为教师用户终端在教师多媒体课堂中录制的讲课时间和动作 信息;所述音频流为教师用户终端在教师多媒体课堂中录制的课堂时间和语音信息。
[0193] 所述网络教学系统还包括有与所述教师用户终端通信连接的放映设备。所述放映 设备采用投影仪和屏幕或者是宽屏显示器,用于课堂教学时,教师控制终端通过HDMI接口 连接所述放映设备,将终端的触摸屏内容放映出来。
[0194] 教师用户通过教师用户终端登录所述后台服务器,下载安装课件编辑器,所述编 辑器源码采用C&C++方式进行开发,基于Office 2010 Word版本进行多选题、单选题、判断 题的添加和编辑,然后上传至后台服务器,形成试题课件和课件解析结果WXML文档保存在 服务器;所述用户终端利用课件解析的信息对课件进行分割并生成SWF题目文件,在触摸屏 上进行显示,而答案的智能评判则是学生做完后的答案和服务器端预存的答案进行比对, 在答题结束后可自动进行成绩统计,W方便随堂练习或测试。学生用户通过学生用户终端 登录后台服务器,下载课程使用的电子文件资料,并存储在终端本地。
[01M]本发明的图像同步显示方法,是将某一用户终端上显示的内容同步显示到其他用 户终端上,通常运样的用户终端是教师用户终端,接受显示内容的终端通常是学生用户终 玉山 乂而。
[0196] W下详细描述根据本发明的图像同步显示方法的各步骤的具体操作流程,所述图 像同步显示方法基于包括具有教师用户终端、学生用户终端、服务器和网络的网络教学系 统,其步骤包括:
[0197] -启动教师用户终端步骤,准备获取用于同步显示的数据;
[0198] -同屏显示数据获取步骤,获取用于图像同步显示的同屏显示图像数据;
[0199] -同屏应用数据获取步骤,获取用于同步显示的同屏应用操作数据;
[0200] -图像压缩步骤,采用肝EG格式压缩获取的所述同屏显示图像数据;
[0201] -图像发送判断步骤,判断经过所述步骤压缩的相邻两幅所述同屏显示图像是否 相同,根据判断结果确定是否发送所述图像;
[0202] -确定发送图像分割步骤,分割确定要发送的经过压缩的所述图像,形成发送数 据包;
[0203] -数据包发送步骤,基于UDP协议W组播模式向多个用户终端发送所述数据包;
[0204] -线程监控步骤,用于在基于UDP协议传送时对线程进行实时监控,对丢包数据进 行补发操作;
[0205] -过期数据处理步骤,用于丢弃所述网络教学系统中的过期数据,保证网络传输 的杨通;
[0206] -同步显示步骤,用于在接收数据的所述学生用户终端上实现同步显示。
[0207] 如图5所示,其中示意性的表示出了同步数据的获取和同步显示的基本数据传输 方式。使用本发明的同步显示方法,教师在上课时从教学终端和教学多媒体课堂分别获取 讲课时间和动作数据流W及课堂时间和语言数据流,通过校园局域网与互联网相连,智慧 教育云端服务器通过互联网获取和处理运些数据,并且将其通过互联网和校园局域网分发 给学生端,用于为学生听课提供服务。
[0208] 对于上述各个步骤:
[0209] 启动教师用户终端步骤,用于准备获取用于同步显示的数据。本发明的图像同步 显示方法是所述基于网络教学系统的,当教师用户终端的客户端激活进入工作状态后,系 统启动图像同步显示程序。
[0210] 所述同屏显示数据获取步骤,获取用于图像同步显示的同屏显示图像数据。
[0211] 获取图像数据的渠道可W是多方面的,包括截屏图像、摄像或摄影装置获取的图 像、扫描仪获取的图像等,图像上的内容包括教师书写的板书,可W是从电子白板上获得的 截图或者拍摄图像,可W是从普通黑板上获得的拍摄图像,可W是通过手写板输入的并在 屏幕上显示的截屏图像或者拍摄图像,可W是通过扫描仪输入的文字照片等的图像,还可 W是教师用户终端上集成显示图像的截图图像等。
[0212] 常用的图像格式包括JPEG、BMP、GIF、PNG、TIFF等,相对而言JPEG(Joint Photographic Experts Group,联合图像专家小组)和BMP(Bitmap)使用最广泛。
[0213] BMP是一种与硬件设备无关的图像文件格式,可W称之为与设备无关的位图,其采 用映射存储格式,除了图像深度可选W外,不采用其他任何压缩,因此BMP文件占用的存储 空间相对较大,属于Windows环境下的标准图像格式,但是其体积过大,不利于网络传送。
[0214] 典型的BMP图像文件包括四部分:位图文件头数据结构,它包含BMP图像文件的类 型、显示内容等信息,其结构长度通常是固定的14字节;位图信息数据结构,它包含有BMP图 像的宽、高、压缩方法及定义颜色等信息,其结构长度通常是固定的40字节;调色板,运个部 分是可选的;位图数据,运部分的内容根据BMP位图使用的位数不同而不同,在24位图中直 接使用RGB。
[0215] BMP作为通用格式的位图,如果原始获得的图像不是BMP格式的,需要先将格式转 换为BMP格式,然后再进行压缩处理,将BMP图像压缩成肝EG图像。
[0216] 本发明的网络教学系统可W根据规则自动实时截取或者获得,如每隔几秒自动截 取屏显内容或者拍摄需要同步显示的内容,或者教师根据自我判断和/或教学需要手动随 机截取屏显内容或者拍摄有关内容,由此获得需要同步显示的BMP图像。
[0217] 典型地,运些BMP图像的内容是教师用户终端上显示的内容,运些内容典型的是W 各种形式获得的教师板书内容,比如可W是电子白板上的板书图像,可W是拍摄的普通白 板上的板书内容。
[0218] 根据本发明,获得截图的方式包括:
[0219] (a)通过重写amlroid系统的截图组件截取当前操作页面的截取得BMP图像;
[0220] (b)通过高拍仪,拍摄教师选定区域的场景,截取得BMP图像;
[0221] (C)通过电子白板笔书写的板书,通过指令控制,进行截取得BMP图像;
[0222] 所述同屏应用数据获取步骤,获取用于同步显示的同屏应用操作指令数据。
[0223] 对于可W不用直接同屏显示的数据,可W通过传送指令及坐标点数据的方式获得 需要同步显示的同屏应用操作信息,然后通过操作再现实现图像同步显示。
[0224] 具体地,对于教师用户终端描绘的板书等内容,通过教师用户在终端上的APP书写 板书,把书写的板书的轨迹的路径坐标数据,学生用户终端获得运些路径坐标数据后,可 W通过指令对坐标进行重新描绘,实现回显,而不必获取整个显示的图像信息。
[0225] 关于指令萃取及机器学习:首先构建系统机器学习能力,字典表记录各种文件操 作指令,并通过索引配对,指向操作指令对应的实际执行语言。具体地,针对同一个训练集 训练不同的分类器(弱分类器),然后把运些弱分类器集合起来,构成一个更强的最终分类 器(强分类器)。
[0226] 运种方法本身是通过改变数据分布来实现的,它根据每次训练集之中每个样本的 分类是否正确,W及上次的总体分类的准确率,来确定每个样本的权值。将修改过权值的新 数据集送给下层分类器进行训练,最后将每次训练得到的分类器最后融合起来,作为最后 的决策分类器。
[0227] 指令萃取剂机器学习让更多的有效的指令通过系统自动判断保存到数据库中,而 把无效指令删除掉,使得上课过程更加完整,数据库存储的数据更为有效。
[02%]如图6-1至6-3所示,根据本发明的获取路径坐标数据过程的示意图。路径坐标数 据获取时,可W使用W下步骤:屏幕步距初始化,申请创建一个临时画板,解析path路径坐 标数据,判断是否是画笔,如果是,回放画笔动作,如果不是,取得下一个指令,完成所述回 放画笔动作后,判断是否有后续指令,如果有,继续取得下一个指令,如果没有,完成回放, 在终端设备显示结果。具体地,
[0229] 所述化th路径坐标数据的记录过程如下:
[0230] A1、解析记录的化th路径坐标数据,并存放至临时的指令坐标堆找中,然后对屏幕 进行初始布局,在屏幕的化nvas画布上先设置背景图案;
[0231] 优先判断是否是画笔(可能是橡皮擦),如果是画笔,将当前的轨迹路径保存到轨 迹结果集合中。
[0232] //如果是画笔,将当前的记录路径保存到list
[0233] this.mPathPaintlist.add(this.mPathPaint);
[0234] //保存画笔和路径履历
[0235] PathAndPaint pap = new PathAndPaint();
[0236] pap.se1:Path(new F*ath(this.mPath));
[0237] pap.setPaint(new Paint(this.mPaint));
[0238] this.mPathAndPa intlist.add(pap);
[0239] A2、新建一个 Bitmap,并 W此Bitmap 生成一个临时画布tempthrivas;
[0240] A3、将tempBitmap背景设置为透明,运样做的目的是把临时画布temptCanvas的目 标,定位在新建的tempBi tmap上;
[0241 ] A4、通过所述构造后,提取指令堆找中的坐标指令,--还原,通过tempt化η vas进 行重写,temptCanvas的一切化aw函数,都会把相应的图像画在临时的tempBitmap上,运样 在动作回溯的过程中,画点,画线调用temptCanvas而不是原先屏幕上的Canvas,如 temptCanvas. drawPoint, temptCanvasRect 等等;
[0242] A5、所有的指令坐标堆找执行完毕后,执行Canvas.化awBi tmap (tempBitmap, 0,0, nul 1) ; temptCanvas负责的是将各种画笔痕迹画在temp Bitmap上,而Canvas负责将 t empB i tmap绘制到屏幕上。
[0243] 所述动作描绘的逻辑步骤如下所示,其中touchMove函数传入的(float X,float y)参数分别为横纵轴坐标:
[0244] 通过通过连续传入的两个坐标点的中间位置,设置为贝塞尔曲线的基准点,再利 用贝塞尔算法进行平滑处理,把多个点描绘成一条平滑曲线;将最后的的坐标点,作为后续 的操作基准点的起点,将路径保存path集合中。
[0245] 所述动作描绘的逻辑步骤如下所示,其中touchMove函数传入的(float X,float y)参数分别为横纵轴坐标:
[0246]
[0247] 如图7所示,所述图像压缩步骤,采用JPEG格式压缩获取的所述同屏显示图像数 据,进一步包括图像一次压缩和图像二次压缩,二次压缩的基本步骤包括:抓取同步图像, 根据图片大小判断是否需要压缩,如果需要压缩动态计算压缩比率,如果需要,压缩成肝EG 格式,如果不需要,直接进入图片拆分判断步骤,如果需要拆分,就进行图片拆包处理,如 果不拆分就直接进入同步数据发送步骤。具体的,
[0248] 1、图像一次压缩
[0249] 由于组播转单播中每次发送的数据报文有最大长度限制,因此需要先将图像解码 转换成肝EG特定格式的图像,在转换时根据图像大小,动态计算压缩比率,进行图像的一次 压缩。用Bitmap类型对象接收,转换成碎片用于局域网内组播传送。
[0250] 通常,图像压缩包括差分脉冲编码DPCM、DCT、矢量量化编码VQ等技术。目前,基于 DCT等技术的国际图像压缩标准,包括肝EG、MPEG、肥61等。
[0251] 在现有DCT技术的基础上,经进一步改进,本发明的图像压缩可W缩小传送的视频 流、封装有多个图像的图像文件或者图像文件的大小。
[0252] 所述图像一次压缩进一步包括步骤:
[0...
253] 首先,在图像进行压缩前,先将未压缩的所述图像进行备份,形成原始图像备份数 据库,当用户收到压缩的图像而需要查看更精细的图像时,可W点击从原始图像备份数据 库中下载原始图像。
[0254] 此外,在执行完后续的图像发送判断步骤后,将确定不同步显示给学生用户终端 的压缩图像的原始备份数据从所述数据库中删除。
[0255] (1)正向离散余弦变换(FDCT)
[0巧6] RGB色彩系统是最常用的表示颜色的方式,BMP位图采用的就是RGB色彩系统,R、G、 6立个分量分别表示红绿蓝立种基色。而将要变换的肝EG是采用的YCbCr色彩系统,Y、Cb和Cr Ξ个图像分量分别表示亮度、色度和饱和度。在处理全彩色图像时,需要首先把RGB颜色模 式图像数据转化为YCbCr颜色模式数据。
[0257] 离散余弦变换(DCT)是将一组光强数据转化为频率数据,W获取强度变换情况,其 属于无损变换。DCT变换将图像中各个频率的信息区分开来,再将对视觉敏感的高频部分信 息保留下来,而对视频无法觉察的低频部分在数值上设为零,从而达到对图像压缩的目的。 通过DCT变换,可W把能量集中在少数几个特征值上,通常为DC特征值和AC特征值。
[0258] 在进行DCT变换时,先将图像分解成NXN像素块(或称子图像块),优选的N=4、8或 16,最优选的是,N=8,对每一子图像块进行单独的二维DCT变换。本发明中优选采用8X8的 分解方式,当原始图像的长度不是8的倍数时,需要先补为8的倍数。由此,其64个像素的二 维空间频率分量的幅值称为DCT特征值,也就是每个子图像块可W用1个DC特征值和63个AC 特征值表示。
[0259] 对于采用像素矩阵(方阵)表示的数字图像,二维DCT正变换使用下列公式:
[02化]在上面两式中,
[0266] U,V是DCT变换后矩阵内某个数值的坐标位置,即频率域采样值,u = 0,1,….N-1,V = 0,1,???N-1;
[0267] F(U,V)是DCT变换后矩阵内(U,V)位置上的频率特征值;
[0268] (x,y)是图像数据中某个数值的坐标位置,即空间域采样值,x = 0,l,…,N-l,y =
[0269] ^义,7)是图像数据内^,7)位置上的像素值;
[0270] 当 u = 〇 且 v = 0 时
[0271] 当u〉0或v〉0时,c(u) ,c(v) = l。
[0272] 经过DCT变换后的矩阵数据自然数为频率特征值,运些特征值WF(0,0)的值最大, 即DC特征值,其余的63个频率特征值多是接近于0的正负浮点数,统称AC特征值。
[0273] 二维DCT变换是可W分离的,即二维变换可W分解为串联的两次一维变换,运是因 为一维DCT的变换速度效率优于二维DCT变换,因此通过分离计算可W提升运算处理的效 率,由此对于所述正向变换公式,可W改写成:
[0279] 运样二维DCT变换可W利用一维DCT变换快速进行运算。
[0280] (2)量化(如 antization)
[0281] 量化是在保持一定图像质量的情况下,去除图像中对视觉效果影响不大的冗余信 息,针对经过FDCT变换后的频率特征值,其目的是减小非"0"特征值的幅度W及增加"0"值 特征值的数量。量化处理是图像质量下降的最主要原因。
[0282] 对于JPEG有损压缩,使用线性均匀量化器进行量化,具体地,对于64个DCT特征值 除W量化步距并四舍五入取整来实现。量化步距是按照特征值所在的位置和每种颜色分量 的色调值来确定。因为人眼对亮度信号比对色差信号更敏感,因此使用了两种量化表:亮度 量化值和色度量化值。此外,由于人眼对低频分量的图像比对高频分量的图像更敏感,因此 图中的左上角的量化步距要比右下角的量化步距小。
[0283] 如图8所示,其中的亮度量化表和色度量化表的数值对于CCIR 601标准电视图像 是最佳的。如果不使用运两种表,也可W根据需要使用其他的量化表替换它们。如果每一子 图像块都采用相同的量化表,会减少计算量,但是由于不同子图像块的情况不同,可能不能 达到最佳的压缩效果。
[0284] (3)Z字形编码(Zigzag Scan)
[0285] 量化AC特征值通常有许多零值,需要WZ字路径重新编排,目的是为了增加连续 "0"特征值的个数,也就是"0"的行程长度。运样就把一个8X8的矩阵变成一个1X64的矢 量,频率较低的特征值放在矢量的顶部。
[0286] 如图9所示,经Z字形扫描后DCT特征值的序号。0表示零频DC特征值,而剩下的1-63 为AC特征值,特征值越大表示所述位置所对应的频率成分的频率越高,后续的量化编码就 是在运些特征值的基础上进行的。
[0287] (4)使用差分脉冲编码调制(Differential Pulse Code Modulation,DPCM)对量 化DC特征值进行编码
[0288] 在进行Z字形编码W后,量化DC特征值有两个特点,一是特征值的数值比较大,二 是相邻8X8图像块的DC特征值值变化不大。根据运个特点,使用DPCM技术,对相邻图像块之 间的量化后的DC特征值的差值(De 1化)进行编码:De 1化=DC (0,0) k-DC (0,0) k-i。
[0289] (5)使用行程长度编码(Run Length化coding,RLE)对量化AC特征值进行编码
[0290] RLE是一种典型的无损压缩技术。当图像中有很多相同颜色的模块时,模块中的每 一行显示的颜色都相同,运种图像一般不提倡进行每一像素颜色值的存储,而只是单纯存 储相同颜色的像素数量和颜色值即可。例如,表示颜色像素值的字符串RRRRRGGGBBBBB,用 RLE压缩后可用5R3G5B代替。
[0291] 在进行Z字形编码W后,量化AC特征值的特点是1X64矢量中包含有许多"0"特征 值,并且许多"0"是连续的,因此使用非常简单且直观的RLE对它们进行编码。
[0292] 肝EG标准使用了 1个字节的高4位来表示连续"0"的个数,而使用它的低4位来表示 编码下一个非"0"特征值所需位数,跟在它后面的是量化AC特征值的数值。
[0293] 编码格式为(符号1)(符号2),其中,符号1表示2条信息,即行程和长度。行程是Z字 形矩阵中位于非"0" AC特征值前的连续"0"值AC特征值的个数,长度是对AC特征值的幅度编 码所用位数。符号2表示AC特征值幅度值。
[0294] (6)赌编码化ntropy Boding)
[0295] 赌编码是基于量化特征值统计特性的无损编码。常见的编码有行程长度编码、霍 夫曼化uffman)编码和算术编码。而行程-霍夫曼编码(化-VLC)是肝EG图像压缩编码国际标 准中常用的编码方法,主要用来对AC特征值进行赌编码。肝EG标准霍夫曼编码表是根据8X 8图像块经二维DCT、Zigzag扫描后,非"0"AC特征值的幅值尺寸Level和所述AC特征值前"0" 行程长度Run,即(Run,Level)数对的联合分布概率生成的。
[0296] 在JPEG有损压缩方法中,使用霍夫曼编码来减少赌。使用霍夫曼编码的理由是可 W使用简单的查表化ookup化ble)方法进行编码,所查的表是霍夫曼编码表。编码时,每个 矩阵数据的一个DC值和63个AC值分别使用不同的霍夫曼编码表,亮度和色度也需要不同的 霍夫曼编码表。压缩数据符号时,霍夫曼编码对出现频率较高的符号分配比较短的代码,而 对出现频率较低的符号分配较长的代码。运种可变长度的霍夫曼编码表可W事先进行定 义。在本发明中,使用赌编码可W对DPCM编码后的DC特征值和RLE编码后的AC特征值进行进 一步压缩。
[0297] 对差分DC特征值和每个AC特征值采用两个符号进行编码,即符号1和符号2。对于 DC特征值,符号1表示的信息称为长度,即DC特征值的幅度进行编码所用的位数,符号2表示 DC特征值的幅度。对于AC特征值,符号1表示了两条信息,称为行程和长度。行程是在Z字形 矩阵中位于非零AC特征值前的连续零值AC特征值的幅度进行编码所用的位数。符号2表示 AC特征值的幅度。
[0298] 教师用户终端传送的图片可能清晰度很高,如果学生用户终端按照原图进行传 输,势必导致网络资源需求过高,甚至网络拥堵,导致无法传输其他数据,所W进行的一系 列变换,得到适合屏幕大小的,而且在有限的带宽进行传递文件,使得上课过程更为流杨
[0299] 2、图像二次压缩(拆包处理)
[0300] 如果一次压缩W后,还超过协议规定大小,则需要进行二次压缩或者称拆包处理。
[0301] 经过所述处理获得的位数据流构成压缩后的图像,再进行进一步的差异化处理。 在接下来进一步的差异化处理中,考虑差异化方法,根据图像大小与结合系统指定的文件 字节数的{最小值、最大值}: {minSize,maxSize},设置进一步的压缩比率:
[0302] If(image.getBytes()>maxSize)
[0303] {压缩比率= image.getBytes()/maxSize* 系统定义偏移量}
[0304] Else,
[0305] {压缩比率= 1}。
[0306] 在此,所述差异化方法是指:由于系统处理的各个图像大小不一,但是在基于UDP 协议进行数据传送过程中,每个报文长度有限制(一般为1500字节左右)。因此,在处理大小 不一图像的过程,需要考虑各图像文件大小间的差异化,在系统中指定图像的maxSize,如 果图像大小大于所述字节数,那么启动进一步的压缩处理,也就是通过所述公式计算出的 压缩比,对图像进一步压缩处理。
[0307] 所述1500字节是指在UDP传输数据时,单个数据报文的大小,不同的网络设备会略 有不同,在实际传输过程中,每个图片会被按照运个大小进行自动分包并发送传输,客户端 收到相应报文后会对数据进行组合处理;此外,如果UDP协议发送的原始数据包长度过于长 的话,超过65K左右,UDP协议无法正常拆分数据包,运里需要我们手动对数据进行一下二次 拆包,保证UDP协议每次都能够正常发送数据报文。根据由压缩图像构成的图像的大小与指 定的文件字节数的{minSize,maxSize}获得图像压缩比率:
[0308] 如果图像的大小大于最大值,
[0309] 压缩比率二图像大小/最大值*系统定义偏移量,对于本发明使用的硬件平台显示 分辨率,所述偏移量设置为0.4~0.6之间,其对应关系参考下表一否则,压缩比率=1。
[0310] _
[0:311]表1
[0312] 因为根据移动设备分辨率的不同,其显示图像质量亦可不同,分辨率低的移动设 备可显示质量稍差的图像,因此按照上表1给出的数据,偏移量与分辨率大小成正比。压缩 比率的执行是通过W下步骤体现的:
[0313] (a)教师用户终端应用程序抓取教师上课的电子板书截图;
[0314] (b)根据教师用户终端的分辨率计算出合适的压缩比率;
[0315] (C)根据压缩比率进行图像格式转换,即一次压缩。
[0316] 所述通过图像的两次压缩,实现了快速高效的压缩、对比和传送。
[0317] 在所述图像一次压缩步骤中,在FDCT变换过程中,经过DCT变换后的矩阵数据自然 数为频率特征值,运些特征值WF(0,0)的值最大,即DC特征值,其余的63个频率特征值多是 接近于0的正负浮点数,统称AC特征值。
[0318] 本发明的方法,在进行所述图像压缩处理的过程中,将构成图像主要因素的DC特 征值值和AC特征值值复制提取出来,并存保到独立于正在进行压缩处理的图像文件的其他 文件中,而不影响图像的一次压缩处理。
[0319] 通常,图像对比要综合考虑图像的轮廓分布、颜色分布、W及DC和AC值等,但是本 发明中利用肝EG压缩过程中获得的图像DC和AC特征值值,不但影响图像的压缩处理,又能 通过前后两幅相邻图像的特征值值的简单对比,判断前后两幅图像是否发生了变化,根据 判断结果决定是否发将已经完成压缩的图像发送给学生用户终端。
[0320] 运样简化的判断方法,减少了系统的运算量,运是因为教师在授课时屏幕显示的 内容特别是电子板书内容通常是连续变化的,在相邻时间比如几秒内,板书的内容可能不 变的或者变化持续增加的,而获取图像的设备、图像显示的环境、背景轮廓等信息又基本是 不变的运样的特点。
[0321] 通过运样简化对比即可发现前后两幅图像是否发生了变化,是否应该将图像同步 发送给学生用户终端,如果图像内容没有发生变化,就不必发送。
[0322] 由于图像的屏幕拷贝获取W及压缩处理是在固定时间间隔内正常进行的,一旦根 据对比判断结果确定需要发送运幅图像,不会存在时间上的延迟,直接将压缩好的图像数 据分割发送即可,而一旦根据判断结果确定不需要发送,就不会占用网络资源,同时学生用 户终端上也不必重复更新前后相同的显示内容,影响用户的体验。
[0323] 当然,本发明并不是排斥对两幅前后连续获得的图像进行全面的对比和判断,从 而获得更加全面的对比结果。
[0324] 具体地,通过计算两幅图像之间的距离,即DC和AC特征向量各分量之差的总和,来 判断两幅图像的差异值。所述的差是指将每前后相邻两幅图像的DC和AC特征值值(特征向 量值)进行对比,对于DC特征值值,对比其分量的正负号,如果分量同号标记为1,否则标记 为0。
[0325] 对于AC特征值值,可W根据设定的对比阔值,如果分量之差超过对比阔值标记为 0,否则标记为1。
[0326] 由此,求出0或1的数目,相加求和,可W得出前后相邻两幅图像之间的差异值。
[0327] 0的数目越多表明特征向量的差异越大,图像的差异越大。
[0328] 进一步的,如果两幅图像之间没有差异,说明前后两个截屏的图像是相同的或者 基本相同的,不需要进行同屏传送;如果存在差异值,说明前后两幅截图内容已经发生变 化,教师用户终端将相应的已经压缩好的图像同屏传送给学生用户终端。
[0329] 所述是否有差异的判断可W根据设定的阔值进行比较判断,也可W不设定阔值, 只要有不同就进行同步传送。
[0330] 可设置多个临时复制提取的DC和AC特征值存储文件夹,存储满一个文件夹后,就 使用另一个存储文件夹,系统再去清空当前的文件夹备用。
[0331] 当长时间检测到前后截屏的内容没有变化时,逐步自动延长自动截取屏幕图像内 容的时间。比如由每隔几秒延长为每隔几十秒,甚至几分钟。
[0332] 将一段时间内例如是一节课连续的多个前后两幅图像的差异值做成曲线,根据教 学过程特别是板书的基本特点,当检测到差异值保持在一定范围内基本平稳时,将当前屏 幕的内容作为第一版板书内容进行标记,当检测到差异值出现较大变化时,判断为新的一 个版面的板书或新的显示内容开始了。
[0333] 学生用户终端可W将接收到的同步图像数据保存成可再现的视频流,从而可W随 时复习学习的内容,更优选的,视频流的播放与教师的音频录音根据时间特征(如由教学系 统生成的时间戳)匹配起来,形成带有语音流与视频流的匹配播放。
[0334] 通过所述判断步骤,实现了需要同步显示的图像的自动判别和实时发送,达到了 同步截屏、实时压缩、同步判断、自动发送的目的。
[0335] 注意,在执行完后续的图像发送判断步骤后,将确定不同步显示给学生用户终端 的压缩图像的原始备份数据从所述数据库中删除。
[0336] 确定发送图像分割步骤,分割确定要发送的经过压缩的所述图像,形成发送数据 包。
[0337] 经过所述压缩获得的肝EG图像W及同屏应用数据,如果所述肝EG图像W及同屏应 用数据包大于报文的限制长度,会按照报文等比,将所述JPEG图像W及同屏应用数据包分 割成若干子数据包,比如分割成若干临时TMP文件,运些分割的临时TMP文件通过网络W组 播方式进行传送,学生用户终端获得所有的分割TMP文件后,对分割TMP文件进行合并,形成 完整的肝EG图像,并在学生用户终端本地显示。
[0338] 具体地,在发送UDP数据报文时,会根据发送的数据包长度对组播报文自动进行分 包,避免由于数据包过大导致发送失败。但如果将UDP数据拆分过小,会导致短时间内会广 播大量的数据,对局域网内网络带来较大的压力。根据数据长度,会动态计算并拆分数据, 按照单个数据报文长度不超过16,000个Byte。根据本发明,根据反复调试尝试的结果,评定 无限AP带宽占用率和响应速度,得到的最优的值为16,000Byte,并且最大的拆分数量不超 过5个运样两组条件进行综合计算,从而得到一个较优的报文数组进行发送。
[0339] 所述同步数据分割步骤的具体操作流程如下:
[0340] 如图10所示,所述数据包发送步骤,基于UDP协议W组播模式向多个用户终端发送 所述数据包。待转发的消息由组播地址经过无线AP转发是,转成单播的形式逐一发送,教师 端应用通过组播地址,234.5.10.200,通过订制AP发送给各个终端。
[0%1]无线接入点即无线AP(Access化i
nt)是用于无线网络的无线交换机,也是无线网 络的核屯、。无线AP是移动计算机用户接入有限网路的接入点。
[0342] 组播(Multicast,多播)技术作为一种与单播化ni cast)和广播(Broadcast)并列 的通信方式,有效地解决了单点发送、多点接收的问题,在实时数据传送、多媒体会议、数据 仿真等领域有着广泛的应用。组播是将IP数据包向"一组"地址传送,使得数据包可W达到 Internet上同一组的所有成员,其中"组"是一个特殊的IP地址标识。TCP、IP的IGMP协议中 包含了组播的内容,协议规定组播使用的地址是从224.0.0.0到239.255.255.255。从 224.0.0.0到239.0.0.255的多路广播地址是用于储存组播路由信息,运个范围W外的多路 广播地址是为应用程序设定的。
[0343] UDP(User Data-gram Protocol,用户数据报协议)是建立在一种IP协议上的无连 接协议,主要用来支持那些需要在计算机之间传送数据的网络应用,由于不提供数据的重 传和确认,其优点是传送速度比较快,缺点是可靠性不高。包括网络视频会议系统在内的众 多的客户/服务器模式的网络应用都使用UDP协议。一条UDP报文分为两部分:报头和数据 区。UDP报头有四个域组成,每个域各占两个字节:源端口号、目标端口号、数据报长度、校验 值。数据发送方将UDP数据报通过源端口发送出去,而数据接收方则通过目标端口接收数 据。
[0344] UDP每次发送的数据包的大小一般不超过2048字节。在发送端和接收端确定一个 传送缓冲区,大小为65,536字节,发送端首先把一帖视频数据写入缓冲区,将其分解成若干 数据包,使得每个数据包的大小不超过2048字节,称为一个分组数据,对每个分组数据的每 个数据包加上一个包头结构,包头结构定义了序列号、传送通道号、视频压缩格式、时间戳。 数据报的长度域主要用来计算可变长度的数据部分,理论上包含报头在内的数据报的最大 长度为65,536字节,在实际应用中通过会选择一个较低值,比如可W1024字节。
[0345] UDP建立在IP协议之上,但相对于IP协议,其增加可W提供协议端口 W保证进程通 信,整个UDP报文封装在IP数据报中传送。但是,UDP协议的问题是协议自身没有错误重传机 审IJ,对于错误的检测和处理在应用程序中进行。
[0346] 根据接收者对组播源处理方式的不同,组播模型包括下列Ξ种:ASM模型^117-Source Multicast,任意信源组播)、SFM模型(Source-Filtered Multicast,信源过滤组 播)、SSM模型(Source-Specific Multicast,指定信源组播)。
[0:347] (A) ASM 模型
[0348] 简单地说,ASM模型就是任意源组播模型。在ASM模型中,任意一个发送者都可W成 为组播源,向某组播组地址发送信息。众多接收者通过加入由该组播组地址标识的组播组 W获得发往该组播组的组播信息。在ASM模型中,接收者无法预先知道组播源的位置,但可 W在任意时间加入或离开该组播组。
[0349] (B)SFM 模型
[0350] SFM模型继承了ASM模型,从发送者角度来看,两者的组播组成员关系完全相同。同 时,SFM模型在功能上对ASM模型进行了扩展。在SFM模型中,上层软件对收到的组播报文的 源地址进行检查,允许或禁止来自某些组播源的报文通过。因此,接收者只能收到来自部分 组播源的组播数据。从接收者的角度来看,只有部分组播源是有效的,组播源被经过了筛 选。
[0;351] (C)SSM 模型
[0352] 在现实情况中,用户可能只对某些组播源发送的组播信息感兴趣,而不愿接收其 它源发送的信息。SSM模型为用户提供了一种能够在用户终端指定组播源的传送服务。SSM 模型与ASM模型的根本区别在于:SSM模型中的接收者已经通过其他手段预先知道了组播源 的具体位置。SSM模型使用与ASM/SFM模型不同的组播地址范围,直接在接收者和其指定的 组播源之间建立专用的组播转发路径。
[0353] 局域网传送无需使用服务器,本发明中教师用户终端与学生用户终端通过AC路由 (802.11AC,第五代无线网络标准,俗称5G WIFI)连接在同一网段。当然,也可W使用P2P技 术进行同屏数据传送。
[0354] 如图11所示,所述线程监控步骤,用于在基于UDP协议传送时对线程进行实时监 控,对丢包数据进行补发操作。基本步骤如下:使用序列化工具对mDa化进行分片处理,按照 顺序读取分片数据对象,将数据片段封装成化tagram化ckage,通过UDP组播控制化ndler 发送报文,发送控制器休眠60毫秒,释放网络压力,启动数据报文定时重传监听,判断当前 发送的数据报文是否过期,如果过期,则判断为结束当前操作,如果未过期,继续判断是否 有后续数据片段,继续获取数据。
[0355] 本发明使用无线AP基于SSM模型通过UDP协议传送分割好的数据包,SSM模型的优 点在于:降低网络流量,减轻服务器和CPU负荷;减少冗余流量;使多点应用成为可能;其缺 点也比较明显,由于通过UDP协议通信,导致非长连接,存在丢包现象。
[0356] 为了去除冗余的同屏指令信息,保证同屏程序高速率、稳定的执行;W及从网络通 信上行(设备至AP)的角度出发,保证上行数据推送的可靠性,对数据准确、高效传送到学生 用户终端提供双重的保障,本发明采用线程监控的方式解决上述问题。
[0357] 具体操作流程如下:
[0358] B1、数据报文发送处理步骤:教师用户终端对发送的数据报文进行签名编号,确保 每次发送的报文组ID统一并且唯一,然后将数据报文发送至无线AP的组播地址,范围在 234.5.*.*组播网段间固定组播地址,教师用户终端在启动程序时会自动计算组播地址,确 保在一个网络环境内特别是局域网络环境内,每个课堂都独立占用为一个组播地址。
[0359] B2、自守护线程启动步骤:在数据报文发送后,教师用户终端会启动一个自守护线 程,启动计时器,并建立补发堆找,将本次的发送数据、发送目标存入补发堆找,在到达自守 护线程启动时间后,没有收到学生用户终端的数据报文反馈,自守护线程会启动数据报文 补发处理,对没有反馈的学生用户终端补充发送数据包。该处理能够有效的避免在教师用 户终端向无线AP进行上行发送UDP数据报文时网络不稳定而带来的数据丢失问题。
[0360] B3、反馈守护线程启动步骤:教师用户终端发送完组播UDP数据包后,当第一次收 到学生用户终端的反馈消息后,会自动启动反馈守护线程,该线程会按照拆分后的数据包 对用户终端的反馈进行保证重传处理,同时停止自守护线程。反馈守护线程的好处是能够 W最小的网络消耗的代价完成数据报文的补发操作,能够W较短的等待时间快速的对单个 数据报文进行包装重传处理。有效的解决了从无线AP将组播报文发送至学生用户终端时, 发生的数据丢失而导致数据不统一的问题。
[0361] B4、报文反馈步骤:学生用户终端的客户端在收到了来自教师用户终端的组播数 据包时,会先校验收到的数据是否已经接受完全,如果接受完全会将数据报文进行合并还 原;在每收到一个数据报文的同时,立刻给教师用户终端发送反馈信息。
[0362] 如图12所示,虚线框部分,所述过期数据处理步骤,用于丢弃系统中的过期数据, 保证网络传输的杨通。对于学生端同屏处理方式,首先判断同屏处理方式,如果是指令同 屏,则接受同屏指令,查找同屏资源,加载同屏画面,合并指令坐标数据,然后描绘图片;如 果是图像同屏,接受图片序列碎片,判断图片是否过期,如果过期,则放弃处理,如果没有过 期,判断图片序列是否接受完全,如果接受不完全,则等待下一序列碎片,当完全接受后,将 碎片合并成图片对象,在本地描绘出图片。
[0363] 所述过期数据是指在网络传送的数据包进行实时监控过程中,当数据包正在网络 中传送时,教师用户终端又发送了新的数据包,教学系统检测到新数据包的存在,运时检测 到的旧数据被视为过期数据。
[0364] 教学系统会将过期数据进行丢弃处理,在教师用户终端、学生用户终端、无线AP等 设备同时对处理过程中的过期数据进行丢弃,用W减轻数据在网络中传送给网络带来的压 力,保证学生用户终端实时显示教师用户终端传送过来的最新数据。
[0365] 如图13所示,学生用户终端的客户端在收到了来自教师用户终端的组播数据包 时,会先校验收到的数据是否已经接受完全,如果接受完全会将数据报文进行合并还原;在 每收到一个数据报文的同时,立刻给教师用户终端发送反馈信息。具体的,教师端发送数据 包,学生端获取数据包,教师端实时监控5秒内是否收到学生端数据反馈,如果没有,则重新 补发数据包,如果是,则确认本条数据包发送成功。
[0366] 学生用户终端接收到指令信息后,会向教师用户终端发送反馈信息。教师端通过 判断学生端反馈的信息,进行判断学生是否完整的收到了教师之前发送的命令,当教师端 判断学生端已经完整的收到了指令,教师端进行下一步处理(例如,发送指令,声音等);当 教师端判断学生端没有完整的收到指令,则进行重新发送指令的处理,直到学生端完整的 收到。
[0367] 基于此,所述过期数据处理步骤具体过程如下:
[0368] C1、教师用户终端上传组播报文到服务器,服务器通过网络传输把组播报文给学 生用户终端;
[0369] C2、学生用户终端收到的组播报文时,如果报文签名为当前正在处理的报文组,贝U 将报文信息入找,并反馈信息发送给教师用户终端;
[0370] C3、如果学生用户终端收到的组播报文签名比当前找中处理的数据新,则表明找 中的数据已经过期,会将找中数据清空,同时将新数据入找,等待报文数据接收完全后进行 后续处理;
[0371] C4、如果学生用户终端收到的组播报文签名比当前找中处理的数据旧,则表明该 收到的数据报文已经过期,系统放弃当前接收到的数据报文。
[0372] C5、教师用户终端收到学生用户终端的数据报文反馈信息,如果报文时间戳已经 过期,表明学生用户终端延迟收到消息,数据已过期,教师用户终端对该数据报文进行丢 弃,不进行其它任何处理,如果收到的数据报文时间戳为当前发送数据包,则对该反馈信息 进行接收。
[0373] 如图12所示,所述同步显示步骤,用于在数据接收用户终端上实现同步显示。
[0374] 在学生用户终端上的软件客户端或APP中,内置有图像子数据包合并显示模块,用 于将接收到的若干子数据包如若干临时TMP文件,合并形成完整的肝EG图像,并在学生用户 终端上进行显示,完成同屏显示的目的;W及,
[0375] 内置有与教师用户终端同样的文件操作逻辑模块,在同屏应用过程中,学生用户 终端事前加载本次课堂的电子文件资源,教师在讲课直播过程中,学生用户终端将通过服 务器获得的教师操作电子文档/文件的操作指令数据如指令及坐标点数据,利用已经内置 的逻辑模块结合下载的课堂电子文件资源,通过所述逻辑模块自动模拟教师的操作,完成 同屏应用的目的。
[0376] 构建系统服务器学习能力,系统中字典表(数据库表)记录各种文件操作指令,并 通过数据库索引配对,把操作指令指向操作指令对应的实际执行语言,终端通过读取实际 执行语言,完成模拟操作的执行。
[0377] 通过应用本发明的方法,使得同屏数据信息不局限于图像等,通过传送指令及坐 标点数据的方式进行同屏信息推送,大大减少了网络的并发数据量,使得同屏速率在质上 有了大幅度的提升、节省大量的存储空间及使用流量,取代了传统视频流录制的方式。
[0378] W上描述是基于网络教学系统,围绕学生用户和教师用户之间的交流的同屏显示 进行的,可w理解的是,本发明中所谓的学生用户和教师用户在其他类似的基于网络的交 流系统可W是网络会议的参与者和会议主持人、发言人等,他们之间可W是平等的关系,也 可W是主从的关系,而且运样的关系是可W切换的或者对换的,所谓的学生用户和教师用 户W及网络教学系统并不是为了限定本发明的用途,只是作为一种典型现象进行的示例性 描述,任何基于网络的需要将某终端上显示的内容和/或操作的内容发送到网络另一端的 其他至少一个终端的应用,均适用于本发明。
[0379] W上介绍了本发明的较佳实施方式,旨在使得本发明的精神更加清楚和便于理 解,并不是为了限制本发明,凡在本发明的精神和原则之内,所做的修改、替换、改进,均应 包含在本发明所附的权利要求概况的保护范围之内。
【主权项】
1. 一种图像同步显示方法,用于包括教师用户终端、学生用户终端、服务器和网络的网 络教学系统,包括以下步骤: 一教师用户终端启动步骤,准备获取用于同步显示的数据; 一同屏显示数据获取步骤,获取用于同步显示的同屏显示图像数据; 一同屏应用数据获取步骤,获取用于同步显示的同屏应用操作数据; 一图像压缩步骤,采用JPEG格式压缩获取的所述同屏显示图像数据; 一图像发送判断步骤,判断经过所述压缩步骤压缩的相邻两幅所述同屏显示图像是否 相同,根据判断结果确定是否发送所述图像; 一确定发送图像分割步骤,分割确定要发送的经过压缩的所述图像数据和所述应用数 据,形成发送数据包; 一数据包发送步骤,基于UDP协议以组播模式向多个用户终端发送所述数据包; 一线程监控步骤,用于在基于UDP协议传送时对线程进行实时监控,对丢包数据进行补 发操作; 一过期数据处理步骤,用于丢弃所述网络教学系统中的过期数据,保证网络传输的畅 通; 一同步显示步骤,用于在接收数据的所述学生用户终端上实现同步显示。2. 根据权利要求1的图像同步显示方法,其特征在于, 所述同屏显示数据是教师用户终端的屏幕上显示的内容,包括电子白板、投影输入装 置、手写输入装置、黑板或白板及图像采集装置包括照相机和摄像机采集的图像数据; 所述采集的图像数据是BMP格式的。3. 根据权利要求1的图像同步显示方法,其特征在于, 通过教师用户终端上的客户端或者APP记录传送指令及坐标点数据包括Path路径坐标 数据的方式获得需要的所述同屏应用数据。4. 根据权利要求3的图像同步显示方法,其特征在于, 所述Path路径坐标数据的记录过程如下: A1、解析记录的Path路径坐标数据,并存放至临时的指令坐标堆栈中,然后对屏幕进行 初始布局,在屏幕的Canvas画布上先设置背景图案; A2、新建一个Bitmap,并以此Bitmap生成一个临时画布temptCanvas; A3、将tempBitmap背景设置为透明,这样做的目的是把临时画布temptCanvas的目标, 定位在新建的tempBitmap上; A4、通过所述构造后,提取指令堆栈中的坐标指令,--还原,通过temptCanvas进行从 写,temptCanvas的一切draw函数,都会把相应的图像画在临时的tempBitmap上,这样在动 作回溯的过程中,画点、画线调用temptCanvas而不是原先屏幕上的Canvas,包括 temptCanvas.drawPoint,temptCanvasRect; A5、所有的指令坐标堆栈执行完毕后,执行Canvas.drawBitmap(tempBitmap,0,0,nul1) ;temptCanvas负责的是将各种画笔痕迹画在tempBitmap上,而Canvas负责将 tempBitmap绘制到屏幕上。5. 根据权利要求1的图像同步显示方法,其特征在于, 在执行所述图像压缩步骤前,将未压缩的所述图像数据进行备份,形成原始图像备份 数据库,当用户收到压缩的图像而需要查看更精细的图像时,可以通过点击操作从所述原 始图像备份数据库中下载原始图像。6. 根据权利要求5的图像同步显示方法,其特征在于, 在执行完所述图像发送判断步骤后,将确定不同步显示给学生用户终端的压缩图像的 原始备份数据从所述数据库中删除。7. 根据权利要求1的图像同步显示方法,其特征在于, 所述图像压缩步骤进一步包括JPEG图像一次压缩和图像二次压缩。8. 根据权利要求7的图像同步显示方法,其特征在于, 在所述JPEG图像一次压缩过程中,在对所述图像进行压缩处理时,将每幅所述图像的DC特征值和AC特征值复制另存为独立的数据文件; 根据所述复制另存的数据文件,依次计算前后两幅相邻图像的所述DC和AC特征值的差 异值,S卩DC和AC特征向量各分量之差的总和,差异值越大说明前后两幅图像的差别越大,差 异值越小或者没有差异说明前后两幅图像的差别越小或者没有差别,判断为后面的这幅图 像无需传送到学生用户终端进行同步显示。9. 根据权利要求8的图像同步显示方法,其特征在于, 所述特征值的差异值的计算方法为: 将前后相邻两幅图像的DC和AC特征值值进行对比, 对于DC特征值值,对比其分量的正负号,如果分量同号标记为1,否则标记为0; 对于AC特征值值,根据设定的对比阈值,如果分量之差超过对比阈值标记为0,否则标 记为1; 由此,求出0或1的数目,相加求和,可以得出前后相邻两幅图像之间的差异值;其中, 0的数目越多表明特征向量的差异越大,图像的差异越大。10. 根据权利要求9的图像同步显示方法,其特征在于, 设置多个存储复制另存的DC和AC特征值存储文件,存储满一个文件夹,就使用另一个 存储文件,之后系统清空所述存储满的文件夹备用。11. 根据权利要求9的图像
同步显示方法,其特征在于, 当长时间检测到前后截屏的内容没有变化时,逐步自动延长截取屏幕图像内容的时 间。12. 根据权利要求9的图像同步显示方法,其特征在于, 当检测到差异值保持在一定范围内基本平稳时,将当前屏幕的内容作为第一版板书内 容进行标记; 当检测到差异值出现较大变化时,判断为新的一个版面的板书或新的显示内容开始。13. 根据权利要求7的图像同步显示方法,其特征在于, 所述图像二次压缩步骤,根据图像大小与结合系统指定的文件字节数的{最小值、最大 值}: {minSize,maxSize},设置进一步的压缩比率: If(image.getBytes()>maxSize) {压缩比率=image·getBytesO/maxSize*系统定义偏移量} Else, {:压缩比率=1}; 根据由压缩图像构成的图像的大小与指定的文件字节数的{111;[115126,1]^15126}获得图 像压缩比率: 如果图像的大小大于最大值, 压缩比率=图像大小/最大值*系统定义偏移量,否则,压缩比率=1;其中, 所述偏移量设置为0.4~0.6之间。14. 根据权利要求1的图像同步显示方法,其特征在于, 所述压缩获得的JPEG图像以及同屏应用数据包大于报文的限制长度时,会按照报文等 比,将所述JPEG图像以及同屏应用数据包分割成若干子数据包,即 分割成若干临时TMP文件,这些分割的临时TMP文件通过网络以组播方式进行传送,学 生用户终端获得所有的分割TMP文件后,对分割TMP文件进行合并,形成完整的JPEG图像,并 在学生用户终端本地显示。15. 根据权利要求14的图像同步显示方法,其特征在于, 根据数据长度,动态计算并拆分数据,并且最大的拆分数量不超过5个这样两组条件进 行综合计算,从而得到一个较优的报文数组进行发送。16. 根据权利要求1的图像同步显示方法,其特征在于, 所述学生用户终端的客户端在收到了来自教师用户终端的组播数据包时,会先校验收 到的数据是否已经接受完全,如果接受完全会将数据报文进行合并还原; 在每收到一个数据报文的同时,立刻给教师用户终端发送反馈信息; 学生用户终端接收到指令信息后,会向教师用户终端发送反馈信息。17. 根据权利要求16的图像同步显示方法,其特征在于, 所述线程监控步骤具体包括: 线程监控步骤B1、数据报文发送处理步骤: 教师用户终端对发送的数据报文进行签名编号,确保每次发送的报文组ID统一并且唯一,然后将数据报文发送至无线AP的组播地址,范围在234.5.*.*组播网段间固定组播地 址,教师用户终端在启动程序时会自动计算组播地址,确保在一个网络环境内特别是局域 网络环境内,每个课堂都独立占用为一个组播地址; B2、自守护线程启动步骤: 在数据报文发送后,教师用户终端会启动一个自守护线程,启动计时器,并建立补发堆 栈,将本次的发送数据、发送目标存入补发堆栈,在到达自守护线程启动时间后,没有收到 学生用户终端的数据报文反馈,自守护线程会启动数据报文补发处理,对没有反馈的学生 用户终端补充发送数据包; B3、反馈守护线程启动步骤: 教师用户终端发送完组播UDP数据包后,当第一次收到学生用户终端的反馈消息后,会 自动启动反馈守护线程,该线程会按照拆分后的数据包对用户终端的反馈进行保证重传处 理,同时停止自守护线程; B4、报文反馈步骤: 学生用户终端的客户端在收到了来自教师用户终端的组播数据包时,会先校验收到的 数据是否已经接受完全,如果接受完全会将数据报文进行合并还原;在每收到一个数据报 文的同时,立刻给教师用户终端发送反馈信息。18. 根据权利要求1的图像同步显示方法,其特征在于, 所述过期数据处理步骤具体过程如下: C1、教师用户终端上传组播报文到服务器,服务器通过网络传输把组播报文给学生用 户终端; C2、学生用户终端收到的组播报文时,如果报文签名为当前正在处理的报文组,则将报 文信息入栈,并反馈信息发送给教师用户终端; C3、如果学生用户终端收到的组播报文签名比当前栈中处理的数据新,则表明栈中的 数据已经过期,会将栈中数据清空,同时将新数据入栈,等待报文数据接收完全后进行后续 处理; C4、如果学生用户终端收到的组播报文签名比当前栈中处理的数据旧,则表明该收到 的数据报文已经过期,系统放弃当前接收到的数据报文; C5、教师用户终端收到学生用户终端的数据报文反馈信息,如果报文时间戳已经过期, 表明学生用户终端延迟收到消息,数据已过期,教师用户终端对该数据报文进行丢弃,不进 行其它任何处理,如果收到的数据报文时间戳为当前发送数据包,则对该反馈信息进行接 收。19. 根据权利要求1的图像同步显示方法,其特征在于, 所述同步显示步骤,在学生用户终端上的客户端或APP中, 内置有图像子数据包合并显示模块,用于将接收到的若干子数据包如若干临时TMP文 件,合并形成完整的JPEG图像,并在学生用户终端上进行显示,完成同屏显示的目的;以及, 内置有与教师用户终端同样的文件操作逻辑模块,在同屏应用过程中,学生用户终端 事前加载本次课堂的电子文件资源,教师在讲课直播过程中,学生用户终端将通过服务器 获得的教师操作电子文档/文件的操作指令数据如指令及坐标点数据,利用已经内置的逻 辑模块结合下载的课堂电子文件资源,通过所述逻辑模块自动模拟教师的操作,完成同屏 应用显示的目的。20. 根据权利要求1-19的图像同步显示方法,其特征在于, 学生用户终端将实时接收到的图像进行本地显示,并将一系列接收到的同步图像数据 保存成可再现的视频流; 将所述视频流的播放与有关教师的音频录音根据时间特征匹配起来,形成带有语音的 视频流。21. -种图像同步显示装置,用于包括教师用户终端、学生用户终端、服务器和网络的 网络教学系统,包括处理器;以及 计算机可读存储介质,具有由所述处理器执行用于执行操作的计算机可读程序代码, 所述操作包括: 一教师用户终端启动步骤,准备获取用于同步显示的数据; 一同屏显示数据获取步骤,获取用于同步显示的同屏显示图像数据; 一同屏应用数据获取步骤,获取用于同步显示的同屏应用操作数据; 一图像压缩步骤,采用JPEG格式压缩获取的所述同屏显示图像数据; 一图像发送判断步骤,判断经过所述压缩步骤压缩的相邻两幅所述同屏显示图像是否 相同,根据判断结果确定是否发送所述图像; 一确定发送图像分割步骤,分割确定要发送的经过压缩的所述图像数据和所述应用数 据,形成发送数据包; 一数据包发送步骤,基于UDP协议以组播模式向多个用户终端发送所述数据包; 一线程监控步骤,用于在基于UDP协议传送时对线程进行实时监控,对丢包数据进行补 发操作; 一过期数据处理步骤,用于丢弃所述网络教学系统中的过期数据,保证网络传输的畅 通; 一同步显示步骤,用于在接收数据的所述学生用户终端上实现同步显示。22. 根据权利要求21的图像同步显示装置,其特征在于, 所述同屏显示数据是教师用户终端的屏幕上显示的内容,包括电子白板、投影输入装 置、手写输入装置、黑板或白板及图像采集装置包括照相机和摄像机采集的图像数据; 所述采集的图像数据是BMP格式的。23. 根据权利要求21的图像同步显示装置,其特征在于, 通过教师用户终端上的客户端或者APP记录传送指令及坐标点数据包括Path路径坐标 数据的方式获得需要的同屏应用数据。24. 根据权利要求23的图像同步显示装置,其特征在于, 所述Path路径坐标数据的记录过程如下: A1、解析记录的Path路径坐标数据,并存放至临时的指令坐标堆栈中,然后对屏幕进行 初始布局,在屏幕的Canvas画布上先设置背景图案; A2、新建一个Bitmap,并以此Bitmap生成一个临时画布temptCanvas; A3、将tempBitmap背景设置为透明,这样做的目的是把临时画布temptCanvas的目标, 定位在新建的tempBitmap上; A4、通过所述构造后,提取指令堆栈中的坐标指令,--还原,通过temptCanvas进行从 写,temptCanvas的一切draw函数,都会把相应的图像画在临时的tempBitmap上,这样在动 作回溯的过程中,画点,画线调用temptCanvas而不是原先屏幕上的Canvas,包括 temptCanvas.drawPoint,temptCanvasRect; A5、所有的指令坐标堆栈执行完毕后,执行Canvas·drawBitmap(tempBitmap,0,0,nul1);temptCanvas负责的是将各种画笔痕迹画在tempBitmap上,而Canvas负责将 tempBitmap绘制到屏幕上。25. 根据权利要求21的图像同步显示装置,其特征在于, 在执行所述图像压缩步骤前,将未压缩的所述图像数据进行备份,形成原始图像备份 数据库,当用户收到压缩的图像而需要查看更精细的图像时,可以通过点击操作从所述原 始图像备份数据库中下载原始图像。26. 根据权利要求25的图像同步显示装置,其特征在于, 在执行完所述图像发送判断步骤后,将确定不同步显示给学生用户终端的压缩图像的 原始备份数据从所述数据库中删除。27. 根据权利要求21的图像同步显示装置,其特征在于, 所述图像压缩步骤进一步包括JPEG图像一次压缩和图像二次压缩。28. 根据权利要求27的图像同步显示装置,其特征在于, 在所述JPEG图像一次压缩过程中,在对所述图像进行压缩处理时,将每幅所述图像的DC特征值和AC特征值复制另存为独立的数据文件; 根据所述复制另存的数据文件,依次计算前后两幅相邻图像的所述DC和AC特征值的差 异值,S卩DC和AC特征向量各分量之差的总和,差异值越大说明前后两幅图像的差别越大,差 异值越小或者没有差异说明前后两幅图像的差别越小或者没有差别,判断为这幅图像无需 传送到学生用户终端进行同步显示。29. 根据权利要求28的图像同步显示装置,其特征在于, 所述特征值的差异值的计算方法为: 将前后相邻两幅图像的DC和AC特征值值进行对比, 对于DC特征值值,对比其分量的正负号,如果分量同号标记为1,否则标记为0; 对于AC特征值值,根据设定的对比阈值,如果分量之差超过对比阈值标记为0,否则标 记为1; 由此,求出0或1的数目,相加求和,可以得出前后相邻两幅图像之间的差异值;其中, 0的数目越多表明特征向量的差异越大,图像的差异越大。30. 根据权利要求29的图像同步显示装置,其特征在于, 设置多个存储复制另存的DC和AC特征值存储文件,存储满一个文件夹,就使用另一个 存储文件,之后系统清空所述存储满的文件夹备用。31. 根据权利要求29的图像同步显示装置,其特征在于, 当长时间检测到前后截屏的内容没有变化时,逐步自动延长截取屏幕图像内容的时 间。32. 根据权利要求29的图像同步显示装置,其特征在于, 当检测到差异值保持在一定范围内基本平稳时,将当前屏幕的内容作为第一版板书内 容进行标记; 当检测到差异值出现较大变化时,判断为新的一个版面的板书或新的显示内容开始。33. 根据权利要求27的图像同步显示装置,其特征在于, 所述图像二次压缩步骤,根据图像大小与结合系统指定的文件字节数的{最小值、最大 值}: {minSize,maxSize},设置进一步的压缩比率: If(image.getBytes()>maxSize) {压缩比率=image·getBytesO/maxSize*系统定义偏移量} Else, {压缩比率=1}; 根据由压缩图像构成的图像的大小与指定的文件字节数的{111;[115126,1]^15126}获得图 像压缩比率: 如果图像的大小大于最大值, 压缩比率=图像大小/最大值*系统定义偏移量,否则,压缩比率=1;其中, 所述偏移量设置为0.4~0.6之间。34. 根据权利要求21的图像同步显示装置,其特征在于, 所述压缩获得的JPEG图像以及同屏应用数据包大于报文的限制长度时,会按照报文等 比,将所述JPEG图像以及同屏应用数据包分割成若干子数据包,即 分割成若干临时TMP文件,这些分割的临时TMP文件通过网络以组播方式进行传送,学 生用户终端获得所有的分割TMP文件后,对分割TMP文件进行合并,形成完整的JPEG图像,并 在学生用户终端本地显示。35. 根据权利要求34的图像同步显示装置,其特征在于, 根据数据长度,动态计算并拆分数据,并且最大的拆分数量不超过5个这样两组条件进 行综合计算,从而得到一个较优的报文数组进行发送。36. 根据权利要求21的图像同步显示装置,其特征在于, 所述学生用户终端的客户端在收到了来自教师用户终端的组播数据包时,会先校验收 到的数据是否已经接受完全,如果接受完全会将数据报文进行合并还原; 在每收到一个数据报文的同时,立刻给教师用户终端发送反馈信息; 学生用户终端接收到指令信息后,会向教师用户终端发送反馈信息。37. 根据权利要求36的图像同步显示装置,其特征在于, 所述线程监控步骤具体包括: 线程监控步骤B1、数据报文发送处理步骤: 教师用户终端对发送的数据报文进行签名编号,确保每次发送的报文组ID统一并且唯一,然后将数据报文发送至无线AP的组播地址,范围在234.5.*.*组播网段间固定组播地 址,教师用户终端在启动程序时会自动计算组播地址,确保在一个网络环境内特别是局域 网络环境内,每个课堂都独立占用为一个组播地址; B2、自守护线程启动步骤: 在数据报文发送后,教师用户终端会启动一个自守护线程,启动计时器,并建立补发堆 栈,将本次的发送数据、发送目标存入补发堆栈,在到达自守护线程启动时间后,没有收到 学生用户终端的数据报文反馈,自守护线程会启动数据报文补发处理,对没有反馈的学生 用户终端补充发送数据包; B3、反馈守护线程启动步骤: 教师用户终端发送完组播UDP数据包后,当第一次收到学生用户终端的反馈消息后,会 自动启动反馈守护线程,该线程会按照拆分后的数据包对用户终端的反馈进行保证重传处 理,同时停止自守护线程; B4、报文反馈步骤: 学生用户终端的客户端在收到了来自教师用户终端的组播数据包时,会先校验收到的 数据是否已经接受完全,如果接受完全会将数据报文进行合并还原;在每收到一个数据报 文的同时,立刻给教师用户终端发送反馈信息。38. 根据权利要求31的图像同步显示装置,其特征在于, 所述过期数据处理步骤具体过程如下: C1、教师用户终端上传组播报文到服务器,服务器通过网络传输把组播报文给学生用 户终端; C2、学生用户终端收到的组播报文时,如果报文签名为当前正在处理的报文组,则将报 文信息入栈,并反馈信息发送给教师用户终端; C3、如果学生用户终端收到的组播报文签名比当前栈中处理的数据新,则表明栈中的 数据已经过期,会将栈中数据清空,同时将新数据入栈,等待报文数据接收完全后进行后续 处理; C4、如果学生用户终端收到的组播报文签名比当前栈中处理的数据旧,则表明该收到 的数据报文已经过期,系统放弃当前接收到的数据报文; C5、教师用户终端收到学生用户终端的数据报文反馈信息,如果报文时间戳已经过期, 表明学生用户终端延迟收到消息,数据已过期,教师用户终端对该数据报文进行丢弃,不 进行其它任何处理,如果收到的数据报文时间戳为当前发送数据包,则对该反馈信息进行 接收。39. 根据权利要求21的图像同步显示装置,其特征在于, 所述同步显示步骤,在学生用户终端上的客户端或APP中, 内置有图像子数据包合并显示模块,用于将接收到的若干子数据包如若干临时TMP文 件,合并形成完整的JPEG图像,并在学生用户终端上进行显示,完成同屏显示的目的;以及 内置有与教师用户终端同样的文件操作逻辑模块,在同屏应用过程中,学生用户终端 事前加载本次课堂的电子文件资源,教师在讲课直播过程中,学生用户终端将通过服务器 获得的教师操作电子文档/文件的操作指令数据如指令及坐标点数据,利用已经内置的逻 辑模块结合下载的课堂电子文件资源,通过所述逻辑模块自动模拟教师的操作,完成同屏 应用显示的目的。40. 根据权利要求21-39的图像同步显示装置,其特征在于, 学生用户终端将实时接收到的图像进行本地显示,并将一系列接收到的同步图像数据 保存成可再现的视频流; 将所述视频流的播放与有关教师的音频录音根据时间特征匹配起来,形成带有语音的 视频流。41. 一种网络教学系统,包括服务器和多个用户终端,其特征在于, 执行如权利要求1-20任一项所述的图像同步显示方法或者包括如权利要求21-40任一 项所述的图像同步显示装置,用于将所述多个用户终端之一的屏幕上显示的图像内容发送 到其他所述终端上实现同步显示。
【专利摘要】提供一种同步显示的方法和装置,通过定时截取屏幕内容并进行压缩处理,具备了随时可以进行传送的能力,提高了传送的效果,缩短了传送的时间。利用图像压缩过程中解析获得的特征值值实现了截屏图像内容的快速比对,实现了同步图像的智能判断,自动同步传送,无需手动操作,而且由于尽量避免了传送重复的屏幕内容,减轻了学生用户终端存储的压力,又能保证内容的全面性,此外由于对屏幕图像内容进行了标记和判断,有助于提高学生复习的效率,比如在复习时,可以直接看每一板书的最后几个版面。
【IPC分类】H04N21/6437, G06Q50/20, H04N21/41, H04N21/647, H04N21/6405
【公开号】CN105491414
【申请号】CN201510801936
【发明人】卢启伟, 刘胜强
【申请人】深圳市时尚德源文化传播有限公司
【公开日】2016年4月13日
【申请日】2015年11月19日