CN101305616A - 图像处理装置和方法、程序、以及记录介质 - Google Patents

图像处理装置和方法、程序、以及记录介质 Download PDF

Info

Publication number
CN101305616A
CN101305616A CNA2006800418410A CN200680041841A CN101305616A CN 101305616 A CN101305616 A CN 101305616A CN A2006800418410 A CNA2006800418410 A CN A2006800418410A CN 200680041841 A CN200680041841 A CN 200680041841A CN 101305616 A CN101305616 A CN 101305616A
Authority
CN
China
Prior art keywords
evaluation
pixel
vector
motion vector
estimate
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.)
Granted
Application number
CNA2006800418410A
Other languages
English (en)
Other versions
CN101305616B (zh
Inventor
中村幸弘
高桥康昭
川口邦雄
吉原典文
贝野彰彦
长木悠太
堀士贤
森藤孝文
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.)
Sony Corp
Original Assignee
Sony 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 Sony Corp filed Critical Sony Corp
Publication of CN101305616A publication Critical patent/CN101305616A/zh
Application granted granted Critical
Publication of CN101305616B publication Critical patent/CN101305616B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • H04N19/521Processing of motion vectors for estimating the reliability of the determined motion vectors or motion vector field, e.g. for smoothing the motion vector field or for correcting motion vectors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/223Analysis of motion using block-matching
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/3002Conversion to or from differential modulation
    • 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/103Selection of coding mode or of prediction mode
    • 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/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/14Coding unit complexity, e.g. amount of activity or edge presence estimation
    • 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
    • H04N19/176Methods 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 the region being a block, e.g. a macroblock
    • 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/182Methods 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 a pixel
    • 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/189Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
    • H04N19/192Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding the adaptation method, adaptation tool or adaptation type being iterative or recursive
    • 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/436Methods 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 using parallelised computational arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/56Motion estimation with initialisation of the vector search, e.g. estimating a good candidate to initiate a search
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/587Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal sub-sampling or interpolation, e.g. decimation or subsequent interpolation of pictures in a video sequence
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/01Conversion of standards, e.g. involving analogue television standards or digital television standards processed at pixel level
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10016Video; Image sequence

Abstract

本发明涉及一种在帧间的平均亮度水平较大地发生变化的情况下也能够进行运动向量的可靠度的评价的图像处理装置和方法、程序、以及记录介质。在帧t+1上示出了从帧t上的像素p0所对应的像素p1偏离运动向量v1的向量后的位置的块B1、和从像素p0所对应的像素p1偏离错误的运动向量v2的向量后的位置的块B2。在此,仅在块B1中存在光源的移动等,即使块B1的亮度水平整体上下降,通过将按每帧将运算块内的亮度值平均作为偏移减去后的亮度值的平方和用作评价值,判断为块B1的评价值的可靠度比块B2的评价值高。本发明可应用于进行从24P信号向60P信号的帧频率变换处理的信号处理装置。

Description

图像处理装置和方法、程序、以及记录介质
技术领域
本发明涉及一种图像处理装置和方法、程序、以及记录介质,特别是涉及一种通过使用减去在评价中所使用的两帧之间的亮度值的平均值而得到的评价值从而在帧间的平均亮度水平较大地发生变化的情况下也能够进行运动向量的可靠度的评价的图像处理装置和方法、程序、以及记录介质。
背景技术
在进行运动图像的帧频率变换处理、运动图像压缩处理的图像处理装置中,在运动图像上进行运动检测处理并使用检测出的运动向量来进行处理的情况较多(参照专利文献1)。在该运动检测处理中,作为一般使用的方法有块匹配、迭代梯度法(iterative gradient method)等。
在这些运动检测方法中,在其检测处理过程中为了选择一个或多个向量而使用针对预先定义的运动向量的精确度的评价值,来比较多个向量的评价值,由此评价向量。
例如,在块匹配中,在从搜索范围中决定最佳的对应点时,对各对应点(块)候补运算与关注点(块)之间的评价值,通过比较评价值来选择最佳的对应点。
另外,在迭代梯度法中,在从关注点(块)的周边像素(块)的向量群中选择成为初始偏移的向量的处理、从迭代多次梯度法的运算而得到的每个迭代阶段的处理结果中选择最终的检测向量的处理中,运算针对各向量的评价值来进行评价值的比较/选择。即,该评价值的可靠性直接关系到向量的可靠性。
专利文献1:日本特开平9-172621号公报
发明内容
发明要解决的问题
然而,由于光源的移动、影子的通过等,平均亮度水平在求出评价值的帧间较大地发生变化的情况下,即使对象向量正确地联结了同一目标,评价值也无法成为正确的值。例如存在如下情况:在使用了判断为评价值越小向量的精确度越高的评价值的情况下,即使对象向量正确地联结了同一目标,也导致该评价值变大。
因而,导致基于该评价值的向量评价的可靠度变低,作为其影响,例如有可能在向量的比较、选择处理中选择错误的向量。
本发明是鉴于这种状况而完成的,即使在帧间的平均亮度水平较大地发生变化的情况下,也能够进行运动向量的可靠度的评价。
用于解决问题的方案
本发明的一个侧面的图像处理装置,其用于检测运动向量,并根据检测出的运动向量生成像素值,该图像处理装置具备:评价值运算单元,其使用从分别包含成为对象的运动向量的起点和终点的两帧的块的亮度值中分别减去各块内的亮度值的平均而得到的值,来运算在对帧上的关注块的运动向量进行检测的过程中所使用的表示运动向量的精确度的可靠度的评价值;以及向量评价单元,其使用由上述评价值运算单元运算得到的评价值,评价上述运动向量的精确度的可靠度。
上述评价值运算单元具备:第一运算单元,其对上述两帧的块的块间的亮度值差的平方和进行运算;以及第二运算单元,其与由上述第一运算单元进行的运算并行地对上述块间的亮度值差的和的平方进行运算。
还具备梯度法运算单元,该梯度法运算单元利用梯度法求出关注块的运动向量,上述评价值运算单元对由上述梯度法运算单元求出的每个迭代阶段的运动向量的评价值进行运算,上述向量评价单元将由上述评价值运算单元运算得到的上述每个迭代阶段的运动向量的评价值之中最小的评价值的运动向量评价为精确度的可靠度高,并作为上述关注块的运动向量而输出到后级。
还具备初始向量选择单元,该初始向量选择单元选择作为用于对上述帧上的关注块的运动向量进行检测的梯度法的初始值而使用的初始向量,上述评价值运算单元运算将与作为在上述帧的过去帧中检测出的上述运动向量的终点的终点块处于相同的位置上的上述帧上的关注块设为起点的、作为与上述运动向量相同大小且相同方向的运动向量的上述关注块的移动初始向量的评价值、以及在上述帧或上述过去帧中检测出的上述关注块的规定的周边块的运动向量的评价值,上述向量评价单元将由上述评价值运算单元运算得到的上述关注块的移动初始向量的评价值、以及上述规定的周边块的运动向量的评价值之中最小的评价值的运动向量评价为精确度的可靠度高,上述初始向量选择单元选择由上述向量评价单元评价为精确度的可靠度高的运动向量作为上述关注块的初始向量。
还具备移动初始向量设定单元,该移动初始向量设定单元将以与作为在上述帧的过去帧中检测出的上述运动向量的终点的终点块处于相同的位置上的上述帧上的块为起点的、与上述运动向量相同大小且相同方向的运动向量,设定为上述块的移动初始向量,上述向量评价单元将在与在上述过去帧中检测出的上述运动向量的上述终点块处于相同的位置上的上述帧上的上述块中检测出的上述运动向量的评价值之中最小的评价值的运动向量评价为精确度的可靠度高,上述移动初始向量设定单元选择与由上述向量评价单元评价为精确度的可靠度高的上述运动向量相同大小且相同方向的运动向量作为上述块的上述移动初始向量。
本发明的一个侧面的图像处理方法是用于检测运动向量并根据检测出的运动向量来生成像素值的图像处理装置的图像处理方法,该图像处理方法的特征在于,包括:评价值运算步骤,使用从分别包含成为对象的运动向量的起点和终点的两帧的块的亮度值中分别减去各块内的亮度值的平均而得到的值,来运算在检测帧上的关注块的运动向量的过程中所使用的表示运动向量的精确度的可靠度的评价值;以及向量评价步骤,使用通过上述评价值运算步骤的处理来运算得到的评价值,评价上述运动向量的精确度的可靠度。
本发明的一个侧面的程序,是使计算机进行检测运动向量并根据检测出的运动向量来生成像素值的处理的程序,该程序包括:评价值运算步骤,使用从分别包含成为对象的运动向量的起点和终点的两帧的块的亮度值中分别减去各块内的亮度值的平均而得到的值,来运算在检测帧上的关注块的运动向量的过程中所使用的表示运动向量的精确度的可靠度的评价值;以及向量评价步骤,使用通过上述评价值运算步骤的处理来运算得到的评价值,评价上述运动向量的精确度的可靠度。
在本发明的一个侧面的记录介质中所记录的程序,是使计算机进行检测运动向量并根据检测出的运动向量来生成像素值的处理的程序,该程序包括:评价值运算步骤,使用从分别包含成为对象的运动向量的起点和终点的两帧的块的亮度值中分别减去各块内的亮度值的平均而得到的值,运算表示在检测帧上的关注块的运动向量的过程中所使用的运动向量的精确度的可靠度的评价值;以及向量评价步骤,使用通过上述评价值运算步骤的处理来运算得到的评价值,评价上述运动向量的精确度的可靠度。
在本发明的一个侧面中,使用从分别包含成为对象的运动向量的起点和终点的两帧的块的亮度值中分别减去各块内的亮度值的平均而得到的值,运算表示在检测帧上的关注块的运动向量的过程中所使用的运动向量的精确度的可靠度的评价值,使用运算得到的评价值,对上述运动向量的精确度的可靠度进行评价。
发明的效果
根据本发明的一个侧面,特别是在帧间的平均亮度水平较大地发生变化的情况下能够提高运动向量的检测精确度。
附图说明
图1是表示本发明的信号处理装置的结构例的框图。
图2是表示信号处理装置的结构的框图。
图3是说明本发明的处理的原理的图。
图4是具体地说明本发明的处理的图。
图5是说明在信号处理装置中使用的运动向量的评价值的图。
图6是表示运算评价值DFD的评价值运算部的结构例的框图。
图7是说明图6的评价值运算部的评价值运算处理的流程图。
图8是说明平均亮度水平变化时的评价值DFD的图。
图9是说明平均亮度水平变化时的评价值DFD的图。
图10是说明平均亮度水平变化时的差的分散的图。
图11是表示运算评价值mDFD的评价值运算部的结构例的框图。
图12是说明图11的评价值运算部的评价值运算处理的流程图。
图13是说明图11的评价值运算部的评价值运算处理的流程图。
图14是表示运算评价值dfv的评价值运算部的结构例的框图。
图15是说明图14的评价值运算部的评价值运算处理的流程图。
图16是说明信号处理装置的帧频率变换处理的流程图。
图17是表示图2的向量检测部的结构的框图。
图18是说明在向量检测部中使用的梯度法的图。
图19是说明使用了初始向量的迭代梯度法的图。
图20是说明图16的步骤S82的运动向量检测处理的流程图。
图21是表示图17的移动初始向量分配部的结构的框图。
图22是说明图20的步骤S104的移动初始向量分配处理的流程图。
图23是表示图17的初始向量选择部的结构的框图。
图24是说明图20的步骤S102的初始向量选择处理的流程图。
图25是表示图17的迭代梯度法运算部和向量评价部的结构的框图。
图26是表示图25的有效像素判断部的结构的框图。
图27是表示图25的梯度法运算部的结构的框图。
图28是说明运动向量的检测对象块和运算块的图。
图29是说明有效像素判断方法的图。
图30是说明运算块中的有效像素的结构的图。
图31是说明单侧梯度区域的图。
图32是说明图20的步骤S103的迭代梯度法运算处理的流程图。
图33是说明图32的步骤S303的有效像素判断处理的流程图。
图34是说明图33的步骤S323的有效像素运算处理的流程图。
图35是说明图32的步骤S305的梯度法执行判断处理的流程图。
图36是说明图32的步骤S306的梯度法运算处理的流程图。
图37是说明图36的步骤S403的综合型梯度法运算处理的流程图。
图38是说明图36的步骤S406的独立型梯度法运算处理的流程图。
图39是说明图32的步骤S307的向量评价处理的流程图。
图40是表示图26的像素判断部、计数器、运算执行判断部的其它结构的框图。
图41是表示图27的运算判断部的其它结构的框图。
图42是说明图32的步骤S303的有效像素判断处理的其它例子的流程图。
图43是说明图32的步骤S305的梯度法执行判断处理的其它例子的流程图。
图44是说明图36的步骤S406的独立型梯度法运算处理的其它例子的流程图。
图45是表示图2的向量检测部的其它结构的框图。
图46是表示图45的迭代梯度法运算部和向量评价部的结构的框图。
图47是表示图46的有效像素判断部的结构的框图。
图48是说明使用由图17的向量检测部检测出的运动向量来生成的内插帧的图。
图49是说明使用由图17的向量检测部检测出的运动向量来生成的内插帧的图。
图50是说明使用由图17的向量检测部检测出的运动向量来生成的内插帧的图。
图51是说明图17的向量检测部的初始向量的选择方法的图。
图52是说明图17的向量检测部的初始向量的选择方法的图。
图53是说明图17的向量检测部的初始向量的选择方法的图。
图54是说明图17的向量检测部的初始向量的选择方法的图。
图55是说明图17的向量检测部的初始向量的选择方法的图。
图56是说明使用由图45的向量检测部检测出的运动向量来生成的内插帧的图。
图57是说明使用由图45的向量检测部检测出的运动向量来生成的内插帧的图。
图58是说明图45的向量检测部的初始向量的选择方法的图。
图59是说明图45的向量检测部的初始向量的选择方法的图。
图60是说明使用由图45的向量检测部检测出的运动向量来生成的内插帧的图。
图61是说明图45的向量检测部的初始向量的选择方法的图。
图62是说明使用由图45的向量检测部检测出的运动向量来生成的内插帧的图。
图63是说明图20的步骤S103的迭代梯度法运算处理的其它例子的流程图。
图64是说明图20的步骤S103的迭代梯度法运算处理的另外其它例子的流程图。
图65是说明图20的步骤S103的迭代梯度法运算处理的另外其它例子的流程图。
图66是说明图64的步骤S614的梯度法运算和临时设定处理的流程图。
图67是说明各标志的值中的每个标志的值的向量评价的比较对象和迭代判断结果的图。
图68是表示图2的向量检测部的另外其它结构的框图。
图69是表示图68的迭代梯度法运算部和向量评价部的结构的图。
图70是说明图63的步骤S565的向量存储控制的其它例子的流程图。
图71是表示图2的向量分配部的结构的框图。
图72是说明本发明的四点插值处理的概念的图。
图73是说明图16的步骤S83的向量分配处理的流程图。
图74是说明图73的步骤S707的分配向量评价处理的流程图。
图75是表示图2的分配补偿部的结构的框图。
图76是说明图16的步骤S84的分配补偿处理的流程图。
图77是说明图76的步骤S803的向量补偿处理的流程图。
图78是表示图2的图像插值部的结构的框图。
图79是说明图16的步骤S85的图像插值处理的流程图。
附图标记说明
1:信号处理装置;51:帧存储器;52:向量检测部;53:检测向量存储器;54:向量分配部;55:分配向量存储器;56:分配标志存储器;57:分配补偿部;58:图像插值部;61、61A、61B:评价值运算部;101:初始向量选择部;103:迭代梯度法运算部;104:向量评价部;105:移动初始向量分配部;106:评价值存储器;107:移动初始向量存储器;404:有效像素判断部;405:梯度法运算部;412:评价判断部;421:像素差算出部;422:像素判断部;423:计数器;424:梯度法继续判断部;425:运算执行判断部;461:像素差算出部;462:运算判断部;463-1:综合型梯度运算部;463-2:独立型梯度运算部;464:向量算出部;521:初始向量选择部;522:迭代梯度法运算部;523:向量评价部;524:初始候补向量存储器;531:有效像素判断部;541:评价判断部;551:梯度法继续判断部;561:向量评价部;571:0向量标志区域;581:评价判断部。
具体实施方式
下面,参照附图说明本发明的实施方式。
图1表示应用了本发明的信号处理装置1的结构例。信号处理装置1例如由个人计算机等构成。在图1中,CPU(CentralProcessing Unit:中央处理单元)11按照存储在ROM(Read OnlyMemory:只读存储器)12或存储部18中的程序来执行各种处理。在RAM(Random Access Memory:随机存取存储器)13中适当地存储有CPU 11执行的程序、数据等。利用总线14相互连接这些CPU 11、ROM 12、以及RAM 13。
在CPU 11上还通过总线14连接有输入输出接口15。在输入输出接口15上连接有由键盘、鼠标、麦克风等构成的输入部16、由显示器、扬声器等构成的输出部17。CPU 11与从输入部16输入的指令相对应地执行各种处理。并且,CPU 11将处理的结果、得到的图像、声音等输出到输出部17。
连接在输入输出接口15上的存储部18例如由硬盘等构成,存储CPU 11执行的程序、各种数据。通信部19通过因特网、其它网络与外部的装置进行通信。另外,也可以通过通信部19获取程序并存储到存储部18中。
连接在输入输出接口15上的驱动器20在安装有磁盘31、光盘32、磁光盘33、或半导体存储器34等时,对它们进行驱动,获取记录在里面的程序、数据等。根据需要将获取的程序、数据传输到存储部18并进行存储。
此外,信号处理装置1例如也可以设为电视接收机、光盘播放器等、或它们的信号处理部。
图2是表示信号处理装置1的框图。
此外,既可以通过硬件来实现信号处理装置1的各功能,也可以通过软件来实现信号处理装置1的各功能。也就是说,既可以将本说明书的各框图认为是硬件的框图,也可以认为是软件的功能框图。
在图2中示出结构的信号处理装置1中,例如被输入帧频率24Hz的逐行扫描图像信号(以下称为24P信号)的图像,被输入的图像(输入图像)变换为帧频率为60Hz的逐行扫描图像信号(以下称为60P信号)的图像而进行输出。即,图2是表示作为图像处理装置的信号处理装置的结构的图。
输入到信号处理装置1的24P信号的输入图像被提供给帧存储器51、向量检测部52、向量分配部54、分配补偿部57、以及图像插值部58。帧存储器51以帧为单位存储输入图像。帧存储器51存储时刻t+1的输入图像的前一个的时刻t的帧。存储在帧存储器51中的时刻t的帧被提供给向量检测部52、向量分配部54、分配补偿部57、以及图像插值部58。此外,以下将帧存储器51上的时刻t的帧称为帧t,将时刻t+1的输入图像的帧称为帧t+1。
向量检测部52在帧存储器51上的帧t的关注块与输入图像的帧t+1的对象块之间检测运动向量,将检测出的运动向量存储到检测向量存储器53中。在该两帧之间的运动向量的检测方法中使用梯度法或块匹配法等。参照图17在后面详细记述向量检测部52的结构。检测向量存储器53存储有由向量检测部52在帧t中检测出的运动向量。
向量分配部54将在24P信号的帧t上求出的运动向量分配给分配向量存储器55上的、进行插值的60P信号的帧(以下为了与24P信号的帧进行区分,还将60P信号的帧称为内插帧)上的像素,将分配了运动向量的像素的分配标志存储器56的分配标志改写为1(True:真)。参照图71在后面详细记述向量分配部54的结构。
分配向量存储器55将由向量分配部54分配的运动向量与内插帧的各像素相对应地进行存储。分配标志存储器56按内插帧的每个像素存储表示有无分配的运动向量的分配标志。例如,作为True(1)的分配标志表示给对应的像素分配了运动向量的情形,作为False(0,假)的分配标志表示没有给对应的像素分配运动向量的情形。
分配补偿部57参照分配标志存储器56的分配标志,对没有通过向量分配部54分配运动向量的关注像素补偿该关注像素的周边像素的运动向量,并分配到分配向量存储器55的内插帧上。此时,分配补偿部57将分配了运动向量的关注像素的分配标志改写为1(True)。后面参照图75详细记述分配补偿部57的结构。
图像插值部58使用分配给分配向量存储器55的内插帧的运动向量与帧t及下一个帧t+1的像素值,来插值生成内插帧的像素值。然后,图像插值部58输出所生成的内插帧,接着根据需要输出帧t+1,由此将60P信号的图像输出到未图示的后级。后面参照图78详细记述图像插值部58的结构。
此外,以下将像素值适当地还称为亮度值。
图3是说明本发明所涉及的信号处理装置1中的处理的原理的图。在图3的例子中,虚线表示输入到信号处理装置1中的、时刻t、t+1以及t+2的24P信号的帧,实线表示由信号处理装置1根据所输入的24P信号生成的时刻t、t+0.4、t+0.8、t+1.2、t+1.6以及t+2的60P信号的内插帧。
通常为了将24P信号变换为60P信号而需要5/2倍的帧。即,必须根据两个24P信号的图像来生成五个60P信号的图像。此时,生成的60P信号的内插帧为了使其帧间隔相等而被配置在24P信号上的时间相位为0.0、0.4、0.8、1.2以及1.6的位置上。其中,除了时间相位为0.0的时刻为t的一帧以外的四帧(t+0.4、t+0.8、t+1.2以及t+1.6的帧)是在24P信号中不存在的图像。因而,信号处理装置1在被输入24P信号的图像时,根据24P信号的时刻t和时刻t+1的两帧来生成四个内插帧。因而,从信号处理装置1输出由时刻t、t+0.4、t+0.8、t+1.2以及t+1.6的五帧构成的60P信号的图像。
如上所述,信号处理装置1执行从24P信号的图像向60P信号的图像变换帧频率的处理。
此外,理论上,如上所述那样能够根据24P信号的时刻t和时刻t+1的两帧,新生成时刻t、t+0.4、t+0.8、t+1.2以及t+1.6的五个60P信号的帧,但是实际上在图3的例子的情况下,根据24P信号的时刻t和时刻t+1的两帧,生成t、t+0.4、t+0.8的60P信号的帧,根据24P信号的时刻t+1和t+2的两帧,生成t+1.2、t+1.6、以及t+2的60P信号的帧。
图4是更具体地说明本发明的处理的图。在图4的例子中,粗线箭头表示向各状态的转移,箭头T表示状态J1至J5中的时间的经过方向。另外,状态J1至J5概念性地表示向构成信号处理装置1的各部分输入输出时的、24P信号的时刻t的帧t、时刻t的下一时刻t+1的帧t+1、或在帧t与帧t+1之间生成的60P信号的内插帧F的状态。即,实际上,例如检测出如状态J2所示那样的运动向量的帧并不是被输入到向量分配部54,而是将帧与运动向量分别地输入到向量分配部54。
另外,在图4的例子中,向量检测部52、向量分配部54、以及分配补偿部57分别具有对用于评价运动向量的精确度的可靠度的评价值进行运算的评价值运算部61。
状态J1表示输入到向量检测部52中的、24P信号的帧t和帧t+1的状态。状态J1的帧t上的黑点表示帧t上的像素。
向量检测部52检测状态为J1的帧t上的像素在下一时刻的帧t+1中移动到哪个位置上,将其运动如在状态82的帧t上所示那样作为与各像素对应的运动向量而进行输出。在该两帧间的运动向量的检测方法中使用块匹配法或梯度法等。此外,此时,在像素中检测出多个运动向量的情况下,向量检测部52使内置的评价值运算部61关于各运动向量运算评价值,并根据运算出的评价值选择运动向量。
状态J2表示输入到向量分配部54的帧t和帧t+1的状态。在状态J2中,帧t的各像素的箭头表示由向量检测部52检测出的运动向量。
向量分配部54使对状态为J2的帧t的各像素检测出的运动向量延长至下一个帧t+1,求出通过处于预先设定的时间相位(例如图3的t+0.4)中的内插帧F上的哪个位置。这是因为当假设帧t与帧t+1之间是固定运动时,运动向量通过内插帧F的点成为其帧中的像素位置。因而,向量分配部54将该通过的运动向量分配给状态为J3的内插帧F上的相邻四个像素。
另外,此时,根据内插帧的像素存在如下情况:不存在运动向量的情况、或多个运动向量能够成为分配候补的情况。在如后者那样的情况下,向量分配部54与向量检测部52同样地使内置的评价值运算部61运算关于各运动向量的评价值,并根据运算出的评价值来选择分配的运动向量。
状态J3表示输入到分配补偿部57的帧t和帧t+1、以及分配了运动向量的内插帧F的状态。在状态为J3的内插帧F中,示出了由向量分配部54分配了运动向量的像素和没有分配运动向量的像素。
分配补偿部57对状态为J3的没有分配运动向量的像素,使用分配给该像素的周边像素的运动向量来进行补偿。这是因为,如果某个关注像素的附近区域是相同的运动的假设成立,则关注像素的周边像素的运动向量与该关注像素的运动向量相似。由此,对没有分配运动向量的像素也提供某种程度上正确的运动向量,从而对状态为84的内插帧F上的所有的像素分配运动向量。
此外,在这种情况下,由于多个周边像素的运动向量作为候补而存在,因此分配补偿部57与向量分配部54同样地使内置的评价值运算部61运算关于各运动向量的评价值,并根据运算出的评价值来选择分配的运动向量。
状态J4表示输入到图像插值部58的帧t和帧t+1以及对所有的像素分配了运动向量的内插帧F的状态。图像插值部58能够根据这些对所有的像素分配的运动向量,来决定内插帧F上的像素与两帧t和帧t+1的像素的位置关系。
因而,图像插值部58使用分配给内插帧F上的运动向量以及帧t和帧t+1的像素值,如状态为J5的内插帧F的黑点所示那样插值生成内插帧F上的像素值。然后,图像插值部58输出所生成的内插帧,接着根据需要输出帧t+1,由此将60P信号的图像输出到未图示的后级。
接着,参照图5说明在本发明所涉及的信号处理装置1中所使用的运动向量的评价值。如参照图4所述那样,在信号处理装置1的各部分(向量检测部52、向量分配部54、以及分配补偿部57)中选择在后级的处理中最佳的运动向量。
此时,在信号处理装置1的各部分中,由各部分的评价值运算部61运算表示两个帧的、偏离所关注的向量后的块间的相关值的差绝对值和(DFD(Displaced Frame Difference:位移帧差))来用作针对运动向量的评价值。
在图5的例子中,示出了以时刻t的帧t上的像素位置p为中心的m×n的块、以及以从时刻t+1的帧t+1上的像素位置p偏离了所关注的运动向量v的向量后的像素位置p+v为中心的m×n的块的两个块。利用下式(1)表示在这两个块之间求出的差绝对值和DFDt(p)。
[公式1]
DFD t ( p ) = Σ x , y m × n | F t + 1 ( p x , y + v ) - F t ( p x , y ) | · · · ( 1 )
在此,Ft(p)表示时刻t的像素位置p的亮度值,m×n表示用于求出差绝对值和的DFD运算范围(块)。由于该差绝对值和表示两个帧中的DFD运算范围(块)间的相关值,因此通常判断为该差绝对值和越小帧间的块的波形越一致、差绝对值和越小运动向量v的可靠度越高。
由此,该差绝对值和(以下称为评价值DFD)用于从多个候补中选择最可靠的运动向量的情况等。
进一步详细地说明评价值DFD。
图6是表示运算评价值DFD的评价值运算部61的结构例的框图。
在图6的例子中,时刻t的图像的帧t、以及来自帧存储器51的时刻t+1的图像的帧t+1被输入到亮度值获取部72。
评价值运算部61由块位置运算部71、亮度值获取部72、差绝对值运算部73、以及积和运算部74构成。
在评价值运算部61中,从前级输入帧t的块(DFD运算范围)位置和成为评价对象的运动向量。帧t的块位置被输入到块位置运算部71和亮度值获取部72,运动向量被输入到块位置运算部71。
块位置运算部71使用所输入的帧t的块位置和运动向量,算出帧t+1的块位置,并输出到亮度值获取部72。亮度值获取部72从未图示的帧t的帧存储器中获取与所输入的帧t的块位置对应的亮度值,从帧t+1的帧存储器51中获取与所输入的帧t+1的块位置对应的亮度值,将获取的各亮度值输出到差绝对值运算部73。
差绝对值运算部73使用来自亮度获取部72的帧t和t+1的各块内的亮度值,来运算亮度差绝对值,将运算出的亮度差绝对值输出到积和运算部74。积和运算部74通过累加由差绝对值运算部73运算出的亮度差绝对值,来获取评价值DFD,并将获取的评价值DFD输出到后级。
接着,参照图7的流程图说明图6的评价值运算部61的评价值运算处理。
在评价值运算部61中,从前级输入帧t的块(DFD运算范围)位置和成为评价对象的运动向量。块位置运算部71在被输入帧t的块位置和成为评价对象的运动向量时,在步骤S11中,使用所输入的帧t的块位置和运动向量,算出帧t+1的块位置,并输出到亮度值获取部72。
在步骤S12中,亮度值获取部72根据所输入的帧t和帧t+1的块位置,获取各帧的块(DFD运算范围)的像素的亮度值,将获取的各亮度值输出到差绝对值运算部73。此外,亮度值获取部72从块的左上的像素的亮度值开始获取。
在步骤S13中,差绝对值运算部73使用来自亮度值获取部72的帧t和帧t+1的像素的亮度值,运算亮度差绝对值,并将运算得到的亮度差绝对值输出到积和运算部74。
在步骤S14中,积和运算部74累加来自差绝对值运算部73的亮度差绝对值,在步骤S15中判断是否对块内的全部像素结束了处理。在步骤S15中,在判断为没有对块内的全部像素结束了处理的情况下,处理返回到步骤S12,重复进行其以后的处理。即,进行对块的下一个像素的处理。
另一方面,在步骤S15中,在判断为对块内的全部像素结束了处理的情况下,积和运算部74在步骤S16中获取作为将亮度差绝对值进行累加得到的结果的DFD,并作为评价值DFD输出到后级。由此结束评价值运算处理。
如上所述,由于通过将块(DFD运算范围)内的亮度值的差绝对值进行累加而求出评价值DFD,因此一般判断为评价值DFD越小帧间的块的波形越一致、运动向量v的可靠度越高。
然而,由于光源的移动、影子的通过等而在求出评价值的帧间平均亮度值水平较大地发生变化的情况下,很难用评价值DFD正确地评价运动向量。
接着,参照图8和图9说明平均亮度水平变化时的评价值DFD。在图8的例子中,箭头T表示从图中左前的时刻t的帧t向右里的时刻t+1的帧t+1的时间的经过。
在帧t上示出了以像素p0为中心的m×n的块B0。
在帧t+1上示出了帧t和t+1之间的、像素p0的正确的运动向量即运动向量v1,示出了以从帧t上的像素p0所对应的像素p1偏离了(移动了)运动向量v1的向量后的位置的像素p1+v1为中心的m×n的块B1。在帧t+1上还示出了帧t和t+1之间的、像素p0的错误的运动向量即运动向量v2,示出了以从帧t上的像素p0所对应的像素p1偏离运动向量v2的向量后的位置的像素p1+v2为中心的m×n的块B2。
在图9的左侧图中示出了一般的情况(即,在帧间没有光源的移动、影子的通过等的情况)下的图8的块B0、块B1、以及块B2的各自的(像素)位置上的亮度值的波形Y0、Y1以及Y2,在右侧的图中,示出了在帧t+1上的块B1中存在光源的移动、影子的通过等而块B1受到它们的影响的情况下的图8的块B0、块B1、以及块B2的各自的(像素)位置上的亮度值的波形Y0、Y11、以及Y2。
即,由于块B0和B2没有受到光源的移动、影子的通过的影响,因此左右的图中的亮度值的波形Y0和Y2没有变化,是相同的。
如图9的左侧的图所示,在一般的情况下,如波形Y0与波形Y1之间的斜线部分所示那样,块B1的亮度值的波形Y1比块B2的亮度值的波形Y2更类似块B0的亮度值的波形Y0,因此块B0与块B1之间的评价值DFD(Y1)比块B0与块B2之间的评价值DFD(Y2)小。因而,判断为作为正确的运动向量的运动向量v1的可靠度比错误的运动向量v2的可靠度高。
然而,如图9的右侧的图所示,在帧t+1上的块B1中存在光源的移动、影子的通过等而仅有块B1受到它们的影响的情况下,如波形Y11所示那样,导致作为波形Y1的块B1的亮度值的亮度水平整体上(平均地)较大地发生变化。即,导致块B1的亮度值的波形Y11从左侧图的波形Y1离开平均亮度值水平的变化量,结果,如波形Y0与波形Y11之间的斜线部分所示,与块B2的亮度值的波形Y2相比,更远离块B0的亮度值的波形Y0。
因而,导致平均亮度值水平的变化量作为偏移而被叠加,在这种情况下的块B0与块B1之间的评价值DFD(Y11)变得比块B0与块B2之间的评价值DFD(Y2)大,从而导致判断为作为正确的运动向量的运动向量v1的可靠度比错误的运动向量v2的可靠度低。
如上所述,在由于光源的移动、影子的通过等而具有运动v的物体的平均亮度水平较大地发生变化的情况下,平均亮度水平的变化量作为偏移而被叠加到评价值DFD,因此导致评价值DFD变大,导致针对真的运动量v的可靠度变低。
因此,代替评价值DFD,在信号处理装置1的向量检测部52中,作为针对运动向量的评价值的其它例子,与评价值DFD同样地使用包含成为评价对象的向量的起点和终点的块间运算出的差的分散(dfv:difference variance),选择在后级的处理中最佳的运动向量。当将成为评价对象的运动向量设为v时,利用下式(2)表示差的分散。
[公式2]
df v t ( p ) = Σ x , y m × n { ( F t + 1 ( p x , y + v ) - F t + 1 ( p x , y + v ) ‾ ) - ( F t ( p x , y ) - F t ( p x , y ) ‾ ) } 2
                               ...(2)
在此,
[公式3]
Ft(p)
表示m×n像素的差的分散的运算范围中的亮度值的平均。
此外,从式(2)可知,实际上差的分散是从时刻t+1的像素位置p+v的亮度值及时刻t+1的像素位置p+v的运算范围中的亮度值的平均的差中减去时刻t的像素位置p的亮度值及时刻t的像素位置p的运算范围中的亮度值的平均的差而得到的值的平方和,但是通过展开式(2)而成为运算块内的亮度值差的分散的式子(后述的式(5)),因此称为差的分散。
差的分散也与评价值DFD同样地是将帧间的块的波形的一致性设为向量的可靠度的评价值,能够判断为值越小向量v的可靠度越高。
图10是说明平均亮度水平变化时的差的分散的图。此外,图10表示与参照图9说明的评价值DFD的例子对应的差的分散dfv的例子,在图10的例子中,与图9的例子的情况同样地,使用图8的块B0、块B1、以及块B2进行说明。
在图10的左侧的图中,与图9的情况同样地,示出了一般情况(即,在帧间没有光源的移动、影子的通过等的情况)下的图8的块B 0、块B1、以及块B2的各自的(像素)位置上的亮度值的波形Y0、Y1、以及Y2,在右侧的图中,在帧t+1上的块B1中存在光源的移动、影子的通过等,示出了块B1受到它们的影响的情况下的图8的块B0、块B1、以及块B2的各自的(像素)位置上的亮度值的波形Y0、Y11、以及Y2。
如图10的左侧的图所示,在一般的情况下,如波形Y0与波形Y1之间的斜线部分所示那样,块B1的亮度值的波形Y1比块B2的亮度值的波形Y2更类似块B0的亮度值的波形Y0,因此与图9的评价值DFD的情况同样地,作为块B0与块B1之间的差的分散的dfv(Y1)比起作为块B0与块B2之间的差的分散的dfv(Y2)变小。因而,判断为作为正确的运动向量的运动向量v1的可靠度比错误的运动向量v2的可靠度高。
另一方面,如图10的右侧的图所示,在帧t+1上的块B1中存在光源的移动、影子的通过等而仅有块B1受到它们的影响的情况下,如波形Y11所示,作为波形Y1的块B1的亮度值的亮度水平在整体上(平均地)较大地发生变化。即,块B1的亮度值的波形Y11从波形Y1离开平均亮度值水平的变化量,结果,与块B2的亮度值的波形Y2相比,更远离块B0的亮度值的波形Y0。
在此,在图10的右边的图中,还示出了用虚线表示的波形Z1和波形Z2。波形Z1表示从波形Y11中减去波形Y11与波形Y0的差的平均而得到的亮度值的波形,波形Z2表示从波形Y2中减去波形Y2与波形Y0的差的平均而得到的亮度值的波形。
如式(2)所示,差的分散是对各帧中的每一帧将运算块内的亮度值平均作为偏移而减去后的亮度值的平方和、即是对各帧中的每一帧将运算块内的亮度值平均作为偏移而减去后的统计量。
因而,图10的右边的图中的斜线部分即波形Y0与波形Z1的差表示从波形Y0中减去波形Y11与波形Y11及波形Y0的差的平均之间的差而得到的值、即求出作为块B0与块B1之间的差的分散的dfv(Y11)的式(2)的平方和的括号内的部分,比波形Y0与波形Z2的差小,其中,所述波形Y0与波形Z2的差表示从波形Y0中减去波形Y2与波形Y2和波形Y0的差的平均之间的差而得到的值、即求出作为块B0与块B2之间的差的分散的dfv(Y2)的式(2)的平方和的括号内的部分。
这样,即使在由于光源的移动、影子的通过等而具有运动v的物体的平均亮度水平较大地发生变化的情况下,作为块B0与块B1之间的差的分散的dfv(Y11)也小于作为块B0与块B2之间的差的分散的dfv(Y2)。因而,判断为作为正确的运动向量的运动向量v1的可靠度比错误的运动向量v2的可靠度高。
根据以上,即使在将DFD用作评价值时难以处理的、帧间的平均亮度水平发生变化的情况下,通过将差的分散(以下还称为评价值dfv)用作评价值,从而也能够正确地评价向量的可靠度。
此外,如式(2)所示,由于评价值dfv是平方和的式子,因此需要使用乘法器,导致与运算评价值DFD的情况相比硬件上的电路规模变大。
因此,作为不使用平方的评价值并且是差的分散(评价值dfv)的特征的与平均亮度水平变化对应的运动向量的评价值,还举出考虑了亮度平均偏移的DFD(以下称为mDFD(meanDFD))。利用式(3)表示mDFD。
[公式4]
m DFD t ( p ) = Σ x , y m × n | ( F t + 1 ( p x , y + v ) - F t + 1 ( p x , y + v ) ‾ ) - ( F t ( p x , y ) - F t ( p x , y ) ‾ ) |
                                        …(3)
mDFD与差的分散同样地表示考虑了平均亮度水平的波形的一致性,成为与平均亮度水平在帧间较大地发生变化的情况对应的运动向量的评价值。因而,以下还将mDFD称为评价值mDFD。
进一步详细说明评价值mDFD。
图11是表示运算评价值mDFD的评价值运算部61A的结构例的框图。
此外,图11的例子在设置有块位置运算部71、亮度值获取部72、差绝对值运算部73、以及积和运算部74这一点上与图6的评价值运算部61共同,但是在追加了积和运算部81-1和81-2、平均值算出部82-1和82-2、以及差运算部83-1和83-2这一点上与图6的评价值运算部61不同。
在图11的例子中,亮度值获取部72从未图示的帧t的帧存储器中获取与所输入的帧t的块位置对应的亮度值,将获取的帧t的亮度值输出到积和运算部81-1和差运算部83-1。另外,亮度值获取部72从帧t+1的帧存储器51中获取与所输入的帧t+1的块位置对应的亮度值,将获取的帧t+1的亮度值输出到积和运算部81-2和差运算部83-2。
积和运算部81-1累加帧t的块内的全部像素的亮度值,将累加得到的亮度值输出到平均值算出部82-1。平均值算出部82-1使用来自积和运算部81-1的被累加的亮度值,算出块内的亮度平均值,并将算出的块内的亮度平均值输出到差运算部83-1。
差运算部83-1使用来自亮度值获取部72的亮度值和来自平均值算出部82-1的块内的亮度平均值,算出帧t的块内的各像素与块内的亮度平均值的差,将算出的帧t的差输出到差绝对值运算部73。
积和运算部81-2、平均值算出部82-2、以及差运算部83-2对帧t+1进行与积和运算部81-1、平均值算出部82-1、以及差运算部83-1相同的处理。
即,积和运算部81-2累加帧t+1的块内的全部像素的亮度值,将累加得到的亮度值输出到平均值算出部82-2。平均值算出部82-2使用来自积和运算部81-2的被累加的亮度值,算出块内的亮度平均值,并将算出的块内的亮度平均值输出到差运算部83-2。
差运算部83-2使用来自亮度值获取部72的亮度值和来自平均值算出部82-2的块内的亮度平均值,算出帧t+1的块内的各像素与块内的亮度平均值的差,并将算出的帧t+1的差输出到差绝对值运算部73。
在图11的例子中,差绝对值运算部73使用来自差运算部83-1的帧t的块内的亮度值、和来自差运算部83-2的t+1的块内的亮度值,运算亮度差绝对值,并将运算出的亮度差绝对值输出到积和运算部74。积和运算部74通过累加由差绝对值运算部73运算出的亮度差绝对值,来获取评价值mDFD,并将获取的评价值mDFD输出到后级。
接着,参照图12和图13的流程图说明图11的评价值运算部61A的评价值运算处理。
在评价值运算部61A中,从前级被输入帧t的块(DFD运算范围)位置和成为评价对象的运动向量。块位置运算部71在被输入帧t的块位置和成为评价对象的运动向量时,在步骤S31中,使用所输入的帧t的块位置和运动向量来算出帧t+1的块位置,并输出到亮度值获取部72。
在步骤S32中,亮度值获取部72根据所输入的帧t和帧t+1的块位置,获取各块(DFD运算范围)的像素的亮度值,将获取的帧t的像素的亮度值输出到积和运算部81-1,并将获取的帧t+1的像素的亮度值输出到积和运算部81-2。此外,此时亮度值获取部72还将获取的帧t的像素的亮度值输出到差运算部83-1,还将帧t+1的像素的亮度值输出到差运算部83-2。
在步骤S33中,积和运算部81-1累加来自亮度值获取部72的帧t的像素的亮度值,在步骤S34中,判断是否对块内的全部像素结束了处理。在步骤S34中,在判断为没有对块内的全部像素结束了处理的情况下,处理返回到步骤S32,重复进行其以后的处理。即,进行对块的下一个像素的处理。
在步骤S34中,在判断为对块内的全部像素结束了处理的情况下,积和运算部81-1将累加帧t的块内的全部像素的亮度值得到的值输出到平均值算出部82-1。
在步骤S35中,平均值算出部82-1使用来自积和运算部81-1的累加得到的亮度值,算出帧t的块内的亮度平均值,并将算出的块内的亮度平均值输出到差运算部83-1。
在图13的步骤S36中,差运算部83-1使用来自亮度值获取部72的亮度值和来自平均值算出部82-1的块内的亮度平均值,算出帧t的块内的各像素与块内的亮度平均值的差,并将算出的帧t的差输出到差绝对值运算部73。
此外,由于说明重复,因此为了方便而省略,在积和运算部81-2、平均值算出部82-2、以及差运算部83-2中对帧t+1也同样地执行上述步骤S32至S36的处理。因而,在步骤S37中,由差运算部83-1算出帧t的块内的各像素和块内的亮度平均值的差,并输出到差绝对值运算部73。
在步骤S38中,差绝对值运算部73累加来自差运算部83-1和差运算部83-2的亮度差绝对值,在步骤S39中,判断是否对块内的全部像素结束了处理。在步骤S38中,在判断为没有对块内的全部像素结束了处理的情况下,处理返回到步骤S36,重复进行其以后的处理。即,进行对块的下一个像素的处理。
另一方面,在步骤S39中,在判断为对块内的全部像素结束了处理的情况下,积和运算部74在步骤S40中获取考虑了作为将亮度差绝对值进行累加得到的结果的亮度平均偏移的DFD(即mDFD),并作为评价值mDFD而输出到后级。
根据以上,结束评价值运算处理,求出作为与平均亮度水平在帧间较大地发生变化的情况对应的运动向量的评价值的评价值mDFD。
这样,由于运算评价值mDFD的图11的评价值运算部61A不需要乘法器,因此在硬件上不需要使电路规模变大。
然而,在评价值mDFD的运算处理中,从式(3)和图12可知,必须采取如下顺序:临时运算各块内的平均亮度值,在确定各块内的平均亮度值之后,从块内的各像素的亮度值中减去对应的平均亮度值,并累加其差。即,在评价值mDFD的运算处理中,直到各块内的平均亮度值被确定为止无法进行下一个处理。
在此,再次说明利用式(2)表示的差的分散。下式(4)表示利用像素位置Px,y中的v的帧间差。
[公式5]
Dt(px,y,v)=Ft+1(px,y+v)-Ft(px,y)           …(4)
当使用上述的式(4)变形上述的差的分散dfv的式(2)时,利用下式(5)表示差的分散。
[公式6]
df v t ( p ) = Σ x , y m × n { D t ( p x , y , v ) - D t ( p x , y , v ) ‾ } 2 · · · ( 5 )
式(5)表示差的分散是评价值运算块内的亮度值Dt的分散的情形。因而,能够通过展开分散的式子而将式(5)变形为式(6)。
[公式7]
df v t ( p ) = ( m × n ) [ 1 m × n Σ x , y m × n { D t ( p x , y , v ) } 2 - ( D t ( p x , y , v ) ‾ ) 2 ]
= Σ x , y m × n { D t ( p x , y , v ) } 2 - 1 m × n { Σ x , y m × n D t ( p x , y , v ) } 2 · · · ( 6 )
如该式(6)所示,差的分散能够分为差的平方和(差的二次方和)的项与差的和的平方的项。即,在运算差的分散时,能够构成差的分散的运算部使得并行地运算各项。
图14是表示运算差的分散(即评价值dfv)的评价值运算部61B的结构例的框图。
此外,图14的例子在设置有块位置运算部71和亮度值获取部72这一点上与图6的评价值运算部61共同,但是在代替差绝对值运算部73以及积和运算部74而追加了差运算部91、差的和的平方运算部92、差的平方和运算部93、乘法器94、以及差运算部95这一点上与图6的评价值运算部61不同。
在图14的例子中,亮度值获取部72从未图示的帧t的帧存储器中获取与所输入的帧t的块位置对应的亮度值,从帧t+1的帧存储器51中获取与所输入的帧t+1的块位置对应的亮度值,并将获取的各亮度值输出到差运算部91。
差运算部91运算成为对象的像素的亮度值差,并将运算得到的亮度值差输出到差的和的平方运算部92以及差的平方和运算部93。
差的和的平方运算部92由积和运算部92a以及乘法器92b构成。积和运算部92a累加块部分的来自差运算部91的亮度值差,将累加得到的亮度值差(亮度值差的和)输出到乘法器92b。乘法器92b对来自积和运算部92a的亮度值差的和进行平方,将亮度值差的和的平方输出到差运算部95。
差的平方和运算部93由乘法器93a以及积和运算部93b构成。乘法器93a运算来自差运算部91的亮度值差的平方,将运算得到的亮度差的平方输出到积和运算部93b。积和运算部93b累加块部分的亮度差的平方,将累加得到的亮度值差的平方(亮度值差的平方和)输出到乘法器94。
在乘法器94中,从未图示的控制部等预先被输入块内像素数。乘法器94将块内像素数与亮度差值平方和相乘,并输出到差运算部95。
差运算部95通过从来自乘法器92b的亮度值差的和的平方中减去来自乘法器94的与块内像素数相乘后的亮度差值平方和,从而获取差的分散,并作为评价值dfv而输出到后级。
接着,参照图15的流程图说明图14的评价值运算部61B的评价值运算处理。
在评价值运算部61B中,从前级被输入帧t的块(DFD运算范围)位置和成为评价对象的运动向量。块位置运算部71在被输入帧t的块位置和成为评价对象的运动向量时,在步骤S51中,使用所输入的帧t的块位置和运动向量算出帧t+1的块位置,并输出到亮度值获取部72。
在步骤S52中,亮度值获取部72根据所输入的帧t和帧t+1的块位置,获取各帧的块(DFD运算范围)的像素的亮度值,并将获取的各亮度值输出到差运算部91。
在步骤S53中,差运算部91运算成为对象的像素的亮度值差,并将运算得到的亮度值差输出到差的和的平方运算部92和差的平方和运算部93。
在步骤S54中,运算出亮度值差,并累加亮度值差的平方。即,在步骤S54中,差的和的平方运算部92的积和运算部92a将来自差运算部91的亮度值差进行累加。此时,差的平方和运算部93的积和运算部93b并行地累加由乘法器93a对来自差运算部91的亮度差进行运算得到的亮度值差的平方。
在步骤S55中,积和运算部92a以及积和运算部93b判断是否对块内的全部像素结束了处理。在步骤S55中,在判断为没有对块内的全部像素结束了处理的情况下,处理返回到步骤S52,重复进行其以后的处理。即,进行对块的下一个像素的处理。
另一方面,在步骤S55中,在判断为对块内的全部像素结束了处理的情况下,积和运算部92a将累加得到的亮度值差(亮度值差的和)输出到乘法器92b,积和运算部93b将累加得到的亮度值差的平方(亮度值差的平方和)输出到乘法器94。
在步骤S56中,运算出亮度值差的和的平方,并对块内像素数和亮度值差的平方和进行运算。即,在步骤S56中,差的和的平方运算部92的乘法器92b将来自积和运算部92a的亮度值差的和进行平方,并将亮度值差的和的平方输出到差运算部95。此时,乘法器94并行地将块内像素数与亮度差值平方和进行相乘,并输出到差运算部95。
在步骤S57中,差运算部95从来自乘法器92b的亮度值差的和的平方中减去与块内像素数相乘得到的亮度差值平方和,在步骤S58中,获取作为进行减法运算得到的结果的差的分散,并作为评价值dfv而输出到后级。
根据以上,结束评价值运算处理,求出作为与平均亮度水平在帧间较大地发生变化的情况对应的运动向量的评价值的评价值dfv。
因而,通过将差的分散用作评价值,即使在帧间的平均亮度水平较大地发生变化的情况下,也能够进行可靠度高的向量的评价。
另外,在运算该差的分散的评价值运算处理中,在步骤S54和步骤S56中,差的和的平方运算部92和差的平方和运算部93能够并行地进行运算处理。因而,如图14的评价值运算部61B所示,差的分散由于需要使用乘法器,因此导致硬件安装变大,但是相反地能够使电路并行化,因此与mDFD相比能够缩短运算处理时间。
根据以上,以后在信号处理装置1的向量检测部52中,作为选择运动向量的情况的评价值,使用评价值dfv来代替评价值DFD,在除此之外的向量分配部54和分配补偿部57中,作为选择运动向量的情况的评价值,在没有特别提及的情况下使用差绝对值和(以下称为评价值DFD)。
因而,设为向量检测部52在内部具有评价值运算部61B来进行说明,并设为向量分配部54和分配补偿部57在内部具有评价值运算部61来进行说明。
此外,当然并不限于向量检测部52,在向量分配部54或分配补偿部57中也可以代替评价值DFD而使用评价值dfv。
接着,参照图16的流程图,说明对信号处理装置1的帧频率进行变换的处理。
在步骤S81中,向量检测部52被输入时刻t+1的输入图像的帧t+1、以及帧存储器51的输入图像的前一个时刻t的帧t的像素值。此外,此时,向量分配部54、分配补偿部57和图像插值部58也被输入时刻t+1的输入图像的帧t+1以及帧存储器51的输入图像的前一个时刻t的帧t的像素值。
在步骤S82中,向量检测部52执行运动向量检测处理。即,向量检测部52在帧存储器51上的帧t的关注块与作为输入图像的下一个帧t+1的对象块之间检测运动向量,将检测出的运动向量存储到检测向量存储器53中。在该两帧之间的运动向量的检测方法中使用梯度法或块匹配法等。
另外,在存在多个运动向量的候补的情况下,在向量检测部52中,利用评价值运算部61B对各运动向量求出评价值dfv(差的分散),检测出基于求出的评价值dfv的可靠度高的运动向量。即,在这种情况下,在检测运动向量的关注块中选择最可靠的运动向量并进行检测。后面参照图20详细记述步骤S82中的运动向量检测处理。
在步骤S83中,向量分配部54执行向量分配处理。即,在步骤S83中,向量分配部54将在帧t上求出的运动向量分配给分配向量存储器55上的进行插值的内插帧上的关注像素,并将分配了运动向量的像素的、分配标志存储器56的分配标志改写为1(True)。例如,作为True的分配标志表示给对应的像素分配有运动向量的情形,作为False的分配标志表示没有给对应的像素分配运动向量的情形。
此外,在各像素中存在多个运动向量的候补的情况下,在向量分配部54中,由评价值运算部61对各运动向量求出评价值DFD,并分配基于求出的评价值DFD的可靠度高的运动向量。即,在这种情况下,在分配运动向量的关注像素中,选择最可靠的运动向量并进行分配。后面参照图73详细记述步骤S83中的向量分配处理。
在步骤S84中,分配补偿部57执行分配补偿处理。即,在步骤S84中,分配补偿部57参照分配标志存储器56的分配标志,对没有由向量分配部54分配运动向量的关注像素补偿该关注像素的周边像素的运动向量,并分配到分配向量存储器55的内插帧上。此时,分配补偿部57补偿运动向量,并将分配的关注像素的分配标志改写为1(True)。
此外,在存在多个周边像素的运动向量的情况下,在分配补偿部57中,利用评价值运算部61对各运动向量求出评价值DFD,分配基于求出的评价值DFD的可靠度高的运动向量。即,在这种情况下,在分配运动向量的关注像素中,选择最可靠的运动向量并进行分配。后面参照图76详细记述步骤S84中的分配补偿处理。
在步骤S85中,图像插值部58执行图像插值处理。即,在步骤S85中,图像插值部58使用分配给分配向量存储器55的内插帧的运动向量、以及帧t和帧t+1的像素值,插值生成内插帧的像素值。后面参照图79详细记述图像插值处理。在步骤S86中,图像插值部58输出所生成的内插帧,接着根据需要输出帧t+1,由此将60P信号的图像输出到未图示的后级。
在步骤S87中,向量检测部52判断所有帧的处理是否结束,在判断为所有帧的处理还没有结束的情况下,返回到步骤S81,重复进行其以后的处理。另一方面,在步骤S87中,向量检测部52在判断为所有帧的处理结束了的情况下,结束对帧频率进行变换的处理。
如上所述,本发明所涉及的信号处理装置1从24P信号的输入图像的帧中检测运动向量,将检测出的运动向量分配给60P信号的帧上的像素,并根据所分配的运动向量生成60P信号的帧上的像素值。
此时,信号处理装置1在向量检测处理中选择基于评价值dfv(差的分散)的可靠度更高的运动向量,并输出到后级。因而,在信号处理装置1中,即使平均亮度水平在求出运动向量的帧间较大地发生变化,也能够正确地进行运动向量的可靠度的评价。由此,可抑制运动破损等,从而能够生成精确度更高的图像。
接着,详细说明向量检测部52的结构。
图17是表示向量检测部52的结构的框图。图17中示出结构的向量检测部52使用所输入的时刻t的图像的帧t和时刻t+1的图像的帧t+1,检测帧t上的运动向量,并将检测出的运动向量存储到检测向量存储器53中。对由多个像素构成的规定的每个块执行检测该运动向量的处理。
初始向量选择部101按规定的每个块将根据过去的运动向量的检测结果求出的可靠度高的运动向量作为成为在梯度法中使用的初始值的初始向量V0,输出到迭代梯度法运算部103。具体地说,初始向量选择部101选择存储在检测向量存储器53中的过去求出的周边块的运动向量、存储在移动初始向量存储器107中的移动初始向量来作为初始向量的候补向量。并且,初始向量选择部101具有参照图14所述的评价值运算部61B,使评价值运算部61B使用帧t和帧t+1来求出候补向量的评价值dfv,从候补向量中选择基于由评价值运算部61B求出的评价值dfv的可靠度最高的向量并作为初始向量V0进行输出。此外,后面参照图23详细记述初始向量选择部101的结构。
前置滤波器102-1和102-2由低通滤波器、高斯滤波器构成,分别除去所输入的图像的帧t和帧t+1的噪声成分并输出到迭代梯度法运算部103。
迭代梯度法运算部103使用从初始向量选择部101输入的初始向量V0、以及通过前置滤波器102-1和102-2输入的帧t和帧t+1,利用梯度法对规定的每个块算出运动向量Vn。迭代梯度法运算部103将初始向量V0和算出的运动向量Vn输出到向量评价部104。另外,迭代梯度法运算部103根据向量评价部104的运动向量的评价结果,重复进行梯度法的运算,算出运动向量Vn。
向量评价部104也具有评价值运算部61B,使评价值运算部61B求出来自迭代梯度法运算部103的运动向量Vn-1(或初始向量V0)的评价值dfv和运动向量Vn的评价值dfv,根据由评价值运算部61B求出的评价值dfv来控制迭代梯度法运算部103使其重复执行梯度法的运算,最终选择基于评价值dfv的可靠性高的向量,并将所选择的运动向量V存储到检测向量存储器53中。
此时,向量评价部104将运动向量V与对该运动向量V求出的评价值dfv一起提供给移动初始向量分配部105。此外,后面参照图25详细记述迭代梯度法运算部103和向量评价部104的结构。
移动初始向量分配部105在从向量评价部104被提供运动向量V及其评价值dfv时,将通过下一帧上的关注块的运动向量设定为移动到该关注块的移动初始向量。换句话说,移动初始向量分配部105将以与运动向量V的终点的块相同的位置的下一帧上的关注块为起点的、与运动向量V相同大小且相同方向的运动向量设定为移动初始向量。并且,移动初始向量分配部105将所设定的移动初始向量与关注块相对应地分配到移动初始向量存储器107。
具体地说,移动初始向量分配部105将作为移动初始向量而分配的运动向量V的评价值dfv与关注块相对应地存储到评价值存储器106中,与通过相同的关注块(即,将与关注块相同的位置的过去的帧的块设为终点)的其它运动向量V的评价值dfv进行比较。然后,移动初始向量分配部105使基于评价值dfv的可靠度高的运动向量V移动到关注块,并作为关注块的移动初始向量而分配到移动初始向量存储器107中。此外,后面参照图21详细记述移动初始向量分配部105的结构。
接着,说明在向量检测部52中使用的梯度法的原理。首先,在运动图像中,将通过使用了水平、垂直、时间轴的坐标(x,y,t)来表示的像素的亮度值设为g(x,y,t)。在此,当关注像素(x0,y0,t0)在微小时间中移位了(dx,dy,dt)时,如果将水平、垂直、时间轴的梯度(差的差)分别表示为gx(x0,y0,t0)、gy(x0,y0,t0)、gt(x0,y0,t0),则使用Taylor展开近似,用下式(7)表示移位后的像素的亮度值。
[公式8]
g(x0+dx,y0+dy,t0+dt)
≈g(x0,y0,t0)+gx(x0,y0,t0)dx+gy(x0,y0,t0)dy+gt(x0,y0,t0)dt
                                            …(7)
在此,在运动图像中的某个关注像素在一帧后移动了水平vx、垂直vy的情况下(以后表示为(vx,vy)),用下式(8)表示该像素的亮度值。
[公式9]
g(x0+vx,y0+vy,t0+1)=g(x0,y0,t0)        …(8)
当将式(7)代入到式(8)时,用下式(9)表示。
[公式10]
gx(x0,y0,t0)vx+gv(x0,y0,t0)vy+gt(x0,y0,t0)=0    …(9)
式(9)是vx、vy的两个变量的式子,因此用对于关注一个像素的单独的式子无法求出其解。因此,如下面说明的那样,将作为关注像素的周边区域的块考虑为一个处理单位,假定块(周边区域)内的全部像素进行相同的运动(vx,vy),关于各像素建立相同的式子。虽然以假定作为前提,但是对于两个变量得到周边像素的个数的式子。因而,联立这些式子来求出块内全部像素的运动补偿帧差的平方和为最小的(vx,vy)。
当像素(x,y,t)在一帧间移动了(vx,vy)时,用下式(10)表示其运动补偿帧间差d。
[公式11]
d=g(x+vx,y+vy,t+1)-g(x,y,t)
=Δx vx+Δy vy+Δt                   …(10)
在式(10)中,Δx=gx(x,y,t),表示水平方向的梯度,Δy=gy(x,y,t),表示垂直方向的梯度,Δt=gt(x,y,t),表示时间方向的梯度。使用它们,当将运动补偿帧间差的平方和设为E时,用式(11)表示。
[公式12]
E=∑d2
=∑(Δx2vx2+Δy2vy2+2ΔxΔy vx vy
+2ΔxΔt vx+2ΔyΔt vy+Δt2)
=vx2∑Δx2+vy2∑Δy2+2vx vy∑ΔxΔy
+2vx∑ΔxΔt+2vy∑ΔyΔt+∑Δt2   …(11)
在此,E为最小的(vx,vy)是在各变量中的偏微分值为0时、即是δE/δvx=δE/δvy=0的条件成立时,因此从式(11)成为下式(12)和式(13)。
[公式13]
vx∑Δx2+vy∑ΔxΔy+∑ΔxΔt=0    …(12)
[公式14]
vy∑Δy2+vx∑ΔxΔy+∑ΔyΔt=0    …(13)
根据这些式(12)和式(13),能够通过运算下式(14)求出作为想要求出的运动的(vx,vy)。
[公式15]
vx = - ( ΣΔ y 2 ) ( ΣΔtΔx ) - ( ΣΔxΔy ) ( ΣΔtΔy ) ( ΣΔ x 2 ) ( ΣΔ y 2 ) - ( ΣΔxΔy ) 2
vy = - ( ΣΔ x 2 ) ( ΣΔtΔy ) - ( ΣΔxΔy ) ( ΣΔtΔx ) ( ΣΔ x 2 ) ( ΣΔ y 2 ) - ( ΣΔxΔy ) 2
                                   …(14)
在此,参照图18具体说明。在图18的例子中,箭头X表示水平方向,箭头Y表示垂直方向。另外,箭头T表示从图中右里的时刻t的帧t向左前的时刻t+1的帧t+1的时间的经过方向。此外,在图18的例子中,作为关注像素p的周边区域(块),各帧仅示出了在梯度法运算中使用的8个像素×8个像素的区域。
在帧t中,在使用上述梯度法求出从左上的像素起向下第5个、向右第5个像素即关注像素p的运动向量V(vx,vy)的情况下,关于关注像素p的周边区域(8个像素×8个像素)的所有的像素求出与分别关于关注像素p的x、y方向上求出的相邻像素px和py之间的亮度的差的差(即梯度)Δx和Δy、与在帧t+1中求出的处于关注像素p的同相位上的像素q之间的时间方向上的亮度的差的差(梯度)Δt,并使用式(14)运算这些差的差,由此能够求出运动向量V(vx,vy)。
即,梯度法是指,在两帧之间求出梯度Δx、Δy、以及Δt,根据求出的Δx、Δy、以及Δt,使用差的平方和来统计算出运动向量V(vx,vy)。
一般在使用了这种梯度法的运动向量检测方法中,针对微小运动能够得到高精确度的结果。但是,在实际的运动图像中想要求出运动的情况下,由于其运动量过大而不能说该梯度法是实用的。与此对应地,考虑多次迭代该梯度法的方法。通过迭代执行梯度法,由此通过各运算求出的运动量收敛,因此逐渐求出正确的运动。
然而,在想要进行实时处理的情况下,仅仅迭代进行梯度法在运算时间方面不实用。因此,在向量检测部52中,将根据过去帧和当前帧中的周边像素的运动而求出的初始向量用作初始值,从而减少梯度法的迭代次数。即,如果通过从成为运动的起点的关注像素向初始向量指向的目的地预先加上偏移来算出大致的运动,并从加上偏移后的该位置开始进行使用了梯度法的运算,则能够进行包含像素以下运动的微调。由此,不增加运算时间而能够检测高精确度的运动向量。
图19是具体说明使用初始向量执行的迭代梯度法的图。在图19的例子中,箭头T表示从图中左前的时刻t的帧t向右里的时刻t+1的帧t+1的时间的经过。此外,以各像素p、q0、q1、q2、以及q3为中心的块表示其像素的、在梯度法运算中使用的周边区域(块)。
在图19的例子的情况下,对于帧t中的关注像素p,在帧t+1中不是以位于关注像素p的同相位的像素q0为开始点,而是以偏移(移动)预先求出的初始向量v0而计算得到的位置(像素)q1为开始点进行第一次梯度法运算,其结果得到运动向量v1。
接着,以从像素q0偏移v0+v1而计算得到的位置(像素)q2为开始点进行第二次梯度法运算,其结果得到运动向量v2。由此,最终用式(15)求出运动向量V。
V=v0+v1+v2     …(15)
如上所述,通过使用初始向量来执行迭代梯度法的运算,能够缩短运算时间,并且能够求出高精确度的运动向量。
接着,参照图20的流程图详细说明运动向量检测处理。在向量检测部52中,被输入所输入的时刻t的图像的帧t和时刻t+1的图像的帧t+1。
在步骤S101中,初始向量选择部101选择成为帧t上的处理对象的块来作为关注块。此外,在帧上从左上的块开始按光栅扫描的顺序执行处理。
在步骤S102中,初始向量选择部101执行初始向量选择处理。在步骤S102中,初始向量选择部101按规定的每个块根据过去的运动向量的检测结果选择可靠度高的运动向量,并将所选择的运动向量作为成为在梯度法中使用的初始值的初始向量V0而输出到迭代梯度法运算部103。
即,初始向量选择部101选择在过去的梯度法运算评价处理(后述的步骤S103)中求出并存储到检测向量存储器53中的周边块的运动向量、在过去的移动初始向量分配处理(后述的步骤S104)中存储到移动初始向量存储器107中的移动初始向量,来作为初始向量的候补向量。然后,初始向量选择部101使评价值运算部61B使用帧t和帧t+1来求出候补向量的评价值dfv,从候补向量中选择基于由评价值运算部61B求出的评价值dfv的可靠度高的向量,并将所选择的候补向量作为初始向量V0而进行输出。此外,后面参照图24详细记述步骤S102中的初始向量选择处理。
在步骤S103中,迭代梯度法运算部103和向量评价部104执行迭代梯度法运算评价处理(此外,还称为迭代梯度法运算处理)。具体地说,在步骤S103中,迭代梯度法运算部103使用从初始向量选择部101输入的初始向量V0、以及通过前置滤波器102-1和102-2输入的帧t和帧t+1,根据向量评价部104的运动向量的评价结果,重复进行梯度法的运算,从而算出运动向量Vn。另外,向量评价部104使评价值运算部61B求出来自迭代梯度法运算部103的运动向量Vn-1的评价值dfv和运动向量Vn的评价值dfv,选择基于由评价值运算部61B求出的评价值dfv的可靠性最高的向量,并作为运动向量V而存储到检测向量存储器53中。此时,向量评价部104将对运动向量V求出的评价值dfv与该运动向量V一起提供给移动初始向量分配部105。此外,后面参照图32详细记述迭代梯度法运算处理。
在步骤S104中,移动初始向量分配部105执行移动初始向量分配处理。移动初始向量分配部105在从向量评价部104提供运动向量V及其评价值dfv时,在步骤S104中,将通过下一帧上的关注块的运动向量设定为移动到该关注块的移动初始向量。即,换句话说,将以与运动向量V的终点的块相同的位置的下一帧上的关注块为起点的、与运动向量V相同大小且相同方向的运动向量设定为移动初始向量。然后,移动初始向量分配部105将所设定的移动初始向量与关注块相对应地分配到移动初始向量存储器107中。
此外,具体地说,移动初始向量分配部105将作为移动初始向量而分配的运动向量V的评价值dfv与关注块相对应地存储到评价值存储器106中,与通过相同关注块的(即,以与关注块相同位置的过去的帧的块为终点)其它运动向量V的评价值dfv进行比较,使基于评价值dfv的可靠度高的运动向量V移动到该块并设定为移动初始向量,并与移动到的块相对应地分配到移动初始向量存储器107中。此外,后面参照图22详细记述移动初始向量分配部105的结构。
在步骤S105中,初始向量选择部101判断在帧t中所有块的处理是否结束。在步骤S105中判断为所有块的处理没有结束的情况下,处理返回到步骤S101,重复进行其以后的处理。另外,在步骤S105中判断为在帧t中所有块的处理结束了的情况下,即判断为在帧t上的所有块中检测出运动向量V,结束运动向量检测处理。
如上所述,从过去检测出的运动向量中选择初始向量,根据所选择的初始向量,使用迭代梯度法的运算,重复算出运动向量,从算出的运动向量中检测出基于评价值dfv的可靠度高的(即最可靠的)运动向量。其结果,在检测向量存储器53中存储与帧t上的所有块对应的运动向量V。
接着,详细说明移动初始向量分配部105的结构。
图21是表示移动初始向量分配部105的结构的框图。图21中示出结构的移动初始向量分配部105进行如下处理:在前(过去)帧中,根据由向量评价部104检测出的运动向量V来设定成为初始向量的候补向量的移动初始向量,并分配到移动初始向量存储器107中。在移动初始向量分配部105中,被输入由向量评价部104检测出的运动向量V和该运动向量V的评价值dfv。
分配对象位置运算部201对由向量评价部104检测出的运动向量V在下一时刻的帧上通过的块的位置(即,与在当前帧上检测出的运动向量V的终点的块处于相同位置上的下一帧上的块的位置)进行运算,并将运算得到的块的位置提供给评价值存储器106和移动初始向量置换部203。
评价值比较部202在被输入运动向量V和该运动向量V的评价值dfv时,从评价值存储器106中读出来自分配对象位置运算部201的块位置的评价值dfv。然后,评价值比较部202将从评价值存储器106中读出的评价值dfv与由向量评价部104检测出的运动向量V的评价值dfv进行比较判断。
评价值比较部202在判断为检测出的运动向量V的评价值dfv的一方较小(即,可靠度高)的情况下,控制移动初始向量置换部203,使其用根据评价值dfv判断为可靠度高的运动向量V来改写移动初始向量存储器107的、由移动初始向量分配部105提供的块位置的移动初始向量。另外,与此同时,评价值比较部202控制评价值置换部204,使其在评价值存储器106中用运动向量V的评价值dfv来改写由分配对象位置运算部201选择的块位置的评价值dfv。
移动初始向量置换部203用从评价值比较部202提供的运动向量V(即,与运动向量V相同大小且相同方向的运动向量)来改写移动初始向量存储器107的、由分配对象位置运算部201提供的块位置的移动初始向量。评价值置换部204根据评价值比较部202的控制,在评价值存储器106中用运动向量V的评价值dfv来改写由分配对象位置运算部201选择的块位置的评价值dfv。
评价值存储器106按每个块存储分配给下一帧上的各块的移动初始候补向量的评价值dfv。移动初始向量存储器107将在下一帧中的各块中评价值dfv最小的(即,可靠度最高的)运动向量作为移动初始向量而与该块相对应地进行存储。
接着,参照图22的流程图,详细说明移动初始向量分配处理。在前级中,当检测帧t-1上的关注块的运动向量V时,向量评价部104将检测出的运动向量V与对该运动向量V求出的评价值dfv一起提供给移动初始向量分配部105。
在步骤S201中,评价值比较部202从向量评价部104被输入运动向量V和该运动向量V的评价值dfv。另外,此时,分配对象位置运算部201也被输入运动向量V。在步骤S202中,分配对象位置运算部201求出运动向量V的帧t中的偏移(运动补偿)目的地的分配对象块的位置。即,分配对象位置运算部201求出与在帧t-1上检测出的运动向量V的终点的块处于相同位置上的帧t上的块位置。
在步骤S203中,分配对象位置运算部201在求出的分配对象块中选择一个分配对象块,将所选择的分配对象块的位置提供给评价值存储器106和移动初始向量置换部203。此外,在步骤S203中,在分配对象块中,在帧t上从左上的块开始依次进行选择。
在步骤S204中,评价值比较部202从评价值存储器106中获取由分配对象位置运算部201选择的分配对象块的评价值dfv,在步骤S205中,判断在步骤S201中输入的运动向量V的评价值dfv是否小于评价值存储器106的评价值dfv(即,运动向量V的评价值dfv与评价值存储器106的评价值dfv相比可靠度是否高)。在步骤S205中,在判断为运动向量V的评价值dfv小于评价值存储器106的评价值dfv的情况下,处理进入步骤S206。
在步骤S206中,评价值比较部202控制移动初始向量置换部203,使其将由分配对象位置运算部201选择的移动初始向量存储器107的分配对象块的移动初始向量改写为运动向量V(即,与运动向量V相同大小且相同方向的运动向量),在步骤S207中,控制评价值置换部204,使其用运动向量V的评价值dfv来改写由分配对象位置运算部201选择的分配对象块的评价值dfv。
另外,在步骤S205中,当判断为在步骤S201中输入的运动向量V的评价值dfv不小于存储在评价值存储器106中的评价值dfv的情况下,处理跳过步骤S206和S207,进入步骤S208。即,在这种情况下,由于判断为评价值存储器106的评价值dfv与运动向量V的评价值dfv相比可靠度高,因此评价值存储器106和移动初始向量存储器107的值不被改写。
在步骤S208中,分配对象位置运算部201判断运动向量V的分配对象块所有的处理是否结束。在步骤S208中判断为分配对象块所有的处理没有结束的情况下,处理返回到步骤S203,重复进行其以后的处理。另外,在步骤S208中,在判断为运动向量V的分配对象块所有的处理结束了的情况下,结束移动初始向量分配处理。
此外,在第一次的处理中,与所选择的分配对象块对应的移动初始向量还没有被存储到移动初始向量存储器107中。因而,在该移动初始向量的评价值dfv还没有被存储到评价值存储器106的对应的分配对象块中的情况下,在步骤S204中无法从所选择的分配对象块中获取评价值dfv,因此在步骤S205中判断为“是”,执行步骤S206和S207的处理。
如上所述,在分配移动初始向量时也使用评价值dfv,因此即使在帧间的平均亮度水平由于光源的移动、影子的通过等而发生变化的情况下,也能够正确地进行向量的可靠度的评价,在利用梯度法运算的运动向量检测中能够得到更适当的初始向量的候补。
另外,在求出移动初始向量时,求出在前一时刻的帧中检测出的运动向量在下一时刻的帧中通过的块(即,与在帧t-1上检测出的运动向量V的终点的块处于相同位置上的帧t上的块),并作为下一时刻的帧上的关注块中的移动初始向量而进行分配,并且,此时关于评价值dfv,也使用当求出在前一时刻的帧中检测出的运动向量时算出的评价值,因此不需要再次求出评价值dfv,与从前一时刻的帧的全部块的运动向量中搜索通过关注块的运动向量的情况相比,削减了处理的运算量,因此能够实现由于庞大的运算量而难以实现的硬件化。
接着,详细说明初始向量选择部101的结构。
图23是表示初始向量选择部101的结构的框图。图23中示出结构的初始向量选择部101进行如下处理:从在前(过去)帧中检测出的运动向量、移动初始向量等候补向量(以下还称为初始候补向量)中选择可靠度高的运动向量来作为初始向量。在初始向量选择部101中,被输入时刻t的图像的帧t和时刻t+1的图像的帧t+1。
候补向量位置运算部251在被输入帧t时,选择成为帧t上的处理对象的关注块,从关注块的周边区域求出获取关注块的初始候补向量的候补块的位置、成为初始候补向量的运动向量的种类以及优先顺序,并按照求出的优先顺序,将候补块的位置信息和初始候补向量的种类信息提供给检测向量获取部252和移动初始向量获取部253。另外,候补向量位置运算部251还将候补块的位置信息提供给偏移位置运算部254。
此外,在信号处理装置1中,初始候补向量的数量根据初始向量的精确度以及硬件能力的匹配等而被设定为规定数量,并且还预先设定候补块的位置、初始候补向量的种类、以及优先顺序。另外,作为初始候补向量的种类具有:在过去帧中使通过规定的块的运动向量移动到该规定的块的运动向量(即,以与在过去帧上检测出的运动向量的终点的块处于相同位置上的下一帧上的块为起点的、与运动向量V相同大小且相同方向的运动向量)即移动初始向量SV、在过去帧中检测出的运动向量(以下还称为过去向量PV)、在当前的帧中在比关注块更靠前的块中检测出的运动向量(还称为当前向量CV)、以及0向量。
因而,候补向量位置运算部251在预先设定的初始候补向量的种类是过去向量或当前向量的情况下,将候补块的位置信息和初始候补向量的种类信息提供给检测向量获取部252,在求出的初始候补向量的种类是移动初始向量的情况下,将候补块的位置信息和初始候补向量的种类信息提供给移动初始向量获取部253,在不是上述任意一个的情况下(例如在初始候补向量的种类是0向量的情况下),设定0向量,将候补块的位置信息与0向量一起提供给偏移位置运算部254。
检测向量获取部252从检测向量存储器53获取与由候补向量位置运算部251提供的候补块的位置信息和初始候补向量的种类信息相应的运动向量,将获取的运动向量作为初始候补向量而输出到偏移位置运算部254。
移动初始向量获取部253根据由候补向量位置运算部251提供的候补块的位置信息和初始候补向量的种类信息,从移动初始向量存储器107中获取与候补块的位置信息对应的移动初始向量,并作为初始候补向量而输出到偏移位置运算部254。另外,在由候补向量位置运算部251指示的块位置上没有分配移动初始向量的情况下,移动初始向量获取部253将0向量输出到偏移位置运算部254。此外,在没有分配移动初始向量的情况下,也可以预先将0向量存储到移动初始向量存储器107中。
当从检测向量获取部252或移动初始向量获取部253输入初始候补向量(或来自候补向量位置运算部251的0向量)时,偏移位置运算部254根据由候补向量位置运算部251提供的候补块的位置信息,对各初始候补向量运算使帧t的关注块偏移(运动补偿)到帧t+1上的偏移目的地的块位置。然后,偏移位置运算部254将候补块的位置信息以及偏移目的地块位置的信息与初始候补向量一起输出到参照图14所述的评价值运算部61B。
评价值运算部61B在从偏移位置运算部254被输入初始候补向量、候补块的位置信息、以及偏移目的地块位置的信息时,使用帧t和帧t+1求出初始候补向量的评价值dfv。然后,评价值运算部61B将求出的评价值dfv与初始候补向量一起输出到评价值比较部256。
评价值比较部256将从评价值运算部61B输入的评价值dfv与保存在最佳候补保存用寄存器257中的最佳候补向量的评价值dfv进行比较,在判断为从评价值运算部61B输入的初始候补向量的评价值dfv小于最佳候补向量的评价值dfv、即初始候补向量与最佳候补向量相比可靠度高的情况下,用视为可靠度高的初始候补向量及其评价值dfv来替换最佳候补保存用寄存器257的最佳候补向量及其评价值dfv。然后,最终,评价值比较部256控制最佳候补保存用寄存器257,使其从所有候补向量中将根据评价值dfv判断为可靠度最高的最佳候补向量作为初始向量V0而输出到迭代梯度法运算部103。
最佳候补保存用寄存器257将由评价值比较部256视为评价值dfv较小的(可靠度高的)初始候补向量作为最佳候补向量而与其评价值dfv一起进行存储。然后,最佳候补保存用寄存器257根据评价值比较部256的控制,将最终存储的最佳候补向量作为初始向量V0而输出到迭代梯度法运算部103。
接着,参照图24的流程图详细说明初始向量选择处理。
在步骤S251中,候补向量位置运算部251从所选择的关注块的周边区域中求出获取预先设定的关注块的初始候补向量的候补块的位置、初始候补向量的种类以及优先顺序,在步骤S252中,按照求出的优先顺序判断候补块的初始候补向量的种类是否为过去向量或当前向量。在步骤S252中,在判断为候补块的初始候补向量的种类是过去向量或当前向量的情况下,在步骤S253中,候补向量位置运算部251将候补块的位置信息和初始候补向量的种类信息提供给检测向量获取部252,使检测向量获取部252从检测向量存储器53中获取与候补块的位置信息以及初始候补向量的种类信息相应的运动向量(过去向量PV或当前向量CV),并将获取的运动向量输出到偏移位置运算部254。
在步骤S252中,在判断为候补块的初始候补向量的种类不是过去向量或当前向量的情况下,在步骤S254中,候补向量位置运算部251判断候补块的初始候补向量的种类是否为移动初始向量。在步骤S254中,在判断为候补块的初始候补向量的种类是移动初始向量的情况下,在步骤S255中,候补向量位置运算部251将候补块的位置信息和初始候补向量的种类信息提供给移动初始向量获取部253,使移动初始向量获取部253从移动初始向量存储器107中获取与候补块的位置信息对应的移动初始向量,并将获取的移动初始向量输出到偏移位置运算部254。
在步骤S254中,在判断为候补块的初始候补向量的种类不是移动初始向量的情况下(即,在判断为候补块的初始候补向量的种类是0向量的情况下),在步骤S256中,候补向量位置运算部251对初始候补向量设定0向量,并将候补块的位置信息与0向量一起提供给偏移位置运算部254。此外,在步骤S253和S255中,候补向量位置运算部251还将候补块的位置信息提供给偏移位置运算部254。
在步骤S257中,偏移位置运算部254在从检测向量获取部252或移动初始向量获取部253被输入初始候补向量时,根据由候补向量位置运算部251提供的候补块的位置信息,对各初始候补向量运算使帧t的关注块偏移到帧t+1上的偏移目的地的块位置。然后,偏移位置运算部254将候补块的位置信息以及偏移目的地块位置的信息与初始候补向量一起输出到评价值运算部61B。
评价值运算部61B在从偏移位置运算部254被输入初始候补向量、候补块的位置信息、以及偏移目的地块位置的信息时,在步骤S258中,使用帧t和帧t+1求出初始候补向量的评价值dfv,并将求出的评价值dfv与初始候补向量一起输出到评价值比较部256。
在步骤S259中,评价值比较部256判断由评价值运算部61B求出的评价值dfv是否小于保存在最佳候补保存用寄存器257中的最佳候补向量的评价值dfv,在判断为由评价值运算部61B求出的评价值dfv小于保存在最佳候补保存用寄存器257中的最佳候补向量的评价值dfv、即初始候补向量与最佳候补向量相比可靠度高的情况下,在步骤S260中,用可靠度高的初始候补向量及其评价值dfv来改写最佳候补保存用寄存器257的最佳候补向量及其评价值dfv。
另外,在判断为由评价值运算部61B求出的评价值dfv不小于保存在最佳候补保存用寄存器257中的最佳候补向量的评价值dfv的情况下,处理跳过步骤S260,进入步骤S261。
在步骤S261中,候补向量位置运算部251判断所有初始候补向量(例如8个向量)的处理是否结束。在步骤S261中,在判断为所有初始候补向量的处理没有结束的情况下,处理返回到步骤S252,重复进行其以后的处理。
在步骤S261中,在判断为所有初始候补向量的处理结束了的情况下,在步骤S262中,评价值比较部256控制最佳候补保存用寄存器257,使其从所有初始候补向量之中将根据评价值dfv视为可靠度高的最佳候补向量作为初始向量V0而输出到迭代梯度法运算部103。根据以上,结束初始向量选择处理。
如上所述,在关注块中求出多个初始候补向量的评价值dfv,选择评价值dfv最小的、即视为可靠度最高的初始候补向量来作为初始向量,因此即使在具有运动的物体的平均亮度水平由于光源的移动、影子的通过等而较大地发生变化的情况下,也能够对后级的运动向量检测提供最佳的初始向量,其结果,能够提高后级的运动向量检测的精确度。
并且,根据在连续的帧间在运动物体的运动量中存在某种程度的连续性、运动量的变化较小的情形,使用评价值dfv从前一帧求出通过关注块的运动向量即移动初始向量,并设为初始向量的候补,因此,与如以往那样仅将过去在周边块中求出的运动向量设为初始向量的候补的情况相比,能够进行高精确度的运动检测。这特别是在运动中的物体的边界中有效。
接着,详细说明迭代梯度法运算部103和向量评价部104的结构。
图25是表示迭代梯度法运算部103和向量评价部104的结构的框图。图25中示出结构的迭代梯度法运算部103和向量评价部104使用所输入的时刻t的图像的帧t和时刻t+1的图像的帧t+1来进行检测最佳的运动向量的处理。
检测该运动向量的处理是对由多个像素构成的规定的每个块执行的处理,迭代梯度法运算部103和向量评价部104通过对各块中的每一个块重复执行使用了梯度法的运算,输出基于评价值dfv的、可靠度高的最佳运动向量。即,对成为运动向量的检测对象的每个检测对象块求出运动向量,但是求出该检测对象块的运动向量时的梯度法运算是将成为梯度法运算的对象的运算块作为对象来执行的。
迭代梯度法运算部103由选择器401、存储器控制信号生成部402、存储器403、有效像素判断部404、梯度法运算部405、以及延迟部406构成。
在选择器401中,被输入来自初始向量选择部101的初始向量V0。选择器401选择来自初始向量选择部101的初始向量V0来作为用作梯度法运算的初始值的运动向量(以下称为偏移向量)Vn-1,并输入到存储器控制信号生成部402、梯度法运算部405、以及向量评价部104。
另外,选择器401在从延迟部406被输入由梯度法运算部405执行梯度法运算而得到的结果的运动向量V的情况下,选择由梯度法运算部405运算得到的运动向量V来作为偏移向量Vn-1,并输出到存储器控制信号生成部402、梯度法运算部405、以及向量评价部104。
在存储器控制信号生成部402中,从信号处理装置1的未图示的控制部被输入对处理的开始时机和位置信息进行控制的控制信号。存储器控制信号生成部402根据控制信号和来自选择器401的偏移向量Vn-1,从存储在存储器403中的时刻t的图像的帧t和时刻t+1的图像的帧t+1中读出构成成为处理对象的运算块的像素的像素值(亮度值)(以下称为对象像素值),并将读出的对象像素值提供给有效像素判断部404和梯度法运算部405。
在存储器403中,通过前置滤波器102-1和102-2被输入时刻t的图像的帧t和时刻t+1的图像的帧t+1并进行存储。
有效像素判断部404使用从存储器403提供的对象像素值,例如运算帧t和帧t+1的运算块的像素差,根据该像素差判断运算块中对梯度法的运算有效的像素数是否多于规定的阈值,并将与该判断结果相应的计数器标志(countflg)提供给梯度法运算部405和向量评价部104。
另外,有效像素判断部404关于判断为在运算块中有效的像素的像素,求出水平方向和垂直方向每个方向的梯度状态(即,是否存在梯度),还判断仅在水平方向和垂直方向中的某一个方向上存在梯度的像素(以下还称为单侧梯度的像素)的比例是否多,将与其判断结果相应的梯度标志(gladflg)提供给梯度法运算部405和向量评价部104。
梯度法运算部405根据从有效像素判断部404提供的计数器标志和梯度标志的值,使用从存储器403提供的对象像素值来执行梯度法运算,使用来自选择器401的偏移向量Vn-1来算出运动向量Vn,并将算出的运动向量Vn输出到向量评价部104。此外,此时在梯度法运算部405中,所使用的梯度法运算(式)被切换为使用了上述式(14)的最小平方和的梯度法运算处理(以下还称为综合型梯度法运算处理)或后述的式(23)的简单的梯度法运算处理(以下为独立型梯度法运算处理)而执行。
在延迟部406中,从向量评价部104被输入由梯度法运算部405算出、并由向量评价部104进行评价而得到的结果的运动向量V。延迟部406保持从向量评价部104输入的运动向量V直到有效像素判断部404和梯度法运算部405的下一处理周期为止,在下一处理周期中将运动向量V输出到选择器401。
向量评价部104由参照图14所述的评价值运算部61B和评价值判断部412构成。
在评价值运算部61B中,通过前置滤波器102-1和102-2被输入时刻t的图像的帧t和时刻t+1的图像的帧t+1,另外从信号处理装置1的未图示的控制部输入控制位置信息的控制信号。
评价值运算部61B根据评价值判断部412的控制,使用帧t和帧t+1、以及位置信息,求出由梯度法运算部405算出的运动向量Vn的评价值dfv、来自选择器401的偏移向量Vn-1的评价值dfv、以及0向量的评价值dfv。然后,评价值运算部61B将求出的评价值dfv与各向量一起输出到评价值判断部412。
评价值判断部412根据从有效像素判断部404提供的计数器标志和梯度标志,比较由评价值运算部61B运算得到的评价值dfv,由此选择可靠性高的向量,并求出运动向量V。
另外,评价值判断部412根据从有效像素判断部404提供的计数器标志和梯度标志,判断是否重复进行梯度法运算处理,在判断为重复进行的情况下,将求出的运动向量V输出到延迟部406。在不重复进行梯度法运算处理的情况下,评价值判断部412将求出的运动向量V存储到检测向量存储器53中。此时,评价值判断部412将对运动向量V求出的评价值dfv与该运动向量V一起提供给移动初始向量分配部105。
图26是表示有效像素判断部404的详细结构的框图。在图26的例子中,有效像素判断部404由像素差算出部421、像素判断部422、计数器423、梯度法继续判断部424、以及运算执行判断部425构成。
像素差算出部421由第一空间梯度像素差算出部421-1、第二空间梯度像素差算出部421-2、以及时间方向像素差算出部421-3构成。
第一空间梯度像素差算出部421-1在从存储器403提供的对象像素值之中使用帧t+1的运算块内的像素的像素值,算出帧t+1中的运算块内的像素的水平方向的像素差Δx和垂直方向的像素差Δy,并将算出的帧t+1中的运算块内的像素的水平方向的像素差Δx和垂直方向的像素差Δy输出到像素判断部422。
第二空间梯度像素差算出部421-2在从存储器403提供的对象像素值之中使用帧t的运算块内的像素的像素值,算出帧t中的运算块内的像素的水平方向的像素差Δx和垂直方向的像素差Δy,并将算出的帧t中的运算块内的像素的水平方向的像素差Δx和垂直方向的像素差Δy输出到像素判断部422。
时间方向像素差算出部421-3使用从存储器403提供的对象像素值(即,帧t和帧t+1中的运算块内的像素的像素值),算出帧t中的运算块内的像素的时间方向的像素差Δt,并将算出的帧t中的运算块内的像素的时间方向的像素差Δt输出到像素判断部422。
像素判断部422由有效像素判断部431、水平梯度判断部432、以及垂直梯度判断部433构成。计数器423由有效像素数计数器441、无水平梯度计数器442、以及无垂直梯度计数器443构成。
有效像素判断部431使用来自第一空间梯度像素差算出部421-1的帧t+1中的运算块内的像素的水平方向的像素差Δx和垂直方向的像素差Δy、来自第二空间梯度像素差算出部421-2的帧t中的运算块内的像素的水平方向的像素差Δx和垂直方向的像素差Δy、以及来自时间方向像素差算出部421-3的帧t+1与帧t之间的运算块内的像素的时间方向的像素差Δt,来进行规定的逻辑运算。此外,后面参照图29详细记述该规定的逻辑运算。
有效像素判断部431根据该规定的逻辑运算判断运算块内的像素是否对运动向量的检测(即,后级的梯度法运算部405的运算)有效,在判断为对运动向量的检测有效的情况下,对有效像素数计数器441的值(有效像素的数量)加1,并且控制水平梯度判断部432和垂直梯度判断部433,使得关于判断为对运动向量的检测有效的有效像素求出水平方向和垂直方向各自的梯度状态。
水平梯度判断部432根据有效像素判断部431的控制,求出有效像素的水平方向的梯度状态,判断是否存在有效像素的水平方向的梯度,在判断为有效像素的水平方向的梯度不存在的情况下,对无水平梯度计数器442的值(不存在水平梯度的像素的数量)加1。
垂直梯度判断部433根据有效像素判断部431的控制,求出有效像素的垂直方向的梯度状态,判断是否存在有效像素的垂直方向的梯度,在判断为有效像素的垂直方向的梯度不存在的情况下,对无垂直梯度计数器443的值(即,不存在水平梯度的像素数)加1。
有效像素数计数器441按每个运算块存储由有效像素判断部431判断为对运动向量的检测有效的有效像素的数量。无水平梯度计数器442按每个运算块存储由水平梯度判断部432判断为不存在水平方向的梯度的有效像素的数量。无垂直梯度计数器443按每个运算块存储由垂直梯度判断部433判断为不存在垂直方向的梯度的有效像素的数量。
梯度法继续判断部424参照有效像素数计数器441判断运算块中的对梯度法的运算有效的像素的数量是否多于规定的阈值α。梯度法继续判断部424在判断为运算块中的对梯度法的运算有效的像素的数量多于规定的阈值α的情况下,将执行梯度法运算的计数器标志(countflg=1)输出到运算执行判断部425、梯度法运算部405以及向量评价部104,在判断为运算块中的对梯度法的运算有效的像素的数量少于规定的阈值α的情况下,将使梯度法运算停止的计数器标志(countflg=0)输出到运算执行判断部425、梯度法运算部405以及向量评价部104。
运算执行判断部425由计数值运算部451和标志设定部452构成。
在来自梯度法继续判断部424的计数器标志的值为1时,计数值运算部451从计数器423(有效像素数计数器441、无水平梯度计数器442、以及无垂直梯度计数器443)中获取有效像素的数量、水平方向上不存在梯度的像素的数量、以及垂直方向上不存在梯度的像素的数量,对运算块中的有效像素与有效像素中的单侧梯度的像素(即,仅在水平方向和垂直方向中的某一个方向上存在梯度的像素)的比例进行运算,根据运算结果,对标志设定部452所设定的梯度标志(gladflg)的值进行控制。
标志设定部452根据计数值运算部451的控制,设定梯度标志的值,并将梯度标志输出到梯度法运算部405和评价判断部412。后面参照图31记述梯度标志的值。
图27是表示梯度法运算部405的详细结构的框图。在图27的例子中,梯度法运算部405由像素差算出部461、运算判断部462、综合型梯度运算部463-1、独立型梯度运算部463-2、以及向量算出部464构成。
像素差算出部461由第一空间梯度像素差算出部461-1、第二空间梯度像素差算出部461-2、以及时间方向像素差算出部461-3构成,根据运算判断部462的控制,算出成为对象的像素差。
第一空间梯度像素差算出部461-1的结构与第一空间梯度像素差算出部421-1相同,在从存储器403提供的对象像素值之中使用帧t+1中的运算块内的像素的像素值,算出帧t+1中的运算块内的像素的水平方向的像素差Δx和垂直方向的像素差Δy,并将算出的帧t+1中的运算块内的像素的水平方向的像素差Δx和垂直方向的像素差Δy输出到运算判断部462。
第二空间梯度像素差算出部461-2的结构与第二空间梯度像素差算出部421-2相同,在从存储器403提供的对象像素值之中使用帧t中的运算块内的像素的像素值,算出帧t中的运算块内的像素的水平方向的像素差Δx和垂直方向的像素差Δy,并将算出的帧t中的运算块内的像素的水平方向的像素差Δx和垂直方向的像素差Δy输出到运算判断部462。
时间方向像素差算出部461-3的结构与时间方向像素差算出部421-3相同,使用从存储器403提供的对象像素值(即,帧t和帧t+1中的运算块内的像素的像素值),算出帧t中的运算块内的像素的时间方向的像素差Δt,并将算出的帧t中的运算块内的像素的时间方向的像素差Δt输出到运算判断部462。
运算判断部462由有效像素判断部471、水平梯度判断部472、以及垂直梯度判断部473构成。有效像素判断部471根据从梯度法继续判断部424提供的计数器标志(countflg)的值来控制梯度法运算部405的执行、禁止。
另外,有效像素判断部471根据从运算执行判断部425提供的梯度标志(gladflg)的值,对第一空间梯度像素差算出部461-1、第二空间梯度像素差算出部461-2、以及时间方向像素差算出部461-3的像素差算出处理的执行、禁止进行控制,并且判断利用综合型梯度运算部463-1和独立型梯度运算部463-2中的哪一个来进行梯度法运算处理。
有效像素判断部471在根据梯度标志的值判断为利用综合型梯度运算部463-1进行梯度法运算处理的情况下,使用来自第一空间梯度像素差算出部461-1的帧t+1中的运算块内的像素的水平方向的像素差Δx和垂直方向的像素差Δy、来自第二空间梯度像素差算出部461-2的帧t中的运算块内的像素的水平方向的像素差Δx和垂直方向的像素差Δy、以及来自时间方向像素差算出部461-3的帧t+1和帧t之间的运算块内的像素的时间方向的像素差Δt,来进行与有效像素判断部431相同的规定的逻辑运算,根据规定的逻辑运算来判断运算块内的像素是否对运动向量的检测有效,将判断为对运动向量的检测有效的有效像素的梯度(像素差)提供给综合型梯度运算部463-1,使其执行综合型梯度法运算处理。
有效像素判断部471在根据梯度标志的值判断为利用独立型梯度运算部463-2进行梯度法运算处理的情况下,控制水平梯度判断部472和垂直梯度判断部473中的至少一个,使其根据规定的逻辑运算,关于被判断为运算块内的像素对运动向量的检测有效的有效像素求出水平方向和垂直方向各自的梯度状态。
水平梯度判断部472根据有效像素判断部471的控制,求出有效像素的水平方向的梯度状态,判断是否存在有效像素的水平方向的梯度,仅将有效像素中的存在水平方向梯度的像素的梯度(像素差)提供给独立型梯度运算部463-2,使其执行对水平方向的独立型梯度法运算处理。
垂直梯度判断部473根据有效像素判断部471的控制,求出有效像素的垂直方向的梯度状态,判断是否存在有效像素的垂直方向的梯度,仅将有效像素中的存在垂直方向梯度的像素的梯度(像素差)提供给独立型梯度运算部463-2,使其执行对垂直方向的独立型梯度法运算处理。
综合型梯度运算部463-1根据有效像素判断部471的控制,执行综合型梯度法运算处理。即,综合型梯度运算部463-1将由有效像素判断部471提供的有效像素的梯度(时间方向的像素差Δt、水平方向的像素差Δx、以及垂直方向的像素差Δy)进行累加,使用上述的式(14)的最小平方和来求出运动向量vn,并将求出的运动向量vn输出到向量算出部464。
独立型梯度运算部463-2根据水平梯度判断部472的控制,执行水平方向的独立型梯度法运算处理。即,独立型梯度运算部463-2将由水平梯度判断部472提供的有效像素中的、水平方向上存在梯度的像素的梯度(时间方向的像素差Δt、水平方向的像素差Δx、以及垂直方向的像素差Δy)进行累加,代替式(14)而使用作为后述的简单的公式的式(23)来求出运动向量vn的水平方向成分,并将求出的运动向量vn的水平方向成分输出到向量算出部464。
另外,独立型梯度运算部463-2根据垂直梯度判断部473的控制,执行垂直方向的独立型梯度法运算处理。即,独立型梯度运算部463-2将由垂直梯度判断部473提供的有效像素中的、垂直方向上存在梯度的像素的像素值的梯度(时间方向的像素差Δt、水平方向的像素差Δx、以及垂直方向的像素差Δy)进行累加,代替式(14)而使用作为后述的简单的公式的式(23)来求出运动向量vn的垂直方向成分,并将求出的运动向量vn的垂直方向成分输出到向量算出部464。
向量算出部464将来自选择器401的偏移向量Vn-1与来自综合型梯度运算部463-1的运动向量vn、或来自独立型梯度运算部463-2的运动向量vn相加,从而算出运动向量Vn,并将算出的运动向量Vn输出到向量评价部104。
图28示出了成为运动向量的检测对象的检测对象块、以及与该检测对象块对应的成为梯度法运算的对象的运算块的其它例子。此外,在图28的例子中,示出了帧t,帧t上的圆表示像素。
在图28的例子的情况下,在帧t上示出由4个像素×4个像素构成的检测对象块K1至K3、和分别以检测对象块K1至K3为中心的8个像素×8个像素的各运算块E1至E3。此外,各运算块E1至E3中的各相邻的运算块以所构成的像素的一半相重叠。
在向量检测部52中,从帧上的左上的检测对象块开始按光栅扫描的顺序执行运动向量的检测。因而,在帧t上检测对象块K1、检测对象块K2、以及检测对象块K3依次成为运动向量的检测对象块。并且,与此对应地,梯度法的运算块成为运算块E1、运算块E2、以及运算块E3。即,在图28的例子的检测对象块和运算块的情况下,各运算块E1至E3中的各相邻的运算块以所构成的像素的一半相重叠。
此外,以后使用如上所述构成的检测对象块和运算块来说明图25的迭代梯度法运算部103和向量评价部104的处理,但是不限定于这些结构的检测对象块和运算块,检测对象块不限于四个像素,例如也可以由一个像素构成,还可以是其它多个的像素数量。另外,在图28的例子中,检测对象块和运算块的像素数量不同,但是也可以由相同的像素数量构成。即,也可以构成为运算块直接成为检测对象块。
接着,参照图29说明有效像素判断部404的有效像素判断方法。在图29的例子中,箭头T表示从图中左前的时刻t的帧t向右里的时刻t+1的帧t+1的时间的经过方向。
在帧t上示出成为运动向量的检测对象的由4个像素×4个像素构成的检测对象块Kt(图中黑圆)、和以检测对象块Kt为中心的(检测对象块的周围的)由8个像素×8个像素构成的运算块Et。另一方面,在帧t+1上示出与检测对象块Kt对应的由4个像素×4个像素构成的检测对象块Kt+1(图中黑圆)、以及与运算块Et对应的由8个像素×8个像素构成的运算块Et+1。此外,帧t+1上的虚线的块表示与检测对象块Kt同相位的块,在帧t+1上,作为梯度法的运算对象,使用从虚线的块移动(shift)了作为初始向量提供的运动向量V(Vx,Vy)得到的位置的运算块Et+1。
在此,在将帧t上的运算块Et的像素p1、与帧t+1上的运算块Et+1之间的相同位置的像素p2中的时间方向的像素差(帧差)设为Δt、将此时的图像框设为w时,利用式(16)至式(18)求出运算块Et的像素p1的水平方向的像素差Δx1、垂直方向的像素差Δy1、以及时间方向的像素差Δt。
[公式16]
Δx1=Yt(k+1)-Yt(k)    …(16)
[公式17]
Δy1=Yt(k+w)-Yt(k)    …(17)
[公式18]
Δt=Yt+1(k)-Yt(k)     …(18)
此外,Yt+1表示时刻t+1的像素值,Yt表示时刻t的像素值,k+1和k表示地址(位置)。另外,同样地求出与像素p1对应的运算块Et+1的像素p2的水平方向的像素差Δx2和垂直方向的像素差Δy2。
有效像素判断部404使用这些值进行逻辑运算,根据其结果进行有效像素判断。即,有效像素判断部404的有效像素判断部431在运算块Et的像素中求出是否满足下面三个条件式(19)至式(21)中的任一个(即,满足式(22)),由此判断该像素是否为对运动向量检测有效的像素。
[公式19]
Δx1≠0 && Δx2≠0  &&
|Δx1|>th1·|Δy1| && |Δt/Δx1-Δt/Δx2|<th2
                                    …(19)
[公式20]
Δy1≠0 && Δy2≠0 &&
|Δy1|>th1·|Δx1| && |Δt/Δy1-Δt/Δy2|<th2
                                    …(20)
[公式21]
Δx1≠0 && Δx2≠0 && Δy1≠0 && Δy2≠0 &&
|Δt/Δx1-Δt/Δx2|<th2 &&
|Δt/Δy1-Δt/Δy2|<th2
                                                …(21)
式19‖式20‖式21                                …(22)
在此,‖表示逻辑和、&&表示逻辑积、·表示相乘、th1和th2分别表示规定的阈值。此外,将th1例如设为1、1.5、或2,将th2例如设为4。
因而,在式(19)中,Δx1≠0 && Δx2≠0表示像素p1和像素p2的水平梯度不平坦(在水平方向上具有梯度)。|Δx1|>th1·|Δy1|表示水平梯度比垂直梯度大某种程度且更具支配性。|Δt/Δx1-Δt/Δx2|<th2表示梯度法的(归一化的情况的)水平方向的运动小于规定的阈值th2、即在水平方向的运动中存在相似性。根据以上,式(19)表示在水平方向上所关注的条件,满足了这些全部条件的像素被判断为在水平方向的运动中存在相似性,判断为在后级的梯度法中使用并有效。
另外,在式(20)中,Δy1≠0 && Δy2≠0表示垂直梯度不平坦(在垂直方向上具有梯度)。|Δy1|>th1·|Δx1|表示垂直梯度比水平梯度大某种程度且更具支配性。|Δt/Δy1-Δt/Δy2|<th2表示梯度法的(归一化的情况的)垂直方向的运动中存在相似性。根据以上,式(20)表示在垂直方向上所关注的条件,满足了这些全部条件的像素被判断为在垂直方向的运动中存在相似性,判断为在后级的梯度法中使用并有效。
同样地,在式(21)中,Δx1≠0 && Δx2≠0 && Δy1≠0 &&Δy2≠0表示垂直和水平梯度不平坦(在垂直和水平方向上具有梯度)。|Δt/Δx1-Δt/Δx2|<th2 && |Δt/Δy1-Δt/Δy2|<th2表示梯度法的(归一化的情况的)垂直方向和水平方向的运动中存在相似性。根据以上,式(21)表示针对不满足式(19)和式(20)的像素的在水平和垂直的两个方向上(以下还称为斜方向、或垂直水平方向)所关注的条件(以下称为水平垂直关注条件),满足了这些全部条件的像素被判断为在水平和垂直方向的运动中存在相似性,判断为在后级的梯度法中使用并有效。
此外,如果有效像素判断的逻辑运算中使用各像素差,则不限于图29的例子。另外,关于有效像素判断,并不限于根据上述的所有的像素差来判断,例如也可以判断帧t上的运算块Et的像素p 1与帧t+1上的运算块Et+1之间的相同位置的像素p2中的时间方向的像素差(帧差)Δt是否小于规定的值,在判断为小的情况下,判断为是有效像素。
图30示出运算块中的像素的结构例。在图30的例子中示出了在以由4个像素×4个像素构成的检测对象块K为中心的由8个像素×8个像素(64个像素)构成的运算块E内满足上述式(22)并被判断为有效像素的像素(图中白圆)、和不满足式(22)而没有成为梯度法的运算对象的像素(图中黑圆)。
因而,有效像素判断部404使用式(22),关于运算块Et内的各像素判断对于水平方向、垂直方向、或斜方向中的某一个方向的运动是否存在相似性。然后,有效像素判断部404判断被判断为对于水平方向、垂直方向、和斜方向中的任一个方向的运动都存在相似性的像素、即被判断为有效像素的像素的数量是否为50%(全部64个像素中是否多于32个像素),在被判断为有效像素的像素为50%以下的情况下,设为运算块中的运算不稳定,例如进行使运算停止的处理。此外,将有效像素数计数器的阈值设为50%,但是,当然该值也可以是其它的值。
由此,多少可以防止不怎么有相似性的不同的运动的像素的混杂,因此能够进行稳定的梯度法运算。其结果,提高通过梯度法运算求出的运动向量的可靠性,提高运动向量检测的精确度。
另一方面,在被判断为有效像素的像素多于50%的情况下,梯度法运算部405进一步使用式(22),关于运算块Et内的各像素判断对于水平方向、垂直方向、和斜方向中的某一个方向的运动是否存在相似性,并从梯度法运算的对象中除去被判断为对于水平方向、垂直方向、和斜方向中的任一个方向的哪个运动都不存在相似性的像素,在运算块E内仅使用被判断为有效像素的像素(34个像素)来进行梯度法运算。
由此,由于仅利用相对于水平方向、垂直方向、和斜方向中的某一个方向的运动存在相似性的像素来执行梯度法运算,因此可抑制混入不同的运动,从而执行更稳定的梯度法运算,其结果,可检测出可靠的运动向量。
此外,在上述的有效像素判断方法中,不区分在水平方向和垂直方向上存在梯度的普通区域(以下称为普通梯度区域)、和仅在水平方向和垂直方向中的任一个单侧上存在梯度的区域(以下为单侧梯度区域)而进行梯度法运算。因而,在实际应用上,有时导致特别是在单侧梯度区域中的运动向量的检测精确度明显下降。
接着,参照图31说明单侧梯度区域。在图31的例子中,箭头T表示图中从左前的时刻t的帧t向右里的时刻t+1的帧t+1的时间的经过方向。
帧t和帧t+1上的线L表示由亮度值为e的像素构成的区域(白色区域)、和由值与亮度值e不同的亮度值为f的像素构成的区域(阴影线区域)的边界。
在帧t的线L上示出成为运动向量的检测对象的由4个像素×4个像素构成的运算块Et。此外,在图31的例子中,省略检测对象块。另一方面,在帧t+1上示出与运算块Et对应的由4个像素×4个像素构成的运算块Et+1。另外,帧t+1上的虚线的块表示与运算块Et同相位的块,在帧t+1上示出从虚线的块开始重复进行梯度法运算、最终将运算块Et+1用作梯度法的运算对象而检测出的运动向量V(Vx,Vy)。
如右侧放大的那样,在该帧t中,运算块Et的左边两列的像素(像素p00、像素p10、像素p20和像素p30、以及像素p01、像素p11、像素p21和像素p31)是全部相同的亮度值e,运算块Et的右边两列的像素(像素p02、像素p12、像素p22和像素p32、以及像素p03、像素p13、像素p23和像素p33)是全部相同的亮度值f。
即,在运算块Et中,例如像素p01与像素p00之间以及像素p01与像素p11之间、在像素p02与像素p03之间以及像素p02与像素p12之间等,在相同区域内的像素彼此之间不存在梯度,但是在像素p01与像素p02之间、像素p11与像素p12之间、像素p21与像素p22之间、以及像素p31与像素p32之间存在梯度。
因而,在帧t上的运算块Et内仅存在水平方向的梯度而不存在垂直方向的梯度,因此根据梯度法的原理,在帧t+1上,在运动向量V中能够检测水平方向的运动,但是无法检测垂直方向的运动。
在此,在这样构成的单侧梯度区域的运算块Et中,在仅使用上述有效像素判断方法的情况下,处于边界部分的像素(像素p01、像素p11、像素p21和像素p31、以及像素p02、像素p12、像素p22和像素p32)满足上述的在水平方向上所关注的条件即式(19),由此判断为是有效像素。
然而,实际上,在较多地包含这种仅在水平方向上具有梯度的像素的运算块中,如果进行使用了式(14)的梯度法运算,其结果有可能导致检测出本来不应该检测的垂直方向的运动向量(即,错误的运动向量)。
即,实际上,尽管在帧t+1的线L上将比运算块Et+1靠上或靠下的位置的块用作运算对象来检测出的运动向量有可能是最佳的运动向量,但是有可能导致在帧t+1上从虚线的块开始重复进行梯度法运算而最终将运算块Et+1用作梯度法的运算对象来算出的运动向量V(Vx,Vy)被评价为最佳的运动向量而被检测。
因此,有效像素判断部404在进行有效像素判断之后,进一步进行基于各像素的水平和垂直方向中的每个方向的梯度状态的、梯度法执行判断,根据其判断结果,使梯度法运算部405切换到使用式(14)的综合型梯度法运算和使用将式(14)简化后的下式(23)的独立型梯度法运算中的某一个来算出运动向量。
[公式22]
vx = - Σsign ( Δx ) Δt Σ | Δx |
vy = - Σsign ( Δy ) Δt Σ | Δy |
                                     …(23)
关于使用该式(23)的独立型梯度法运算,在求出运动向量的水平方向成分的情况下不使用运算对象的像素的垂直梯度,在求出运动向量的垂直方向成分的情况下不使用运算对象的像素的水平梯度。即,能够对各方向成分中的每个方向成分使用各自的梯度来检测运动,因此在仅存在水平梯度或垂直梯度的单侧梯度区域中也能够检测可靠的运动向量,从而可提高运动向量的检测精确度。
另外,该独立型梯度法运算与式(14)的综合型梯度法运算相比,运算负荷小,容易安装到硬件。
接着,说明在进行有效像素判断之后执行的梯度法执行判断。
有效像素判断部404对运算块中的通过上述有效像素判断处理判断为是有效像素的像素进一步分别判断有无水平方向的梯度、有无垂直方向的梯度,获取通过有效像素判断处理得到的有效像素的数量(cnt_t)、在水平方向上不存在梯度的像素的数量(ngcnt_x)、以及在垂直方向上不存在梯度的像素的数量(ngcnt_y),利用使用了这些值的下式(24)至式(26)进行梯度法执行判断处理。
[公式23]
cnt_t-ngcnt_x-ngcnt_y≥px|_a·th3
                                …(24)
[公式24]
cnt_t-ngcnt_x≥px|_a·th3
                                …(25)
[公式25]
cnt_t-ngcnt_y≥px|_a·th3
                             …(26)
在此,pxl_a表示运算块内的全部像素数量,·表示相乘,th3表示不到1的规定的阈值。
首先,在判断为满足式(24)的情况下,认为是在有效像素中适当地存在具有水平方向和垂直方向的梯度(存在普通梯度)的有效像素的状态。因此,有效像素判断部404设定梯度标志(gladflg=4),使梯度法运算部405执行使用式(14)的综合型梯度法运算。
与此对应地,在梯度标志(gladflg=4)的情况下,梯度法运算部405将有效像素作为梯度法运算的对象来执行使用式(14)的综合型梯度法运算。
此外,在梯度标志(gladflg=4)的情况下,向量评价部104将综合型梯度法运算的结果的运动向量的评价值dfv与偏移向量的评价值dfv进行比较,将判断为评价值dfv较小的一方评价为可靠度高,根据评价结果来修正(变更)运动向量。另外,向量评价部104仅在综合型梯度法运算结果的运动向量的可靠度高的情况下、并且迭代次数不到最大次数的情况下,判断为重复进行迭代梯度运算处理。
在判断为不满足式(24)而满足式(25)和式(26)的情况下,认为在有效像素中包含有相当数量的在水平方向和垂直方向中的某一个方向上不存在梯度的像素。因此,有效像素判断部404设定梯度标志(gladflg=0),使梯度法运算部405在水平和垂直方向的每个方向上执行使用式(23)的独立型梯度法运算,将水平和垂直方向的每个方向上的运算结果加在一起而作为其运算结果。在此时的每个方向成分的梯度法运算中仅使用在对应的方向上存在梯度的有效像素。
与此对应地,在梯度标志(gladflg=0)的情况下,梯度法运算部405将有效像素中的具有水平梯度的像素作为梯度法运算的对象,执行使用式(23)的水平方向的独立型梯度法运算,并且将有效像素中的具有垂直梯度的像素作为梯度法运算的对象,执行使用式(23)的垂直方向的独立型梯度法运算。
在判断为不满足式(24)而仅满足式(25)的情况下,认为在有效像素中包含有相当数量的在垂直方向上不存在梯度的像素。因此,有效像素判断部404设定梯度标志(gladflg=1),使梯度法运算部405关于垂直方向的运动不进行运算而设为没有运动(0向量),仅对水平方向的运动执行使用式(23)的梯度法运算。在此时的梯度法运算中仅使用在水平方向上存在梯度的有效像素。
与此对应地,在梯度标志(gladflg=1)的情况下,梯度法运算部405将有效像素中的具有水平梯度的像素作为梯度法运算的对象,执行使用式(23)的水平方向的独立型梯度法运算。
在判断为不满足式(24)而仅满足式(26)的情况下,认为在有效像素中包含有较多的在水平方向上不存在梯度的像素。因此,有效像素判断部404设定梯度标志(gladflg=2),使梯度法运算部405关于水平方向的运动不进行运算而设为没有运动(0向量),仅对垂直方向的运动执行使用式(23)的梯度法运算。在此时的梯度法运算中仅使用在垂直方向上存在梯度的有效像素。
与此对应地,在梯度标志(gladflg=2)的情况下,梯度法运算部405将有效像素中的具有垂直梯度的像素作为梯度法运算的对象,执行使用式(23)的垂直方向的独立型梯度法运算。
此外,在梯度标志(gladflg=0、1、2)的情况下,在向量评价部104中,将独立型梯度法运算的结果的运动向量的评价值dfv与0向量的评价值dfv进行比较,将判断为评价值dfv较小的一方评价为可靠度高,并根据评价结果来修正(变更)运动向量。并且,在这种情况下,在向量评价部104中,不重复进行迭代梯度运算处理。
在判断为不满足式(24)至式(26)的情况下,认为是在运算块内判断为有效的像素少、从而难以进行梯度法运算的状态。因此,有效像素判断部404设定梯度标志(gladflg=3),不使梯度法运算部405进行运算而设为没有运动(0向量)。
与此对应地,在梯度标志(gladflg=0)的情况下,梯度法运算部405不执行梯度法运算处理,在向量评价部104中不进行评价值dfv的比较,不重复进行迭代梯度运算处理。
如上所述,使用式(24)至式(26)来进行梯度法执行判断处理,根据判断结果切换梯度法运算,因此在单侧梯度区域中也能够检测可靠的运动向量,从而可提高运动向量的检测精确度。另外,在独立型梯度法运算中,仅使用在对象方向上存在梯度的有效像素来求出其方向成分的运动向量,或将不存在梯度的像素较多的方向成分的运动向量设为0向量,因此能够进一步检测可靠的运动向量。
并且,根据梯度法执行判断处理的结果,不仅进行梯度法运算的控制,还进行向量评价以及与评价结果相应的运动向量的变更、以及梯度法运算的迭代判断,因此可降低运算负荷、进一步提高运动向量的检测精确度。
接着,参照图32的流程图说明迭代梯度法运算处理的例子。从前级对选择器401输入初始向量V0。
在步骤S301中,选择器401选择偏移向量Vn-1,将所选择的偏移向量Vn-1输出到存储器控制信号生成部402、梯度法运算部405、以及评价值运算部61B。
此外,选择器401在被输入来自初始向量选择部101的初始向量V0的情况下,选择所输入的初始向量V0来作为偏移向量Vn-1,在从延迟部406输入由梯度法运算部405运算、并由评价判断部412进行评价得到的结果的运动向量V的情况下,选择运动向量V来作为偏移向量Vn-1。
在存储器控制信号生成部402中,从信号处理装置1的未图示的控制部被输入对处理的开始时机和位置信息进行控制的控制信号、以及来自选择器401的偏移向量。在步骤S302中,存储器控制信号生成部402根据控制信号以及来自选择器401的偏移向量Vn-1,从存储在存储器403中的时刻t的图像的帧t和时刻t+1的图像的帧t+1中读出成为处理对象的运算块的对象像素值,将读出的对象像素值提供给有效像素判断部404和梯度法运算部405。
在步骤S303中,有效像素判断部404在被输入从存储器403提供的对象像素值时,执行有效像素判断处理。后面参照图33详细记述该有效像素判断处理。
通过步骤S303的有效像素判断处理,使用从存储器403提供的对象像素值来对帧t和帧t+1的运算块的像素差进行运算,由此由有效像素数计数器441计数运算块中对梯度法的运算有效的有效像素的数量。另外,关于在运算块中被判断为有效的像素的有效像素,求出水平方向和垂直方向的各个方向上的梯度状态,并分别由无水平梯度计数器442和无垂直梯度计数器443对不存在水平梯度的像素的数量和不存在垂直梯度的像素的数量进行计数。
在步骤S304中,梯度法继续判断部424判断存储在有效像素数计数器441中的值(有效像素的数量)是否多于规定的阈值α。在步骤S304中,在判断为有效像素的数量多于规定的阈值α的情况下,通过梯度法继续判断部424对运算执行判断部425、梯度法运算部405以及向量评价部104输出执行梯度法运算的计数器标志(countflg=1),处理进入步骤S305。
在步骤S305中,运算执行判断部425在从梯度法继续判断部424被输入计数器标志(countflg=1)时,执行梯度法执行判断处理。后面参照图35详细记述该梯度法执行判断处理。
通过步骤S305的梯度法执行判断处理,参照有效像素数计数器441的有效像素的数量、无水平梯度计数器442的不存在水平梯度的像素的数量、以及无垂直梯度计数器443的不存在垂直梯度的像素的数量,来判断有效像素中的单侧梯度的像素的数量是否多,并根据其判断结果,设定用于将梯度法运算部405所进行的梯度法运算处理切换到综合型梯度法运算处理和独立型梯度法运算处理中的某一个处理的梯度标志(gladflg),将设定的梯度标志输出到梯度法运算部405和评价判断部412,处理进入步骤S306。
另一方面,梯度法运算部405在从梯度法继续判断部424被输入计数器标志(countflg=1)、从运算执行判断部425被输入梯度标志时,在步骤S306中执行梯度法运算处理。后面参照图36详细记述该梯度法运算处理。
通过步骤S306的梯度法运算处理,根据来自运算执行判断部425的梯度标志,执行使用有效像素的综合型梯度法运算处理、或者使用有效像素中的在水平方向上存在梯度的像素的水平方向的独立型梯度法运算处理以及使用在垂直方向上存在梯度的像素的垂直方向的独立型梯度法运算处理中的至少一个,求出运动向量Vn,将求出的运动向量Vn输出到向量评价部104,处理进入步骤S307。
在步骤S307中,向量评价部104执行向量评价处理。后面参照图39详细记述该向量评价处理。
通过步骤S307的向量评价处理,根据梯度标志求出来自梯度法运算部405的运动向量Vn的评价值dfv、偏移向量Vn-1的评价值dfv、以及0向量的评价值dfv,根据来自运算执行判断部425的梯度标志将运动向量Vn的评价值dfv与偏移向量Vn-1的评价值dfv或0向量的评价值dfv进行比较,根据比较结果求出运动向量V。例如,将运动向量Vn的评价值dfv与偏移向量Vn-1的评价值dfv进行比较,在运动向量Vn的评价值的可靠度较高的情况下,运动向量Vn被设为运动向量V,梯度法运算的迭代次数被计数1次。
在步骤S308中,向量评价部104还根据来自运算执行判断部425的梯度标志和梯度法运算的迭代次数,来判断是否迭代进行梯度法运算。
即,向量评价部104在梯度标志是执行综合型梯度法运算处理的标志(即,梯度标志(gladflg=4))、并且梯度法运算的迭代次数没有成为所设定的最大迭代次数(例如两次)的情况下,在步骤S308中判断为迭代进行梯度法运算,将求出的运动向量V输出到延迟部406。
延迟部406保持从向量评价部104输入的运动向量V直到有效像素判断部404和梯度法运算部405的下一处理周期为止,在下一处理周期中,将运动向量V输出到选择器401。由此,处理返回到步骤S301,重复进行其以后的处理。
另外,向量评价部104在梯度标志是执行综合型梯度法运算处理的标志以外的情况下、或在梯度法运算的迭代次数成为所设定的最大迭代次数(例如两次)的情况下,在步骤S308中判断为不迭代进行梯度法运算、即结束梯度法运算。在步骤S310中,向量评价部104将求出的运动向量V与检测对象块相对应地存储到检测向量存储器53中,并结束迭代梯度法处理。此外,此时还将运动向量V及其评价值dfv输出到移动初始向量分配部105。
另一方面,在步骤S304中,在判断为有效像素的数量小于规定的阈值α的情况下,由梯度法继续判断部424将停止梯度法运算的计数器标志(countflg=0)输出到运算执行判断部425、梯度法运算部405、以及评价值判断部412,处理进入步骤S309。
运算执行判断部425和梯度法运算部405在来自梯度法继续判断部424的计数器标志的值是0的情况下不执行梯度法运算,评价值判断部412在步骤S309中将0向量设为运动向量V,在步骤S310中将运动向量V与检测对象块相对应地存储到检测向量存储器53中。此外,此时还将作为0向量的运动向量V及其评价值dfv输出到移动初始向量分配部105。
根据以上,结束迭代梯度法运算处理,由移动初始向量分配部105使用运动向量V及其评价值dfv来执行移动初始向量分配处理,由后级的向量分配部54使用存储在检测向量存储器53中的运动向量V。
如上所述,不仅进行有效像素判断,还判断有效像素内有无各方向的梯度,根据有效像素内的单侧梯度的像素的比例,进行梯度法运算方法的切换、向量评价的评价(比较)对象、以及梯度法的迭代判断等,因此不仅在普通梯度区域,在单侧梯度区域中也检测出可靠的运动向量,并且减少需要以上的运算负荷。
另外,在向量评价部104中,根据有效像素内的单侧梯度的像素的比例,求出运动向量Vn、偏移向量Vn-1、以及0向量等的评价值dfv,选择评价值dfv小、即视为可靠度高的运动向量,因此,在具有运动的物体的平均亮度水平由于光源的移动、影子的通过等而较大地发生变化的情况下,也能够对后级的向量分配提供最佳的运动向量,其结果,也能够提高后级的向量分配的精确度。
接着,参照图33的流程图详细说明图32的步骤S303的有效像素判断处理。
有效像素判断部404在被输入从存储器403提供的运算块的对象像素值时,在步骤S321中,的像素差算出部421控制像素判断部422的各部分(有效像素判断部431、水平梯度判断部432、以及垂直梯度判断部433),使各计数器(有效像素数计数器441、无水平梯度计数器442、以及无垂直梯度计数器443)的值复位。
像素差算出部421的各部分(第一空间梯度像素差算出部421-1、第二空间梯度像素差算出部421-2、以及时间方向像素差算出部421-3)在步骤S 322中选择运算块内的一个像素,在步骤S323中执行有效像素运算处理。参照图34的流程图说明该有效像素运算处理。
在步骤S351中,时间方向像素差算出部421-3算出运算块内的所选择的像素的帧t+1与帧t之间的时间方向的像素差Δt,并将算出的像素的帧t+1与帧t之间的时间方向的像素差Δt输出到像素判断部422。
在步骤S352中,第一空间梯度像素差算出部421-1算出运算块内的所选择的像素的帧t+1上的水平方向的像素差Δx和垂直方向的像素差Δy,将算出的像素的帧t+1上的水平方向的像素差Δx和垂直方向的像素差Δy输出到像素判断部422。
在步骤S353中,第二空间梯度像素差算出部421-2算出运算块内的所选择的像素的帧t上的水平方向的像素差Δx和垂直方向的像素差Δy,并将算出的像素的帧t上的水平方向的像素差Δx和垂直方向的像素差Δy输出到像素判断部422。
在步骤S354中,像素判断部422的有效像素判断部431使用来自第一空间梯度像素差算出部421-1的所选择的像素的帧t+1上的水平方向的像素差Δx和垂直方向的像素差Δy、来自第二空间梯度像素差算出部421-2的所选择的像素的帧t上的水平方向的像素差Δx和垂直方向的像素差Δy、以及来自时间方向像素差算出部421-3的所选择的像素的帧t+1与帧t之间的时间方向的像素差Δt,来进行作为水平方向的关注条件的式(19)、作为垂直方向的关注条件的式(20)、以及作为水平垂直方向的关注条件的式(21)的逻辑运算。之后,处理返回到图33的步骤S323,进入步骤S324。
在步骤S324中,有效像素判断部431根据上述三个式的逻辑和(即,求出式(22),式(22)是否为真),来判断所选择的像素是否为有效像素。因而,在满足上述的式(19)至式(21)中任意一个式的情况下,在步骤S324中,有效像素判断部431判断为该像素是有效像素,在步骤S325中,对有效像素数计数器441的有效像素的数量加1。
水平梯度判断部432根据有效像素判断部431的控制,在步骤S326中,求出由有效像素判断部431判断为是有效像素的像素的水平方向的梯度的状态,判断是否存在有效像素的水平方向的梯度,在判断为不存在有效像素的水平方向的梯度的情况下,在步骤S327中,对无水平梯度计数器442的不存在水平梯度的像素的数量加1。在步骤S326中,在判断为存在有效像素的水平方向的梯度的情况下,处理跳过步骤S327,进入步骤S328。
垂直梯度判断部433根据有效像素判断部431的控制,在步骤S328中,求出由有效像素判断部431判断为是有效像素的像素的垂直方向的梯度的状态,判断是否存在有效像素的垂直方向的梯度,在判断为不存在有效像素的垂直方向的梯度的情况下,在步骤S329中,对无垂直梯度计数器443的不存在垂直梯度的像素的数量加1。在步骤S328中,在判断为存在有效像素的垂直方向的梯度的情况下,处理跳过步骤S329,进入步骤S330。
在步骤S330中,像素差算出部421判断运算块内的所有像素的处理是否结束。在步骤S330中,在判断为运算块内的所有像素的处理结束了的情况下,结束有效像素数判断处理,处理返回到图32的步骤S303,进入步骤S304。
在步骤S324中,在不满足上述的式(19)至式(21)的任意一个式而判断为所选择的像素不是有效像素的情况下,或者在步骤S330中判断为运算块内的所有像素的处理还没有结束的情况下,处理返回到步骤S322,重复进行其以后的处理。
如上所述,在有效像素数计数器441中存储被判断为在运算块内有效的有效像素的数量,在无水平梯度计数器442中存储有效像素中的被判断为不存在水平梯度的像素的数量,在无垂直梯度计数器443中存储有效像素中的被判断为不存在垂直梯度的像素的数量。
接着,参照图35的流程图,详细说明图32的步骤S305的梯度法执行判断处理。图35的梯度法执行判断处理是参照图34所述那样由运算执行判断部425根据存储像素的数量的各计数器而执行的处理。
运算执行判断部425的计数值运算部451从有效像素数计数器441获取有效像素的数量(cnt_t),从无水平梯度计数器442获取在水平方向上不存在梯度的像素的数量(ngcnt_x),从无垂直梯度计数器443获取在垂直方向上不存在梯度的像素的数量(ngcnt_y),在步骤S381中判断是否满足式(24)。
在步骤S381中,在判断为满足式(24)的情况下,认为在有效像素中适当地存在具有水平方向和垂直方向的梯度的像素。因而,在步骤S382中,标志设定部452将梯度标志的值设定为进行使用式(14)的综合型梯度法运算处理的“4”,并将梯度标志(gladflg=4)输出到梯度法运算部405和评价判断部412,结束梯度法执行判断处理。然后,处理返回到图32的步骤S305,进入步骤S306,执行与梯度标志(gladflg=4)相应的梯度法运算处理。
在步骤S381中,在判断为不满足式(24)的情况下,计数值运算部451在步骤S383中判断是否满足式(25)的同时满足式(26)。在步骤S383中,在判断为满足式(25)的同时满足式(26)的情况下,认为在有效像素中包含相当数量的在水平方向和垂直方向中的某一个方向上不存在梯度的像素。因而,在步骤S384中,标志设定部452将梯度标志的值设定为在水平和垂直方向的每个方向上进行使用式(23)的独立型梯度法运算处理的“0”,并将梯度标志(gladflg=0)输出到梯度法运算部405和评价判断部412,结束梯度法执行判断处理。然后,处理返回到图32的步骤S305,进入步骤S306,执行与梯度标志(gladflg=0)相应的梯度法运算处理。
在步骤S383中,在判断为不是满足式(25)的同时满足式(26)的情况下,计数值运算部451在步骤S385中判断是否满足式(25)。在步骤S385中,在判断为满足式(25)的情况下,认为在有效像素中包含较多的在垂直方向上不存在梯度的像素。因而,在步骤S386中,标志设定部452将梯度标志的值设定为进行对于水平方向的、使用式(23)的独立型梯度法运算处理的“1”,并将梯度标志(gladflg=1)输出到梯度法运算部405和评价判断部412,结束梯度法执行判断处理。然后,处理返回到图32的步骤S305,进入步骤S306,执行与梯度标志(gladflg=1)相应的梯度法运算处理。
在步骤S385中,在判断为不满足式(25)的情况下,计数值运算部451在步骤S387中判断是否满足式(26)。在步骤S387中,在判断为满足式(26)的情况下,认为在有效像素中包含较多的在水平方向上不存在梯度的像素。因而,在步骤S388中,标志设定部452将梯度标志的值设定为进行对于垂直方向的、使用式(23)的独立型梯度法运算处理的“2”,并将梯度标志(gladflg=2)输出到梯度法运算部405和评价判断部412,结束梯度法执行判断处理。然后,处理返回到图32的步骤S305,进入步骤S306,执行与梯度标志(gladflg=2)相应的梯度法运算处理。
在步骤S387中,在判断为不满足式(26)的情况下,认为被判断为有效的像素较少。因而,在步骤S389中,标志设定部452将梯度标志的值设定为禁止梯度法运算处理的“3”,并将梯度标志(gladflg=3)输出到梯度法运算部405和评价判断部412,结束梯度法执行判断处理。然后,处理返回到图32的步骤S305,进入步骤S306,执行与梯度标志(gladflg=3)相应的梯度法运算处理。
如上所述,将与运算块的梯度状态(即,有效像素的数量、有效像素中不存在水平梯度的像素的数量、以及有效像素中不存在垂直梯度的像素的数量)相应的梯度标志输出到梯度法运算部405和评价判断部412。
接着,参照图36的流程图,详细说明由梯度法运算部405执行的图32的步骤S306的梯度法运算处理。
在运算判断部462的有效像素判断部471中,被输入来自梯度法继续判断部424的计数器标志(countflg=1)和来自标志设定部452的梯度标志。在计数器标志为1的情况下,有效像素判断部471开始进行图36的梯度法运算处理。
在步骤S401中,有效像素判断部471判断梯度标志的值是否为3,在判断为梯度标志的值不是3的情况下,在步骤S402中判断梯度标志的值是否为4。
有效像素判断部471在步骤S402中判断为梯度标志的值是4的情况下,在步骤S403中控制梯度法运算部405的各部分,执行综合型梯度法运算处理。后面参照图37的流程图记述该综合型梯度法运算处理。
通过步骤S403的综合型梯度法运算处理,将有效像素设为梯度法运算的对象,将有效像素的水平方向的像素差Δx、垂直方向的像素差Δy、以及时间方向的像素差Δt进行累加,使用累加得到的梯度和式(14)的最小平方和来求出运动向量vn,并输出到向量算出部464。
在步骤S404中,向量算出部464将来自选择器401的偏移向量Vn-1与由综合型梯度运算部463-1求出的运动向量vn相加,将偏移向量Vn-1与运动向量vn相加得到的运动向量Vn输出到向量评价部104。
在步骤S404中,将由向量算出部464算出的运动向量Vn输出到向量评价部104,结束梯度法运算处理,处理返回到图32的步骤S306,进入步骤S307。
另外,在步骤S402中判断为梯度标志的值不是4的情况下,有效像素判断部471在步骤S405中判断梯度标志的值是否为2。在步骤S405中,在判断为梯度标志的值是2的情况下,认为在有效像素中包含较多的在水平方向上不存在梯度的像素,因此处理跳过步骤S406,进入步骤S407。
即,在这种情况下,即使使用在水平方向上不存在梯度的像素以外的有效像素来求出运动向量的水平方向成分,也不可靠,因此不执行水平方向的独立型梯度法运算处理。
有效像素判断部471在步骤S405中判断为梯度标志的值不是2(即,梯度标志的值是0或1)的情况下,在步骤S406中控制水平梯度判断部472,执行水平方向的独立型梯度法运算处理。参照图38在后面记述该水平方向的独立型梯度法运算处理。
通过步骤S406的水平方向的独立型梯度法运算处理,将有效像素中在水平方向上存在梯度的像素设为梯度法运算的对象,将有效像素中在水平方向上存在梯度的像素的水平方向的像素差Δx、和时间方向的像素差Δt进行累加,使用累加得到的梯度和式(23)来求出运动向量vn的水平方向成分,并输出到向量算出部464,处理进入步骤S407。
在步骤S407中,有效像素判断部471判断梯度标志的值是否为1。在步骤S407中判断为梯度标志的值是1的情况下,考虑在有效像素中包含较多的在垂直方向上不存在梯度的像素,因此处理跳过步骤S408,进入步骤S409。
即,在这种情况下,即使使用在垂直方向上不存在梯度的像素以外的有效像素来求出运动向量的垂直方向成分也不可靠,因此不执行垂直方向的独立型梯度法运算处理。
有效像素判断部471在步骤S407中判断为梯度标志的值不是1(即,梯度标志的值是0或2)的情况下,在步骤S408中控制垂直梯度判断部473,使其执行垂直方向的独立型梯度法运算处理。此外,该垂直方向的独立型梯度法运算处理与步骤S406的水平方向的独立型梯度法运算处理仅在设为对象的方向上不同,基本的处理相同,因此统一作为独立型梯度法运算处理而在后面参照图38进行记述。
通过步骤S408的垂直方向的独立型梯度法运算处理,将有效像素中的在垂直方向上存在梯度的像素设为梯度法运算的对象,将有效像素中的在垂直方向上存在梯度的像素的垂直方向的像素差Δy、以及时间方向的像素差Δt进行累加,使用累加得到的梯度和式(23)来求出运动向量vn的垂直方向成分,并输出到向量算出部464,处理进入步骤S409。
在向量算出部464中,从独立型梯度运算部463-2被输入运动向量vn的水平方向成分和垂直方向成分中的至少一个。在步骤S409中,向量算出部464将来自选择器401的偏移向量Vn-1的对象方向成分(水平方向成分和垂直方向成分中的至少一个)、与由独立型梯度运算部463-2求出的运动向量vn的对象方向成分相加,并将作为其结果的运动向量Vn输出到向量评价部104。
此外,此时将运动向量vn的方向成分中的没有从独立型梯度运算部463-2输入的方向成分作为0向量而算出。即,在梯度标志的值是2的情况下,没有由独立型梯度运算部463-2求出运动向量vn的垂直方向成分,因此向量算出部464将运动向量vn的垂直方向成分设为0向量,在梯度标志的值是1的情况下,没有由独立型梯度运算部463-2求出运动向量vn的水平方向成分,因此,向量算出部464将运动向量vn的水平方向成分设为0向量。
在步骤S409中,将由向量算出部464算出的运动向量Vn输出到向量评价部104,并结束梯度法运算处理,处理返回到图32的步骤S306,进入步骤S307。
另一方面,在步骤S401中判断为梯度标志的值是3的情况下,在步骤S410中,有效像素判断部471禁止梯度法运算部405的运算,结束梯度法运算处理。
如上所述,在有效像素中单侧梯度的像素较少的情况下,通过使用有效像素的综合型梯度法运算来求出运动向量,在有效像素中单侧梯度的像素较多的情况下,通过仅使用有效像素中的存在梯度的方向上的像素的独立型梯度法运算来求出运动向量。
由此,即使在运算块中单侧梯度的像素较多的情况下,也能够得到至少存在梯度的方向成分的可靠的运动向量。因而,在单侧梯度区域中也能够提高运动向量的检测精确度。
另外,对单侧梯度的区域进行简单的独立型梯度法运算,因此能够抑制运算的负荷。
接着,参照图37的流程图详细说明图36的步骤S403的综合型梯度法运算处理。
在梯度法运算部405的像素差算出部461中,被输入从存储器403提供的运算块的对象像素值。在步骤S421中,像素差算出部461的各部分(第一空间梯度像素差算出部461-1、第二空间梯度像素差算出部461-2、以及时间方向像素差算出部461-3)根据有效像素判断部471的控制,选择运算块内的一个像素,进入步骤S422,执行有效像素运算处理。该有效像素运算处理是基本上与参照图34所述的有效像素运算处理相同的处理,因此省略其说明。
通过步骤S422的有效像素运算处理,求出所选择的像素的帧t+1上的水平方向的像素差Δx和垂直方向的像素差Δy、帧t上的水平方向的像素差Δx和垂直方向的像素差Δy、以及帧t+1与帧t之间的时间方向的像素差Δt,使用它们进行式(19)至式(21)的逻辑运算。
在步骤S423中,有效像素判断部471根据上述的三个式的逻辑和(即,求出式(22),式(22)是否为真),来判断所选择的像素是否为有效像素。在步骤S423中判断为所选择的像素不是有效像素的情况下,处理返回到步骤S421,重复进行其以后的处理。
有效像素判断部471在步骤S423中判断为是有效像素的情况下,将该像素设为梯度法的运算对象,并将该像素的水平方向的像素差Δx、垂直方向的像素差Δy、以及时间方向的像素差Δt提供给综合型梯度运算部463-1,在步骤S424中,控制综合型梯度运算部463-1,累加所提供的梯度(像素差)。
在步骤S425中,有效像素判断部471判断运算块内的所有像素的处理是否结束。在步骤S425中判断为运算块内的所有像素的处理还没有结束的情况下,处理返回到步骤S421,重复进行其以后的处理。
有效像素判断部471在步骤S425中判断为运算块内的所有像素的处理结束了的情况下,在步骤S426中,控制综合型梯度运算部463-1,使其使用累加得到的梯度来算出运动向量vn。
即,综合型梯度运算部463-1在步骤S424中将由运算判断部524提供的有效像素的时间方向的像素差Δt、水平方向的像素差Δx、以及垂直方向的像素差Δy进行累加,在步骤S425中在判断为运算块内的所有像素的处理结束了的情况下,在步骤S426中,使用累加得到的梯度和式(14)的最小平方和来求出运动向量vn,并将求出的运动向量vn输出到向量算出部464。之后,处理返回到图36的步骤S403,进入步骤S404。
如上所述,仅将运算块中的有效像素的梯度进行累加,来执行综合型梯度法运算处理。由此,能够抑制对运算块检测出错误的运动向量的情形。
接着,参照图38的流程图详细说明步骤S406和S408的独立型梯度法运算处理。此外,在图38中说明水平方向的情况,但是垂直方向的情况也仅是成为对象的方向成分不同,进行基本上与水平方向的情况相同的处理。
在梯度法运算部405的像素差算出部461中,被输入从存储器403提供的运算块的对象像素值。在步骤S441中,像素差算出部461的各部分根据有效像素判断部471的控制,选择运算块内的一个像素,进入步骤S442,执行有效像素运算处理。该有效像素运算处理也是基本上与参照图34所述的有效像素运算处理相同的处理,因此省略其说明。
通过步骤S442的有效像素运算处理,求出所选择的像素的帧t+1上的水平方向的像素差Δx和垂直方向的像素差Δy、帧t上的水平方向的像素差Δx和垂直方向的像素差Δy、以及帧t+1与帧t之间的时间方向的像素差Δt,使用它们进行式(19)至式(21)的逻辑运算。
在步骤S443中,有效像素判断部471根据上述的三个式的逻辑和(即,求出式(22),式(22)是否为真),来判断所选择的像素是否为有效像素。在步骤S443中在判断为所选择的像素不是有效像素的情况下,处理返回到步骤S441,重复进行其以后的处理。
有效像素判断部471在步骤S443中判断为是有效像素的情况下,在步骤S444中控制水平梯度判断部472,使其判断有效像素的对象方向(当前的情况是水平方向)上是否存在梯度。在步骤S444中判断为在有效像素的对象方向(当前的情况是水平方向)上不存在梯度的情况下,处理返回到步骤S441,重复进行其以后的处理。
即,重复进行对于运算块内的下一个像素的有效像素判断和单侧梯度判断。
水平梯度判断部472在判断为在有效像素的水平方向上存在梯度的情况下,将该像素设为梯度法的运算对象,并将该像素的水平方向的像素差Δx和时间方向的像素差Δt提供给独立型梯度运算部463-2,在步骤S445中,控制独立型梯度运算部463-2,使其累加所提供的梯度(像素差)。
在步骤S446中,有效像素判断部471判断运算块内的所有像素的处理是否结束。在步骤S446中判断为运算块内的所有像素的处理还没有结束的情况下,处理返回到步骤S441,重复进行其以后的处理。
有效像素判断部471在步骤S446中判断为运算块内的所有像素的处理结束了的情况下,在步骤S447中,控制独立型梯度运算部463-2,使其使用累加得到的梯度来算出对象方向的运动向量vn。
即,独立型梯度运算部463-2在步骤S445中将从水平梯度判断部472提供的、在水平方向上存在梯度的有效像素的时间方向的像素差Δt和水平方向的像素差Δx进行累加,在步骤S446中判断为运算块内的所有像素的处理结束了的情况下,在步骤S447中,使用累加得到的梯度和式(23)来求出运动向量vn的对象方向(水平方向)成分,并将求出的运动向量vn的水平方向成分输出到向量算出部464。之后,处理返回到图36的步骤S406,进入步骤S407。
如上所述,仅将运算块的有效像素中的在对象方向上存在梯度的像素的梯度进行累加,来执行对象方向的梯度法运算处理。由此,即使运算块被包含在单侧梯度区域中,也能够抑制对运算块检测出错误的运动向量的对象方向成分的情形。
接着,参照图39的流程图说明图32的步骤S307的向量评价处理。
评价值判断部412在被输入来自标志设定部452的梯度标志时,开始进行图39的向量评价处理。评价值判断部412在步骤S461中判断梯度标志的值是否为3,在判断为梯度标志的值不是3的情况下(即,在判断为执行梯度法运算的情况下),在步骤S462中控制评价值运算部61B,使其执行偏移向量Vn-1、运动向量Vn、以及0向量的评价值运算处理。该评价值运算处理进行基本上与参照图15所述的评价值运算处理相同的处理,因此省略其说明。
通过步骤S462的评价值运算处理,运算出来自选择器401的偏移向量Vn-1的评价值dfv、由综合型梯度运算部463-1或独立型梯度运算部463-2运算并由向量算出部464算出的运动向量Vn的评价值dfv、以及0向量的评价值dfv。
评价值判断部412在步骤S463中判断梯度标志的值是否为4,在判断为梯度标志的值是4的情况下(即,在由综合型梯度运算部463-1运算得到的运动向量Vn的情况下),在步骤S464中判断由向量算出部464算出的运动向量Vn的评价值dfv(n)是否小于偏移向量Vn-1的评价值dfv(n-1)。
在步骤S464中判断为评价值dfv(n-1)小于评价值dfv(n)(偏移向量Vn-1的可靠性高)的情况下,评价值判断部412在步骤S465中将偏移向量Vn-1决定为运动向量V。即,运动向量V不是由向量算出部464算出的运动向量Vn,而是被变更(修正)为偏移向量Vn-1。然后,在步骤S466中,评价值判断部412将梯度法运算的迭代次数设为最大值,结束向量评价处理。
即,在步骤S466中,即使使用作为偏移向量Vn-1的运动向量V来重复进行梯度法运算,结果也是相同的,因此将迭代次数设为最大值使得不重复进行梯度法运算。
另外,在步骤S464中判断为评价值dfv(n)小于评价值dfv(n-1)(由向量算出部464算出的运动向量Vn的可靠性高)的情况下,评价值判断部412在步骤S467中直接将由向量算出部464算出的运动向量Vn决定为运动向量V,在步骤S468中对梯度法运算的迭代次数加1,结束向量评价处理。
另一方面,在步骤S463中判断为梯度标志的值不是4的情况下(即,在由独立型梯度运算部463-2运算得到的运动向量Vn的情况下),在步骤S469中判断由向量算出部464算出的运动向量Vn的评价值dfv(n)是否小于0向量的评价值dfv(0)。
在步骤S469中判断为评价值dfv(n)小于评价值dfv(0)(由向量算出部464算出的运动向量Vn的可靠性高)的情况下,评价值判断部412在步骤S470中直接将由向量算出部464算出的运动向量Vn决定为运动向量V,并结束向量评价处理。
另外,在步骤S469中判断为评价值dfv(0)小于评价值dfv(n)(0向量的可靠性高)的情况下,评价值判断部412在步骤S471中将0向量决定为运动向量V,结束向量评价处理。即,在步骤S471中,运动向量V不是被变更(修正)为由向量算出部464算出的运动向量Vn,而是被变更为0向量。
另一方面,在步骤S461中判断为梯度标志的值为3的情况是判断为在运算块中有效像素较少的情况,因此在步骤S472中将0向量决定为运动向量V,即,运动向量V不是被变更(修正)为由向量算出部464算出的运动向量Vn,而是被变更为0向量,并结束向量评价处理。
如上所述,根据梯度标志的值,切换向量评价中的比较对象来评价运动向量,并根据评价结果变更(修正)运动向量,因此能够检测与运算块内的梯度的状态相应的高精确度的运动向量。
此外,在上述说明中说明了在判断有效像素之后判断水平梯度和垂直梯度从而求出有效像素内的梯度状态(即,仅具有水平梯度、或垂直梯度的像素的比例)、并据此进行梯度法执行判断的情况,但是如下面说明的那样,也可以使用判断有效像素的条件式即式(19)至式(21)来求出仅具有水平梯度或垂直梯度的像素的比例,并据此进行梯度法执行判断。
图40是表示图26的有效像素判断部的像素判断部、计数器、以及运算执行判断部的其它结构例的框图。
图40的例子的像素判断部422在具备有效像素判断部431的点上与图26的像素判断部422共同,但是在除去了水平梯度判断部432和垂直梯度判断部433的点上与图26的像素判断部422不同。此外,在图40的例子中,有效像素判断部431还由水平垂直梯度判断部431-1、水平梯度判断部431-2、以及垂直梯度判断部431-3构成。
水平垂直梯度判断部431-1使用式(21)判断运算块内的像素是否满足水平垂直关注条件,在判断为运算块内的像素满足水平垂直关注条件的情况下,即根据在垂直方向和水平方向上具有梯度、在水平和垂直方向的运动中存在相似性的情形,来判断为存在水平梯度和垂直梯度(以下还称为水平垂直梯度),对水平垂直梯度计数器481的值(存在水平梯度和垂直梯度的像素的数量)加1,并且对有效像素数计数器441的值加1。
水平梯度判断部431-2使用式(19)判断运算块内的像素是否满足水平关注条件,在判断为运算块内的像素满足水平关注条件的情况下,即根据水平梯度比垂直梯度大某种程度而更具支配性、并且在水平方向的运动中存在相似性的情形,来判断为存在水平梯度,对水平梯度计数器482的值(存在水平梯度的像素的数量)加1,并且对有效像素数计数器441的值加1。
垂直梯度判断部431-3使用式(20)判断运算块内的像素是否满足垂直关注条件,在判断为运算块内的像素满足垂直关注条件的情况下,即视为垂直梯度比水平梯度大某种程度而更具支配性、并且在垂直方向的运动中存在相似性,来判断为存在垂直梯度,对垂直梯度计数器483的值(存在垂直梯度的像素的数量)加1,并且对有效像素数计数器441的值加1。
图40的例子的计数器423在具有有效像素计数器441的点上与图26的计数器423共同,但是在除去了无水平梯度计数器442和无垂直梯度计数器443的点、追加了水平垂直梯度计数器481、水平梯度计数器482、以及无垂直梯度计数器483的点上与图26的计数器423不同。
水平垂直梯度计数器481按每个运算块存储由水平垂直梯度判断部431-1判断为存在水平梯度和垂直梯度(以下还称为水平垂直梯度)的像素(有效像素)的数量。水平梯度计数器482按每个运算块存储由水平梯度判断部431-2判断为存在水平梯度的像素(有效像素)的数量。垂直梯度计数器483按每个运算块存储由垂直梯度判断部431-3判断为存在垂直梯度的像素(有效像素)的数量。
图40的例子的运算执行判断部425在具备标志设定部452的点上与图29的运算执行判断部425共同,但是代替计数值运算部451而追加了计数值运算部491的点上与图26的运算执行判断部425不同。
在来自梯度法继续判断部424的计数器标志的值是1时,计数值运算部491从计数器423(有效像素数计数器441、水平垂直梯度计数器481、水平梯度计数器482、以及无垂直梯度计数器483)中获取有效像素的数量(cnt_t)、在水平方向和垂直方向上存在梯度的像素的数量(cnt_xy)、在水平方向上存在梯度的像素的数量(cnt_x)、以及在垂直方向上存在梯度的像素的数量(cnt_y),对运算块中的有效像素和有效像素中的单侧梯度的像素的比例进行运算,根据比例的运算结果,对标志设定部452所设定的梯度标志的值进行控制。
即,计数值运算部491利用使用了有效像素的数量(cnt_t)、在水平垂直方向上存在梯度的像素的数量(cnt_xy)、在水平方向上存在梯度的像素的数量(cnt_x)、以及在垂直方向上存在梯度的像素的数量(cnt_y)的下式(27)至式(30),进行梯度法执行判断处理。
[公式26]
cnt_t≥pxl_a·th4           …(27)
[公式27]
cnt _ xy cnt _ t ≥ pxl _ a · th 5 · · · ( 28 )
[公式28]
cnt _ x cnt _ t ≥ pxl _ a · th 6 · · · ( 29 )
[公式29]
cnt _ y cnt _ t ≥ pxl _ a · th 7 · · · ( 30 )
在此,pxl_a表示运算块内的全部像素数,·表示相乘,th4至th7表示分别不同的不到1的规定的阈值。此外,th4>th5、th6、th7。
首先,在判断为不满足式(27)的情况下、或者在判断为满足式(27)但不满足式(28)至式(30)的情况下,认为是在运算块内被判断为有效的像素少从而难以进行梯度法运算的状态。因此,计数值运算部491附加梯度标志(gladflg=3),不使梯度法运算部405进行运算而设为没有运动(0向量)。
在判断为满足式(27)并且满足式(28)的情况下,认为是在有效像素中适当地存在具有水平方向和垂直方向的梯度的(存在普通梯度的)像素的状态。因此,计数值运算部491设定梯度标志(gladflg=4),使梯度法运算部405执行使用式(14)的综合型梯度法运算。
在判断为满足式(27)、不满足式(28)、但满足式(29)的情况下,认为在有效像素中包含较多的在垂直方向上不存在梯度的像素。因此,计数值运算部491附加梯度标志(gladflg=1),使梯度法运算部405关于垂直方向的运动不进行运算而设为没有运动(0向量),仅对水平方向的运动执行使用式(23)的梯度法运算。此外,在此时的梯度法运算中仅使用在水平方向上存在梯度的有效像素。
在判断为满足式(27)、不满足式(28)和式(29)、但满足式(30)的情况下,认为在有效像素中包含较多的在水平方向上不存在梯度的像素。因此,计数值运算部491附加梯度标志(gladflg=2),使梯度法运算部405关于水平方向的运动不进行运算而设为没有运动(0向量),仅对垂直方向的运动执行使用式(23)的梯度法运算。此外,在此时的梯度法运算中仅使用在垂直方向上存在梯度的有效像素。
图41是表示与图40的有效像素判断部对应的梯度法运算部的运算判断部的结构例的图。
即,图41的例子的运算判断部462在具备有效像素判断部471的点上与图27的运算判断部462共同,但是在除去了水平梯度判断部472和垂直梯度判断部473的点上与图27的运算判断部462不同。此外,在图41的例子中,有效像素判断部471还由水平垂直梯度判断部471-1、水平梯度判断部471-2、以及垂直梯度判断部471-3构成。
水平垂直梯度判断部471-1、水平梯度判断部471-2、以及垂直梯度判断部471-3分别根据梯度标志的值来判断梯度法运算处理的方法。
即,水平垂直梯度判断部471-1在根据梯度标志的值判断为由综合型梯度运算部463-1进行梯度法运算处理的情况下,使用式(21)来判断运算块内的像素是否满足水平垂直关注条件,将判断为满足水平垂直关注条件的像素的梯度(像素差)提供给综合型梯度运算部463-1。
水平垂直梯度判断部471-1在根据梯度标志的值判断为由独立型梯度运算部463-2进行梯度法运算处理的情况下,使用式(21)来判断运算块内的像素是否满足水平垂直关注条件,将判断为满足水平垂直关注条件的像素的梯度(像素差)提供给独立型梯度运算部463-2。
水平梯度判断部471-2在根据梯度标志的值判断为由综合型梯度运算部463-1进行梯度法运算处理的情况下,使用式(19)来判断运算块内的像素是否满足水平关注条件,将判断为满足水平关注条件的像素的梯度(像素差)提供给综合型梯度运算部463-1。
水平梯度判断部471-2在根据梯度标志的值判断为由独立型梯度运算部463-2进行对于水平方向的梯度法运算处理的情况下,使用式(19)来判断运算块内的像素是否满足水平关注条件,并将判断为满足水平关注条件的像素的梯度(像素差)提供给独立型梯度运算部463-2。即,在判断为进行对于垂直方向的梯度法运算处理的情况下,不将由水平梯度判断部471-2判断为满足水平关注条件的像素的梯度(像素差)提供给独立型梯度运算部463-2。
垂直梯度判断部471-3在根据梯度标志的值判断为由综合型梯度运算部463-1进行梯度法运算处理的情况下,使用式(20)来判断运算块内的像素是否满足垂直关注条件,并将判断为满足垂直关注条件的像素的梯度(像素差)提供给综合型梯度运算部463-1。
垂直梯度判断部471-3在根据梯度标志的值判断为由独立型梯度运算部463-2进行对于垂直方向的梯度法运算处理的情况下,使用式(20)来判断运算块内的像素是否满足垂直关注条件,并将判断为满足垂直关注条件的像素的梯度(像素差)提供给独立型梯度运算部463-2。即,在判断为进行对于水平方向的梯度法运算处理的情况下,不将由垂直梯度判断部471-3判断为满足垂直关注条件的像素的梯度(像素差)提供给独立型梯度运算部463-2。
与此对应地,综合型梯度运算部463-1使用由水平垂直梯度判断部471-1、水平梯度判断部471-2、以及垂直梯度判断部471-3判断为满足各自的条件式的像素(即,有效像素)的梯度,来进行综合型梯度法运算。
独立型梯度运算部463-2使用由水平垂直梯度判断部471-1和水平梯度判断部471-2判断为满足各自的条件式的像素(即,有效像素中的存在水平梯度的像素)的梯度,进行水平方向的独立型梯度法运算,使用由水平垂直梯度判断部471-1和垂直梯度判断部471-3判断为满足各自的条件式的像素(即,有效像素中的存在垂直梯度的像素)的梯度,进行垂直方向的独立型梯度法运算。
接着,参照图42的流程图说明图40的有效像素判断部404所进行的有效像素判断处理。此外,图42是在图32的步骤S303中进行的、参照图33所述的有效像素判断处理的其它例子,图42的步骤S501至S503、以及S511的处理进行基本上与图33的步骤S321至S323、以及S330的处理相同的处理,因此适当省略其详细的说明。
像素差算出部421在被输入从存储器403提供的运算块的对象像素值时,在步骤S501中控制有效像素判断部431,使其将各计数器(有效像素数计数器441、水平垂直梯度计数器481、水平梯度计数器482、以及垂直梯度计数器483)的值进行复位。
像素差算出部421的各部分(第一空间梯度像素差算出部421-1、第二空间梯度像素差算出部421-2、以及时间方向像素差算出部421-3)在步骤S502中选择运算块内的一个像素,进入步骤S503,执行有效像素运算处理。该有效像素运算处理是参照图34所述的处理,因此省略其说明。
通过步骤S503的有效像素运算处理,算出所选择的像素的帧t+1上的水平方向的像素差Δx和垂直方向的像素差Δy、帧t上的水平方向的像素差Δx和垂直方向的像素差Δy、以及帧t+1与帧t之间的时间方向的像素差Δt,使用它们,由水平梯度判断部431-2进行作为水平方向的关注条件的式(19)的逻辑运算,由垂直梯度判断部431-3进行作为垂直方向的关注条件的式(20)的逻辑运算,由水平垂直梯度判断部431-1进行作为水平垂直方向的关注条件的式(21)的逻辑运算。之后,处理返回到图42的步骤S503,进入步骤S504。
在步骤S504中,水平垂直梯度判断部431-1判断所选择的像素是否满足水平垂直方向的关注条件(式(21)),在判断为所选择的像素满足水平垂直方向的关注条件的情况下,在步骤S505中,对水平垂直梯度计数器481的存在水平垂直梯度的像素的数量加1,在步骤S510中,对有效像素数计数器441的有效像素的数量加1。
在步骤S504中判断为不满足水平垂直方向的关注条件的情况下,水平梯度判断部431-2在步骤S506中判断所选择的像素是否满足水平关注条件(式(19)),在判断为所选择的像素满足水平方向的关注条件的情况下,在步骤S507中对水平梯度计数器482的存在水平梯度的像素的数量加1,在步骤S510中对有效像素数计数器441的有效像素的数量加1。
在步骤S506中判断为不满足水平方向的关注条件的情况下,垂直梯度判断部431-3在步骤S508中判断所选择的像素是否满足垂直关注条件(式(20)),在判断为所选择的像素满足垂直方向的关注条件的情况下,在步骤S509中对垂直梯度计数器483的存在垂直梯度的像素的数量加1,在步骤S510中,对有效像素数计数器441的有效像素的数量加1。
在步骤S510中对有效像素的数量加1之后,处理进入步骤S511,像素差算出部421判断运算块内的所有像素的处理是否结束。在步骤S510中判断为运算块内的所有像素的处理结束了的情况下,结束有效像素数判断处理,处理返回到图32的步骤S303,进入步骤S304。
在步骤S508中判断为不满足水平方向的关注条件的情况下(即,在不满足上述的式(19)至式(21)中的任意一个式而判断为所选择的像素不是有效像素的情况下)、或者在步骤S511中判断为运算块内的所有像素的处理还没有结束的情况下,处理返回到步骤S502,重复进行其以后的处理。
如上所述,在有效像素数计数器441中存储被判断为在运算块内有效的有效像素的数量,在水平垂直梯度计数器481中存储有效像素中的、被判断为存在水平垂直梯度的(更详细地说是在垂直方向和水平方向上具有梯度,在水平和垂直方向的运动中存在相似性的)像素的数量,在水平梯度计数器482中存储有效像素中的、被判断为存在水平梯度的(更详细地说是水平梯度比垂直梯度大某种程度而更具支配性、并且在水平方向的运动中存在相似性的)像素的数量,在垂直梯度计数器483中存储有效像素中的、被判断为存在垂直梯度的(更详细地说是垂直梯度比水平梯度大某种程度而更具支配性、并且在垂直方向的运动中存在相似性的)像素的数量。
接着,参照图43的流程图详细说明图32的步骤S305的梯度法执行判断处理。图43的梯度法执行判断处理是参照图35所述的梯度法执行判断处理的其它例子,是如上所述由图40的运算执行判断部425根据存储有像素的数量的各计数器而执行的处理。
图40的计数值运算部491从有效像素数计数器441中获取有效像素的数量(cnt_t),从水平垂直梯度计数器481中获取有效像素中的、被判断为存在水平垂直梯度的像素的数量(cnt_xy),从水平梯度计数器482中获取有效像素中的、被判断为存在水平梯度的像素的数量(cnt_x),从垂直梯度计数器483中获取有效像素中的、被判断为存在垂直梯度的像素(ngcnt_y),在步骤S521中判断是否满足式(27)。
在步骤S521中判断为满足式(27)的情况下,认为在运算块内适当地存在有效像素,计数值运算部491在步骤S522中判断是否满足式(28)。
在步骤S522中判断为满足式(28)的情况下,认为是在有效像素中适当地存在具有水平方向和垂直方向的梯度的(存在普通梯度的)像素的状态。因而,在步骤S523中,标志设定部452视为在水平和垂直方向上具有信用而将梯度标志的值设定为进行使用式(14)的综合型梯度法运算处理的“4”,并将梯度标志(gladflg=4)输出到梯度法运算部405和评价判断部412,结束梯度法执行判断处理。然后,处理返回到图32的步骤S305,进入步骤S306,执行与梯度标志(gladflg=4)相应的梯度法运算处理。
在步骤S522中判断为不满足式(28)的情况下,计数值运算部491在步骤S524中判断是否满足式(29)。在步骤S524中判断为满足式(29)的情况下,认为在有效像素中包含较多的在垂直方向上不存在梯度的像素。因而,在步骤S525中,标志设定部452视为具有对水平方向的信用而将梯度标志的值设定为进行对于水平方向的、使用式(23)的独立型梯度法运算处理的“1”,并将梯度标志(gladflg=1)输出到梯度法运算部405和评价判断部412,结束梯度法执行判断处理。然后,处理返回到图32的步骤S305,进入步骤S306,执行与梯度标志(gladflg=1)相应的梯度法运算处理。
在步骤S524中判断为不满足式(29)的情况下,计数值运算部451在步骤S526中判断是否满足式(30)。在步骤S524中判断为满足式(30)的情况下,认为在有效像素中包含较多的在水平方向上不存在梯度的像素。因而,在步骤S527中,标志设定部452视为具有对于垂直方向的信用而将梯度标志的值设定为进行对于垂直方向的、使用式(23)的独立型梯度法运算处理的“2”,并将梯度标志(gladflg=2)输出到梯度法运算部405和评价判断部412,结束梯度法执行判断处理。然后,处理返回到图32的步骤S305,进入步骤S306,执行与梯度标志(gladflg=2)相应的梯度法运算处理。
在步骤S521中判断为不满足式(27)的情况下、或在步骤S526中判断为不满足式(30)的情况下,认为在运算块内被判断为有效的像素较少。因而,在步骤S528中,标志设定部452将梯度标志的值设定为禁止梯度法运算处理的“3”,并将梯度标志(gladflg=3)输出到梯度法运算部405和评价判断部412,结束梯度法执行判断处理。然后,处理返回到图32的步骤S305,进入步骤S306,执行与梯度标志(gladflg=3)相应的梯度法运算处理。
如上所述,将与运算块的梯度状态(即,有效像素的数量、有效像素中的存在水平垂直梯度的像素的数量、存在水平梯度的像素的数量、以及有效像素中的存在垂直梯度的像素的数量)相应的梯度标志输出到梯度法运算部405和评价判断部412。
如上所述,在图40的有效像素判断部404中,使用判断有效像素的条件式即式(19)至式(21)来求出仅具有水平梯度或垂直梯度的像素的比例,据此进行梯度法执行判断,因此不需要再次求出水平梯度、垂直梯度。因而,与上述的图26的有效像素判断部404的情况相比,能够减少运算的负荷。
接着,参照图44的流程图详细说明图41的梯度法运算部405所进行的处理中的独立型梯度法运算处理。此外,图41的梯度法运算部405进行的梯度法运算处理是除了步骤S406和S408的独立型梯度法运算处理以外基本上与参照图36所述的图27的梯度法运算部405所进行的梯度法运算处理相同的处理,因此省略其说明。
即,图44是在图36的步骤S406或S408中进行的参照图38所述的独立型梯度法处理的其它例子,图44的步骤S531、S532、S534至S536的处理进行基本上与图38的步骤S441、S442、S445至S447的处理相同的处理,因此适当省略其详细说明。
另外,在图44中也说明水平方向的情况,垂直方向的情况仅在成为对象的方向成分上不同,进行基本上与水平方向的情况相同的处理。
图41的像素差算出部461的各部分根据有效像素判断部471的控制,在步骤S531中选择运算块内的一个像素,并进入步骤S532,执行有效像素运算处理。该有效像素运算处理是基本上与参照图34所述的有效像素运算处理相同的处理,因此省略其说明。
通过步骤S532的有效像素运算处理,求出所选择的像素的帧t+1上的水平方向的像素差Δx和垂直方向的像素差Δy、帧t上的水平方向的像素差Δx和垂直方向的像素差Δy、以及帧t+1与帧t之间的时间方向的像素差Δt,使用它们,由水平梯度判断部471-2进行作为水平方向的关注条件的式(19)的逻辑运算,由垂直梯度判断部471-3进行作为垂直方向的关注条件的式(20)的逻辑运算,由水平垂直梯度判断部471-1进行作为水平垂直方向的关注条件的式(21)的逻辑运算。之后,处理返回到图44的步骤S532,进入步骤S533。
在步骤S 533中,水平垂直梯度判断部471-1和水平梯度判断部471-2判断所选择的像素在对象方向(当前的情况是水平方向)上是否存在梯度。即,水平垂直梯度判断部471-1判断所选择的像素是否满足水平垂直方向的关注条件(式(21)),水平梯度判断部471-2判断所选择的像素是否满足水平关注条件(式(19)),在由水平垂直梯度判断部471-1判断为所选择的像素满足水平垂直方向的关注条件的情况下、或由水平梯度判断部471-2判断为所选择的像素满足水平关注条件的情况下,判断为所选择的像素在水平方向上存在梯度,处理进入步骤S534。
另外,在步骤S533中,在由水平垂直梯度判断部471-1判断为所选择的像素不满足水平垂直方向的关注条件、并且由水平梯度判断部471-2判断为所选择的像素不满足水平关注条件的情况下,判断为所选择的像素在水平方向上不存在梯度,处理返回到步骤S531,重复进行其以后的处理。
此外,在垂直方向的情况下,在由水平垂直梯度判断部431-1判断为所选择的像素满足水平垂直方向的关注条件的情况下、或在由垂直梯度判断部431-3判断为所选择的像素满足垂直关注条件的情况下,判断为所选择的像素在垂直方向上存在梯度。
水平垂直梯度判断部471-1或水平梯度判断部471-2将在步骤S533中判断为存在水平梯度的像素设为梯度法的运算对象,并将该像素的水平方向的像素差Δx和时间方向的像素差Δt提供给独立型梯度运算部463-2,在步骤S534中,控制独立型梯度运算部463-2,使其累加所提供的梯度(像素差)。
在步骤S535中,水平垂直梯度判断部471-1判断运算块内的所有像素的处理是否结束。在步骤S535中判断为运算块内的所有像素的处理还没有结束的情况下,处理返回到步骤S441,重复进行其以后的处理。
水平垂直梯度判断部471-1在步骤S535中判断为运算块内的所有像素的处理结束了的情况下,在步骤S536中,控制独立型梯度运算部463-2,使其使用累加得到的梯度来算出运动向量vn的水平方向成分。
在步骤S536中,独立型梯度运算部463-2使用累加得到的梯度和式(23),求出运动向量vn的对象方向(水平方向)成分,并将求出的运动向量vn的水平方向成分输出到向量算出部464。之后,处理返回到图36的步骤S406,进入步骤S407。
根据以上,在图41的梯度法运算部405中,也与图37的梯度法运算部405的情况同样地,仅将运算块的有效像素中的、在对象方向上存在梯度的像素的梯度进行累加,来执行对象方向的梯度法运算处理。由此,即使运算块是单侧梯度区域,也能够抑制对运算块检测出错误的运动向量的对象方向成分的情形。
如上所述,在运算块中,不仅判断有效像素,而且从有效像素中判断仅存在水平梯度或垂直梯度的单侧梯度的像素,根据有效像素中的单侧梯度的像素的比例来切换梯度法运算、或者切换评价对象的向量,进行迭代判断,因此与仅判断有效像素的情况相比,特别是提高在单侧梯度区域中的运动向量的检测精确度。
接着,参照图45说明图17的向量检测部52的其它结构例。
如上所述,在图17的向量检测部52中求出的运动向量V作为在后级的分配处理中使用的运动向量(以下还称为检测向量)而被存储到检测向量存储器53中,并且通过初始向量选择部101还被用作初始候补向量(初始向量的候补向量)。与此相对地,在图45的向量检测部52中分别保存后级的向量分配处理中使用的检测向量、和在初始向量选择处理中使用的初始候补向量。
图45的向量检测部52在具备前置滤波器102-1和102-2、移动初始向量分配部105、评价值存储器106、以及移动初始向量存储器107的点上与图17的向量检测部52共同,但是在将初始向量选择部101替换为初始向量选择部521的点、将迭代梯度法运算部103替换为迭代梯度法运算部522的点、将向量评价部104替换为向量评价部523的点、以及追加了初始候补向量存储器524的点上与图17的向量检测部52不同。
此外,初始向量选择部521仅在不是从检测向量存储器53而是从初始候补向量存储器524中获取在过去求出的周边块的运动向量的点上不同,基本结构与图17的向量选择部101相同,因此省略其详细说明。
在图45的例子中,迭代梯度法运算部522与图17的迭代梯度法运算部103同样地构成,使用从初始向量选择部101输入的初始向量V0、以及通过前置滤波器102-1及102-2输入的帧t和帧t+1,利用梯度法对规定的每个块算出运动向量Vn。
此时,迭代梯度法运算部522不仅将作为梯度法的对象而使用的有效像素的数量与规定的阈值α进行比较,还将作为梯度法的对象而使用的有效像素的数量与规定的阈值β(β<α)进行比较,将与其比较结果相应的计数器标志(countflg)提供给向量评价部523。
另外,迭代梯度法运算部522与迭代梯度法运算部103同样地将初始向量V0和算出的运动向量Vn输出到向量评价部523,根据向量评价部104的运动向量的评价结果,重复进行梯度法的运算,算出运动向量Vn。此外,后面参照图46详细记述迭代梯度法运算部522和向量评价部523。
向量评价部523与图17的向量评价部104同样地具有评价值运算部61B,使评价值运算部61B求出来自迭代梯度法运算部103的运动向量Vn-1(或初始向量V0)的评价值dfv、和运动向量Vn的评价值dfv,根据由评价值运算部61B求出的评价值dfv,控制迭代梯度法运算部522,使其重复执行梯度法的运算,最终选择基于评价值dfv的可靠性高的运动向量。
此时,向量评价部523根据来自迭代梯度法运算部522的计数器标志和各向量的评价值dfv,从来自迭代梯度法运算部522的运动向量Vn-1(或初始向量V0)、运动向量Vn、或0向量中分别求出在后级的分配处理中使用的检测向量Ve、和在初始向量选择部521中选择初始向量时使用的初始候补向量Vic。然后,向量评价部523将求出的检测向量Ve存储到检测向量存储器53中,并且将求出的初始候补向量Vic存储到初始候补向量存储器524中。
在初始候补向量存储器524中与检测对象块相对应地存储由向量评价部523求出的初始候补向量Vic。
图46是表示迭代梯度法运算部522和向量评价部523的结构的框图。
图46的迭代梯度法运算部522在具备选择器401、存储器控制信号生成部402、存储器403、梯度法运算部405、以及延迟部406的点上与图25的迭代梯度法运算部103共同,但是将有效像素判断部404替换为有效像素判断部531的点与图25的迭代梯度法运算部103不同。
即,有效像素判断部531与有效像素判断部404同样地使用从存储器403提供的对象像素值,例如运算帧t和帧t+1的运算块的像素差,来判断在运算块中对梯度法的运算有效的像素的数量是否多于规定的阈值,将与其判断结果相应的计数器标志(countflg)提供给梯度法运算部405和向量评价部523。
此时,在由有效像素判断部531进行的、对梯度法运算有效的像素的数量的判断中使用规定的阈值α和规定的阈值β(α>β)这两种阈值。
有效像素判断部531在判断为在运算块中对梯度法的运算有效的像素的数量多于规定的阈值α的情况下,将计数器标志(countflg=1)提供给梯度法运算部405和向量评价部523,在判断为在运算块中对梯度法的运算有效的像素的数量少于规定的阈值α、多于规定的阈值β的情况下,将计数器标志(countflg=10)提供给梯度法运算部405和向量评价部523,在判断为在运算块中对梯度法的运算有效的像素的数量少于规定的阈值β的情况下,将计数器标志(countflg=0)提供给梯度法运算部405和向量评价部523。
另外,有效像素判断部531与有效像素判断部404同样地关于被判断为在运算块中有效的像素的像素求出水平方向和垂直方向各自的梯度状态,还判断仅在水平方向或垂直方向上存在梯度的像素的比例是否多,并将与其判断结果相应的梯度标志(gladflg)提供给梯度法运算部405和向量评价部523。
图46的向量评价部523在具备评价值运算部61B的点上与图25的向量评价部104共同,但是将评价判断部412替换为评价判断部541的点与图25的向量评价部104不同。
评价值判断部523根据从有效像素判断部531提供的计数器标志和梯度标志来判断是否迭代进行梯度法运算处理,或者分别求出检测向量Ve和初始候补向量Vic。
即,评价值判断部523根据需要来比较使评价值运算部61B运算得到的评价值dfv,从而选择可靠性高的运动向量并进行变更,由此求出运动向量V,在从有效像素判断部531提供计数器标志(countflg=1)的情况下(即,在有效像素的数量多于规定的阈值α的情况下),判断是否迭代进行梯度法运算处理,在判断为迭代进行的情况下,将求出的运动向量V输出到延迟部406。
另外,在不迭代进行梯度法运算处理的情况下,评价值判断部523根据计数器标志的值将求出的运动向量V或0向量作为检测向量Ve而存储到检测向量存储器53中,并且作为初始候补向量Vic而存储到初始候补向量存储器524中。
具体地说,在从有效像素判断部531提供计数器标志(countflg=10)的情况下(即,在有效像素的数量少于规定的阈值α、多于规定的阈值β的情况下),评价值判断部523将0向量作为检测向量Ve而存储到检测向量存储器53中,并且将求出的运动向量V作为初始候补向量Vic而存储到初始候补向量存储器524中。
在从有效像素判断部531提供计数器标志(countflg=0)的情况下(即,在有效像素的数量少于规定的阈值β的情况下),评价值判断部523将0向量作为检测向量Ve而存储到检测向量存储器53中,并且作为初始候补向量Vic而存储到初始候补向量存储器524中。
即,在有效像素判断部531中,根据针对有效像素数的比例的规定的阈值α,进行是否将检测向量Ve降为0向量的判断。因而,在规定的阈值α与图25的有效像素判断部404中的阈值是同一水平的情况下,后级的向量分配部54中的检测向量Ve的精确度与图25的情况是同一水平。
并且,此时,在有效像素判断部531中,根据规定的阈值β(<规定的阈值α),进行是否将初始候补向量Vic降为0向量的判断。例如,在有效像素的数量多于规定的阈值β的情况下,初始候补向量Vic与检测向量Ve相比虽然作为检测处理结果的精确度低,但不是0向量,能够具有一些向量值。
由此,在其它的周边块的向量检测处理中将该Vic用作初始候补向量的情况下,与在图25的有效像素判断部404中在有效像素的数量少于规定的阈值α的情况下降为0向量的情况相比,候补向量组中的0向量的比例变少,候补向量组的向量值的变化变多。其结果,在图46的有效像素判断部531中,与图25的有效像素判断部404的情况相比,在候补向量内存在接近真的运动量的向量的可能性变高,与图25的有效像素判断部404的情况相比,能够提高初始向量的精确度。
图47是表示有效像素判断部531的详细的结构例的框图。
图47的有效像素判断部531在具备像素差算出部421、像素判断部422、计数器423、以及运算执行判断部425的点上与图26的有效像素判断部404共同,将梯度法继续判断部424替换为梯度法继续判断部551的点与图26的有效像素判断部404不同。
即,梯度法继续判断部551参照有效像素数计数器441来判断运算块中的对梯度法的运算有效的像素的数量是否多于规定的阈值α,进一步判断运算块中的对梯度法的运算有效的像素的数量是否多于规定的阈值β。
梯度法继续判断部551在判断为运算块中的对梯度法的运算有效的像素的数量多于规定的阈值α的情况下,执行梯度法运算,向运算执行判断部425、梯度法运算部405以及向量评价部523提供将检测向量Ve和初始候补向量Vic决定为通过梯度法运算求出的运动向量V的计数器标志(countflg=1)。
另外,梯度法继续判断部551在判断为在运算块中对梯度法的运算有效的像素的数量少于规定的阈值α、多于规定的阈值β的情况下,执行梯度法运算,但是向梯度法运算部405和向量评价部523提供将检测向量Ve决定为0向量、将初始候补向量Vic决定为通过梯度法运算求出的运动向量V的计数器标志(countflg=10)。
并且,梯度法继续判断部551在判断为在运算块中对梯度法的运算有效的像素的数量少于规定的阈值β的情况下,停止梯度法运算,向梯度法运算部405和向量评价部523提供将检测向量Ve和初始候补向量Vic决定为0向量的计数器标志(countflg=0)。
接着,参照图48至图62,对将检测向量用作初始候补向量的图17的向量检测部52的情况、与根据需要分别使用检测向量和初始候补向量的图45的向量检测部52的情况进行比较而进行说明。
在图48至图62的例子中示出两个24P信号的时刻t的帧t和时刻t+1的帧t+1,箭头T表示图中从上面的时刻t的帧t向下面的时刻t+1的帧t+1的时间的经过方向。另外,在帧t上示出的分割表示各块的边界,在帧t上从图中左边起示出块A0至A2,在帧t+1上从图中左边起示出帧t上的未图示的块所对应的块B-3至B-1、以及块A0至A2所对应的块B0至B2。即,在帧t和帧t+1上示出编号相同的块所对应的块。
另外,在图48至图50、图56、图57、图60、以及图62中,在帧t与帧t+1之间示出了根据检测出的运动向量而生成的例如时刻t+0.4的内插帧F1和时刻t+0.8的内插帧F2。
在图48的例子中示出了在由图17的向量检测部52正确地检测出运动向量的情况下生成的内插帧的例子。即,正确地检测真的运动向量V1来作为在帧t和帧t+1之间所对应的块(块A0与块B0)之间的运动,由此,正确地生成内插帧F1和内插帧F2上的图像块a1和a2。
然而,如图49的例子所示,并不限于总是能够正确地求出运动向量V1。例如,由图17的向量检测部52执行的有效像素判断的结果,在用于梯度法运算的有效像素的数量较少的情况下,在有效像素的数量较少的运算块中运算得到的结果,求出的运动向量V2较大地偏离真的运动向量V1(即,在对应的块A0与块B0之间检测出的可靠的运动向量V1),运动向量V2的两端的块(块A0与块B-2)不是各自对应的块。因而,在使用该运动向量V2来生成的内插帧F1和内插帧F2上的图像块b1和b2中破损明显的情况较多。
与此对应地,参照图32所述那样,在图17的向量检测部52中,在有效像素的数量为规定的阈值以下的情况下,将检测结果设为0向量S0。即,由于有效像素的数量较少,因此运动向量V2较大地偏离真的运动向量V1,因此如图50的例子所示,将作为检测结果的运动向量V2设为0向量S0。由此,将使用0向量S0来生成的内插帧F1和内插帧F2上的图像块c1和c2的破损抑制成与不进行运动补偿的情况的插值处理相同的程度,从而生成比较稳定的图像块c1和c2。
另一方面,参照图23所述那样,从周边块(包含时间和空间)的检测结果中选择在迭代梯度法中成为初始偏移的初始向量。
在正确地检测出真的运动向量V1来作为在帧t与帧t+1之间对应的块(块A0与块B0)之间的运动的情况(图48的情况)下,如图51的例子所示,在检测对象的块A1中,有时选择在左边相邻的块即块A0中正确地检测出的真的运动向量V1来作为初始向量V0。即,将周边块的检测结果用作初始向量是指,由于包含在与检测对象块相同的目标中的可能性高,运动量的相关性高,因此在运动向量正确的情况下,具有能够在块之间得到运动的传播效果、并使运动检测处理的收敛提前的优点。
然而,如上述的图50的情况那样,在周围的块中作为检测结果的运动向量V2不可靠而被设为0向量S0的运动向量较多的情况下,如图52的例子所示,导致在检测对象的块A1中,容易将0向量S0(在左边相邻的块即块A0中检测出的运动向量)选择为初始向量V0。
此时,在检测对象的块A1中,即使使用该初始向量V0(0向量S0)进行了梯度法运算,在块A1的运算块中通过有效像素判断得到的有效像素的数量也容易低于规定的阈值α,如图53的例子所示,导致作为检测结果的运动向量V2较大地偏离真的运动向量V1,结果,如图54的例子所示,导致在检测对象的块A1中检测结果也成为0向量的情况较多。
在这种情况下,即使检测对象还成为下一个块A2,也发生与图54的例子相同的情况(即,导致检测结果成为0向量的情况)较多,结果,如图55的例子所示,如同0向量S0陆续传播那样,导致运动检测处理的收敛(即,接近真的运动向量V1)延迟。
如上所述,在作为成为在后级分配的对象的检测向量与成为初始向量选择的候补的初始候补向量而使用相同的向量的图17的向量检测部52中,在检测对象的运算块的有效像素的数量为规定的阈值以下的情况下,如参照图50所述那样,将检测向量设为0向量而具有抑制内插帧上的图像块的破损的效果,但是由于导致初始候补向量也成为0向量,因此导致运动检测处理的收敛延迟。即,在有效像素的数量为规定的阈值以下的情况下,如图17的向量检测部52那样,导致检测向量与初始候补向量都成为0向量,结果,导致质量降低。
因此,在图45的向量检测部52中,为了抑制上述情况而进行使用了两个阈值的有效像素判断,按照有效像素判断的结果,根据使用的用途(在后级的分配处理中使用,或者在向量检测部52中使用)来切换检测出的运动向量。
即,在将检测对象的块的运算块中的有效像素的数量与规定的阈值α进行比较时,新设定比规定的阈值α略低的阈值β(β<α),在有效像素的数量少于规定的阈值α时,不是立即将运动向量设定为0向量,而是在有效像素的数量少于规定的阈值α时,还判断有效像素的数量是否为规定的阈值β以上。然后,在有效像素的数量少于规定的阈值α、并且是规定的阈值β以上的情况下,如图56的例子所示,将在后级的分配处理中使用的检测向量Ve设为0向量S0,但是将初始候补向量Vic设为在梯度法运算中检测出的检测结果即运动向量V2。
具体地说,通过将0向量S0设为在后级的分配处理中使用的检测向量Ve,例如如图57的例子所示,与图50的例子的情况同样地,将使用0向量S0而生成的内插帧F1和内插帧F2上的图像块c1和c2的破损抑制成与不进行运动补偿的情况的插值处理相同的程度,其结果,能够生成比较稳定的图像块c1和c2。
另一方面,通过将作为在梯度法运算中检测出的检测结果的运动向量V2设为初始候补向量Vic,如图58的例子所示,在下一个检测对象的块A1中,将初始候补向量Vic(V2)设为初始向量V0的情况与将0向量S0设为初始向量V0的情况(图52的例子的情况)相比,初始向量V0接近真的运动向量V1。
另外,此时,如图59的例子所示,在检测对象的块A1中,使用初始向量V0(运动向量V2)进行梯度法运算而求出的运动向量V3比初始向量V0更接近真的运动向量V1的可能性变高。
并且,在该检测对象的块A1中的运动检测处理中,在有效像素数还较少而无法得到真的运动向量V1的情况下,也将在后级的分配处理中使用的检测向量Ve变更为0向量S0,并将作为在梯度法运算中检测出的检测结果的运动向量V3设为初始候补向量Vic。
通过将在后级的分配处理中使用的检测向量Ve变更为0向量S0,如图60的例子所示,将内插帧F1和内插帧F2上的图像块d1和d2的破损抑制成与不进行运动补偿的情况的插值处理相同的程度,其结果,生成比较稳定的图像块d1和d2。
另一方面,通过将作为在梯度法运算中检测出的检测结果的运动向量V3设为初始候补向量Vic,如图61的例子所示,在下一个检测对象的块A2中,将初始候补向量Vic(V3)设为初始向量V0的情况与如图52的例子的情况那样将0向量S0设为初始向量V0的情况相比,初始向量V0(V3)更接近真的运动向量V1。
其结果,如图62的例子所示,在检测对象的块A2中的有效像素数的判断中,块A2的运算块的有效像素数超过规定的阈值α,从而提高梯度法运算结果的可靠度,在检测对象的块A2中,使用初始向量V0(运动向量V3)进行梯度法运算来能够检测出真的运动向量V1的可能性变高。
由此,正确地检测出真的运动向量V1来作为在帧t与帧t+1之间所对应的块(块A2与块B2)之间的运动,正确地生成内插帧F1和内插帧F2上的图像块e1和e2。
如上所述,在检测对象块的运算块中的有效像素少于规定的阈值α、多于规定的阈值β的情况下,仅将检测向量设为0向量,将初始候补向量设为通过运算求出的运动向量,因此在其它周边块的向量检测处理中,在将该Vic用作初始候补向量时,与在图25的有效像素判断部404中降为0向量时相比,候补向量组中的0向量的比例变少,候补向量组的向量值的变化变多。
其结果,图46的有效像素判断部531的情况与图25的有效像素判断部404的情况相比,在候补向量内存在接近真的运动量的向量的可能性变高,与图25的有效像素判断部404的情况相比能够提高初始向量的精确度。
由此,能够仍旧与以往相同程度地维持后级的分配处理中使用的检测向量的精确度并提高梯度法运算的向量检测处理的收敛速度。
接着,参照图63的流程图说明图45的向量检测部52的迭代梯度法运算处理的例子。此外,图63的步骤S551至S558进行与图32的步骤S301至S308相同的处理,因此适当地省略其详细说明。
在步骤S551中,选择器401选择偏移向量Vn-1,并将所选择的偏移向量Vn-1输出到存储器控制信号生成部402、梯度法运算部405、以及评价值运算部61B。
在步骤S552中,存储器控制信号生成部402根据来自信号处理装置1的未图示的控制部的控制信号以及来自选择器401的偏移向量Vn-1,从存储在存储器403中的时刻t的图像的帧t和时刻t+1的图像的帧t+1中读出成为处理对象的运算块的对象像素值,并将读出的对象像素值提供给有效像素判断部531和梯度法运算部405。
有效像素判断部531在被输入从存储器403提供的对象像素值时,在步骤S553中执行有效像素判断处理。该有效像素判断处理是与参照图33所述的有效像素判断处理相同的处理,由于其说明重复因此省略。
通过步骤S553的有效像素判断处理,使用从存储器403提供的对象像素值,运算出帧t和帧t+1的运算块的像素差,由此,在有效像素数计数器441中对在运算块中对梯度法的运算有效的像素的数量进行计数。另外,关于被判断为在运算块中有效的像素的像素,求出水平方向和垂直方向的各自的梯度状态,分别在无水平梯度计数器442和无垂直梯度计数器443中对不存在水平梯度的像素的数量和不存在垂直梯度的像素的数量进行计数。
在步骤S554中,有效像素判断部531的梯度法继续判断部551判断存储在有效像素数计数器441中的值(有效像素的数量)是否多于规定的阈值α。在步骤S554中判断为有效像素的数量多于规定的阈值α的情况下,通过梯度法继续判断部551使运算执行判断部425、梯度法运算部405以及评价判断部541执行梯度法运算,输出将检测向量Ve和初始候补向量Vic决定为通过梯度法运算求出的运动向量V的计数器标志(countflg=1),处理进入步骤S555。
运算执行判断部425在从梯度法继续判断部551被输入计数器标志(countflg=1)时,在步骤S555中执行梯度法执行判断处理。该梯度法执行判断处理是与参照图35所述的梯度法执行判断处理相同的处理,由于其说明重复因此省略。
通过步骤S555的梯度法执行判断处理,参照有效像素数计数器441的有效像素的数量、无水平梯度计数器442的不存在水平梯度的像素的数量、以及无垂直梯度计数器443的不存在垂直梯度的像素的数量,判断有效像素中的单侧梯度的像素的数量是否多,根据其判断结果,设定用于从综合型梯度法运算处理和独立型梯度法运算处理中切换梯度法运算部405所进行的梯度法运算处理的梯度标志(gladflg),将所设定的梯度标志输出到梯度法运算部405和评价判断部541,处理进入步骤S556。
梯度法运算部405在从梯度法继续判断部551被输入计数器标志(countflg=1)、从运算执行判断部425被输入梯度标志时,在步骤S556中执行梯度法运算处理。该梯度法运算处理是与参照图36所述的梯度法运算处理相同的处理,由于其说明重复因此省略。
通过步骤S556的梯度法运算处理,从运算执行判断部425根据梯度标志来执行使用有效像素的综合型梯度法运算处理、或者执行使用有效像素中的在水平方向上存在梯度的像素的水平方向的独立型梯度法运算处理、或者执行使用有效像素中的在垂直方向上存在梯度的像素的垂直方向的独立型梯度法运算处理,求出运动向量Vn,并将求出的运动向量Vn输出到向量评价部523,处理进入步骤S557。
在步骤S557中,向量评价部523执行向量评价处理。该向量评价处理是与参照图39所述的向量评价处理相同的处理,由于其说明重复因此省略。
通过步骤S557的向量评价处理,求出来自梯度法运算部405的运动向量Vn的评价值dfv、偏移向量Vn-1的评价值dfv、以及0向量的评价值dfv,根据来自运算执行判断部425的梯度标志来比较运动向量Vn的评价值dfv与偏移向量Vn-1的评价值dfv或0向量的评价值dfv,根据比较结果进行变更,从而求出运动向量V。例如,将运动向量Vn的评价值dfv与偏移向量Vn-1的评价值dfv进行比较,在运动向量Vn的评价值dfv的可靠度高的情况下,运动向量Vn被设为运动向量V,对梯度法运算的迭代次数计数一次。
另外,在步骤S558中,评价判断部541根据来自运算执行判断部425的梯度标志和梯度法运算的迭代次数来判断是否迭代进行梯度法运算。即,在梯度标志是执行综合型梯度法运算处理的标志(gladflg=4)、并且梯度法运算的迭代次数没有成为所设定的最大迭代次数(例如两次)的情况下,在步骤S558中,评价判断部541判断为迭代进行梯度法运算,并将求出的运动向量V输出到延迟部406。
延迟部406保持从评价判断部541输入的运动向量V直到有效像素判断部531和梯度法运算部405的下一个处理周期为止,在下一个处理周期中,将运动向量V输出到选择器401。由此,处理进入步骤S551,重复进行其以后的处理。
另外,在梯度标志是执行综合型梯度法运算处理的标志以外的情况下、或者在梯度法运算的迭代次数成为所设定的最大迭代次数(例如两次)的情况下,评价判断部541在步骤S558中判断为不迭代进行梯度法运算(即,结束),在步骤S565中,使求出的运动向量V与检测对象块相对应,作为检测向量Ve而存储到检测向量存储器53中,作为初始候补向量Vic而存储到初始候补向量存储器524中。此外,此时,将检测向量Ve及其评价值dfv还输出到移动初始向量分配部105。
另一方面,在步骤S554中,在判断为有效像素数少于规定的阈值α的情况下,梯度法继续判断部551判断有效像素数是否多于规定的阈值β。在步骤S559中由梯度法继续判断部551判断为有效像素数多于规定的阈值β的情况下,执行梯度法运算,但是将计数器标志(countflg=10)输出到梯度法运算部405和评价判断部541,处理进入步骤S560,其中,所述计数器标志(countflg=10)将检测向量Ve决定为0向量、将初始候补向量Vic决定为通过梯度法运算求出的运动向量V。
运算执行判断部425在从梯度法继续判断部551被输入计数器标志(countflg=10)时,在步骤S560中执行梯度法执行判断处理。该梯度法执行判断处理是与上述的步骤S555的梯度法执行判断处理相同的处理,由于其说明重复因此省略。
通过步骤S560的梯度法执行判断处理,参照有效像素数计数器441的有效像素的数量、无水平梯度计数器442的不存在水平梯度的像素的数量、以及无垂直梯度计数器443的不存在垂直梯度的像素的数量,判断有效像素中的单侧梯度的像素的数量是否多,根据其判断结果,设定用于从综合型梯度法运算处理和独立型梯度法运算处理中切换梯度法运算部405所进行的梯度法运算处理的梯度标志(gladflg),将所设定的梯度标志输出到梯度法运算部405和评价判断部541,处理进入步骤S561。
梯度法运算部405在从梯度法继续判断部551被输入计数器标志(countflg=10)、从运算执行判断部425被输入梯度标志时,在步骤S561中执行梯度法运算处理。该梯度法运算处理是与上述的步骤S556的梯度法运算处理相同的处理,由于其说明重复因此省略。
通过步骤S561的梯度法运算处理,根据来自运算执行判断部425梯度标志,来执行使用有效像素的综合型梯度法运算处理、或者使用有效像素中的在水平方向上存在梯度的像素的水平方向的独立型梯度法运算处理和使用有效像素中的在垂直方向上存在梯度的像素的垂直方向的独立型梯度法运算处理中的至少一方,求出运动向量Vn,并将求出的运动向量Vn输出到评价值运算部61B,处理进入步骤S562。
在步骤S562中,向量评价部523执行向量评价处理。该向量评价处理是与上述的步骤S559的向量评价处理相同的处理,由于其说明重复因此省略。
通过步骤S562的向量评价处理,求出来自梯度法运算部405的运动向量Vn的评价值dfv、偏移向量Vn-1的评价值dfv、以及0向量的评价值dfv,根据来自运算执行判断部425的梯度标志来将运动向量Vn的评价值dfv、与偏移向量Vn-1的评价值dfv或0向量的评价值dfv进行比较,根据比较结果进行变更,从而求出运动向量V。此外,在这种情况下(在少于规定的阈值α的情况下),运动向量Vn是利用少于规定的阈值α的有效像素来运算得到的结果,由于无法期望如使用多于规定的阈值α的有效像素来运算得到的结果那样的质量,因此不执行迭代处理。
评价判断部541根据计数器标志(countflg=10),在步骤S563中仅将检测向量Ve决定为0向量,在步骤S565中,与检测对象块对应地将0向量作为检测向量Ve而存储到检测向量存储器53中,与检测对象块对应地将求出的运动向量V作为初始候补向量Vic而存储到初始候补向量存储器524中。此外,此时还将检测向量Ve及其评价值dfv输出到移动初始向量分配部105。
另一方面,在步骤S554中,在判断为有效像素数少于规定的阈值β的情况下,由梯度法继续判断部551停止梯度法运算,将计数器标志(countflg=0)输出到梯度法运算部405和评价判断部541,处理进入步骤S564,其中,所述计数器标志(countflg=0)将检测向量Ve和初始候补向量Vic决定为0向量。
与此对应地,在来自梯度法继续判断部551的计数器标志的值是0的情况下,运算执行判断部425和梯度法运算部405不执行梯度法运算。
评价值判断部541在步骤S564中根据计数器标志(countflg=0),将检测向量Ve和初始候补向量Vic决定为0向量,在步骤S565中,与检测对象块对应地将0向量作为检测向量Ve而存储到检测向量存储器53中,并将0向量作为初始候补向量Vic而存储到初始候补向量存储器524中。此外,此时还将检测向量Ve及其评价值dfv输出到移动初始向量分配部105。
如上所述,不仅使用规定的阈值α、而且使用比规定的阈值α还少的阈值β来判断运算块内的有效像素数的比例,在运算块内的有效像素数少于规定的阈值α、多于规定的阈值β的情况下,不是停止梯度法运算,而是将梯度法运算结果设为初始候补向量,将0向量设为检测向量,因此能够仍旧与以往相同程度地维持后级的分配处理中使用的检测向量的精确度并提高梯度法运算的向量检测处理的收敛速度。
并且,在运算块内的有效像素数少于规定的阈值α、多于规定的阈值β的情况下,即使进行了梯度法运算,也不迭代进行,因此可抑制运算的负荷。
此外,在上述说明中,说明了比规定的阈值β先判断规定的阈值α的例子,但是也可以先比较判断规定的阈值β。
接着,参照图64和图65的流程图说明图45的向量检测部52的迭代梯度法运算处理的其它例子。
在图64的例子中示出了如下处理:在判断为有效像素数多于值比规定的阈值α低的规定的阈值β的情况下,进行综合型梯度法运算和独立型梯度法运算的两者,在评价值判断部541中,根据计数器标志和梯度标志的值,决定检测向量Ve和初始候补向量Vic。
此外,以下将通过综合型梯度法运算求出的向量设为综合型运算结果向量gv、将通过独立型梯度法运算求出的向量设为独立型运算结果向量sgv、将临时设定为检测向量Ve的向量设为临时设定检测向量tve、并将临时设定为初始候补向量Vic的向量设为临时设定初始候补向量tvi来进行说明。
在步骤S601中,选择器401选择偏移向量Vn-1,将所选择的偏移向量输出到存储器控制信号生成部402、梯度法运算部405、以及评价值运算部61B。
存储器控制信号生成部402根据来自信号处理装置1的未图示的控制部的控制信号以及来自选择器401的偏移向量Vn-1,从存储在存储器403中的时刻t的图像的帧t和时刻t+1的图像的帧t+1中读出成为处理对象的运算块的对象像素值。此时,在步骤S602中,存储器控制信号生成部402判断帧t+1中的运算块的对象像素是否在边框外。
在判断为帧t+1中的运算块的对象像素在边框外的情况下,在步骤S603中,梯度法继续判断部551将计数器标志的值设为3,并将计数器标志(countflg=3)输出到运算执行判断部425、梯度法运算部405、以及评价判断部541。
与此对应地,在来自梯度法继续判断部424的计数器标志的值是3的情况下,运算执行判断部425和梯度法运算部405不进行各处理。
在步骤S604中,评价值判断部541根据计数器标志(countflg=3),将偏移向量Vn-1临时设定为临时设定检测向量tve(即,临时设定检测向量的水平方向成分tve.x=Vn-1.x;临时设定检测向量的垂直方向成分tve.y=Vn-1.y),将0向量临时设定为临时设定初始候补向量tvi(即,临时设定初始候补向量的水平方向成分tvi.x=0.0;临时设定初始候补向量的垂直方向成分tvi.y=0.0)。在设定临时设定检测向量tve和临时设定初始候补向量tvi之后,处理进入图65的步骤S615。
在判断为帧t+1中的运算块的对象像素不在边框外的情况下,在步骤S606中,存储器控制信号生成部402将从存储器403中读出的运算块的对象像素值提供给有效像素判断部531和梯度法运算部405。
有效像素判断部531在被输入从存储器403提供的对象像素值时,在步骤S606中执行有效像素判断处理。该有效像素判断处理是与参照图33所述的有效像素判断处理相同的处理,由于其说明重复因此省略。
通过步骤S553的有效像素判断处理,使用从存储器403提供的对象像素值,运算出帧t和帧t+1的运算块的像素差,由此在有效像素数计数器441中对在运算块中对梯度法的运算有效的像素的数量进行计数。另外,关于被判断为在运算块中有效的像素的像素,求出水平方向和垂直方向的各自的梯度状态,分别在无水平梯度计数器442和无垂直梯度计数器443中对不存在水平梯度的像素的数量和不存在垂直梯度的像素的数量进行计数。
在步骤S607中,梯度法继续判断部551判断存储在有效像素数计数器441中的值(有效像素的数量)是否少于规定的阈值β。在步骤S607中判断为有效像素的数量少于规定的阈值β的情况下,在步骤S608中,梯度法继续判断部551将计数器标志的值设定为0,将停止梯度法运算的计数器标志(countflg=0)输出到运算执行判断部425、梯度法运算部405、以及评价判断部541。
与此对应地,在来自梯度法继续判断部424的计数器标志的值是0的情况下,运算执行判断部425和梯度法运算部405不进行各处理。
在步骤S609中,评价值判断部541根据计数器标志(countflg=0),将0向量临时设定为临时设定检测向量tve(即,临时设定检测向量的水平方向成分tve.x=0.0、临时设定检测向量的垂直方向成分tve.y=0.0),将0向量临时设定为临时设定初始候补向量tvi(即,临时设定初始候补向量的水平方向成分tvi.x=0.0、临时设定初始候补向量的垂直方向成分tvi.y=0.0)。在设定临时设定检测向量tve和临时设定初始候补向量tvi之后,处理进入图65的步骤S615。
在步骤S607中判断为有效像素的数量多于规定的阈值β的情况下,在步骤S610中,梯度法继续判断部551判断用于综合型梯度法运算的式(14)的分母是否为0。在所有有效像素都不具有水平梯度的情况下、或者在所有有效像素都不具有水平梯度的情况下,用于综合型梯度法运算的式(14)的分母为0。因而,在这种情况下,梯度法继续判断部551除了参照有效像素数计数器441之外,还参照无水平梯度计数器442和无垂直梯度计数器443,判断有效像素数计数器441的值与无水平梯度计数器442的值是否为相同的数、以及有效像素数计数器441的值与无垂直梯度计数器443的值是否为相同的数,由此判断用于综合型梯度法运算的式(14)的分母是否为0。
在步骤S610中判断为有效像素数计数器441的值、与无水平梯度计数器442的值或无垂直梯度计数器443的值是相同的数的情况下,判断为用于综合型梯度法运算的式(14)的分母是0,梯度法继续判断部551在步骤S611中将计数器标志的值设定为2,将停止梯度法运算的计数器标志(countflg=2)输出到运算执行判断部425、梯度法运算部405、以及评价判断部541。
与此对应地,在来自梯度法继续判断部424的计数器标志的值是2的情况下,运算执行判断部425和梯度法运算部405不进行各处理。
在步骤S612中,评价值判断部541根据计数器标志(countflg=2),将偏移向量Vn-1临时设定为临时设定检测向量tve(即,临时设定检测向量的水平方向成分tve.x=Vn-1.x、临时设定检测向量的垂直方向成分tve.y=Vn-1.y),将偏移向量Vn-1临时设定为临时设定初始候补向量tvi(即,临时设定初始候补向量的水平方向成分tvi.x=Vn-1.x、临时设定初始候补向量的垂直方向成分tvi.y=Vn-1.y)。在设定临时设定检测向量tve和临时设定初始候补向量tvi之后,处理进入图65的步骤S615。
在步骤S610中判断为有效像素数计数器441的值、与无水平梯度计数器442的值及无垂直梯度计数器443的值不是相同的数的情况下,判断为用于综合型梯度法运算的式(14)的分母不是0,梯度法继续判断部551在步骤S613中将计数器标志的值设定为1,将执行梯度法运算的计数器标志(countflg=1)输出到梯度法运算部405和评价判断部541。
与此对应地,在步骤S614中,梯度法运算部405和评价判断部541执行梯度法运算和临时设定处理。参照图66的流程图说明该梯度法运算和临时设定处理。
有效像素判断部471在从梯度法继续判断部551被输入计数器标志(countflg=1)时,在步骤S631中控制梯度法运算部405的各部分,执行综合型梯度法运算处理。由于该综合型梯度法运算处理是参照图37的流程图所述的处理,因此省略其说明。
通过步骤S631的综合型梯度法运算处理,将有效像素设为梯度法运算的对象,将有效像素的水平方向的像素差Δx、垂直方向的像素差Δy、以及时间方向的像素差Δt进行累加,并使用累加得到的梯度和式(14)的最小平方和,求出综合型运算结果向量gv,并输出到向量算出部464。
在步骤S632中,向量算出部464将来自选择器401的偏移向量Vn-1与由综合型梯度运算部463-1求出的综合型运算结果向量gv相加,并输出到向量评价部104。
另外,在步骤S633中,有效像素判断部471控制梯度法运算部405的各部分,执行水平方向的独立型梯度法运算处理。由于该独立型梯度法运算处理是参照图38的流程图记述的处理,因此省略其说明。
通过步骤S633的水平方向的独立型梯度法运算处理,将有效像素中的在水平方向上存在梯度的像素设为梯度法运算的对象,将有效像素的水平方向的像素差Δx以及时间方向的像素差Δt进行累加,使用累加得到的梯度和式(23),求出独立型运算结果向量sgv的水平方向成分(sgv.x),并输出到向量算出部464。
在步骤S634中,有效像素判断部471控制梯度法运算部405的各部分,执行垂直方向的独立型梯度法运算处理。由于该独立型梯度法运算处理是参照图38的流程图记述的处理,因此省略其说明。
通过步骤S634的垂直方向的独立型梯度法运算处理,将有效像素中的在垂直方向上存在梯度的像素设为梯度法运算的对象,将有效像素的垂直方向的像素差Δy以及时间方向的像素差Δt进行累加,使用累加得到的梯度和式(23),求出独立型运算结果向量sgv的垂直方向成分(sgv.y),并输出到向量算出部464。
在向量算出部464中,通过独立型梯度运算部463-2被输入独立型运算结果向量sgv的水平方向成分和垂直方向成分中的至少一个。在步骤S635中,向量算出部464将来自选择器401的偏移向量Vn-1的对象方向成分(水平方向成分和垂直方向成分中的至少一个)、与由独立型梯度运算部463-2求出的独立型运算结果向量sgv的对象方向成分相加,并输出到向量评价部104。
此外,此时将独立型运算结果向量sgv的方向成分中的、没有从独立型梯度运算部463-2输入的方向成分设为0向量。
在步骤S636中,梯度法继续判断部551判断有效像素的数量是否少于规定的阈值α。在步骤S636中判断为有效像素的数量少于规定的阈值α的情况下,在步骤S637中,将计数器标志的值设定为10,并将计数器标志(countflg=10)输出到评价判断部541,其中,所述计数器标志(countflg=10)设将偏移向量Vn-1与综合型运算结果向量gv相加得到的值为初始候补向量(即,tvi=Vn-1+gv)。
在步骤S638中,评价判断部541根据计数器标志(countflg=10),将临时设定检测向量tve临时设定为0向量(即,临时设定检测向量的水平方向成分tve.x=0.0,临时设定检测向量的垂直方向成分tve.y=0.0),将临时设定初始候补向量tvi临时设定为将偏移向量Vn-1与综合型运算结果向量gv相加得到的值(即,临时设定初始候补向量的水平方向成分tvi.x=Vn-1.x+gv.x,临时设定初始候补向量的垂直方向成分tvi.y=Vn-1.y+gv.y)。在设定临时设定检测向量tve和临时设定初始候补向量tvi之后,处理进入图65的步骤S615。
在步骤S636中判断为有效像素的数量多于规定的阈值α的情况下,还将值被设定为1的计数器标志(countflg=1)输出到运算执行判断部425,在步骤S639中,运算执行判断部425执行梯度法执行判断处理。该梯度法执行判断处理是与参照图35记述的梯度法执行判断处理相同的处理,由于其说明重复因此省略。
通过步骤S639的梯度法执行判断处理,参照有效像素数计数器441的有效像素的数量、无水平梯度计数器442的不存在水平梯度的像素的数量、以及无垂直梯度计数器443的不存在垂直梯度的像素的数量,判断有效像素中的单侧梯度的像素的数量是否多,根据其判断结果,设定用于从综合型梯度法运算处理和独立型梯度法运算处理中切换梯度法运算部405所进行的梯度法运算处理的梯度标志(gladflg),将所设定的梯度标志输出到梯度法运算部405和评价判断部541,处理进入步骤S640。
在步骤S640中,评价判断部541根据计数器标志(countflg=1)和梯度标志的值,临时设定临时设定检测向量tve和临时设定初始候补向量tvi。
即,在梯度标志的值是1的情况下,设为对水平方向具有信用,临时设定为临时设定检测向量的水平方向成分tve.x=Vn-1.x+sgv.x、临时设定检测向量的垂直方向成分tve.y=0.0,临时设定为临时设定初始候补向量的水平方向成分tvi.x=Vn-1.x+sgv.x、临时设定初始候补向量的垂直方向成分tvi.y=0.0。
在梯度标志的值是2的情况下,设为对垂直方向具有信用,临时设定为临时设定检测向量的水平方向成分tve.x=0.0、临时设定检测向量的垂直方向成分tve.y=Vn-1.y+sgv.y,临时设定为临时设定初始候补向量的水平方向成分tvi.x=0.0、临时设定初始候补向量的垂直方向成分tvi.y=Vn-1.y+sgv.y。
在梯度标志的值是3的情况下,设为在水平和垂直方向上都不具有信用,临时设定为临时设定检测向量的水平方向成分tve.x=0.0、临时设定检测向量的垂直方向成分tve.y=0.0,临时设定为临时设定初始候补向量的水平方向成分tvi.x=0.0、临时设定初始候补向量的垂直方向成分tvi.y=0.0。
在梯度标志的值是4的情况下,单侧梯度的像素不怎么多而设为在水平和垂直方向上都具有信用,临时设定为临时设定检测向量的水平方向成分tve.x=Vn-1.x+sv.x、临时设定检测向量的垂直方向成分tve.y=Vn-1.y+sv.y,临时设定为临时设定初始候补向量的水平方向成分tvi.x=Vn-1.x+sv.x、临时设定初始候补向量的垂直方向成分Vn-1.y+sv.y。此外,仅在这种情况下,对迭代次数加1。
在梯度标志的值是0的情况下,虽然存在一些单侧梯度的像素,但是设为在水平和垂直方向上都具有较少的信用,临时设定为临时设定检测向量的水平方向成分tve.x=Vn-1.x+sgv.x、临时设定检测向量的垂直方向成分tve.y=Vn-1.y+sgv.y,临时设定为临时设定初始候补向量的水平方向成分tvi.x=Vn-1.x+sgv.x、临时设定初始候补向量的垂直方向成分Vn-1.y+sgv.y。
在步骤S640中设定临时设定检测向量tve和临时设定初始候补向量tvi之后,处理进入图65的步骤S615。
在步骤S615中,评价判断部541判断临时设定的各向量(临时设定检测向量tve和临时设定初始候补向量tvi)的界限。在判断为各向量的值没有超过规定的向量值的情况下,仍旧设为临时设定的向量,但是在判断为超过规定的向量值的情况下,设为0向量。
在步骤S616中,评价判断部541根据计数器标志的值和梯度标志的值,进行临时设定检测向量tve和临时设定初始候补向量tvi的向量评价处理。
即,评价判断部541根据计数器标志的值和梯度标志的值,对偏移向量Vn-1、0向量、临时设定检测向量tve以及临时设定初始候补向量tvi的评价值进行运算,将临时设定检测向量tve的评价值dfv与偏移向量Vn-1的评价值dfv或0向量的评价值dfv进行比较、以及将临时设定初始候补向量tvi的评价值dfv与偏移向量Vn-1的评价值dfv或0向量的评价值dfv进行比较,使用评价值dfv的值较小的(即,可靠性高的)向量来更新(变更)临时设定检测向量tve和临时设定初始候补向量tvi。
在步骤S617中,评价判断部541根据计数器标志的值和梯度标志的值、迭代次数,来判断是否结束梯度法运算的迭代。在计数器标志的值是1、梯度标志的值是4、没有超过规定的迭代次数的情况下,在步骤S617中判断为进行迭代,处理返回到图64的步骤S601,重复进行其以后的处理。
即,此时,评价判断部541将利用步骤S616的向量评价结果来更新的临时设定检测向量tve提供给延迟部406。
在步骤S617中判断为结束迭代的情况下,评价判断部541在步骤S618中将检测向量Ve决定为临时设定检测向量tve,将决定的检测向量Ve与检测对象块对应地存储到检测向量存储器53中,将初始候补向量Vic决定为临时设定初始候补向量tvi,将决定的初始候补向量Vic与检测对象块对应地存储到初始候补向量存储器524中。
参照图67说明上述的步骤S616和S617的处理。
图67示出了各标志的值中的每个标志的值的向量评价的比较对象和迭代判断结果。此外,仅在计数器标志的值是“1”的情况下设定梯度标志。
在计数器标志的值是“0”时,没有设定梯度标志,步骤S616的向量评价中的比较是“无”,步骤S617中的迭代判断被判断为“不进行”。
在计数器标志的值是“1”、梯度标志是“1”时,步骤S616的向量评价中的比较对象是“0向量”,步骤S617中的迭代判断被判断为“不进行”。
在计数器标志的值是“1”、梯度标志是“2”时,步骤S616的向量评价中的比较对象是“0向量”,步骤S617中的迭代判断被判断为“不进行”。
在计数器标志的值是“1”、梯度标志是“3”时,步骤S616的向量评价中的比较对象是“0向量”,步骤S617中的迭代判断被判断为“不进行”。
在计数器标志的值是“1”、梯度标志是“4”时,步骤S616的向量评价中的比较对象是“偏移向量(Vn-1)”,步骤S617中的迭代判断被判断为“依赖于比较结果”。即,如果不满足规定的迭代次数,则将与比较结果相应的向量作为偏移向量而进行迭代。
在计数器标志的值是“2”时,没有设定梯度标志,步骤S616的向量评价中的比较对象是“偏移向量(Vn-1)”,偏移向量与临时设定检测向量tve相同,因此步骤S617中的迭代判断被判断为“不进行”。
在计数器标志的值是“3”时,没有设定梯度标志,步骤S616的向量评价中的比较对象是“偏移向量(Vn-1)”,偏移向量与临时设定检测向量tve相同,因此步骤S617中的迭代判断被判断为“不进行”。
在计数器标志的值是“10”时,没有设定梯度标志,步骤S616的向量评价中的比较是“无”,步骤S617中的迭代判断被判断为“不进行”。
此外,在图67的例子中没有对计数器标志的值是“1”、梯度标志是“0”的情况进行图示,但是与梯度标志为“1、2、3”的情况同样地,步骤S616的向量评价中的比较对象是“0向量”,步骤S617中的迭代判断被判断为“不进行”。
如上所述,也可以根据需要来进行综合型梯度法运算和独立型梯度法运算的两者,根据计数器标志分别临时设定检测向量和初始候补向量,根据计数器标志和梯度标志最终决定检测向量、初始候补向量。
此外,在上述的图45的向量检测部52中,为了将检测向量和初始候补向量作为不同的向量来保持,与检测向量存储器53分开地追加初始候补向量存储器524。因此,在与图17的向量检测部52进行比较的情况下,导致图45的向量检测部52中的存储量成为两倍。因此,参照图68说明不追加初始候补向量存储器524而将检测向量与初始候补向量作为不同的向量来保持的结构例。
图68是表示图45的向量检测部52的其它结构例的框图。
图68的向量检测部52在具备前置滤波器102-1和102-2、移动初始向量分配部105、评价值存储器106、移动初始向量存储器107、以及迭代梯度法运算部522的点上与图17的向量检测部52共同,但是将初始向量选择部521替换为图17的初始向量选择部101的点、将向量评价部523替换为向量评价部561的点、以及除去初始候补向量存储器524的点与图45的向量检测部52不同。
另外,在图68的检测向量存储器53中包含有0向量标志区域571,该0向量标志区域571通过向量评价部561对检测对象块的每一个块写入1bit(位)的0向量标志(zflg)。
向量评价部561具有评价值运算部61B,使评价值运算部61B求出来自迭代梯度法运算部522的运动向量Vn-1(或初始向量V0)的评价值dfv、运动向量Vn的评价值dfv,根据由评价值运算部61B求出的评价值dfv来控制迭代梯度法运算部522,使其重复执行梯度法的运算,最终选择基于评价值dfv的可靠性高的向量。
此时,向量评价部561与图45的向量评价部523同样地,根据来自迭代梯度法运算部522的计数器标志以及各向量的评价值dfv,从来自迭代梯度法运算部522的运动向量Vn-1(或初始向量V0)、运动向量Vn、或0向量中分别求出在后级中用于分配处理的检测向量Ve、以及在初始向量选择部101中选择初始向量时使用的初始候补向量Vic。
向量评价部561根据来自迭代梯度法运算部522的计数器标志,在检测向量Ve与初始候补向量Vic相同的情况下,将0向量标志设定为0,将检测向量Ve存储到检测向量存储器53中,并且将0向量标志(zflg=0)写入到0向量标志区域571中。
向量评价部561根据来自迭代梯度法运算部522的计数器标志,在检测向量Ve与初始候补向量Vic不同的情况下(即,在检测向量Ve是0向量的情况下),将0向量标志设定为1,将初始候补向量Vic存储到检测向量存储器53中,并且将0向量标志(zflg=1)写入到0向量标志区域571中。
此外,与此对应地,后级的向量分配部54根据0向量标志从检测向量存储器53中读出检测向量。即,向量分配部54在0向量标志是0的情况下从检测向量存储器53的对应的块的位置中读出检测向量,但是在0向量标志是1的情况下,不从检测向量存储器53的对应的块的位置中读出检测向量,而将0向量设为检测向量。
另一方面,初始向量选择部101与图17的检测向量53的情况同样地,从检测向量存储器53的对应的块的位置中读出初始候补向量。
即,0向量标志也可以说是向量分配部54为了读出检测向量而所需的标志。
图69是表示迭代梯度法运算部522和向量评价部561的结构的框图。
图69的迭代梯度法运算部522是与图46的迭代梯度法运算部522相同的结构。即,迭代梯度法运算部522的有效像素判断部531在判断为运算块中对梯度法的运算有效的像素的数量多于规定的阈值α的情况下,将计数器标志(countflg=1)提供给梯度法运算部405和向量评价部561,在判断为运算块中对梯度法的运算有效的像素的数量少于规定的阈值α、多于规定的阈值β的情况下,将计数器标志(countflg=10)提供给梯度法运算部405和向量评价部561,在判断为运算块中对梯度法的运算有效的像素的数量少于规定的阈值β的情况下,将计数器标志(countflg=0)提供给梯度法运算部405和向量评价部561。
图69的向量评价部561在具备评价值运算部61B的点上与图46的向量评价部523共同,但是将评价判断部541替换为评价判断部581的点与图46的向量评价部523不同。
评价值判断部581根据从有效像素判断部531提供的计数器标志和梯度标志来判断是否迭代进行梯度法运算处理,或者分别求出检测向量Ve和初始候补向量Vic。
即,评价值判断部581根据需要来比较使评价值运算部61B进行运算得到的评价值dfv,由此选择可靠性高的向量,并求出运动向量V。
另外,评价值判断部581在从有效像素判断部531提供计数器标志(countflg=1)的情况下,判断是否迭代进行梯度法运算处理,在判断为进行迭代的情况下,将求出的运动向量V输出到延迟部406。在不迭代进行梯度法运算处理的情况下,评价值判断部581根据计数器标志的值,将求出的运动向量V作为检测向量Ve或初始候补向量Vic而存储到检测向量存储器53中,并且存储0向量标志。
即,在来自有效像素判断部531的计数器标志的值为1的情况(在有效像素的数量多于规定的阈值α的情况)下,检测向量Ve与初始候补向量Vic是相同的向量。另外,在来自有效像素判断部531的计数器标志的值为0的情况下(在有效像素的数量少于规定的阈值β的情况下),检测向量Ve与初始候补向量Vic是相同的向量(即,0向量)。
另一方面,在来自有效像素判断部531的计数器标志的值为10的情况(在有效像素的数量少于规定的阈值α、多于规定的阈值β的情况)下,检测向量Ve是0向量,是与初始候补向量Vic不同的向量。
因而,在来自有效像素判断部531的计数器标志的值为1的情况下,评价值判断部581为了使初始向量选择部101和向量分配部54的两者使用存储在检测向量存储器53中的向量,将0向量标志的值设定为0并存储检测向量Ve时,也将0向量标志(zflg=0)写入到0向量标志区域571中。
另外,在来自有效像素判断部531的计数器标志的值为0的情况下,评价值判断部581为了使初始向量选择部101和向量分配部54的两者使用存储在检测向量存储器53中的向量,在将0向量标志的值设定为0并存储检测向量Ve(=0向量)时,也将0向量标志(zflg=0)写入到0向量标志区域571中。
并且,在来自有效像素判断部531的计数器标志的值为10的情况下,评价值判断部581为了仅使初始向量选择部101使用存储在检测向量存储器53中的向量、向量分配部54使用0向量,将0向量标志的值设定为1并存储初始候补向量Vic(=0向量)时,也将0向量标志(zflg=1)写入到0向量标志区域571中。
由此,即使不具有初始候补向量Vic用的存储器(图45的初始候补向量存储器524),只要在检测向量存储器53中使0向量标志用的区域对每一个块扩展1bit(位),就能够期望与具有初始候补向量Vic用的存储器的情况相同的效果。
接着,参照图70的流程图说明图69的评价判断部581的向量存储控制处理。此外,图70是存储图63的步骤S565中的检测向量和初始候补向量的处理的其它例子。即,图68的向量检测部52的梯度法运算处理仅是步骤S565的由评价值判断部581进行的检测向量及初始候补向量的存储控制处理不同,其它的处理是基本上与参照图63记述的图45的向量检测部52的梯度法运算处理相同的处理,因此省略其说明。
在步骤S660中,评价判断部581判断来自有效像素判断部531的计数器标志的值是否为10。
在步骤S660中判断为计数器标志的值不是10(即,是0或1)的情况下,评价判断部581在步骤S661中将0向量标志的值设定为0,在步骤S662中将在图63的步骤S557中求出的运动向量V作为检测向量Ve而与0向量标志(zflg=0)一起存储到检测向量存储器63中。
即,与检测对象块对应地存储检测向量Ve,将0向量标志(zflg=0)与检测对象块对应地存储到扩展了1bit的0向量标志区域571中。
与此对应地,初始向量选择部101从检测向量存储器53的对应的块位置中读出初始候补向量,后级的向量分配部54根据0向量标志(zflg=0)从检测向量存储器53的对应的块位置中读出检测向量。
另一方面,在步骤S660中判断为计数器标志的值是10的情况下,评价判断部581在步骤S663中将0向量标志的值设定为1,在步骤S664中将在图63的步骤S557中求出的运动向量V作为初始候补向量Vic而与0向量标志(zflg=1)一起存储到检测向量存储器63中。
即,与检测对象块对应地存储初始候补向量Vic,将0向量标志(zflg=1)与检测对象块对应地存储到扩展了1bit的0向量标志区域571中。
与此对应地,初始向量选择部101从检测向量存储器53的对应的块位置中读出初始候补向量,后级的向量分配部54根据0向量标志(zflg=1),不从检测向量存储器53的对应的块位置中读出检测向量而将0向量设为检测向量。
如上所述,即使不具有初始候补向量Vic用的存储器(图45的初始候补向量存储器524),只要在检测向量存储器53中使0向量标志用的区域对每一个块扩展1bit,就能够期望与具有初始候补向量Vic用的存储器的情况相同的效果。
即,不仅使用规定的阈值α,还使用比规定的阈值α小的阈值β来判断运算块内的有效像素数的比例,在运算块内的有效像素数少于规定的阈值α、多于规定的阈值β的情况下,不停止梯度法运算,而将梯度法运算结果设为初始候补向量,将0向量设为检测向量,因此能够仍旧与以往相同程度地维持后级的分配处理中使用的检测向量的精确度,提高梯度法运算的向量检测处理的收敛速度。
接着,说明向量分配部54的详细结构。
图71是表示向量分配部54的结构的框图。在图71中示出结构的向量分配部54使用被输入24P信号的时刻t的图像的帧t和时态t+1的图像的帧t+1,进行将在帧t上检测出的运动向量分配给分配向量存储器55上的、进行插值的60P信号的内插帧上的像素的处理。
在图71的例子中,将时刻t的图像的帧t和时刻t+1的图像的帧t+1输入到像素信息运算部701、参照图6记述的评价值运算部61、以及关注像素差运算部703。
像素信息运算部701从左上的像素开始按光栅扫描的顺序获取在检测向量存储器53的帧t上的像素中检测出的运动向量,并在下一时刻的帧t+1方向上延伸所获取的运动向量,算出进行了延伸的运动向量与内插帧的交点。然后,像素信息运算部701从算出的运动向量与内插帧的交点,在内插帧上设定成为该运动向量的分配对象的像素(以下称为分配对象像素),将运动向量和分配对象像素的位置信息输出到向量选择部705。另外,像素信息运算部701算出与分配对象像素及运动向量相对应的帧t的位置P和帧t+1上的位置Q,并将算出的帧t和帧t+1上的位置信息输出到评价值运算部61和关注像素差运算部703。
评价值运算部61在从像素信息运算部701被输入与分配对象像素及运动向量相对应的帧t和帧t+1上的位置信息时,为了运算帧t的位置P以及帧t+1的位置Q的评价值DFD,分别设定以位置P和位置Q为中心的固定范围的DFD运算范围(m×n),判断这些DFD运算范围是否处于图像边框内。在判断为DFD运算范围处于图像边框内的情况下,评价值运算部61通过使用该DFD运算范围来进行运算,求出针对运动向量的分配对象像素的评价值DFD,并将求出的评价值DFD输出到向量评价部704。
关注像素差运算部703在从像素信息运算部701被输入与分配对象像素及运动向量相对应的帧t和帧t+1上的位置信息时,使用帧t的位置P和帧t+1的位置Q来求出对于分配对象像素的亮度差绝对值,并将求出的亮度差绝对值输出到向量评价部704。
向量评价部704由像素差判断部711和评价值判断部712构成。像素差判断部711判断从关注像素差运算部703输入的对于分配对象像素的亮度差绝对值是否小于规定的阈值。在由像素差判断部711判断为从关注像素差运算部703输入的对于分配对象像素的亮度差绝对值小于规定的阈值的情况下,评价值判断部712判断从评价值运算部61输入的分配对象像素的评价值DFD是否小于向量选择部705所具有的DFD表的最小评价值。然后,评价值判断部712在判断为分配对象像素的评价值DFD小于DFD表的最小评价值的情况下,判断为分配对象像素所对应的运动向量的可靠度高,对向量选择部705输出分配对象像素的评价值DFD。
向量选择部705具有保持内插帧上的各像素中的最小评价值的DFD表,对于内插帧上的各像素,将分配了0向量的情况下的评价值DFD0作为内插帧上的各像素中的最小评价值而预先保持在DFD表中。向量选择部705在被输入来自向量评价部704的分配对象像素的评价值DFD时,根据来自像素信息运算部701的分配对象像素的位置信息,将分配标志存储器56的标志改写为1(true),将分配对象像素的DFD表的最小评价值改写为该分配对象像素的评价值DFD。另外,向量选择部705根据来自像素信息运算部701的分配对象像素的位置信息,将来自像素信息运算部701的运动向量分配给分配向量存储器55的分配对象像素。
此外,在图71的例子中说明了图17和图45的检测向量存储器53的情况,但是像素信息运算部701在从图68的例子的检测向量存储器53中获取运动向量时,根据与帧t上的像素对应地写入的0向量标志的值来获取在帧t上的像素中检测出的运动向量(检测向量)、或0向量。
接着,说明运动向量的像素以下精确度。
在用上述式(1)表示的DFD评价的运算中,实际上,使帧t的像素位置p偏离了向量v的目的地的帧t+1上的相位p+v与24p信号的帧t+1上的像素位置不一致的情况较多,没有定义这种情况下的亮度值。因而,为了进行针对具有像素以下精确度的运动向量v的评价值DFD的运算,必须使用某种方法来生成像素以下的相位的亮度值。
与此对应地,存在直接使用与使帧t的像素位置p偏离了向量v的目的地的帧t+1上的相位p+v最近的像素的亮度值的方法。然而,在该方法中,由于舍入进行评价的运动向量的像素以下成分,因此丢弃运动向量的像素以下成分,从而导致由此求出的评价值DFD的可靠度变低。
因此,在本发明中使用周边四个像素的亮度值的四点插值处理。图72是表示本发明的四点插值处理的概念的图。在图72中,箭头X表示帧t+1中的水平方向,箭头Y表示帧t+1中的垂直方向。在该帧t+1中,白圆表示帧t+1上的像素位置,黑点表示像素以下的(颗粒的)位置。另外,在窗口E中放大示出帧t+1上的最左上的黑点p+v及其周边四个像素。在窗口E中,白圆内的字母表示周边四个像素的亮度值。
当将该帧t+1中的最左上的黑点p+v设为使帧t的像素位置p偏离了向量v的目的地的相位p+v时,使用相位p+v的水平方向的像素以下成分α和垂直方向的像素以下成分β、以及相位p+v的周边四个像素的亮度值L0至L4,用周边四个像素的距离的反比的和来求出相位p+v的亮度值Ft+1(p+v)。即,用下式(31)表示亮度值Ft+1(p+v)。
[公式30]
Ft+1(p+v)=(1-α)(1-β)L0+α(1-β)L1+(1-α)βL2+αβL3
                                         …(31)
如上所述,通过使用通过四点插值处理求出的亮度值Ft+1(p+v)来进行DFD评价的运算,不提高硬件安装上的成本而能够抑制评价值DFD的可靠度的降低。此外,以下说明了在向量分配时的评价值DFD、亮度差绝对值等的运算中应用了该四点插值的例子,但是,当然在对上述的初始向量选择处理、向量检测处理等的向量进行评价的情况下的评价值dfv(评价值mDFD)的运算、对后述的分配补偿处理等的向量进行评价的情况下的评价值DFD的运算、或者后述的图像插值的处理中也应用了该四点插值。
接着,参照图73的流程图详细说明向量分配处理。将作为24P信号的原帧的时刻t的图像的帧t和时刻t+1的图像的帧t+1输入到像素信息运算部701、评价值运算部61、以及关注像素差运算部703。
像素信息运算部701在被输入新的原帧时,控制向量选择部705,在步骤S 701中,将分配标志存储器56的分配标志初始化为0(False),在步骤S 702中,将分配向量存储器55初始化为0向量。由此,结果,对没有分配运动向量的像素分配0向量。
另外,在步骤S703中,像素信息运算部701控制评价值运算部61,使其使用0向量对内插帧上的所有像素算出评价值DFD0,控制向量选择部705,使其将由评价值运算部61算出的0向量的评价值DFD0作为对于内插帧的各像素的最小评价值而存储到DFD表中。即,在步骤S703中,评价值运算部61使用0向量对内插帧的所有像素算出评价值DFD0,通过向量评价部704将算出的评价值DFD0输出到向量选择部705。然后,向量选择部705将通过向量评价部704输入的评价值DFD0作为DFD表的对应的像素的最小评价值而进行存储。
在步骤S704中,像素信息运算部701从检测向量存储器53上的原帧中选择像素。此外,在这种情况下,从帧的左上开始按光栅扫描的顺序选择像素。
在步骤S705中,像素信息运算部701执行像素位置运算处理。具体地说,像素信息运算部701算出所获取的运动向量与内插帧的交点,根据从运动向量和内插帧算出的交点来设定分配对象像素。此时,在交点与内插帧上的像素位置一致的情况下,像素信息运算部701将交点设定为分配对象像素。另一方面,在交点与内插帧上的像素位置不一致的情况下,如上所述,像素信息运算部701将内插帧上的交点的附近四个像素设定为分配对象像素。
像素信息运算部701以在评价值运算部61和关注像素差运算部703求出评价值DFD和亮度差绝对值时所需的各分配对象像素为基准,将获取的运动向量移动(平行移动)到所设定的分配对象像素,并求出移动后的运动向量与原帧上的交点的位置,由此算出与获取的运动向量相对应的原帧上的位置。
在步骤S706中,像素信息运算部701选择所算出的分配对象像素,将所选择的分配对象像素和该运动向量输出到向量选择部705。
此时,同时地,像素信息运算部701以所选择的分配对象像素为基准,将与该运动向量相对应的原帧上的位置信息输出到评价值运算部61和关注像素运算部703。此外,在步骤S706中,在存在多个分配对象像素的情况下,像素信息运算部701从左上的像素开始进行选择。
在步骤S707中,像素信息运算部701对所选择的分配对象像素执行分配向量评价处理。后面参照图74详细记述该分配向量评价处理,通过该分配向量评价处理求出分配对象像素中的运动向量的评价值DFD和亮度差绝对值,判断分配对象像素中的运动向量的可靠度,用这些判断结果中的可靠度高的运动向量改写分配向量存储器55的运动向量。
在步骤S708中,像素信息运算部701判断是否结束了所有分配对象像素的处理。在步骤S708中判断为所有的分配对象像素的处理还没有结束的情况下,处理返回到步骤S706,选择下一个分配对象像素,重复进行其以后的处理。
在步骤S708中判断为所有的分配对象像素的处理结束了的情况下,像素信息运算部701在步骤S709中判断是否结束了检测向量存储器53上的原帧的所有像素的处理。在步骤S709中判断为没有结束检测向量存储器53上的原帧的所有像素的处理的情况下,处理返回到步骤S704,选择检测向量存储器53上的原帧的下一个像素,重复进行其以后的处理。另外,在步骤S709中判断为结束了关于检测向量存储器53的所有像素的处理的情况下,结束向量分配处理。
接着,参照图74的流程图详细说明分配向量评价处理。
此外,图74表示图73的步骤S707的分配向量评价处理的例子。
在图73的步骤S706中,通过像素信息运算部701以所选择的分配对象像素为基准求出与该运动向量相对应的原帧上的位置,并将求出的原帧上的位置信息输入到评价值运算部61和关注像素差运算部703。
评价值运算部61在从像素信息运算部701被输入原帧上的位置信息时,在步骤S741中,为了求出分配对象像素中的运动向量的评价值DFD而分别求出以帧t和帧t+1上的位置为中心的DFD运算范围(m×n),在步骤S742中判断求出的DFD运算范围是否处于图像边框内。
在步骤S742中判断为DFD运算范围超出图像边框的情况下,判断为该运动向量不能成为分配给分配对象像素的分配候补向量,从而跳过步骤S743至S749的处理,结束分配向量评价处理,处理返回到图73的步骤S708。由此,从候补中除去以帧t上的点P和帧t+1上的点Q为中心的DFD运算范围超出图像边框的情况下的运动向量。
在步骤S742中判断为求出的DFD运算范围处于图像边框内的情况下,在步骤S743中,评价值运算部61使用被判断为处于图像边框内的DFD运算范围来运算分配对象像素的评价值DFD,并将求出的评价值DFD输出到评价值判断部712。此外,此时,在原帧上的位置处于像素以下的情况下,使用上述的四点插值,求出原帧上的交点的亮度值,由此运算出分配对象像素的评价值DFD。
另一方面,关注像素差运算部703在从像素信息运算部701被输入原帧上的位置信息时,在步骤S744中,求出分配对象像素中的亮度差绝对值dp,并将求出的亮度差绝对值dp输出到像素差判断部711。此外,此时在原帧上的位置处于像素以下的情况下,关注像素差运算部703也使用上述的四点插值,求出原帧上的交点的亮度值,由此运算分配对象像素的亮度差绝对值dp。
在步骤S745中,像素差判断部711判断来自关注像素差运算部703的分配对象像素的亮度差绝对值dp是否为规定的阈值以下。
在步骤S745中判断为分配对象像素的亮度差绝对值dp大于规定的阈值的情况下,判断为帧t和帧t+1的交点分别属于不同的目标的可能性高,即,判断为该运动向量在分配对象像素中的可靠度低、从而不能成为分配给分配对象像素的分配候补向量,处理跳过步骤S746至S749,结束分配向量评价处理,并返回到图73的步骤S708。
由此,从候补中除去帧t和帧t+1的交点分别属于不同的目标的情况下的运动向量。
在步骤S745中判断为分配对象像素的亮度差绝对值dp为规定的阈值以下的情况下,处理进入步骤S746。在步骤S746中,评价值判断部712参照向量选择部705的DFD表,判断来自评价值运算部61的分配对象像素的评价值DFD是否小于存储在DFD表中的分配对象像素的最小评价值(当前的情况是0向量的评价值DFD0)。在步骤S746中判断为来自评价值运算部61的分配对象像素的评价值DFD为存储在DFD表中的分配对象像素的最小评价值以上的情况下,判断为该运动向量在分配对象像素中可靠度不高,从而跳过步骤S747至S749的处理,结束分配向量评价处理,处理返回到图73的步骤S708。
另一方面,在步骤S746中判断为来自评价值运算部61的分配对象像素的评价值DFD小于存储在DFD表中的分配对象像素的最小评价值的情况下,评价值判断部712判断为该运动向量在分配对象像素中在到目前为止进行比较的运动向量中基于评价值DFD的可靠度最高,将被判断为可靠度高的分配对象像素的评价值DFD输出到向量选择部705。
向量选择部705在被输入来自评价值判断部712的分配对象像素的评价值DFD时,在步骤S747中将分配标志存储器56的分配对象像素的分配标志改写为1(True),在步骤S748中将DFD表的分配对象像素所对应的最小评价值改写为由评价值判断部712判断为可靠度高的评价值DFD。
在步骤S706中,在向量选择部705中被输入由像素信息运算部701选择的分配对象像素和其运动向量。因而,在步骤S749中,向量选择部705用与判断为可靠度高的评价值DFD对应的运动向量来改写对分配向量存储器55的分配对象像素进行分配的运动向量。由此,结束分配向量评价处理,处理返回到图73的步骤S708。
如上所述,在选择分配给内插帧的分配对象像素的运动向量时,不仅使用评价值DFD,还使用以分配对象像素为基准、根据与运动向量相对应的原帧上的位置而求出的分配对象像素的亮度差绝对值,来进行评价,因此与以往的仅使用评价值DFD的情况相比,能够从分配候补向量中选择最可靠的运动向量而分配给分配对象像素。由此,能够提高向量分配的精确度,能够抑制在后级的图像插值处理中生成的图像的不连续性等,从而能够提高图像的质量。
并且,在求出评价值DFD、亮度差绝对值时等,在需要像素以下位置的像素值的情况下,通过以与该像素以下位置的附近四个像素之间的距离为基准的线性插值来求值,因此可进行像素以下位置精确度的处理,并且,与以往的舍入像素以下成分的方法相比,能够高精确度地求出亮度差绝对值dp、评价值DFD,由此能够从分配候补向量中根据关注像素来分配更可靠的运动向量。即,提高向量分配处理的精确度。
接着,说明分配补偿部57的详细结构。
图75是表示分配补偿部57的结构的框图。在图75中示出结构的分配补偿部57由分配向量判断部801和向量补偿部802构成,对没有通过向量分配部54分配运动向量的60P信号的内插帧上的像素进行补偿并分配其周边像素的运动向量的处理。
通过前级的向量分配部54对分配向量存储器55上的内插帧的像素分配运动向量。另外,对由向量分配部54分配了运动向量的像素的分配标志存储器56的分配标志写入1(True),对没有分配运动向量的像素的分配标志存储器56的分配标志写入0(False)。
分配向量判断部801参照分配标志存储器56的分配标志来判断是否通过向量分配部54对关注像素分配了运动向量。然后,分配向量判断部801选择没有通过向量分配部54分配运动向量的关注像素,对于所选择的关注像素,控制向量补偿部802,使其选择该关注像素的周边像素的运动向量并分配到分配向量存储器55的内插帧上。
向量补偿部802由补偿处理部811、以及参照图6记述的评价值运算部61构成。
补偿处理部811具有存储最小评价值DFD、以及将最小评价值DFD的运动向量作为候补向量(以下还称为补偿候补向量)来进行存储的存储器821,作为由分配向量判断部801选择的关注像素的初始值,将0向量的评价值DFD作为最小评价值而存储到存储器821中,将0向量作为补偿候补向量而存储到存储器821中。补偿处理部811参照分配标志存储器56来判断关注像素的周边像素的运动向量的有无,从分配向量存储器55中获取分配给周边像素的运动向量,控制评价值运算部61,使其运算该运动向量的评价值DFD。
另外,补偿处理部811判断由评价值运算部61运算得到的评价值DFD是否小于存储在存储器821中的最小评价值,在判断为运算得到的评价值DFD小于最小评价值的情况下,将存储器821的补偿候补向量与最小评价值改写为运算得到的评价值DFD与其运动向量,最终,将被判断为评价值DFD最小的周边像素的运动向量(补偿候补向量)作为关注像素的运动向量而分配给分配向量存储器55的关注像素。并且,补偿处理部811将分配有运动向量的关注像素的分配标志存储器56的分配标志改写为1(True)。
当从分配向量存储器55中获取周边像素的运动向量时,评价值运算部61使用所输入的时刻t的24P信号的图像的帧t和时刻t+1的图像的帧t+1,运算来自分配向量存储器55的运动向量的评价值DFD,将运算得到的评价值DFD输出到补偿处理部811。
接着,参照图76的流程图详细说明分配补偿处理。通过前级的向量分配部54将运动向量分配给分配向量存储器55上的内插帧的像素。另外,对由向量分配部54分配了运动向量的像素的分配标志存储器56的分配标志写入1(True),对没有分配运动向量的像素的分配标志存储器56的分配标志写入0(False)。
在步骤S801中,分配向量判断部801选择分配标志存储器56的内插帧的像素来作为关注像素。此时,分配向量判断部801从帧的左上的像素开始按光栅扫描顺序选择像素。
分配向量判断部801在步骤S802中判断分配标志存储器56内的关注像素的分配标志是否为0(False),在判断为分配标志存储器56内的关注像素的分配标志是0(False)的情况下,判断为没有分配运动向量,在步骤S803中,控制补偿处理部811,使其执行向量补偿处理。后面参照图77详细记述该向量补偿处理,通过该向量补偿处理,从分配给周边像素的运动向量中将评价值DFD的最小的运动向量作为补偿候补向量而存储到存储器821中。
补偿处理部811在步骤S804中将存储器821的补偿候补向量作为关注像素的运动向量而分配到分配向量存储器55,在步骤S805中,将分配标志存储器56的关注像素的分配标志改写为1(True)。
另一方面,在步骤S802中判断为分配标志存储器56内的关注像素的分配标志为1(True)的情况下,视为对该关注像素已经分配了运动向量,处理跳过步骤S803至S805,进入步骤S806。
分配向量判断部801在步骤S806中判断是否结束了分配标志存储器56的内插帧的所有像素的处理。在步骤S806中判断为没有结束所有像素的处理的情况下,处理返回到步骤S801,将分配标志存储器56的内插帧的下一个像素作为关注像素来进行选择,执行其以后的处理。在步骤S806中判断为结束了分配标志存储器56的内插帧的所有像素的处理的情况下,结束分配补偿处理。
接着,参照图77的流程图详细说明向量补偿处理。此外,图77表示图76的步骤S803的向量补偿处理的例子。
在步骤S821中,补偿处理部811控制评价值运算部61,使其使用0向量来算出评价值DFD0。具体地说,在步骤S821中,评价值运算部61使用所输入的时刻t的图像的帧t、和时刻t+1的图像的帧t+1,例如如参照图62记述的那样,对关注像素运算0向量的评价值DFD0,将运算得到的评价值DFD0输出到补偿处理部811。
在步骤S822中,补偿处理部811将评价值DFD0作为最小评价值而存储到存储器821中,在步骤S823中,将0向量作为补偿候补向量而存储到存储器821中。在步骤S824中,补偿处理部811在由分配向量判断部801选择的关注像素的周边八个像素中选择一个周边像素。此时,补偿处理部811在周边八个像素中从左上的像素开始按光栅扫描顺序选择周边像素。
在步骤S825中,补偿处理部811参照分配标志存储器56来判断是否存在所选择的周边像素的运动向量。如果分配标志存储器56的周边像素的分配标志是1(True),则在步骤S825中判断为存在分配给所选择的周边像素的运动向量,处理进入步骤S826,补偿处理部811从分配向量存储器55中获取周边像素的运动向量。此时,还从分配向量存储器55向评价值运算部61输出周边像素的运动向量。
评价值运算部61在从分配向量存储器55被输入周边像素的运动向量时,在步骤S827中,使用所输入的时刻t的图像的帧t、和时刻t+1的图像的帧t+1,对关注像素运算来自分配向量存储器55的运动向量的评价值DFD,并将运算得到的评价值DFD输出到补偿处理部811。
补偿处理部811在从评价值运算部61被输入评价值DFD时,在步骤S828中,判断评价值DFD是否小于存储在存储器821中的关注像素的最小评价值。在步骤S828中判断为评价值DFD小于存储在存储器821中的关注像素的最小评价值的情况下,补偿处理部811在步骤S829中将存储器821的最小评价值改写为被判断为小于最小评价值的评价值DFD,在步骤S830中将存储器821的补偿候补向量改写为该最小评价值的运动向量。
另一方面,在步骤S825中,当分配标志存储器56的周边像素的分配标志是0(False)时,判断为不存在分配给所选择的周边像素的运动向量,跳过步骤S826至S830的处理,处理进入步骤S831。另外,在步骤S828中判断为评价值DFD为存储在存储器821中的关注像素的最小评价值以上的情况下,跳过步骤S829至S830的处理,处理进入步骤S831。
补偿处理部811在步骤S831中判断对于关注像素的周边八个像素的所有像素的处理是否结束。在步骤S831中判断为对于关注像素的周边八个像素的所有像素的处理没有结束的情况下,处理返回到步骤S824,选择下一个周边像素,重复进行其以后的处理。另外,在步骤S831中判断为对于关注像素的周边八个像素的所有像素的处理结束了的情况下,结束向量补偿处理,处理返回到图76的步骤S804。
如上所述,在向量分配处理中,关于无法进行分配的像素,也能够利用存在运动相关的情形来从该像素的周边的运动向量中得到基于评价值DFD的、可靠度最高的、可靠的运动向量。由此,与不分配向量而分配0向量等的情况相比,能够提高向量分配的精确度,能够抑制在后级的图像插值处理中生成的图像的不连续性。
另外,通过上述的分配补偿处理将分配了运动向量的像素的分配标志改写为1(True),还将通过分配补偿处理分配的运动向量用作下一个像素的补偿候补向量,因此对在目标内进行大致相同的运动的像素选择大致相同的运动向量,能够得到错误较少的稳定的运动向量。其结果,能够抑制在后级中生成的图像的块噪声、粉状噪声等,从而能够提高质量。
此外,在上述说明中,对在向量分配部54中没有分配的像素进行了向量补偿处理,但是也可以对在向量检测部52中没有检测出的(检测出0向量的)像素等、在某些处理中没有求出运动向量的像素进行向量补偿处理。另外,还可以对检测出的运动向量、或者视为所分配的运动向量不可靠的(可靠度低的)像素进行向量补偿处理。
另外,在上述说明中,说明了以像素为单位的分配补偿处理,但是也能够以规定的块为单位,将分配给位于其周边的像素的运动向量中的可靠的运动向量分配给该规定的块的所有像素。此外,在规定的块中存在已经分配了运动向量的像素的情况下,也可以仅对其以外的像素进行分配。
接着,说明图像插值部58的详细结构。
图78是表示图像插值部58的结构的框图。在图78中示出结构的图像插值部58进行如下处理:使用分配给分配向量存储器55的内插帧的运动向量、以及帧t和帧t+1的像素值,插值生成内插帧的像素值,并输出60P信号的图像。
在图78的例子中,将时刻t的图像的帧t输入到空间滤波器92-1,将时刻t+1的图像的帧t+1输入到空间滤波器92-2和缓冲器95。
插值控制部91选择分配向量存储器55的内插帧的像素,根据分配给所选择的像素的运动向量,分别求出内插帧上的像素与两个帧t及帧t+1的像素之间的位置关系(空间移动量)。
即,插值控制部91以内插帧的像素为基准,根据以其运动向量相对应的帧t上的位置、以及与内插帧的像素对应的帧t上的像素的位置,求出它们的空间移动量,并将求出的空间移动量提供给空间滤波器92-1。同样地,插值控制部91以内插帧的像素为基准,根据与其运动向量相对应的帧t+1上的位置、以及与内插帧的像素对应的帧t+1上的像素的位置,求出它们的空间移动量,并将求出的空间移动量提供给空间滤波器92-2。
另外,插值控制部91根据预先设定的内插帧的时间相位(时刻),求出帧t与帧t+1之间的插值权重,对乘法器93-1和93-2设定所求出的插值权重。例如,在内插帧的时刻是从帧t+1的时刻t+1离开了“k”的时刻、并且从帧t的时刻t离开了“1-k”的时刻的情况下(即,在将时刻t和时刻t+1内分为“1-k”:“k”的时刻生成内插帧的情况下),插值控制部91对乘法器93-1设定“1-k”的插值权重,对乘法器93-2设定“k”的插值权重。
空间滤波器92-1和92-2例如由立方滤波器(cubic filter)等构成。空间滤波器92-1根据所输入的帧t上的像素的像素值、和从插值控制部91提供的空间移动量,求出与内插帧的像素对应的帧t上的像素值,并将求出的像素值输出到乘法器93-1。空间滤波器92-2根据所输入的帧t+1上的像素的像素值、和从插值控制部91提供的空间移动量,求出与内插帧的像素对应的帧t+1上的像素值,并将求出的像素值输出到乘法器93-2。
此外,在内插帧的像素的位置与帧t或帧t+1上的像素的位置不一致的情况下(即,在内插帧的像素的位置在帧t或帧t+1中是像素以下成分的情况下),空间滤波器92-1和92-2使用帧t或帧t+1中的内插帧的像素的位置的周边四个像素的像素值,求出周边四个像素的距离的反比之和,由此求出与内插帧的像素对应的帧上的像素值。即,关于像素以下位置的像素值,通过参照图72记述的基于与周边四个像素之间的距离的线性插值来求值。
乘法器93-1将从空间滤波器92-1输入的帧t上的像素值与由插值控制部91设定的插值权重“1-k”相乘,将加权后的像素值输出到加法器94。乘法器93-2将从空间滤波器92-2输入的帧t+1上的像素值与由插值控制部91设定的插值权重“k”相乘,将加权后的像素值输出到加法器94。
加法器94将从乘法器93-1输入的像素值与从乘法器93-2输入的像素值相加,由此生成内插帧的像素的像素值,并将生成的内插帧的像素值输出到缓冲器95。缓冲器95对所输入的帧t+1进行缓冲。缓冲器95输出所生成的内插帧,接着根据预先设定的60P帧的时间相位(时刻),根据需要输出进行了缓冲的帧t+1,由此将60P信号的图像输出到未图示的后级。
参照图79的流程图详细说明如上所述构成的图像插值部58的图像插值处理。
在步骤S901中,插值控制部91根据进行处理的内插帧的时间相位,求出帧t与帧t+1之间的内插帧的插值权重(例如,“k”和“1-k”),分别对乘法器93-1和93-2设定所求出的插值权重。在步骤S902中,插值控制部91选择分配向量存储器55的内插帧的像素。此外,从帧的左上的像素开始按光栅扫描顺序选择内插帧上的像素。
在步骤S903中,插值控制部91根据分配给所选择的像素的运动向量,分别求出内插帧上的像素与两个帧t及帧t+1的像素之间的位置关系(空间移动量),并将求出的空间移动量分别提供给空间滤波器92-1和92-2。具体地说,在步骤S903中,插值控制部91以内插帧的像素为基准,根据与其运动向量相对应的帧t上的位置、以及与内插帧的像素对应的帧t上的像素位置来求出它们的空间移动量,并将求出的空间移动量提供给空间滤波器92-1。同样地,插值控制部91以内插帧的像素为基准,根据与其运动向量相对应的帧t+1上的位置、以及与内插帧的像素对应的帧t+1上的像素位置来求出它们的空间移动量,并将求出的空间移动量提供给空间滤波器92-2。
将时刻t的图像的帧t的像素值输入到空间滤波器92-1,将时刻t+1的图像的帧t+1的像素值输入到空间滤波器92-2。在步骤S 904中,空间滤波器92-1和92-2根据所输入的帧t和帧t+1上的像素的像素值、和从插值控制部91提供的空间移动量,求出与内插帧的像素对应的各帧上的像素值,并将求出的像素值分别输出到乘法器93-1和93-2。
在步骤S905中,乘法器93-1和93-2对从空间滤波器92-1或92-2输入的各帧上的像素值,加权由插值控制部91设定的插值权重,并将加权后的像素值输出到加法器94。即,乘法器93-1将从空间滤波器92-1输入的帧t上的像素值与由插值控制部91设定的插值权重“1-k”相乘,将加权后的像素值输出到加法器94。乘法器93-2将从空间滤波器92-2输入的帧t+1上的像素值与由插值控制部91设定的插值权重“k”相乘,将加权后的像素值输出到加法器94。
在步骤S 906中,加法器94将由乘法器93-1进行了加权后的像素值与由乘法器93-2进行了加权后的像素值相加,由此生成内插帧的像素的像素值,并将生成的像素值输出到缓冲器95。在步骤S907中,插值控制部91判断关于内插帧上的所有像素的处理是否结束。在步骤S907中判断为关于内插帧上的所有像素的处理没有结束的情况下,处理返回到步骤S902,重复进行其以后的处理。在步骤S907中判断为关于内插帧上的所有像素的处理结束了的情况下,结束图像插值处理。
如上所述,当根据分配给内插帧的运动向量而生成内插帧的像素值时,处理返回到上述的图16的步骤S85,在步骤S86中,由缓冲器95输出内插帧,接着根据需要输出帧t+1,由此将60P信号的图像输出到后级。因而,由于对内插帧的像素分配最可靠的运动向量,因此能够生成高精确度的内插帧。
在本实施方式中,使用作为差绝对值和的评价值DFD、评价值mDFD、以及评价值dfv来作为选择运动向量时的评价值而进行了说明,但是,并不限定于评价值DFD、评价值mDFD、以及评价值dfv,只要是对运动向量的可靠度进行评价的评价值,也可以使用其它的评价值。
另外,在本实施方式中,说明了例如由8个像素×8个像素、9个像素×9个像素等构成来进行各处理的块,但是这些是一个例子,构成进行各处理的块的像素并不限定于上述像素数。
并且,在本实施方式中,以从24P信号向60P信号的信号变换为例进行了说明,但是本发明例如也可以作为运动图像的帧频率变换而应用于隔行扫描信号、其它的帧频变换中。
上述的一系列处理既可以利用硬件来执行,也可以利用软件来执行。在利用软件执行一系列处理的情况下,从程序保存介质中将构成该软件的程序安装到:嵌入到专用硬件而成的计算机、或者能够通过安装各种程序来执行各种功能的例如通用的个人计算机等中。
如图1所示,程序保存介质由可移动记录介质(封装介质)、或者暂时或永久地保存程序的ROM 12等构成,其中,所述程序保存介质保存安装到计算机而能够通过计算机执行的状态的程序,所述可移动记录介质由磁盘31(包含软盘)、光盘32(包含CD-ROM(Compact Disc-Read Only Memory:光盘只读存储器)、DVD(Digital Versatile Disc:数字多功能光盘))、磁光盘33(包含MD(Mini-Disc:迷你光盘)(商标))、或半导体存储器34等构成。
此外,在本说明书中,在流程图中示出的步骤当然包括按照所记载的顺序按时间序列进行的处理,还包括未必按时间序列进行处理而并行地或独立地执行的处理。

Claims (8)

1.一种图像处理装置,用于检测运动向量,并根据检测出的运动向量生成像素值,该图像处理装置具备:
评价值运算单元,其使用从分别包含成为对象的运动向量的起点和终点的两帧的块的亮度值中分别减去各块内的亮度值的平均而得到的值,来运算在对帧上的关注块的运动向量进行检测的过程中所使用的表示运动向量的精确度的可靠度的评价值;以及
向量评价单元,其使用由上述评价值运算单元运算得到的评价值,评价上述运动向量的精确度的可靠度。
2.根据权利要求1所述的图像处理装置,其特征在于,
上述评价值运算单元具备:
第一运算单元,其对上述两帧的块的块间的亮度值差的平方和进行运算;以及
第二运算单元,其与由上述第一运算单元进行的运算并行地对上述块间的亮度值差的和的平方进行运算。
3.根据权利要求1所述的图像处理装置,其特征在于,
还具备梯度法运算单元,该梯度法运算单元利用梯度法求出关注块的运动向量,
上述评价值运算单元对由上述梯度法运算单元求出的每个迭代阶段的运动向量的评价值进行运算,
上述向量评价单元将由上述评价值运算单元运算得到的上述每个迭代阶段的运动向量的评价值之中最小的评价值的运动向量评价为精确度的可靠度高,并作为上述关注块的运动向量而输出到后级。
4.根据权利要求1所述的图像处理装置,其特征在于,
还具备初始向量选择单元,该初始向量选择单元选择作为对上述帧上的关注块的运动向量进行检测的梯度法的初始值而使用的初始向量,
上述评价值运算单元运算:将与作为在上述帧的过去帧中检测出的上述运动向量的终点的终点块处于相同的位置上的上述帧上的关注块设为起点的、作为与上述运动向量相同大小且相同方向的运动向量的上述关注块的移动初始向量的评价值、以及在上述帧或上述过去帧中检测出的上述关注块的规定的周边块的运动向量的评价值,
上述向量评价单元将由上述评价值运算单元运算得到的上述关注块的移动初始向量的评价值、以及上述规定的周边块的运动向量的评价值之中最小的评价值的运动向量评价为精确度的可靠度高,
上述初始向量选择单元选择由上述向量评价单元评价为精确度的可靠度高的运动向量作为上述关注块的初始向量。
5.根据权利要求3所述的图像处理装置,其特征在于,
还具备移动初始向量设定单元,该移动初始向量设定单元将以与作为在上述帧的过去帧中检测出的上述运动向量的终点的终点块处于相同的位置上的上述帧上的块为起点的、与上述运动向量相同大小且相同方向的运动向量设定为上述块的移动初始向量,
上述向量评价单元将在与在上述过去帧中检测出的上述运动向量的上述终点块处于相同的位置上的上述帧上的上述块中检测出的上述运动向量的评价值之中最小的评价值的运动向量评价为精确度的可靠度高,
上述移动初始向量设定单元选择与由上述向量评价单元评价为精确度的可靠度高的上述运动向量相同大小且相同方向的运动向量作为上述块的上述移动初始向量。
6.一种图像处理方法,是用于检测运动向量并根据检测出的运动向量来生成像素值的图像处理装置的图像处理方法,该图像处理方法的特征在于,包括:
评价值运算步骤,使用从分别包含成为对象的运动向量的起点和终点的两帧的块的亮度值中分别减去各块内的亮度值的平均而得到的值,来运算在对帧上的关注块的运动向量进行检测的过程中所使用的表示运动向量的精确度的可靠度的评价值;以及
向量评价步骤,使用通过上述评价值运算步骤的处理来运算得到的评价值,评价上述运动向量的精确度的可靠度。
7.一种程序,使计算机进行检测运动向量并根据检测出的运动向量来生成像素值的处理,该程序包括:
评价值运算步骤,使用从分别包含成为对象的运动向量的起点和终点的两帧的块的亮度值中分别减去各块内的亮度值的平均而得到的值,运算在对帧上的关注块的运动向量进行检测的过程中所使用的表示运动向量的精确度的可靠度的评价值;以及
向量评价步骤,使用通过上述评价值运算步骤的处理来运算得到的评价值,评价上述运动向量的精确度的可靠度。
8.一种记录介质,记录有权利要求7所述的程序。
CN2006800418410A 2005-09-09 2006-09-04 图像处理装置和方法 Expired - Fee Related CN101305616B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2005261435A JP2007074592A (ja) 2005-09-09 2005-09-09 画像処理装置および方法、プログラム、並びに記録媒体
JP261435/2005 2005-09-09
PCT/JP2006/317448 WO2007029640A1 (ja) 2005-09-09 2006-09-04 画像処理装置および方法、プログラム、並びに記録媒体

Publications (2)

Publication Number Publication Date
CN101305616A true CN101305616A (zh) 2008-11-12
CN101305616B CN101305616B (zh) 2010-09-29

Family

ID=37835758

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2006800418410A Expired - Fee Related CN101305616B (zh) 2005-09-09 2006-09-04 图像处理装置和方法

Country Status (5)

Country Link
US (1) US20090167959A1 (zh)
JP (1) JP2007074592A (zh)
KR (1) KR20080053291A (zh)
CN (1) CN101305616B (zh)
WO (1) WO2007029640A1 (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103810695A (zh) * 2012-11-15 2014-05-21 浙江大华技术股份有限公司 一种光源定位方法及装置
CN103810696A (zh) * 2012-11-15 2014-05-21 浙江大华技术股份有限公司 一种目标对象图像检测方法及装置
CN106170090A (zh) * 2015-05-18 2016-11-30 汤姆逊许可公司 对图片块进行编码/解码的方法
CN106851307A (zh) * 2011-01-12 2017-06-13 佳能株式会社 数字图像序列编码方法和位流解码方法
US11095878B2 (en) 2011-06-06 2021-08-17 Canon Kabushiki Kaisha Method and device for encoding a sequence of images and method and device for decoding a sequence of image

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7916141B2 (en) * 2006-04-10 2011-03-29 Choi Kum-Young Image processing system using vector pixel
JP4212109B2 (ja) * 2007-03-20 2009-01-21 パナソニック株式会社 撮影装置および撮影方法
JP2009207128A (ja) * 2008-01-29 2009-09-10 Sanyo Electric Co Ltd 表示装置及び表示方法
JP4813517B2 (ja) * 2008-05-29 2011-11-09 オリンパス株式会社 画像処理装置、画像処理プログラム、画像処理方法、および電子機器
TWI401963B (zh) * 2009-06-25 2013-07-11 Pixart Imaging Inc Dynamic image compression method for face detection
US8443153B1 (en) 2010-01-06 2013-05-14 Netapp, Inc. Dynamic balancing of performance with block sharing in a storage system
JP5615136B2 (ja) * 2010-01-12 2014-10-29 三菱電機株式会社 立体画像補正方法、立体表示装置、および立体画像生成装置
CN102300044B (zh) * 2010-06-22 2013-05-08 原相科技股份有限公司 处理图像的方法与图像处理模块
US9124898B2 (en) * 2010-07-12 2015-09-01 Mediatek Inc. Method and apparatus of temporal motion vector prediction
JP5671957B2 (ja) * 2010-11-09 2015-02-18 ソニー株式会社 表示装置および表示方法
CN102812715B (zh) * 2011-01-27 2015-08-19 松下电器产业株式会社 三维图像摄影装置以及三维图像拍摄方法
US8732518B2 (en) 2011-04-13 2014-05-20 Netapp, Inc. Reliability based data allocation and recovery in a storage system
KR20140089486A (ko) * 2013-01-04 2014-07-15 삼성전자주식회사 스케일러블 비디오의 부호화 및 복호화를 위한 움직임 보상 방법 및 장치
EP3054685A1 (en) * 2015-02-04 2016-08-10 Thomson Licensing Hierarchical motion estimation and video segmentation in presence of more than one moving object in a block
US10089089B2 (en) * 2015-06-03 2018-10-02 The Mathworks, Inc. Data type reassignment
US10198797B2 (en) * 2015-09-09 2019-02-05 Ichikawa Soft Laboratory Co., Ltd. Apparatus correcting shading without taking optical characteristics into consideration and method thereof
CN110324659B (zh) * 2018-03-29 2020-08-28 北京字节跳动网络技术有限公司 一种视频特征提取方法及装置
JP2022020929A (ja) * 2020-07-21 2022-02-02 富士フイルムヘルスケア株式会社 超音波撮像装置
US20220022847A1 (en) * 2021-06-21 2022-01-27 Hitachi, Ltd. Ultrasound imaging apparatus

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62206980A (ja) * 1986-03-07 1987-09-11 Kokusai Denshin Denwa Co Ltd <Kdd> 動画像の動き推定における初期偏位方式
FR2624682B2 (fr) * 1987-03-23 1990-03-30 Thomson Csf Procede et dispositif d'estimation de mouvement dans une sequence d'images animees
JP2930675B2 (ja) * 1990-07-18 1999-08-03 沖電気工業株式会社 初期偏位ベクトルを用いた動きベクトルの検出方法
US6197819B1 (en) * 1990-11-27 2001-03-06 Northwestern University Gamma amino butyric acid analogs and optical isomers
JPH05233814A (ja) * 1992-02-20 1993-09-10 N T T Data Tsushin Kk 移動ベクトル抽出方法
JP3078140B2 (ja) * 1993-01-20 2000-08-21 沖電気工業株式会社 動きベクトル検出回路
JP2934155B2 (ja) * 1994-08-22 1999-08-16 株式会社グラフィックス・コミュニケーション・ラボラトリーズ 動画像の動ベクトル検出方法と装置
JP2988836B2 (ja) * 1994-11-17 1999-12-13 株式会社グラフィックス・コミュニケーション・ラボラトリーズ 動きベクトル探索方法
JPH08149482A (ja) * 1994-11-18 1996-06-07 Victor Co Of Japan Ltd 動きベクトル検出回路
JPH09219865A (ja) * 1996-02-09 1997-08-19 Matsushita Electric Ind Co Ltd 映像符号化装置
US6320906B1 (en) * 1996-05-21 2001-11-20 Matsushita Electric Industrial Co., Ltd. Motion vector detecting circuit
JP3670566B2 (ja) * 2000-10-03 2005-07-13 日本電信電話株式会社 処理時間適応画像符号化方法およびそのプログラムの記録媒体
JP2003070001A (ja) * 2001-08-27 2003-03-07 Mitsubishi Electric Corp 動画像符号化装置
JP2005505841A (ja) * 2001-10-08 2005-02-24 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 動き推定のための装置及び方法
JP2003230150A (ja) * 2002-02-06 2003-08-15 Nippon Telegr & Teleph Corp <Ntt> 動画像符号化方法、この方法のプログラム、このプログラムを記録した記録媒体
KR100490730B1 (ko) * 2002-10-22 2005-05-24 한국전자통신연구원 비디오 영상 압축 시스템에서의 적응적 패턴을 이용한움직임 예측 장치 및 방법
JP3715283B2 (ja) * 2003-02-04 2005-11-09 株式会社半導体理工学研究センター 動画像の画像圧縮符号化方法及び装置
KR101118982B1 (ko) * 2004-04-09 2012-03-13 소니 주식회사 화상 처리 장치 및 방법, 기록 매체, 및 프로그램
US7848427B2 (en) * 2004-04-09 2010-12-07 Sony Corporation Apparatus and method for determining motion vector with effective pixel gradient
TWI252695B (en) * 2004-07-21 2006-04-01 Realtek Semiconductor Corp Block-based motion estimation method
JP2006254349A (ja) * 2005-03-14 2006-09-21 Toshiba Corp 動きベクトル検出方法、動きベクトル検出装置およびコンピュータ上で動きベクトル検出処理を実行するコンピュータプログラム

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106851307A (zh) * 2011-01-12 2017-06-13 佳能株式会社 数字图像序列编码方法和位流解码方法
US10499060B2 (en) 2011-01-12 2019-12-03 Canon Kabushiki Kaisha Video encoding and decoding with improved error resilience
US10506236B2 (en) 2011-01-12 2019-12-10 Canon Kabushiki Kaisha Video encoding and decoding with improved error resilience
US10609380B2 (en) 2011-01-12 2020-03-31 Canon Kabushiki Kaisha Video encoding and decoding with improved error resilience
US11146792B2 (en) 2011-01-12 2021-10-12 Canon Kabushiki Kaisha Video encoding and decoding with improved error resilience
US11095878B2 (en) 2011-06-06 2021-08-17 Canon Kabushiki Kaisha Method and device for encoding a sequence of images and method and device for decoding a sequence of image
CN103810695A (zh) * 2012-11-15 2014-05-21 浙江大华技术股份有限公司 一种光源定位方法及装置
CN103810696A (zh) * 2012-11-15 2014-05-21 浙江大华技术股份有限公司 一种目标对象图像检测方法及装置
CN103810696B (zh) * 2012-11-15 2017-03-22 浙江大华技术股份有限公司 一种目标对象图像检测方法及装置
CN103810695B (zh) * 2012-11-15 2017-03-22 浙江大华技术股份有限公司 一种光源定位方法及装置
CN106170090A (zh) * 2015-05-18 2016-11-30 汤姆逊许可公司 对图片块进行编码/解码的方法
CN106170090B (zh) * 2015-05-18 2021-09-14 交互数字Vc控股公司 对图片块进行编码/解码的方法

Also Published As

Publication number Publication date
KR20080053291A (ko) 2008-06-12
US20090167959A1 (en) 2009-07-02
WO2007029640A1 (ja) 2007-03-15
CN101305616B (zh) 2010-09-29
JP2007074592A (ja) 2007-03-22

Similar Documents

Publication Publication Date Title
CN101305616B (zh) 图像处理装置和方法
CN101263719B (zh) 图像处理装置及方法
CN100555330C (zh) 图像处理设备和方法、记录介质和程序
CN100407787C (zh) 图像处理装置和方法、学习设备和方法
US6289050B1 (en) Device and method for motion vector detection
US8804834B2 (en) Image processing apparatus, image processing method and image processing program
US20090135913A1 (en) Vector selection decision for pixel interpolation
CN102025959B (zh) 从低清晰度视频产生高清晰度视频的系统与方法
US20050271144A1 (en) Image processing apparatus and method, and recording medium and program used therewith
CN100438609C (zh) 带有降质的图像处理单元
KR20020000164A (ko) 화상 처리 장치와 방법, 및 기록 매체
JP2005505841A (ja) 動き推定のための装置及び方法
US8437399B2 (en) Method and associated apparatus for determining motion vectors
JP2005506626A (ja) 動き推定ユニット及び方法並びにかような動き推定ユニットを備えた画像処理装置
JP2010177739A (ja) 画像処理装置、画像処理方法および画像処理プログラム
JP4835075B2 (ja) 画像処理装置および方法、プログラム、並びに記録媒体
CN113592908A (zh) 一种基于大津法和sad-mcd融合的模板匹配目标跟踪和系统
JP4453202B2 (ja) 画像処理装置および画像処理方法、並びにコンピュータ読み取り可能な記録媒体
US20210150723A1 (en) Image processing device, image processing method, and program
JP2009065283A (ja) 画像ぶれ補正装置
JP2009100017A (ja) 画像処理装置及び方法、並びにプログラム
JP4650682B2 (ja) 画像処理装置および方法、プログラム、並びに記録媒体
JP4917867B2 (ja) テロップ検出装置及び方法、並びに画像表示装置及び方法
JP2009182370A (ja) フレーム補間装置および方法
O'Brien et al. Gaussian mixture model classifiers for small objects in images

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20100929

Termination date: 20130904