CN106101722A - 基于yang结构改进的分层准全搜索方法及系统 - Google Patents
基于yang结构改进的分层准全搜索方法及系统 Download PDFInfo
- Publication number
- CN106101722A CN106101722A CN201610405062.XA CN201610405062A CN106101722A CN 106101722 A CN106101722 A CN 106101722A CN 201610405062 A CN201610405062 A CN 201610405062A CN 106101722 A CN106101722 A CN 106101722A
- Authority
- CN
- China
- Prior art keywords
- search
- point
- sad value
- searching
- processing 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
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/53—Multi-resolution motion estimation; Hierarchical motion estimation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/533—Motion estimation using multistep search, e.g. 2D-log search or one-at-a-time search [OTS]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/56—Motion estimation with initialisation of the vector search, e.g. estimating a good candidate to initiate a search
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本发明公开了一种基于YANG结构改进的分层准全搜索方法及系统,其方法包括以下步骤:S1:在整个搜索区域内以步长T进行粗搜索确定候选搜索点,对所述候选搜索点进行全搜索,计算每个候选搜索点的SAD值,对所有SAD值进行比较得出最小的SAD值,确立匹配点;S2:以所述匹配点为中心,在整个搜索区域内以步长1进行细搜索确定细搜索点,计算每个细搜索点的SAD值,并将细搜索点的SAD值与候选搜索点中最小的SAD值一一对应进行比较得出较小SAD值,确立最佳匹配点。搜索方法不但具有很好的实时性,而且还节约FPGA资源,将该发明应用于目标搜索系统、音视频压缩系统等领域,将发挥出极大的作用。
Description
技术领域
本发明涉及一种基于YANG结构改进的分层准全搜索方法及系统。
背景技术
搜索方法的主要区别在于如何选择指定搜索窗口内的搜索路径和匹配准则。在匹配准则已确实的确定的情况下,搜索方法的准确度,及搜索方法的运算量即匹配速度是衡量搜索方法好坏的。FPGA的并行能力,为数据搜索方法的实时性提供了低延时硬件平台。对于并行处理方式,KUN-MIN YANG等人提出了全搜索法的VLSI实现结构(简称YANG结构)。
之前,视频编解码中,对于帧间预测,常用的搜索方法有:一、全搜索法,该方法计算量大,搜索速度慢,但精度高;二、快速搜索法(三步法、钻石搜索法、分层搜索法等),搜索速度快,但精度有所下降。常见方法实现平台有:纯软件实现,这种方法不能满足某些对于实时性要求很高的场合。
发明内容
本发明的目的是提供一种基于YANG结构改进的分层准全搜索方法及系统,提出了分层准全搜索方法及系统,无论是在速度上还是精度上都达到很好的搜索效果,结合FPGA的硬件结构,对YANG结构进行改进,使其在FPGA上达到低延时,高效率的效果。
为解决上述技术问题,本发明提供一种基于YANG结构改进的分层准全搜索方法,该方法包括以下步骤:
S1:在整个搜索区域内以步长T进行粗搜索确定候选搜索点,对候选搜索点进行全搜索,计算每个候选搜索点的SAD值,对所有SAD值进行比较得出最小的SAD值,确立匹配点;
S2:以所述匹配点为中心,在整个搜索区域内以步长1进行细搜索确定细搜索点,计算每个细搜索点的SAD值,并将细搜索点的SAD值与候选搜索点中最小的SAD值一一对应进行比较得出较小SAD值,确立最佳匹配点。
进一步地,SAD值的计算公式为:
进一步地,本搜索方法的起始搜索点设置在(1,1)处。
一种基于YANG结构改进的分层准全搜索系统,其特征在于,该系统包括
若干数据选择器,用于对整个搜索区域内以步长T进行粗搜索确定候选搜索点,对整个搜索区域内以步长1进行细搜索确定细搜索点;
与若干数据选择器一一对应的阵列处理单元,用于分别计算各候选搜索点和各细搜索点的SAD值;
与阵列处理单元一一对应的触发器,用于对粗搜索过程中对阵列处理单元的输入值在时序上延时两拍处理,对细搜索过程中对阵列处理单元的输入值在时序上延时一拍处理
设置在触发器的输入端的取反加1单元,用于对搜索过程中对阵列处理单元的输入值进行取反再加1操作。
与若干阵列处理单元连接的比较器,用于对所有候选搜索点的SAD值进行比较,得出最小的SAD值;再将所有细搜索点的SAD值与候选搜索点中最小的SAD值一一进行比较,得出较小SAD值,并输出较小SAD值的运动矢量。
进一步地,阵列处理单元包括加法器和寄存器。
本发明的有益效果为:本发明采用快速方法和全搜索方法相结合的方法,即先用快速方法找出候选的匹配点,这样可以避免局部最佳匹配的问题,然后再用全搜索方法在候选的匹配点周围一定步长的区域中进行精确匹配,硬件实现方面,在YANG结构基本上加以改进,便得到了更为高效率的精搜索加细搜索相结合的平台。
附图说明
图1为基于YANG结构改进的分层准全搜索方法及系统的结构示意图;
图2为本分层准全搜索方法位置选取示意图。
具体实施方式
下面对本发明的具体实施方式进行描述,以便于本技术领域的技术人员理解本发明,但应该清楚,本发明不限于具体实施方式的范围,对本技术领域的普通技术人员来讲,只要各种变化在所附的权利要求限定和确定的本发明的精神和范围内,这些变化是显而易见的,一切利用本发明构思的发明创造均在保护之列。
本发明提供一种基于YANG结构改进的分层准全搜索方法,采用绝对误差和SAD(sum of absolute difference)做为块匹配准则。绝对误差和(SAD)准则公式:
其中,fk(m,n)为当前块的真实值,fk-1(m+i,n+j)为参考帧内相对于当前块同样位置并平移了运动矢量(i,j)的参考值。
分层准搜索法采用先粗后细的两步搜索来实现整像素点精度的运动估计。假设当前块大小为M×N,搜索最大范围为P,则搜索窗口的大小为(M+2P)×(N+2P)。其具体搜索方法如下:
S1:以(1,1)为搜索起点,在整个搜索区域内以步长T进行粗搜索确定候选搜索点(即每隔T-1个像素点选择一个候选位置),对候选搜索点进行全搜索,计算每个候选搜索点的SAD值,对所有SAD值并进行比较得出最小的SAD值,确立匹配点。
S2:以所述匹配点为中心,在整个搜索区域内以步长1进行细搜索确定细搜索点,计算每个细搜索点的SAD值,并将细搜索点的SAD值与候选搜索点中最小的SAD值一一对应进行比较得出较小SAD值,确立最佳匹配点。
本发明将搜索区域起始搜索点选取在(1,1)处,这样可以保证无论如何,第二步搜索时都能在其周围找到8个搜索点,这样数据流更加规则,地址的实现更加简单。
此外,本发明提供一种基于YANG结构改进的分层准全搜索系统,如图1所示,该系统采用并行处理阵列的构架,其包括一下组成部分:
若干数据选择器,用于对整个搜索区域内以步长T进行粗搜索确定候选搜索点,对整个搜索区域内以步长1进行细搜索确定细搜索点。
与若干数据选择器一一对应的阵列处理单元,用于分别计算各候选搜索点和各细搜索点的SAD值。每个阵列处理单元完成一个固定搜索点的计算,搜索窗口中同一行参考位置同时并行匹配。避免了数据的重复读取,硬件运算效率达到100%,大大节省了运算时间和存储带宽。
阵列处理单元的个数只需全搜索法的一半,且搜索点的间隔为两个像素,当前像素在阵列处理单元中的传播需两个时钟的延迟。
与阵列处理单元一一对应的触发器,用于对粗搜索过程中对阵列处理单元的输入值在时序上延时两拍处理,对细搜索过程中对阵列处理单元的输入值在时序上延时一拍处理。
在触发器的输入端还设有取反加1单元,用于对搜索过程中对阵列处理单元的输入值进行取反再加1操作。后级阵列处理单元只需采用加法器和寄存器组合完成取绝对值、累加操作即可,避免了YANG结构的减法操作,便于在FPGA上实现。
与若干阵列处理单元连接的比较器,用于对所有候选搜索点的SAD值进行比较,得出最小的SAD值;再将所有细搜索点的SAD值与候选搜索点中最小的SAD值一一进行比较,得出较小SAD值,并输出较小SAD值的运动矢量。
如图2所示,下面以设当前块为16×16的宏块,搜索区域为32×32为例:
搜索窗分为左、右半部分分别输出,由数据选择器送入搜索阵列。
阵列处理单元PE0计算的是搜索窗口中对应子块起始坐标为(x,1)的SAD,阵列处理单元PE1计算的是起始坐标为(x,3)的SAD,以此类推,阵列处理单元PE7计算的是块起始坐标为(x,15)的SAD,这样只需要8个阵列处理单元即可完成粗搜索。当前块的数据延迟2个时钟以达到步长为2的目的,当前数据只需要扫描一次即可。由于搜索窗口宽度是前块的2倍,则搜索窗口用2条数据线R1和R2同时输出可以进一步提高性能,R1输出搜索窗左半部分的数据:(1,0)、(1,1)、(1,2)......(1,15)、(2,0)、(2,1)...(2,15)......(30,15),R2则输出搜索窗右半部分的数据:(1,16)、(1,17)......(1,30)、(2,16)、(2,17)......(2,30)......(30,30),2个端口的数据通过数据选择器送往适当的阵列处理单元。其中,分层准全搜索法硬件结构数据流如下表所示:
表1
如表1所示。C、R1、R2分别为当前块、参考块左半部分、右半部分输出数据,其中,C(0,0)R(1,1)、C(0,0)R(1,3)、C(0,0)R(1,15)、C(0,0)R(3,1)和C(0,0)R(3,15)为每行八个搜索位置的起始搜索点。
由图1、图2以及表1数据流,可以分析搜索阵列的工作过程:
T=1时,PE0接收C延迟1个时钟的数据和R的即时数据,完成计算SAD0=|C(0,0)-R(1,1)|,数据不送向其它单元。
T=2时,PE0完成计算SAD0=SAD0+|C(0,1)-R(1,2)|。
T=3时,PE0完成计算SAD0=SAD0+|C(0,2)-R(1,3)|;此时像素C(0,.0)经延迟3个时钟到达PE1,PE1被启动,完成计算SAD1=|C(0,0)-R(1,3)|。
依此类推,T=15时,C(0,0)到达最后一个处理单元PE7,PE7开始计算第一行第八个搜索位置的匹配计算。从此刻起,所有单元PE均被启动。
T=17时,端口C接收当前块第二行的数据,端口R1接收搜索窗左半部分第二行的数据,而端口R2接收搜索窗右半部分第一行的数据,3个数据端口均被激活。
T=257时,PE0开始第二行的第一个搜索位置的前16个|Ci,j-Ri,j|匹配计算,PE7在计算第一行第八个搜索位置的最后16个|Ci,j-Ri,j|。因此在(1,1)搜索位置计算结束后PE0立刻进入(3,1)位置的匹配计算,中间不浪费时间,PE1到PE7也相同,因此可以使硬件的利用率达到100%。
PE0至PE7这八个阵列处理单元在每256个时钟周期内接收来自当前块C和搜索区域R的对应位置的数据,然后在阵列的纵向上作一次累加,因此阵列可以并行计算出8个位置的SAD值。加上接收C数据的延迟时钟,这样完成第一步粗搜索只需要8×256+14=2062个时钟周期,如果第二步细搜索采用全搜索(硬件结构上复用粗搜索架构,只需要切换延时单元的个数),则需要256×3+2=770个时钟周期,总共需要2062+770=2832个时钟周期。而YANG结构实现全搜索需要256×16+15=4111个时钟周期,因此本发明提出改进结构的分层准全搜索法比全搜索法大大节省了处理时间;而且YANG结构全搜索共需要16个PE单元来完成,而本发明只需要8个PE单元来完成,因此大大地节省了硬件资源的使用。
综上所述,本发明提出的基于YANG结构改进的分层准搜索方法在FPGA上的实现,不但具有很好的实时性(低延时处理),而且还节约FPGA资源,将该发明应用于目标搜索系统、音视频压缩系统等领域,将发挥出极大的作用。
Claims (5)
1.一种基于YANG结构改进的分层准全搜索方法,其特征在于,该方法包括以下步骤:
S1:在整个搜索区域内以步长T进行粗搜索确定候选搜索点,对所述候选搜索点进行全搜索,计算每个候选搜索点的SAD值,对所有SAD值进行比较得出最小的SAD值,确立匹配点;
S2:以所述匹配点为中心,在整个搜索区域内以步长1进行细搜索确定细搜索点,计算每个细搜索点的SAD值,并将细搜索点的SAD值与候选搜索点中最小的SAD值一一对应进行比较得出较小SAD值,确立最佳匹配点。
2.根据权利要求1所述的分层准全搜索方法,其特征在于,所述SAD值的计算公式为:
3.根据权利要求1所述的分层准全搜索方法,其特征在于,本搜索方法的起始搜索点设置在(1,1)处。
4.一种基于YANG结构改进的分层准全搜索系统,其特征在于,该系统包括
若干数据选择器,用于对整个搜索区域内以步长T进行粗搜索确定候选搜索点,对整个搜索区域内以步长1进行细搜索确定细搜索点;
与所述若干数据选择器一一对应的阵列处理单元,用于分别计算各候选搜索点和各细搜索点的SAD值;
与所述阵列处理单元一一对应的触发器,用于对粗搜索过程中对阵列处理 单元的输入值在时序上延时两拍处理,对细搜索过程中对阵列处理单元的输入值在时序上延时一拍处理。
与若干所述阵列处理单元连接的比较器,用于对所有候选搜索点的SAD值进行比较,得出最小的SAD值;再将所有细搜索点的SAD值与候选搜索点中最小的SAD值一一进行比较,得出较小SAD值,并输出所述较小SAD值的运动矢量;
设置在所述触发器的输入端的取反加1单元,用于对搜索过程中对阵列处理单元的输入值进行取反再加1操作。
5.一种基于YANG结构改进的分层准全搜索系统,其特征在于,所述阵列处理单元包括加法器和寄存器。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610405062.XA CN106101722A (zh) | 2016-06-07 | 2016-06-07 | 基于yang结构改进的分层准全搜索方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610405062.XA CN106101722A (zh) | 2016-06-07 | 2016-06-07 | 基于yang结构改进的分层准全搜索方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN106101722A true CN106101722A (zh) | 2016-11-09 |
Family
ID=57227601
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610405062.XA Pending CN106101722A (zh) | 2016-06-07 | 2016-06-07 | 基于yang结构改进的分层准全搜索方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106101722A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112001942A (zh) * | 2020-07-03 | 2020-11-27 | 北京博雅慧视智能技术研究院有限公司 | 一种运动估计粗搜索方法及装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1558683A (zh) * | 2004-02-13 | 2004-12-29 | 南京邮电学院 | 可变形状搜索(vss)的快速运动估计算法 |
CN101754022A (zh) * | 2008-12-01 | 2010-06-23 | 三星电子株式会社 | 低复杂度的运动估计方法 |
US20110013695A1 (en) * | 2008-04-01 | 2011-01-20 | Canon Kabushiki Kaisha | Moving image encoding apparatus and moving image encoding method |
CN102970527A (zh) * | 2012-10-18 | 2013-03-13 | 北京航空航天大学 | 基于六边形搜索及五帧背景对齐的动背景视频对象提取 |
-
2016
- 2016-06-07 CN CN201610405062.XA patent/CN106101722A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1558683A (zh) * | 2004-02-13 | 2004-12-29 | 南京邮电学院 | 可变形状搜索(vss)的快速运动估计算法 |
US20110013695A1 (en) * | 2008-04-01 | 2011-01-20 | Canon Kabushiki Kaisha | Moving image encoding apparatus and moving image encoding method |
CN101754022A (zh) * | 2008-12-01 | 2010-06-23 | 三星电子株式会社 | 低复杂度的运动估计方法 |
CN102970527A (zh) * | 2012-10-18 | 2013-03-13 | 北京航空航天大学 | 基于六边形搜索及五帧背景对齐的动背景视频对象提取 |
Non-Patent Citations (1)
Title |
---|
汤华莲等: ""运动估计的分层搜索算法及FPGA实现"", 《现代电子技术》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112001942A (zh) * | 2020-07-03 | 2020-11-27 | 北京博雅慧视智能技术研究院有限公司 | 一种运动估计粗搜索方法及装置 |
CN112001942B (zh) * | 2020-07-03 | 2021-12-03 | 北京博雅慧视智能技术研究院有限公司 | 一种运动估计粗搜索方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8345764B2 (en) | Motion estimation device having motion estimation processing elements with adder tree arrays | |
CN102148934A (zh) | 一种多模式实时电子稳像系统 | |
US8175161B1 (en) | System and method for motion estimation | |
WO2009110670A1 (en) | Encoding system using motion estimation and encoding method using motion estimation | |
US10990826B1 (en) | Object detection in video | |
Zhao et al. | FP-Stereo: Hardware-efficient stereo vision for embedded applications | |
EP1897379A2 (en) | Reusing interpolated values in advanced video encoders | |
Shrivastava et al. | FPGA accelerator for stereo vision using semi-global matching through dependency relaxation | |
Ling et al. | Lite-stereo: A resource-efficient hardware accelerator for real-time high-quality stereo estimation using binary neural network | |
CN110321888A (zh) | 一种基于fpga的星载红外小目标检测方法 | |
CN103152566B (zh) | 一种视频帧率提升方法 | |
EP3596698B1 (en) | Motion estimation method and apparatus for plurality of frames | |
Wang et al. | Low-resource hardware architecture for semi-global stereo matching | |
KR0147218B1 (ko) | 에이치디티브이의 고속 움직임 추정방법 | |
CN106101722A (zh) | 基于yang结构改进的分层准全搜索方法及系统 | |
US8705626B2 (en) | Motion estimation method | |
Muñoz et al. | Efficient hardware design for the vvc affine motion compensation exploiting multiple constant multiplication | |
CN101860746B (zh) | 移动估测方法 | |
KR101359351B1 (ko) | 연산 스킵 기법에 의한 고속 스테레오 영상 정합 방법 | |
CN1776368A (zh) | 用于非同步输入数据的平滑滤波方法 | |
CN102263944B (zh) | 视频编码系统、移动估算装置及移动估算的计算方法 | |
Rehan et al. | A hierarchical design methodology for full-search block matching motion estimation | |
KR100549919B1 (ko) | 소요클럭사이클수 감축을 위한 초대규모 집적회로 장치 | |
Siddig et al. | Motion estimation in ultrasound image using dynamic multi-shape search | |
Park et al. | Hardware-friendly Advanced Motion Vector Predictor Generation for an HEVC Encoder |
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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20161109 |