CN103975583A - 捕获多个视频通道用于视频分析和编码 - Google Patents

捕获多个视频通道用于视频分析和编码 Download PDF

Info

Publication number
CN103975583A
CN103975583A CN201180075451.6A CN201180075451A CN103975583A CN 103975583 A CN103975583 A CN 103975583A CN 201180075451 A CN201180075451 A CN 201180075451A CN 103975583 A CN103975583 A CN 103975583A
Authority
CN
China
Prior art keywords
video
frame
equipment
coding
unit
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
Application number
CN201180075451.6A
Other languages
English (en)
Inventor
A.米什拉
J.M.罗德里格斯
N.多达普内尼
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Intel Corp
Original Assignee
Intel Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Intel Corp filed Critical Intel Corp
Publication of CN103975583A publication Critical patent/CN103975583A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/132Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/137Motion inside a coding unit, e.g. average field, frame or block difference
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/423Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/18Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

视频分析可用于通过选择性地仅对帧的部分编码并且相反使用之前编码的部分来辅助视频编码。之前编码的部分可在后续帧具有小于阈值的运动水平时使用。在这样的情况下,在一些实施例中,后续帧的全部或部分可未被编码,从而使带宽和速度增加。

Description

捕获多个视频通道用于视频分析和编码
技术领域
这大体上涉及计算机并且更特定地涉及视频处理。
背景技术
存在许多应用,其中必须处理和/或存储视频。一个示例是视频监控,其中可为了安全或其他目的而接收、分析和处理一个或多个视频馈送。另一个常规应用是用于视频会议。
典型地,通用处理器(例如中央处理单元)用于视频处理。在一些情况下,专用处理器(叫作图形处理器)可帮助中央处理单元。
视频分析牵涉获得关于视频信息内容的信息。例如,视频处理可包括内容分析,其中分析内容视频以便检测某些事件或发生或找到感兴趣的信息。
附图说明
图1是根据本发明的一个实施例的系统架构。
图2是根据一个实施例对于图1中示出的视频分析引擎的电路描绘。
图3是根据本发明的一个实施例用于视频捕获的流程图。
图4是根据一个实施例对于二维矩阵存储器的流程图。
图5是根据一个实施例对于分析辅助编码的流程图。
图6是对于另一个实施例的流程图。
图7是根据一个实施例图2中示出的存储器控制器的描绘。
图8是根据一个实施例对于存储器控制器的流程图。
图9是对于一个实施例的视频捕获接口的示意描绘。
具体实施方式
根据一些实施例,用于视频分析引擎的存储器控制器可通过自动访问主存储器内的整个矩阵或主存储器内的任何存储位点而促进存储器操作。在一些实施例中,该主存储器可存储二维(2D)表示,其使存储器控制器能够随机访问存储器矩阵内的任何位点(其包括一个像素)。
在一些实施例中,内部存储器可表示为2D存储器矩阵并且外部存储器可以是常规的线性存储器。存储在线性存储器中的数据然后可转换成二维格式用于在视频分析引擎内使用。
参考图1,计算机系统10可以是多种计算机系统中的任一个,这些计算机系统包括使用例如视频监控和视频会议应用等视频分析的那些计算机系统,以及不使用视频分析的实施例。仅举几例,系统10可以是台式计算机、服务器、便携式计算机、移动互联网设备或蜂窝电话。
系统10可具有一个或多个主机中央处理单元12,其耦合于系统总线14。系统存储器22可耦合于系统总线14。尽管提供主机系统架构的示例,本发明绝不局限于任何特定系统架构。
系统总线14可耦合于总线接口16,其进而耦合于常规总线18。在一个实施例中,可使用外围部件互连高速(PCIe)总线,但本发明绝不局限于任何特定总线。
视频分析引擎20可经由总线18耦合于主机。在一个实施例中,视频分析引擎可以是单个集成电路,其提供编码和视频分析两者。在一个实施例中,集成电路可使用嵌入式动态随机存取存储器(EDRAM)技术。然而,在一些实施例中,可免除编码或视频分析。另外,在一些实施例中,引擎20可包括存储器控制器,其控制板上集成的二维矩阵存储器,以及提供与外部存储器的通信。
从而,在图1中图示的实施例中,视频分析引擎20与本地动态随机存取存储器(DRAM)19通信。具体地,视频分析引擎20可包括存储器控制器,用于访问存储器19。备选地,引擎20可使用系统存储器22并且可包括到系统存储器的直接连接。
一个或多个拍摄装置24也可耦合于视频分析引擎20。在一些实施例中,可采用标准清晰度格式接收多至四个同时视频输入。在一些实施例中,可在三个输入上提供一个高清晰度输入并且可在第四输入上提供一个标准清晰度。在其他实施例中,可提供更多或更少的高清晰度输入并且可提供更多或更少的标准清晰度输入。作为一个示例,三个输入中的每个可接收十位的高清晰度输入数据,例如R、G和B输入或Y、U和V输入,各个在独立的十位输入线上。
视频分析引擎20(在图2中示出)的一个实施例在页面顶部处在具有四个拍摄装置通道输入的实施例中描绘。这四个输入可由视频捕获接口26接收。视频捕获接口26可采用拍摄装置输入或其他视频信息(仅举几例,其包括电视、数字视频记录器或媒体播放器输入)的形式接收多个同时视频输入。
视频捕获接口自动捕获并且复制每个输入帧。输入帧的一个副本提供给VAFF单元66并且另一个副本可提供给VEFF单元68。VEFF单元68负责将视频存储在外部存储器上,例如存储器22(在图1中示出)。在一个实施例中,外部存储器可耦合于芯片上系统存储器控制器/仲裁器50。在一些实施例中,外部存储器上的存储可以是为了视频编码的目的。具体地,如果一个副本存储在外部存储器上,它可以由视频编码器32访问以用于采用期望格式对信息编码。在一些实施例中,多个格式可用并且系统可选择最可取的特定编码格式。
如上文描述的,在一些情况下,视频分析可用于提高视频编码器32所实现的编码过程的效率。一旦帧被编码,它们可经由PCI高速总线36而提供给主机系统。
同时,输入视频帧的其他副本存储在二维矩阵或主存储器28上。VAFF可同时处理并且传送全部四个输入视频通道。VAFF可包括四个复制单元来处理和传送视频。对于存储器28的视频的传送可使用复用。在一些实施例中,由于视频回扫时间中固有的延迟,多个通道的传输可以实时进行。
主存储器上的存储可选择性地非线性或线性地实现。在常规的线性寻址中,交叉寻址线上的一个或多个位点被规定成访问存储器位点。在一些情况下,可规定寻址线(例如字或位线)并且可指示沿该字或位线的范围使得寻址存储器线的一部分可采用自动的方式连续存储。
相比之下,在二维或非线性寻址中,可在一个操作中访问行线和列线两者。该操作可规定存储器矩阵内的初始点,例如在两个寻址线(例如行线或列线)的相交处。然后提供存储器大小或其他定界符来指示例如沿行线和列线的两个维度中的矩阵的范围。一旦规定初始点,整个矩阵可自动由可寻址位点的自动递增来存储。也就是说,不必回到主机或其他设备来确定存储初始点之后存储存储器矩阵的后续部分的地址。二维存储器卸载生成地址的任务或大致上完全消除它。因此,在一些实施例中,需要的带宽和访问时间两者都可减少。
基本上,可反过来进行相同的操作来读取二维存储器矩阵。备选地,二维存储器矩阵也可使用常规的线性寻址来访问。
尽管给出示例(其中规定存储器矩阵的大小),也可提供其他定界符,其包括两个维度(即,沿字和位线)中的每个中的范围。二维存储器在关于静止和移动画面、图形以及具有两个维度的数据的其他应用是有利的。
信息在两个维度或在一个维度中可以存储在存储器28中。在一个实施例中,一个与两个维度之间的转换可以在硬件中在运行时自动发生。
在一些实施例中,多个流的视频编码可以在视频编码器中进行,同时多个流也经受在视频分析功能单元42中的分析。这可通过在视频捕获接口26中制作流中的每个的副本并且向视频编码器32发送流中的每个的一个副本集而实现,而另一个副本送往视频分析功能单元42。
在一个实施例中,多个流中的每个的时间复用可在视频编码器32和视频分析功能单元42中的每个中进行。例如,基于用户输入,可对来自第一流的一个或多个帧编码,接着是来自第二流的一个或多个帧,接着是来自下一个流的一个或多个流,等。相似地,时间复用可采用相同的方式在视频分析功能单元42中使用,其中基于用户输入,来自一个流的一个或多个帧经受视频分析,然后是来自下一个流的一个或多个帧,等。从而,在编码器和视频分析功能单元中,可以大致上同时(即,在一个镜头(shot)中)处理一系列流。
在一些实施例中,用户可以设置首先处理哪个流的序列以及在任何特定时间要处理每个流中的多少帧。在视频编码器和视频分析引擎的情况下,在处理帧时,它们可以通过总线36而输出。
编码器中每个流的上下文可在寄存器组122中专用于该流的寄存器中保留,寄存器组122可包括用于流中的每个的寄存器。该寄存器组122可记录编码的特性,其已经采用多个方式中的一个(包括用于输入)而规定。例如,对于每个流所期望的分辨率、压缩率和编码类型可以被记录。然后,在出现时间复用编码时,视频编码器可以从对于正确的流的寄存器116访问对于被处理的当前流的正确特性。
相似地,相同的事情可使用寄存器组124在视频分析功能单元46中进行。也就是说,每个流的视频分析处理或编码的特性可以记录在寄存器124和122内,其中在每个寄存器组中对于每个流预留一个寄存器。
另外,用户或某种其他源可以指示在运行中改变特性。就“在运行中”而言,它意在指的是在视频分析功能单元42的情况下在分析处理期间出现的改变,或在视频编码器32的情况下在编码情况下出现的改变。
当在处理帧时发生改变时,改变可初始记录在阴影寄存器116(对于视频编码器)和阴影寄存器114(对于视频分析功能单元42)中。然后,一完成帧(或指定数量的帧),视频编码器32检查在寄存器116中是否存储任何改变。如果是这样的话,视频编码器通过路径120将那些改变传输到寄存器122,从而在对于在运行中改变其编码特性的每个流的适当的寄存器中更新新的特性。
再次,在一个实施例中,可在视频分析功能单元42中进行相同的运行中改变。当检测到运行中的改变时,现有的帧(或现有的工作集合)可使用旧特性来完成,同时将改变存储在阴影寄存器114中。然后在适当的时间,在工作负荷或帧已经完成处理后,改变可通过总线118从寄存器114传输到视频分析功能单元42以便存储在寄存器124中,从而正常取代在寄存器124之中的独立寄存器中对任何特定流存储的特性。然后,一旦完成更新,下一个处理负载使用新的特性。
从而,参考图6,序列130可在软件、固件和/或硬件中实现。在基于软件或固件的实施例中,序列可由存储在非暂时性计算机可读介质(例如光、磁或半导体存储器)中的计算机执行的指令来实现。例如,在编码器32的情况下,序列可存储在编码器内的存储器中,并且在分析功能单元的情况下,在一个实施例中,它们可例如存储在像素管线单元44中。
初始,序列等待用于编码或分析的上下文指令的用户输入。在一些实施例中,流程对于分析和编码可是相同的。一旦接收用户输入,如在菱形132中确定的,对于每个流在适合的寄存器122或124中存储上下文,如在框134中指示的。然后时间复用处理开始,如在框136中指示的。在该处理期间,菱形138处的检查确定是否已经存在任何处理改变指令。如果否的话,菱形142处的检查确定处理是否完成。如果否的话,时间复用处理继续。
如果已经接收处理改变,它可存储在适合的阴影寄存器114或116中,如在框140中指示的。然后,在完成当前处理任务时,改变可在下一个操作集中自动实现,即在视频编码器32的情况下是编码或在功能单元42的情况下是分析。
在一些实施例中,编码频率可随编码器上的负载的大小而改变。一般,编码器运行足够快使得它可以在从存储器读取下一个帧之前完成一个帧的编码。在许多情况下,编码引擎可以采用在下一个帧或帧集已经移出存储器之前对一个帧或帧集编码所需要的更快的速度运行。
上下文寄存器可存储用于进行编码或分析的任何必需的标准,其在编码器的情况下包括分辨率、编码类型和压缩率。一般,处理可采用循环方式进行,从而从一个流或通道到下一个地继续。在一个实施例中,编码数据然后输出到外围部件互连(PCI)高速总线18。在一些情况下,与PCI高速总线关联的缓冲器可从每个通道接收编码。即,在一些实施例中,可对与PCI高速总线关联的每个视频通道提供缓冲器。每个通道缓冲器可对由与PCI高速总线关联的仲裁器所控制的总线清空。在一些实施例中,仲裁器清空对于总线的每个通道的方式可受制于用户输入。
然后,参考图3,对于视频捕获20的系统可在硬件、软件和/或固件中实现。硬件实施例在一些情况下可因为它们可能够有更大的速度而是有利的。
如在框72中指示的,视频帧可从一个或多个通道接收。然后复制视频帧,如在框74中指示的。接着,视频帧的一个副本存储在外部存储器中用于编码,如在框76中指示的。其他副本存储在内部或主存储器28中用于分析目的,如在框78中指示的。
接着参考二维矩阵序列80(在图4中示出),序列可在软件、固件或硬件中实现。再次,在使用硬件实施例中可存在速度优势。
初始,菱形82处的检查确定是否已经接收存储命令。按常规,这样的命令可从主机系统接收,并且特别地从它的中央处理单元12接收。那些命令可由调派单元34接收,其然后向用于实现命令的引擎20的适合的单元提供命令。在已经实现命令时,在一些实施例中,调派单元再向主机系统报告。
如果牵涉存储命令,如在菱形82中确定的,可接收初始存储器位点和二维大小信息,如在框84中指示的。然后,将信息存储在适合的二维矩阵中,如在框86中指示的。初始位点可例如限定矩阵的左上角。存储操作可自动找到存储器20内具有需要大小的矩阵以便实现操作。在一些实施例中,一旦提供存储器中的初始点,操作可自动存储矩阵的后续部分而不需要额外的地址计算。
相反,如果牵涉读取访问,如在菱形88中确定的,接收初始位点和二维大小信息,如在框90中指示的。然后读取指定的矩阵,如在框92中指示的。再次,访问可采用自动的方式进行,其中可访问初始点,如将在常规线性寻址中进行的,并且然后自动确定地址的剩余部分而不必返回以及采用常规的方式计算地址。
最后,如果已经从主机接收移动命令,如在框94中确定的,接收初始位点和二维大小信息,如在框96中指示的,并且自动实现移动命令,如在框98中指示的。再次,信息的矩阵可简单地通过规定起始位点并且提供大小信息而自动从一个位点移到另一个。
转回图2,视频分析单元42可通过像素管线单元44而耦合于系统的剩余部分。单元44可包括状态机,其执行来自调派单元34的命令。典型地,这些命令在主机处起始并且由调派单元实现。基于应用可包括多种不同的分析单元。在一个实施例中,可对于卷积的自动预备而包括卷积单元46。
卷积命令可包括命令和规定掩码(mask)、参考或核的自变量使得一个捕获图像中的特征可以与存储器28中参考二维图像比较。命令可包括规定在哪里存储卷积结果的目的地。
在一些情况下,视频分析单元中的每个可以是硬件加速器。就“硬件加速器”而言,它意在指比在中央处理单元上运行的软件更快地执行功能的硬件设备。
在一个实施例中,视频分析单元中的每个可以是状态机,其由专用于该单元的特定功能的专门硬件执行。因此,单元可采用相对快速的方式执行。此外,对视频分析单元所实现的每个操作可需要仅一个时钟周期,因为所必需的只是告知硬件加速器执行任务并且提供任务的自变量并且然后可实现操作的序列,而无需来自任何处理器(其包括主机处理器)的进一步控制。
在一些实施例中,其他视频分析单元可包括采用自动的方式计算质心的质心单元48、采用自动的方式确定直方图的直方图单元50,和膨胀/侵蚀单元52。
膨胀/侵蚀单元52可负责采用自动的方式使给定图像的分辨率增加或减小。当然,使分辨率增加是不可能的(除非信息已经可用),但在一些情况下,以较高分辨率接收的帧可以较低的分辨率处理。因此,帧可以在较高的分辨率中可用并且可由膨胀/侵蚀单元52变换到较高的分辨率。
矩阵存储器转移(MTOM)单元54负责实现移动指令,如之前描述的。在一些实施例中,可提供算术单元56和布尔单元58。即使这些相同的单元可连同中央处理单元或已经存在的协同处理器而可用,使它们装载在引擎20上,这可以是有利的,因为它们在片芯上的存在可减少对从引擎20到主机以及返回的大量数据传输的需要。此外,在一些实施例中,通过使它们装载在引擎20上,可使用二维或矩阵主存储器。
可提供提取单元60来从图像取向量。查找单元62可用于查找特定类型的信息来看看它是否已被存储。例如,查找单元可用于找到已经存储的直方图。最后,在图像对于特定任务具有太高的分辨率时,使用二次采样单元64。可对图像二次采样来降低它的分辨率。
在一些实施例中,还可提供其他部件,在一些实施例中包括用于与拍摄装置配置命令接口的I2C接口38和连接到所有对应的模块来接收一般输入和输出并且用于连同调试一起使用的通用输入/输出设备40。
最后,参考图5,在一些实施例中,可实现分析辅助编码方案100。该方案可在软件、固件和/或硬件中实现。然而,硬件实施例可更快。分析辅助编码可使用分析能力来确定应该对视频信息的给定帧中的什么部分(如有的话)编码。因此,在一些实施例中可不需要对一些部分或帧编码,并且由此,速度和带宽可增加。
在一些实施例中,什么被编码或未被编码可以是情况特定的并且可在运行中确定,例如基于可用电池电力、用户选择和可用带宽(仅举几例)。更特定地,相对于接着的帧可对现有的帧进行图像或帧分析来确定整个帧是否需要被编码或是否仅帧的部分需要编码。该分析辅助编码与基于常规运动估计的编码(其仅决定是否包括运动向量,但仍对每个帧编码)形成对照。
在本发明的一些实施例中,连续帧在连续基础上被编码或不编码,并且帧内的选择区域基于那些区域内的运动程度而可被编码或完全未被编码。然后,告知解码系统有多少帧被编码或未被编码并且可以根据需要而简单地复制帧。
参考图5,第一帧或多个帧可在开始时完全被编码(如在框102中指示的)以便确定基础或参考。然后,菱形104处的检查确定是否应提供分析辅助编码。如果将不使用分析辅助编码,编码如按常规进行的那样继续。
如果提供分析辅助编码,如在菱形104中确定的,确定阈值(如在框106中指示的)。根据例如可用电池电力、可用带宽或用户选择(仅举几例)等非运动因素,阈值可是固定的或可以是自适应的。接着,在框108中,分析现有的帧和后续帧来确定超出阈值的运动是否存在,并且如果是这样的话,确定它是否被隔离到特定区域。为此,可利用各种分析单元,其包括但不限于,卷积单元、膨胀/侵蚀单元、二次采样单元和查找单元。特别地,可对图像或帧分析阈值以上的运动(相对于之前和/或后续帧而分析)。
然后,如在框110中指示的,可定位具有超出阈值的运动的区域。在一个实施例中,仅那些区域可被编码,如在框112中指示的。在一些情况下,给定帧上的区域可完全未被编码并且该结果可简单地被记录使得帧可以在解码期间简单地被复制。一般,编码器在首标或其他位点中提供关于什么帧被编码以及帧是否仅具有被编码的部分的信息。在一些实施例中,编码部分的地址可采用初始点和矩阵大小的形式提供。
根据一些实施例,存储器控制器50能够自动定位主存储器28内整个矩阵或可访问主存储器矩阵内存储的2D表示内的任何像素。在一些实施例中,存储器控制器专门设计成与视频存储一起工作,如与一般存储相对。在一些实施例中,存储器控制器可以访问全帧或一个像素。为了访问全帧,所需要的只是帧的起始点和帧大小。然后,在存储器控制器50内的内部计算所有地址。
矩阵然后可以分解成宏块,其可例如具有8×8或16×16大小。矩阵自身(由控制器限定)可具有任何期望的大小。
在一些实施例中,该二维设置和使用存储器控制器来访问主存储器内的矩阵可具有许多优势。作为这些优势的一个示例,屏幕可完全是一个颜色。代替处理整个屏幕,每次可处理一个8×8宏块并且可开发直方图来确定每个8×8宏块是否全部具有相同的颜色。如果是这样的话,则所需要的只是分析任何一个8×8宏块并且有效地分析整个帧。
从而,在一些实施例中,矩阵可具有任何大小,像素可具有任何大小(其包括8、16、24、32个位)并且矩阵可以是二维矩阵。尽管存储器总是线性的,线性地址可由存储器控制器转换成二维地址。
参考图7,提供存储器控制器50的更详细描述。外部存储器156可以是双数据速率(DDR)随机存取存储器156并且不是二维存储器,而相反在一些实施例中是常规线性存储器。
从而,二维数据可转换成线性数据用于存储在外部存储器156中并且相反,来自外部存储器156的线性数据可转换成二维数据用于在存储器控制器50内使用。
外部随机存取存储器156通过模拟物理或PHY 154而连接到外部存储器控制器152。外部存储器控制器152连接到外部存储器仲裁器150。
仲裁器150连接到读写直接存储器访问(DMA)引擎142。引擎142提供从PCI高速总线36(图2)到内部存储器28(图2)或外部存储器156的直接路径。直接存储器访问引擎144提供主存储器到外部存储器(MTOE)转换(其意指它提供2D到线性转换),和外部存储器到主存储器(ETOM)转换。反馈直接存储器访问(DMA)引擎146与DMA引擎144一起工作。引擎144生成引擎146的控制和请求、注视来自引擎144的数据和在已经传输需要的数据时的精确时间的信号并且然后请求引擎144取消未决请求。引擎142、144和146连接到主存储器指令仲裁器148,其进而连接到主存储器28(在图2中示出)。
多个编码器158、160、162和164可与主存储器编码器仲裁器166和外部存储器仲裁器150一起工作。VCI视频队列158是将视频写入内部或主存储器28的代理。在一个实施例中,H.264视频压缩格式视频队列160是用于压缩的代理,并且从任一存储器提取视频数据以及使用编码器便笺式存储器队列164来读和写该数据。参见从2011年6月国际电信联盟(ITU)可获得的H.264(MPEG-4)高级视频编码规范。队列164使H.264视频队列能够既读取又写入。然而,JPEG图像压缩格式视频队列162是从任一存储器提取但仅读取并且从不写入数据的代理。参考从1992年9月国际电信联盟(ITU)可获得的JPEG标准T.81。在一些实施例中,可使用不同的压缩标准。
因此,VCI和编码器可以从主存储器或外部存储器操作。在从二维主存储器执行时,在编码期间,主存储器编码器仲裁器166在不使用引擎144和146的情况下进行所有变换。从而,更多直接的转换可在视频编码期间由仲裁器166实现。在一个实施例中,仲裁器166提取数据并且将它转换成线性形式并且将它给予队列160。
参考图8,存储器控制器150中用于存储器矩阵访问的序列168可在软件、硬件和/或固件中实现。在软件和固件实施例中,它可由存储在非暂时性计算机可读介质(例如磁、光或半导体存储器)中的计算机执行的指令来实现。
序列在菱形170处通过确定是否牵涉随机存取存储器请求而开始。如果是这样的话,使用X和Y地址以用于访问存储在二维矩阵表示中的任何像素,如在框172中指示的。然后,存储器控制器自身在内部计算对于访问位点的地址,如在框174中指示的。
另一方面,如果未牵涉随机存取,由存储器控制器50获得起始地址和帧地点(框176)并且该信息足以规定主存储器内的矩阵。并且地址可在内部计算,如在框174中指示的。
图3、4、5和8是可在硬件中实现的流程图。它们还可在软件或固件中实现,在该情况下它们可包含在例如光、磁或半导体存储器等非暂时性计算机可读介质上。非暂时性介质存储指令以供处理器执行。这样的处理器或控制器的示例可包括分析引擎20并且适合的非暂时性介质可包括主存储器28和外部存储器22(作为两个示例)。
参考图9,根据一个实施例的视频捕获接口26能够捕获高清晰度分辨率或多个标准清晰度视频通道用于实时视频分析。在一个实施例中,该接口可配置成支持一个高清晰度分辨率视频通道或四个标准清晰度视频通道。它可支持任何视频接口标准,其包括国际电信联盟(ITU)推荐BT.656(12/07)和BT.1120以及电影和电视工程师协会(SMPTE)274M-2005/296M-2001。
在一个实施例中,视频管线未对垂直方向上的视频维度施加任何限制。尽管水平维度被可用的线缓冲器大小所束缚,去除垂直约束可实现若干使用情况。
在一个实施例中,接口26可继续起作用,甚至在视频电缆物理断开时也如此。另外,在一些实施例中,该接口可以继续起作用,甚至在由于存储器子系统中或PCI接口36(图2)上的资源冲突而必须丢弃帧时也如此。在一个实施例中,伽玛校正功能可使用查找表方法来实现。这样的方法在选择用于像素平移的曲线中允许固件有更大的灵活性。
在一个实施例中,可在编码和分析路径中的每个上提供第二窗口功能。这可对编码和分析功能实现视频大小的独立设置。固件可在运行中改变。在内部,配置改变与帧边界同步,这在一些实施例中允许与集成电路的剩余部分的无缝对接。
在一个实施例中,内部的一百兆赫时钟能够与在27兆赫至74.25兆赫的输入视频通道一起工作。另外,在一个实施例中,核处理器可以300兆赫至500兆赫操作。
参考图9,存在标记为零至三的四个输入视频通道。高清晰度视频可以在通道零至二中的任一个上提供并且当在一个实施例中在通道一和二上提供高清晰度视频时,它可以转移到与视频通道零关联的帧捕获176。一般,视频通道一至三可在所有情况下处理标准清晰度视频,但在接收高清晰度视频时的情况除外。
帧捕获单元176向伽玛查找表(GLUT)178提供高清晰度或标准清晰度视频。该伽玛查找表将输入标准清晰度YCrCb或高清晰度YCrCb或RGB视频空间转换成亮度和色度值,其提供给降标度器(downscaler)180或182。降标度器180与编码器关联并且降标度器182与视频分析引擎关联。
降标度器向帧格式化器184提供标度降低的亮度和色度数据。该帧格式化器184然后提供各种输出信号,其包括编码器握手信号、可用/已完成/错误信号以及前往外部存储器的写端口的写入值地址数据信号和前往存储器矩阵的写入值地址。另外,帧格式化器184从编码器接收准备就绪(ready)信号,并且从调派单元34(图2)接收端口负载请求。
在一些实施例中,视频捕获接口控制和状态寄存器(CSR)逻辑186与帧捕获、伽玛查找表、降标度器和帧格式化器接口并且向PCI高速总线36(图2)提供双向访问。
本文描述的图形处理技术可在各种硬件架构中实现。例如,图形功能性可在芯片集内集成。备选地,可使用分立图形处理器。作为再另一个实施例,图形功能可由通用处理器(其包括多核处理器)实现。
该整个说明书中对“一个实施例”或“实施例”的引用意指连同实施例描述的特定特征、结构或特性包括在本发明内包含的至少一个实现中。从而,短语“一个实施例”或“在实施例中”的出现不一定指相同的实施例。此外,特定特征、结构或特性可采用除图示的特定实施例外的其他适合的形式而设立并且所有这样的形式可包含在本申请的权利要求内。
尽管已经关于有限数量的实施例描述本发明,本领域内技术人员将意识到由此的许多修改和改动。规定附上的权利要求涵盖所有这样的修改和改动,它们落入本发明的真正精神和范围内。

Claims (20)

1. 一种方法,包括:
提供至少四个输入视频通道用于视频分析和编码;
使一个输入通道用于高清晰度视频;以及
使四个输入通道用于标准清晰度视频。
2. 如权利要求1所述的方法,其包括允许改变视频垂直大小。
3. 如权利要求1所述的方法,其包括使用查找表来提供伽玛校正功能。
4. 如权利要求1所述的方法,其包括对于编码和视频分析提供单独的降标度器。
5. 如权利要求1所述的方法,其包括向帧格式化器提供降标度的亮度和色度数据。
6. 一种非暂时性计算机可读介质,其存储指令,用于:
提供至少四个输入视频通道用于视频分析和编码;
使一个输入通道用于高清晰度视频;以及
使四个输入通道用于标准清晰度视频。
7. 如权利要求6所述的介质,其进一步存储指令以允许改变视频垂直大小。
8. 如权利要求6所述的介质,其进一步存储指令以使用查找表来提供伽玛校正功能。
9. 如权利要求6所述的介质,其进一步存储指令来对于编码和视频分析提供单独的降标度器。
10. 如权利要求6所述的介质,其进一步存储指令来向帧格式化器提供降标度的亮度和色度数据。
11. 一种设备,包括:
至少四个输入视频通道帧捕获单元,用于视频分析和编码;
一个输入通道的帧捕获单元,用于捕获高清晰度视频;
四个输入通道的帧捕获单元,用于捕获标准清晰度视频。
12. 如权利要求11所述的设备,所述捕获单元允许改变视频垂直大小。
13. 如权利要求11所述的设备,所述设备包括查找表,其耦合于所述单元以使用查找表提供伽玛校正功能。
14. 如权利要求11所述的设备,所述设备包括用于编码和视频分析的单独的降标度器。
15. 如权利要求14所述的设备,其包括帧格式化器,用于从所述降标度器中的一个接收降标度的亮度和色度数据。
16. 一种系统,包括:
视频捕获接口,其包括至少四个输入视频通道帧捕获单元,用于视频分析和编码;
视频编码器,其耦合于所述接口;以及
视频分析功能,其耦合于所述接口。
17. 如权利要求16所述的设备,所述捕获单元允许改变视频垂直大小。
18. 如权利要求16所述的设备,所述设备包括查找表,其耦合于所述单元以使用所述查找表来提供伽玛校正功能。
19. 如权利要求16所述的设备,所述设备包括用于编码和视频分析的单独的降标度器。
20. 如权利要求19所述的设备,其包括帧格式化器,用于从所述降标度器中的一个接收降标度的亮度和色度数据。
CN201180075451.6A 2011-12-12 2011-12-12 捕获多个视频通道用于视频分析和编码 Pending CN103975583A (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US2011/064344 WO2013089664A1 (en) 2011-12-12 2011-12-12 Capturing multiple video channels for video analytics and encoding

Publications (1)

Publication Number Publication Date
CN103975583A true CN103975583A (zh) 2014-08-06

Family

ID=48612966

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201180075451.6A Pending CN103975583A (zh) 2011-12-12 2011-12-12 捕获多个视频通道用于视频分析和编码

Country Status (6)

Country Link
US (1) US20130322552A1 (zh)
EP (1) EP2792143A4 (zh)
KR (1) KR101615466B1 (zh)
CN (1) CN103975583A (zh)
TW (2) TWI526050B (zh)
WO (1) WO2013089664A1 (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3176729A1 (en) * 2011-09-06 2017-06-07 Intel Corporation Analytics assisted encoding
US11463739B2 (en) 2020-06-29 2022-10-04 Seagate Technology Llc Parameter based load balancing in a distributed surveillance system
US11343544B2 (en) 2020-06-29 2022-05-24 Seagate Technology Llc Selective use of cameras in a distributed surveillance system
US11503381B2 (en) 2020-06-29 2022-11-15 Seagate Technology Llc Distributed surveillance system with abstracted functional layers
CN114245129A (zh) * 2022-02-22 2022-03-25 湖北芯擎科技有限公司 图像处理方法、装置、计算机设备及存储介质

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5196924A (en) * 1991-07-22 1993-03-23 International Business Machines, Corporation Look-up table based gamma and inverse gamma correction for high-resolution frame buffers
US5896176A (en) * 1995-10-27 1999-04-20 Texas Instruments Incorporated Content-based video compression
CA2321015A1 (en) * 2000-09-27 2002-03-27 Jing Yang Chen Method and apparatus for determining a bit rate need parameter in a statistical multiplexer
US20020176506A1 (en) * 1997-09-26 2002-11-28 Dinei Afonso Ferreira Florencio Computational resource allocation in an information stream decoder
US20030048853A1 (en) * 2000-02-15 2003-03-13 Oh Taek Man Multi-channel image encoding method and system
US20040240546A1 (en) * 2003-05-29 2004-12-02 Lsi Logic Corporation Method and/or apparatus for analyzing the content of a surveillance image
US20050243922A1 (en) * 2004-04-16 2005-11-03 Modulus Video, Inc. High definition scalable array encoding system and method
CN101706675A (zh) * 2009-11-17 2010-05-12 北京中科大洋科技发展股份有限公司 一种具有内部切换功能的高标清视音频io卡
CN101998111A (zh) * 2009-08-28 2011-03-30 杨占坤 高清摄像机视频采集模式自动转换的系统和方法

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5381145A (en) * 1993-02-10 1995-01-10 Ricoh Corporation Method and apparatus for parallel decoding and encoding of data
US6141447A (en) * 1996-11-21 2000-10-31 C-Cube Microsystems, Inc. Compressed video transcoder
JP2005151485A (ja) * 2003-11-20 2005-06-09 Hitachi Ltd 映像信号符号化装置および映像信号記録装置
JP4613702B2 (ja) 2004-09-30 2011-01-19 日本電気株式会社 ガンマ補正、画像処理方法及びプログラム、並びにガンマ補正回路、画像処理装置、表示装置
US8214859B2 (en) * 2005-02-14 2012-07-03 At&T Intellectual Property I, L.P. Automatic switching between high definition and standard definition IP television signals
US7434146B1 (en) * 2005-05-06 2008-10-07 Helwett-Packard Development Company, L.P. Denoising and error correction for finite input, general output channel
US9258519B2 (en) * 2005-09-27 2016-02-09 Qualcomm Incorporated Encoder assisted frame rate up conversion using various motion models
WO2008057285A2 (en) * 2006-10-27 2008-05-15 Vidient Systems, Inc. An apparatus for image capture with automatic and manual field of interest processing with a multi-resolution camera
US9584710B2 (en) * 2008-02-28 2017-02-28 Avigilon Analytics Corporation Intelligent high resolution video system
US9325951B2 (en) * 2008-03-03 2016-04-26 Avigilon Patent Holding 2 Corporation Content-aware computer networking devices with video analytics for reducing video storage and video communication bandwidth requirements of a video surveillance network camera system
US20090290645A1 (en) * 2008-05-21 2009-11-26 Broadcast International, Inc. System and Method for Using Coded Data From a Video Source to Compress a Media Signal
US9788017B2 (en) * 2009-10-07 2017-10-10 Robert Laganiere Video analytics with pre-processing at the source end
US9325929B2 (en) * 2010-04-29 2016-04-26 Ati Technologies Ulc Power management in multi-stream audio/video devices

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5196924A (en) * 1991-07-22 1993-03-23 International Business Machines, Corporation Look-up table based gamma and inverse gamma correction for high-resolution frame buffers
EP0525527B1 (en) * 1991-07-22 1997-09-17 International Business Machines Corporation Look-up table based gamma and inverse gamma correction for high-resolution frame buffers
US5896176A (en) * 1995-10-27 1999-04-20 Texas Instruments Incorporated Content-based video compression
US20020176506A1 (en) * 1997-09-26 2002-11-28 Dinei Afonso Ferreira Florencio Computational resource allocation in an information stream decoder
US20030048853A1 (en) * 2000-02-15 2003-03-13 Oh Taek Man Multi-channel image encoding method and system
CA2321015A1 (en) * 2000-09-27 2002-03-27 Jing Yang Chen Method and apparatus for determining a bit rate need parameter in a statistical multiplexer
US20040240546A1 (en) * 2003-05-29 2004-12-02 Lsi Logic Corporation Method and/or apparatus for analyzing the content of a surveillance image
US20050243922A1 (en) * 2004-04-16 2005-11-03 Modulus Video, Inc. High definition scalable array encoding system and method
CN101998111A (zh) * 2009-08-28 2011-03-30 杨占坤 高清摄像机视频采集模式自动转换的系统和方法
CN101706675A (zh) * 2009-11-17 2010-05-12 北京中科大洋科技发展股份有限公司 一种具有内部切换功能的高标清视音频io卡

Also Published As

Publication number Publication date
EP2792143A1 (en) 2014-10-22
KR20140091058A (ko) 2014-07-18
TW201635787A (zh) 2016-10-01
WO2013089664A1 (en) 2013-06-20
KR101615466B1 (ko) 2016-04-25
TWI583178B (zh) 2017-05-11
TW201332366A (zh) 2013-08-01
TWI526050B (zh) 2016-03-11
US20130322552A1 (en) 2013-12-05
EP2792143A4 (en) 2015-12-02

Similar Documents

Publication Publication Date Title
US10070134B2 (en) Analytics assisted encoding
CN103975583A (zh) 捕获多个视频通道用于视频分析和编码
CN104025028B (zh) 在视频分析中的视频编码
US20130278775A1 (en) Multiple Stream Processing for Video Analytics and Encoding
US20180227581A1 (en) Intelligent MSI-X Interrupts for Video Analytics and Encoding
CN104011655B (zh) 管芯上/管芯外存储器管理
US9179156B2 (en) Memory controller for video analytics and encoding
CN104011654A (zh) 用于视频分析的存储器前瞻引擎

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20140806

RJ01 Rejection of invention patent application after publication