您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 经营企划 > 后端视频智能分析功能实现方案
视频智能分析实现方案1、实现的功能在智能分析系统中,智能分析模块(嘉崎智能分析模块)从视频监控平台获取视频码流后对其进行智能分析,并将分析结果(告警信息及视频截图)上报给视频监控平台,视频监控平台将分析结果展现给客户端,整个结构如图所示。前端编码设备平台智能分析模块客户端智能分析模块需要完成如下功能:1、实现视频分析算法,包括穿越警戒区域、进入区域检测、离开区域检测、徘徊检测、聚集检测、交通拥挤检测、非法停车检测、车辆逆行检测、单向人流量检测、双向人流量检测、物品丢失检测、物品遗留检测;2、从视频监控平台获取压缩的视频码流,解码并进行分析。(码流格式为720P3M码流);3、输出视频流,其中包含规则信息和实时分析信息,平台将包含规则信息和实时分析信息的视频流转发到客户端,同时,需要提供码流的解码库,便于客户端解码展现;4、接收智能分析规则,包括区域、阀值等参数设置;5、将分析结果和截图上报到视频监控平台;平台需要完成的功能:1、将前端编码设备的码流转发给智能分析模块;2、从智能分析模块请求视频流,并将流转发给客户端;3、接收智能分析模块的分析结果和截图;4、从客户端接收规则设置,将请求下发到智能分析模块;5、平台可提供SDK,便于智能分析设备获取视频,解码得到YUV数据;客户端需要完成的功能:1、客户端提供界面,便于用户设置智能分析规则;2、展现实时视频,包含规则信息和实时分析信息;3、展现分析结果和截图;4、其它功能,如报表等。2、平台协议介绍目前,前端设备与平台之间、平台与客户端之间信令协议为SIP+XML协议,媒体协议为RTP/RTCP协议,视频建立的流程如下图所示;客户端中心管理单元编码器INVITE100Trying101DialogEstablishmentINVITE100Trying101DialogEstablishment200OK200OKACKACKRTP/RTCP媒体分发单元RTP/RTCPMSGX_START_MEDIA_REQ(编码器端)MSGX_START_MEDIA_RESP(编码器端)MSGX_START_MEDIA_REQ(客户端)MSGX_START_MEDIA_RESP(客户端)SIP+XML消息示例如下(平台从前端编码器获取视频编码参数):请求:MESSAGEsip:420100000325701229@10.10.4.161:5060SIP/2.0Via:SIP/2.0/UDP10.10.5.11:5060;rport;branch=z9hG4bK921473260From:sip:cms@10.10.5.11:5060;tag=849763891To:sip:420100000325701229@10.10.4.161:5060Call-ID:2064933922cms10310353115060cms10310353115060CSeq:393273MESSAGEContact:sip:cms@10.10.5.11:5060User-Agent:SIP.NET1.0evaluationversionMax-Forwards:70Content-Type:application/global_eye_v10+xmlContent-Length:407?xmlversion=1.0encoding=UTF-8?MessageVersion=1.0IE_HEADERMessageType=MSG_GET_PU_IMAGE_ENCODE_PARA_REQSequenceNumber=0SessionID=SourceID=420100105000002541DestinationID=420100000325701229/IE_IMAGE_ENCODE_PARAVideoId=1EncodeMode=0PicQuality=0BitRate=0BitRateType=0FrameRate=0ImageSize=0StreamType=1IFrameInterval=0ChannelMode=0//Message响应:SIP/2.0200OKVia:SIP/2.0/UDP10.10.5.11:5060;rport;branch=z9hG4bK921473260From:sip:cms@10.10.5.11:5060;tag=849763891To:sip:420100000325701229@10.10.4.161:5060Call-ID:2064933922cms10310353115060cms10310353115060CSeq:393273MESSAGEUser-Agent:SIP.NET1.0evaluationversionAllow:INVITE,ACK,OPTIONS,CANCEL,BYE,SUBSCRIBE,NOTIFY,MESSAGE,INFO,REFER,UPDATEContent-Type:application/global_eye_v10+xmlContent-Length:628?xmlversion=1.0encoding=UTF-8?MessageVerison=1.0IE_HEADERMessageType=MSG_GET_PU_IMAGE_ENCODE_PARA_RESPSequenceNumber=0SessionID=SourceID=420100000325701229DestinationID=420100105000002541/IE_RESULTValue=0ErrorCode=0ErrorPhrase=PU_SUCCESS/IE_IMAGE_ENCODE_PARAVideoId=1EncodeMode=6PicQuality=0BitRate=3072BitRateType=1FrameRate=25ImageSize=8StreamType=1IFrameInterval=100/IE_IMAGE_ENCODE_PARAVideoId=1EncodeMode=6PicQuality=2BitRate=128BitRateType=0FrameRate=12ImageSize=2StreamType=0IFrameInterval=100//Message3、实现方案智能分析模块与平台整合有两种方式:1、智能分析模块实现SIP协议、RTP/RTCP协议,与平台之间通过协议方式交互;2、智能分析模块提供SDK,平台开发代理模块,完成嘉崎SDK与SIP协议的转换。本项目计划要在1月10日完成,考虑到时间进度,我们建议采用SDK方式接入。虹信和嘉崎都向对方提供相应SDK。3.1基本流程3.1.1从前端编码器获取视频智能分析模块中心管理单元媒体分发单元前端编码设备平台SDK智能分析模块调用SDK(平台为智能分析模块提供获取视频SDK),从平台获取视频流并解码得到YUV数据。3.1.2平台开始分析任务智能分析模块中心管理单元媒体分发单元客户端平台代理单元设置规则设置规则SDK开始分析任务开始分析任务1、客户端在界面上设置规则,通过SIP消息发给中心管理单元,然后透传给代理单元;2、代理单元将SIP消息转换为嘉崎SDK,调用SDK向智能分析模块下发规则;3、规则设置成功后,客户端请求开始分析任务;4、代理单元同样将开始分析任务转换为嘉崎SDK后下发给智能分析模块;5、智能分析模块根据3.1.1的方法获取视频进行分析。3.1.3告警结果上报智能分析模块中心管理单元图片管理单元客户端平台代理单元告警上报SDK图片告警管理单元1、智能分析模块对视频进行分析,将分析结果(告警信息)和图片通过SDK(嘉崎为虹信提供)回调函数告知代理单元;2、代理单元将告警信息转换后转发给中心管理单元;3、代理单元将图片信息转换后转发给图片管理单元;4、客户端从中心管理单元上查看相关告警信息。3.1.4请求实时分析视频平台向智能分析模块请求视频,视频信息中包含规则信息和实时分析信息。智能分析模块中心管理单元媒体分发单元客户端平台代理单元SDK1、客户端请求实时分析视频,代理单元调用SDK(嘉崎提供)下发请求给智能分析模块(接口中包含媒体分发单元的IP和端口);2、智能分析模块将视频打包成标准RTP数据包后发送给媒体分发单元,媒体分发单元将数据分发给客户端。3.2虹信为嘉崎提供的接口3.2.1SDK初始化SDK初始化HxAgent_Initial函数原型intHxAgent_Initial()函数功能SDK初始化参数无返回值0:成功;其它值:失败;3.2.2SDK销毁SDK销毁HxAgent_Destory函数原型intHxAgent_Destory()函数功能SDK销毁参数无返回值0:成功;其它值:失败;3.2.3设置媒体处理回调函数设置媒体处理回调函数HxAgent_Setmediacallback函数原型voidHxAgent_Setmediacallback(HxAgent_mediacallbackproc);函数功能设置媒体处理回调函数参数HxAgent_mediacallback:媒体回调函数说明:回调函数原型为:typedefint(*HxAgent_mediacallback)(longSinkID,char*pBuf,longnSize,FRAME_INFO*pMediadata,longreserved);//reserved为userdata其中,SinkID:为请求视频(HxAgent_StartVideo)时返回的值;pBuf:媒体数据;nSize:媒体数据长度;pMediadata:媒体信息,如视频的宽、高、YUV格式(目前只支持YUV420),帧率等。在使用中应注意,媒体回调函数不能被阻塞,上层应用得到YUV数据后,应尽快拷贝到其它位置进行后续处理。返回值0:成功3.2.4用户登录登录函数HxAgent_Login函数原型intHxAgent_Login(char*username,char*password,char*serverip,UINTport,char*ResouceID);函数功能登录到视频监控平台参数username:登录的用户名password:用户密码serverip:服务器的ip地址serverport:服务器端口号ResouceID:暂时不用返回值0:成功;其它值:失败;注:此处的函数返回值只表明函数调用成功,并不代表是否真正登录成功到平台,登录的结果要在事件回调函数中进行处理。3.2.5用户登出用户登出HxAgent_LogOut函数原型intHxAgent_LogOut();函数功能用户登出参数无返回值0:成功;其它值:失败;3.2.6请求视频请求视频HxAgent_StartVideo函数原型longHxAgent_StartVideo(char*puid,intchannelno,intmediatype,inttransType,longcalluserdata,intplayWnd);函数功能请求指定的视频播放参数puid:设备id号;channelno:设备通道号;mediatype:视频:HXAGENT_VIDEO音频:HXAGENT_AUDIOtransType:HXAGENT_TRANS_UDP、HXAGENT_TRANS_TCPplayWnd:视频播放窗口句柄返回值=0:成功,该返回值为请求视频的句柄,用于停止视频或媒体回调中进行关联;3.2.7停止视频停止视频HxAgent_StopVideo函数原型intHxAgent_StopVideo(longSinkID);函数功能停止视频参数SinkID:调用HxAgent_StartVideo返回的视频句柄返回值0:成功;其它值:失败;注:媒体数据回调处理函数int(*HxAgent_mediacallback)(longSinkID,char*pBuf,longnS
本文标题:后端视频智能分析功能实现方案
链接地址:https://www.777doc.com/doc-4285472 .html