CN105447885B - 计算视差的方法和装置 - Google Patents
计算视差的方法和装置 Download PDFInfo
- Publication number
- CN105447885B CN105447885B CN201410331089.XA CN201410331089A CN105447885B CN 105447885 B CN105447885 B CN 105447885B CN 201410331089 A CN201410331089 A CN 201410331089A CN 105447885 B CN105447885 B CN 105447885B
- Authority
- CN
- China
- Prior art keywords
- pixel
- reliable
- parallax
- selected pixels
- image frame
- 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.)
- Active
Links
Landscapes
- Image Processing (AREA)
- Testing, Inspecting, Measuring Of Stereoscopic Televisions And Televisions (AREA)
Abstract
本发明的实施例提供了一种计算视差的方法和装置。根据本发明实施例的计算视差的方法,包括:根据立体相机在前一时刻拍摄的第一图像帧的视差图,在第一图像帧中选择其视差可靠的可靠像素点;预测每个可靠像素点在立体相机在当前时刻拍摄的第二图像帧中的对应像素点;确定至少一部分可靠像素点为选取像素点;对于每个选取像素点,在当前时刻拍摄的第二图像帧中确定该选取像素点的对应像素点的视差计算范围;以及根据每个选取像素点的视差计算范围,计算该选取像素点在第二图像帧中的视差。
Description
技术领域
本发明涉及计算视差的方法和装置,更具体地,本发明涉及基于先前获得的视差来计算当前视差的方法和装置。
背景技术
随着三维重建、虚拟现实等技术的发展,指示相机和所拍摄的特定对象之间距离的视差信息已经在例如辅助驾驶等应用中被广泛使用。通过立体图像匹配技术,可在关于相同三维场景的基准图像和参照图像中找到匹配的像素点对,计算出每个像素点坐标对应的视差。进而可利用视差来准确地描述场景的三维空间信息。
对于每个图像帧单独进行视差计算,可以得到精确的计算结果,但是在整幅图像的范围内对视差进行计算需要花费大量时间,同时也会产生不必要的噪声。为了节省视差计算时间,已经提出了视差继承方法,在该视差继承方法中,通过使后一帧中的像素点继承该像素点在前一帧中的对应像素点的视差来获得该后一帧中的像素点的视差。图1是示出了通过视差继承方法获得的示例性视差图100。如图1所示,由于此方法完全接收前一帧的视差结果,当前帧的视差结果中会混入大量的噪声和错误视差。例如,车辆110和墙壁120上存在显著的噪声。
发明内容
本发明实施例的目的在于提供一种计算视差的方法和装置,以解决上述问题。
本发明的一个实施例提供了一种计算视差的方法,包括:根据立体相机在前一时刻拍摄的第一图像帧的视差图,在所述第一图像帧中选择其视差可靠的可靠像素点;预测每个可靠像素点在立体相机在当前时刻拍摄的第二图像帧中的对应像素点;确定至少一部分可靠像素点为选取像素点;对于每个选取像素点,在当前时刻拍摄的第二图像帧中确定该选取像素点的对应像素点的视差计算范围;以及根据每个选取像素点的视差计算范围,计算该选取像素点在第二图像帧中的视差。
本发明的另一实施例提供了一种计算视差的装置,包括:像素点选择单元,配置来根据立体相机在前一时刻拍摄的第一图像帧的视差图,在所述第一图像帧中选择其视差可靠的可靠像素点;像素点预测单元,配置来预测每个可靠像素点在立体相机在当前时刻拍摄的第二图像帧中的对应像素点;第一像素点确定单元,配置来确定至少一部分可靠像素点为选取像素点;范围确定单元,配置来对于每个选取像素点,在当前时刻拍摄的第二图像帧中确定该选取像素点的对应像素点的视差计算范围;以及视差计算单元,配置来根据每个选取像素点的视差计算范围,计算该选取像素点在第二图像帧中的视差。
在上述发明实施例提供的计算视差的方法和装置中,可选择在前一时刻拍摄的图像帧中具有可靠视差的像素点,在当前时刻拍摄的图像帧中确定与被选取的像素点对应的像素点,并且在特定的视差计算范围内计算这些对应的像素点的视差,从而可以更加快速地得到准确的视差。
附图说明
图1是示出了通过视差继承方法获得的示例性视差图。
图2是描述了根据本发明一个实施例的计算视差的方法的流程图。
图3是描述了根据本发明一个实施例,从可靠像素点中选择选取像素点的方法的流程图。
图4是示出了通过上述本发明实施例提供的视差计算的方法获得的示例性视差图。
图5是示出了根据本发明的一个实施例的计算视差的装置的示范性结构框图。
图6是示出了根据本发明的一个实施例的第一像素点确定单元的示范性结构框图。
图7是示出按照本发明实施例的计算视差的硬件***的总体硬件框图。
具体实施方式
为了使本领域技术人员更好地理解本发明,将参考附图详细描述本发明的优选实施例。注意,在本说明书和附图中,具有基本上相同步骤和元素用相同的附图标记来表示,且对这些步骤和元素的重复解释将被省略。
图2是描述了根据本发明一个实施例的计算视差的方法200的流程图。下面,将参照图2来描述根据本发明实施例的计算视差的方法200。如图2所示,在步骤S201中,根据立体相机在前一时刻拍摄的第一图像帧的视差图,在第一图像帧中选择其视差可靠的可靠像素点。优选地,可首先对在前一时刻立体相机拍摄的第一图像帧进行校准,然后使用校准后的图像来计算视差。
在步骤S201中,可采用任何已知的视差计算方法。例如,可采用半全局匹配算法(SGM)来计算视差。在SGM算法中,用于计算像素点的视差的搜索范围[0,dmax],其中dmax是预先确定的搜索视差的最大阈值。例如,可根据相机拍摄的图片的尺寸来确定dmax。对于每个像素点均在整个范围[0,dmax]内进行搜索,并将匹配代价曲线的最低点对应的值作为该像素点最终的视差。然后可判断第一图像帧中的每个像素点的视差是否可靠。例如,可通过以下公式(1)来确定第一图像帧中的像素点P(t-1)的视差是否可靠:
Cost(P(t-1),dmin)<<Cost(P(t-1),dsecmin) ……(1)
其中dmin为匹配代价曲线的最低点对应的视差,dsecmin为匹配代价曲线的倒数第二低点对应的视差。当满足公式(1)时,确定像素点P(t-1)是可靠像素点。
然后,在步骤S202中,预测每个可靠像素点在立体相机在当前时刻拍摄的第二图像帧中的对应像素点。在步骤S202中,可采用例如光流法等任何已知的计算方法来预测每个可靠像素点在立体相机在当前时刻拍摄的第二图像帧中的对应像素点。
此外在步骤S203中,可确定至少一部分可靠像素点为选取像素点。应注意,图2中所示的方法的各个步骤不必按照所示的顺序执行。可以颠倒或并行地执行某些步骤。根据本发明的一个示例,在步骤S203中,可将所有在步骤S201获得的可靠像素点都作为选取像素点。在此情况下,在第一图像帧中选择其视差可靠的可靠像素点(步骤S201)和确定至少一部分可靠像素点为选取像素点(步骤S203)可以是同时执行的。并且可以先确定至少一部分可靠像素点为选取像素点(步骤S203)再预测每个可靠像素点在立体相机在当前时刻拍摄的第二图像帧中的对应像素点(步骤S202)。
可替换地,根据本发明的另一示例,在步骤S203中,可根据运动信息从在步骤S201获得的可靠像素点中选择选取像素点。图3是描述了根据本发明一个实施例,从可靠像素点中选择选取像素点的方法300的流程图。可对于第一图像帧中的各个可靠像素点分别执行图3中所示的方法300。
如图3所示,在步骤S301中,获取一可靠像素点的运动信息。根据本发明的一个示例,运动信息可以是当将第一图像帧和第二图像帧置于相同坐标系中时,从一可靠像素点到该可靠像素点的对应像素点的位移。
在步骤S302中,确定所计算的运动信息是否在预定信息范围内。并且当所计算的运动信息在预定信息范围内时,在步骤S303中将该可靠像素点确定为选取像素点。例如,在运动信息为一可靠像素点到该可靠像素点的对应像素点的位移的情况下,在步骤S302中,可确定所计算的位移量是否在预定位移范围内。优选地,可预先设置预定位移范围不包括幅值小于第一阈值的位移,以去除噪声,并且预定位移范围不包括幅值大于的第二阈值的位移,以去除运动过大的像素点。并且当所计算的位移量在预定信息范围内时,在步骤S303中,将该可靠像素点确定为选取像素点。
此外根据本发明的另一示例,立体相机可以是包括两个图像采集单元的双目相机。在此情况下,立体相机所拍摄的第一图像帧可包括第一基准图像帧和第一参考图像帧,并且第二图像帧可包括第二基准图像帧和第二参考图像帧。在步骤S201中,在第一图像帧中选择其视差可靠的可靠像素点可包括从第一基准图像帧中选择其视差可靠的可靠像素点,并且从第一参考图像帧中获得与可靠像素点一一对应的参考像素点。此外,根据图3中所示的从可靠像素点中选择选取像素点的方法300,在步骤S301中,可根据第一基准图像帧和第二基准图像帧获取该可靠像素点的基准图像运动信息,并且根据第一参考图像帧和第二参考图像帧获取与该可靠像素点对应的参考像素点的参考图像运动信息。在步骤S302中,可分别确定基准图像运动信息和参考图像运动信息是否在预定信息范围内。此外,当基准图像运动信息和参考图像运动信息都在预定信息范围内时,在步骤S303中可将该可靠像素点确定为选取像素点。
例如,可根据第一基准图像帧中可靠像素点的位置坐标和第二基准图像帧中该可靠像素点的对应像素点的位置坐标,计算从该可靠像素点到该可靠像素点的对应像素点在水平方向上和垂直方向上的位移(Vx,Vy),并且将该位移的幅度magv作为基准图像运动信息;此外根据第一参考图像帧中参考像素点的位置坐标和第二参考图像帧中该参考像素点的对应像素点的位置坐标,计算从该参考像素点到该参考像素点的对应像素点在水平方向上和垂直方向上的位移(Ux,Uy),并且将该位移的幅度magu作为参考图像运动信息。可通过以下公式(2)来计算magv:
并且可通过以下公式(3)来计算magu:
可分别确定幅度magv和magu是否在预定位移范围内。并且当幅度magv和magu在预定位移范围内时,将该可靠像素点确定为选取像素点。
返回图2,在步骤S204中,对于每个选取像素点,在当前时刻拍摄的第二图像帧中确定该选取像素点的对应像素点的视差计算范围。根据本发明的一个示例,可根据选取像素点的在第一图像帧中的位置坐标和该选取像素点的对应像素点在第二图像帧中的位置坐标确定视差计算范围。例如,假设立体相机为双目相机,一选取像素点的在第一基准图像帧中的在水平方向上的坐标为Px(t-1),该选取像素点的参考像素点在第一参考图像帧中的在水平方向上的坐标为Qx(t-1),该选取像素点的对应像素点的在第二基准图像帧中的在水平方向上的坐标为Px(t),并且该选取像素点的对应像素点在第二参考图像帧中相应位置的在水平方向上的坐标为Qx(t)。可根据像素点在水平方向上的坐标确定视差计算范围[d(t-1),d(t)],其中d(t-1)=|Px(t-1)-Qx(t-1)|,并且d(t)=|Px(t)-Qx(t)|。此外优选地,视差计算范围可以是[d(t-1)-Δ,d(t)+Δ],其中Δ为噪声容限。
然后,在步骤S205中,根据每个选取像素点的视差计算范围,计算该选取像素点在第二图像帧中的视差。可根据视差计算范围采用上述SGM方法计算第二图像帧中像素点的视差。
此外,对于在第二图像帧中的除了选取像素点的对应像素点以外的每个剩余像素点,可根据预定视差范围计算该剩余像素点在第二图像帧中的视差,其中每个对应像素点的视差计算范围比预定视差范围小。例如如上所述,在SGM方法中,预定视差范围为[0,dmax],而根据本发明实施例确定的视差计算范围为[d(t-1),d(t)]。根据本发明实施例确定的坐标确定视差计算范围显然小于预定视差范围。
在上述本发明实施例提供的计算视差的方法中,可选择在前一时刻拍摄的图像帧中具有可靠视差的像素点,在当前时刻拍摄的图像帧中确定与被选取的像素点对应的像素点,并且在特定的视差计算范围内计算这些对应的像素点的视差,从而可以更加快速地得到准确的视差。
图4是示出了通过上述本发明实施例提供的视差计算的方法获得的示例性视差图400。图4中的视差图400与图1中的视差图100针对类似的场景。与图1所示的视差图100中的车辆110和墙壁120相比,在通过上述本发明实施例提供的视差计算的方法获得的示例性视差图400中,车辆410和墙壁420上的噪声明显减少了。也就是说,与传统视差获得方法相比,通过上述本发明实施例提供的视差计算的方法能够快速地获得更加准确的视差。
根据上述实施例提供的计算视差的方法可在连续拍摄的视频图像中使用。具体地,可对于视频图像中除了的首个图像帧以外的各个图像帧分别使用上述实施例提供的计算视差的方法,以获得各个图像帧所对应的视差图,并且随着使用次数的增加,视差计算速度和准确性不断提高。
下面,参照图5说明本发明的实施例的计算视差的装置。图5是示出了根据本发明的一个实施例的计算视差的装置500的示范性结构框图。如图5中所示,本实施例的计算视差的装置500包括像素点选择单元510、像素点预测单元520、第一像素点确定单元530、范围确定单元540和视差计算单元550。计算视差的装置500的各个单元可分别执行上述图2中的计算视差的方法200的各个步骤/功能。因此,以下仅对计算视差的装置500的主要部件进行了描述,而省略了以上已经结合图2描述过的细节内容。
例如,像素点选择单元510可根据立体相机在前一时刻拍摄的第一图像帧的视差图,在第一图像帧中选择其视差可靠的可靠像素点。优选地,可首先对在前一时刻立体相机拍摄的第一图像帧进行校准,然后使用校准后的图像来计算视差。
像素点选择单元510可采用任何已知的视差计算方法。例如,像素点选择单元510可采用半全局匹配算法(SGM)来计算视差。在SGM算法中,用于计算像素点的视差的搜索范围[0,dmax],其中dmax是预先确定的搜索视差的最大阈值。例如,可根据相机拍摄的图片的尺寸来确定dmax。对于每个像素点均在整个范围[0,dmax]内进行搜索,并将匹配代价曲线的最低点对应的值作为该像素点最终的视差。然后可判断第一图像帧中的每个像素点的视差是否可靠。例如,可通过上述公式(1)来确定第一图像帧中的像素点P(t-1)的视差是否可靠。
然后,像素点预测单元520可预测每个可靠像素点在立体相机在当前时刻拍摄的第二图像帧中的对应像素点。像素点预测单元520可采用例如光流法等任何已知的计算方法来预测每个可靠像素点在立体相机在当前时刻拍摄的第二图像帧中的对应像素点。
第一像素点确定单元530可确定至少一部分可靠像素点为选取像素点。根据本发明的一个示例,第一像素点确定单元530可将所有像素点选择单元510获得的可靠像素点都作为选取像素点。此外,根据本发明的另一示例,第一像素点确定单元530可根据运动信息从像素点选择单元510获得的可靠像素点中选择选取像素点。
图6是示出了根据本发明的一个实施例的第一像素点确定单元530的示范性结构框图。如图6中所示,本实施例的第一像素点确定单元530包括信息获取模块610、信息确定模块620和第一像素点确定模块630。第一像素点确定单元530的各个模块可分别执行上述图3中的从可靠像素点中选择选取像素点的方法300的各个步骤/功能。因此,以下仅第一像素点确定单元530的主要部件进行了描述,而省略了以上已经结合图3描述过的细节内容。
如图6所示,信息获取模块610可获取一可靠像素点的运动信息。根据本发明的一个示例,运动信息可以是在相同坐标系中,一可靠像素点到该可靠像素点的对应像素点的位移。
信息确定模块620可确定所计算的运动信息是否在预定信息范围内。当所计算的运动信息在预定信息范围内时,第一像素点确定模块630可将该可靠像素点确定为选取像素点。例如,在运动信息为一可靠像素点到该可靠像素点的对应像素点的位移的情况下,信息确定模块620可确定所计算的位移量是否在预定位移范围内。例如,可预先设置预定位移范围不包括幅值小于第一阈值的位移,以去除噪声,并且预定位移范围不包括幅值大于的第二阈值的位移,以去除运动过大的像素点。并且当所计算的位移量在预定信息范围内时,第一像素点确定模块630可将该可靠像素点确定为选取像素点。
根据本发明的另一示例,立体相机可以是包括两个图像采集单元的双目相机。在此情况下,立体相机所拍摄的第一图像帧可包括第一基准图像帧和第一参考图像帧,并且第二图像帧可包括第二基准图像帧和第二参考图像帧。在此情况下,像素点选择单元510可包括可靠像素点选择模块和参考像素点选择模块。可靠像素点选择模块可从第一基准图像帧中选择其视差可靠的可靠像素点,并且参考像素点选择模块可从第一参考图像帧中获得与可靠像素点一一对应的参考像素点。此外,在图6所示的第一像素点确定单元530中,信息获取模块610可根据第一基准图像帧和第二基准图像帧获取该可靠像素点的基准图像运动信息,并且根据第一参考图像帧和第二参考图像帧获取与该可靠像素点对应的参考像素点的参考图像运动信息。信息确定模块620可分别确定基准图像运动信息和参考图像运动信息是否在预定信息范围内。此外,当基准图像运动信息和参考图像运动信息都在预定信息范围内时,第一像素点确定模块630可将该可靠像素点确定为选取像素点。例如,信息获取模块610可根据第一基准图像帧中可靠像素点的位置坐标和第二基准图像帧中该可靠像素点的对应像素点的位置坐标,计算从该可靠像素点到该可靠像素点的对应像素点在水平方向上和垂直方向上的位移(Vx,Vy),并且将该位移的幅度magv作为基准图像运动信息;并且根据第一参考图像帧中参考像素点的位置坐标和第二参考图像帧中该参考像素点的对应像素点的位置坐标,计算从该参考像素点到该参考像素点的对应像素点在水平方向上和垂直方向上的位移(Ux,Uy),并且将该位移的幅度magu作为参考图像运动信息。可通过上述公式2来计算magv并且通过上述公式3来计算magu。信息确定模块620可分别确定幅度magv和magu是否在预定位移范围内。并且当幅度magv和magu在预定位移范围内时,第一像素点确定模块630将该可靠像素点确定为选取像素点。
返回图5,范围确定单元540可对于每个选取像素点,在当前时刻拍摄的第二图像帧中确定该选取像素点的对应像素点的视差计算范围。根据本发明的一个示例,范围确定单元540可根据选取像素点的在第一图像帧中的位置坐标和该选取像素点的对应像素点在第二图像帧中的位置坐标确定视差计算范围。例如,假设立体相机为双目相机,一选取像素点的在第一基准图像帧中的在水平方向上的坐标为Px(t-1),该选取像素点的参考像素点在第一参考图像帧中的在水平方向上的坐标为Qx(t-1),该选取像素点的对应像素点的在第二基准图像帧中的在水平方向上的坐标为Px(t),并且该选取像素点的对应像素点在第二参考图像帧中相应位置的在水平方向上的坐标为Qx(t)。范围确定单元540可根据像素点在水平方向上的坐标确定视差计算范围[d(t-1),d(t)],其中d(t-1)=|Px(t-1)-Qx(t-1)|,并且d(t)=|Px(t)-Qx(t)|。此外优选地,视差计算范围可以是[d(t-1)-Δ,d(t)+Δ],其中Δ为噪声容限。
然后,视差计算单元550可根据每个选取像素点的视差计算范围,计算该选取像素点在第二图像帧中的视差。可根据视差计算范围采用上述SGM方法计算第二图像帧中像素点的视差。
此外,计算视差的装置500还可包括第二像素点确定单元,以在第二图像帧中确定除了选取像素点的对应像素点以外的剩余像素点。对于在第二图像帧中的除了选取像素点的对应像素点以外的每个剩余像素点,视差计算单元550可根据预定视差范围计算该剩余像素点在第二图像帧中的视差,其中每个对应像素点的视差计算范围比预定视差范围小。例如如上所述,在SGM方法中,预定视差范围为[0,dmax],而根据本发明实施例确定的视差计算范围为[d(t-1),d(t)]。根据本发明实施例确定的坐标确定视差计算范围显然小于预定视差范围。
在上述本发明实施例提供的计算视差的装置中,可选择在前一时刻拍摄的图像帧中具有可靠视差的像素点,在当前时刻拍摄的图像帧中确定与被选取的像素点对应的像素点,并且在特定的视差计算范围内计算这些对应的像素点的视差,从而可以更加快速地得到准确的视差。
根据上述实施例提供的计算视差的装置可在连续拍摄的视频图像中使用。具体地,可对于视频图像中除了的首个图像帧以外的各个图像帧分别使用上述实施例提供的计算视差的装置,以获得各个图像帧所对应的视差图,并且随着使用次数的增加,视差计算速度和准确性不断提高。
此外,根据本发明的另一示例,本发明还可以通过一种计算视差的硬件***来实施。图7是示出按照本发明实施例的计算视差的硬件***700的总体硬件框图。如图7所示,计算视差的硬件***700可以包括:输入设备710,用于从外部输入有关图像或信息,例如摄像机拍摄的左图像和右图像、摄像机的参数、或初始视差图等,例如可以包括键盘、鼠标器、以及通信网络及其所连接的远程输入设备等等;处理设备720,用于实施上述的按照本发明实施例的计算视差的方法,例如可以包括计算机的中央处理器或其它的具有处理能力的芯片等等,此外,处理设备720还可以连接到诸如因特网的网络(未示出),根据处理过程的需要向远程传送处理后的图像等等;输出设备730,用于向外部输出实施上述视差图改善过程所得的结果,例如可以包括显示器、打印机、以及通信网络及其所连接的远程输出设备等等;以及存储设备740,用于以易失或非易失的方式存储上述视差图改善过程所涉及的诸如初始视差图、相似度矩阵、图模型、改善后的视差图等数据,例如可以包括随机存取存储器(RAM)、只读存储器(ROM)、硬盘、或半导体存储器等等的各种易失或非易失性存储器。
所属技术领域的技术人员知道,本发明可以实现为***、装置、方法或计算机程序产品。因此,本发明可以具体实现为以下形式,即:可以是完全的硬件、也可以是完全的软件(包括固件、驻留软件、微代码等),还可以是硬件和软件结合的形式,本文一般称为“组件、“模块”、“装置”或“***”。此外,在一些实施例中,本发明还可以实现为在一个或多个计算机可读介质中的计算机程序产品的形式,该计算机可读介质中包含计算机可读的程序代码。
可以采用一个或多个计算机可读介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是但不限于电、磁、光、电磁、红外线、或半导体的***、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行***、装置或者器件使用或者与其结合使用。
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行***、装置或者器件使用或者与其结合使用的程序。
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、电线、光缆、RF等等,或者上述任意合适的组合。
可以以一种或多种程序设计语言或其组合来编写用于执行本发明操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如”C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
上面参照本发明实施例的方法、装置(***)和计算机程序产品的流程图和/或框图描述了本发明。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机程序指令实现。这些计算机程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,这些计算机程序指令通过计算机或其它可编程数据处理装置执行,产生了实现流程图和/或框图中的方框中规定的功能/操作的装置。
也可以把这些计算机程序指令存储在能使得计算机或其它可编程数据处理装置以特定方式工作的计算机可读介质中,这样,存储在计算机可读介质中的指令就产生出一个包括实现流程图和/或框图中的方框中规定的功能/操作的指令装置(instructionmeans)的制造品(manufacture)。
也可以把计算机程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机或其它可编程装置上执行的指令能够提供实现流程图和/或框图中的方框中规定的功能/操作的过程。
附图中的流程图和框图显示了根据本发明的多个实施例的***、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的***来实现,或者可以用专用硬件与计算机指令的组合来实现。
以上已经描述了本发明的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术的改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。
Claims (10)
1.一种计算视差的方法,包括:
根据立体相机在前一时刻拍摄的第一图像帧的视差图,在所述第一图像帧中选择其视差可靠的可靠像素点;
预测每个可靠像素点在所述立体相机在当前时刻拍摄的第二图像帧中的对应像素点;
确定至少一部分所述可靠像素点为选取像素点;
对于每个选取像素点,在所述当前时刻拍摄的第二图像帧中确定该选取像素点的对应像素点的视差计算范围;以及
根据每个选取像素点的对应像素点的视差计算范围,计算该选取像素点的对应像素点在所述第二图像帧中的视差。
2.如权利要求1所述的方法,其中所述确定至少一部分所述可靠像素点为选取像素点包括:对于每个可靠像素点
获取该可靠像素点的运动信息;
确定所计算的运动信息是否在预定信息范围内;
当所计算的运动信息在预定信息范围内时,将该可靠像素点确定为选取像素点。
3.如权利要求2所述的方法,其中
所述获取该可靠像素点的运动信息包括:
计算从该可靠像素点到该可靠像素点的对应像素点的位移;以及
所述确定所计算的运动信息是否在预定信息范围内包括:
确定所计算的位移是否在预定位移范围内。
4.如权利要求2或3所述的方法,其中
所述第一图像帧包括第一基准图像帧和第一参考图像帧;
所述第二图像帧包括第二基准图像帧和第二参考图像帧;
所述根据立体相机在前一时刻拍摄的第一图像帧的视差图,在所述第一图像帧中选择其视差可靠的可靠像素点包括:
从所述第一基准图像帧中选择其视差可靠的可靠像素点,
从所述第一参考图像帧中获得与所述可靠像素点一一对应的参考像素点;所述获取该可靠像素点的运动信息包括:
根据第一基准图像帧和第二基准图像帧获取该可靠像素点的基准图像运动信息;
根据第一参考图像帧和第二参考图像帧获取与该可靠像素点对应的参考像素点的参考图像运动信息;
所述确定所计算的运动信息是否在预定信息范围内包括:
分别确定所述基准图像运动信息和所述参考图像运动信息是否在预定信息范围内;以及
所述当所计算的运动信息在预定信息范围内时,将该可靠像素点确定为选取像素点包括:
当所述基准图像运动信息和所述参考图像运动信息都在预定信息范围内时,将该可靠像素点确定为选取像素点。
5.如权利要求1或2所述的方法,还包括:
在所述第二图像帧中确定除了选取像素点的对应像素点以外的剩余像素点;以及
对于每个剩余像素点,根据预定视差范围计算该剩余像素点在所述第二图像帧中的视差,其中
每个所述对应像素点的视差计算范围比所述预定视差范围小。
6.一种计算视差的装置,包括:
像素点选择单元,配置来根据立体相机在前一时刻拍摄的第一图像帧的视差图,在所述第一图像帧中选择其视差可靠的可靠像素点;
像素点预测单元,配置来预测每个可靠像素点在所述立体相机在当前时刻拍摄的第二图像帧中的对应像素点;
第一像素点确定单元,配置来确定至少一部分所述可靠像素点为选取像素点;
范围确定单元,配置来对于每个选取像素点,在所述当前时刻拍摄的第二图像帧中确定该选取像素点的对应像素点的视差计算范围;以及
视差计算单元,配置来根据每个选取像素点的对应像素点的视差计算范围,计算该选取像素点的对应像素点在所述第二图像帧中的视差。
7.如权利要求6所述的装置,其中所述第一像素点确定单元包括:
信息获取模块,配置来获取每个可靠像素点的运动信息;
信息确定模块,配置来确定所计算的运动信息是否在预定信息范围内;以及
第一像素点确定模块,配置来当所计算的运动信息在预定信息范围内时,将该运动信息对应的可靠像素点确定为选取像素点。
8.如权利要求7所述的装置,其中
所述信息获取模块获取每个可靠像素点到该可靠像素点的对应像素点的位移;
所述信息确定模块确定所计算的位移是否在预定位移范围内。
9.如权利要求7或8所述的装置,其中
所述第一图像帧包括第一基准图像帧和第一参考图像帧;
所述第二图像帧包括第二基准图像帧和第二参考图像帧;
像素点选择单元包括
可靠像素点选择模块,配置来从所述第一基准图像帧中选择其视差可靠的可靠像素点,
参考像素点选择模块,配置来从所述第一参考图像帧中获得与所述可靠像素点一一对应的参考像素点;
所述信息获取模块根据第一基准图像帧和第二基准图像帧获取每个可靠像素点的基准图像运动信息,并且根据第一参考图像帧和第二参考图像帧获取与每个可靠像素点对应的参考像素点的参考图像运动信息;
所述信息确定模块分别确定所述基准图像运动信息和所述参考图像运动信息是否在预定信息范围内;以及
当一可靠像素点的基准图像运动信息和所述参考图像运动信息都在预定信息范围内时,所述信息确定模块将该可靠像素点确定为选取像素点。
10.如权利要求6或7所述的装置,还包括:
第二像素点确定单元,配置来在所述第二图像帧中确定除了选取像素点的对应像素点以外的剩余像素点,其中
所述视差计算单元还配置来对于每个剩余像素点,根据预定视差范围,计算该剩余像素点在所述第二图像帧中的视差,并且
每个所述对应像素点的视差计算范围比所述预定视差范围小。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410331089.XA CN105447885B (zh) | 2014-07-11 | 2014-07-11 | 计算视差的方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410331089.XA CN105447885B (zh) | 2014-07-11 | 2014-07-11 | 计算视差的方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105447885A CN105447885A (zh) | 2016-03-30 |
CN105447885B true CN105447885B (zh) | 2018-09-25 |
Family
ID=55558017
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410331089.XA Active CN105447885B (zh) | 2014-07-11 | 2014-07-11 | 计算视差的方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105447885B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108171739A (zh) * | 2017-12-25 | 2018-06-15 | 清华大学苏州汽车研究院(吴江) | 基于运动信息的双目视觉立体匹配方法 |
CN110728710B (zh) * | 2018-07-16 | 2023-10-27 | 株式会社理光 | 视觉里程计算方法、装置和计算机可读存储介质 |
CN113298869B (zh) * | 2021-04-23 | 2023-08-04 | 南方电网数字电网科技(广东)有限公司 | 距离测定方法、装置、计算机设备和存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102026013A (zh) * | 2010-12-18 | 2011-04-20 | 浙江大学 | 基于仿射变换的立体视频匹配方法 |
CN103810690A (zh) * | 2012-11-07 | 2014-05-21 | 富士通株式会社 | 立体匹配方法和装置 |
-
2014
- 2014-07-11 CN CN201410331089.XA patent/CN105447885B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102026013A (zh) * | 2010-12-18 | 2011-04-20 | 浙江大学 | 基于仿射变换的立体视频匹配方法 |
CN103810690A (zh) * | 2012-11-07 | 2014-05-21 | 富士通株式会社 | 立体匹配方法和装置 |
Non-Patent Citations (3)
Title |
---|
Disparity search range estimation:enforcing temporal consistency;Dongbo Min et al;《IEEE International Conference on Acoustics Speech & Signal Processing》;20101231;第2366-2369页 * |
一种基于自适应窗口和图切割的快速立体匹配算法;尹传历 等;《光学 精密工程》;20080630;第16卷(第6期);第1117-1121页 * |
基于双摄像机的多视点立体成像***;武国梁;《万方学位论文》;20130731;正文第33页第1段,第51-52页第4.3.2.2节、第56页图4-11 * |
Also Published As
Publication number | Publication date |
---|---|
CN105447885A (zh) | 2016-03-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CA3035298C (en) | Predicting depth from image data using a statistical model | |
CN106033601B (zh) | 检测异常情形的方法和装置 | |
JP5260705B2 (ja) | 3次元拡張現実提供装置 | |
CN106327454B (zh) | 合成图像的方法和装置 | |
CN111179329B (zh) | 三维目标检测方法、装置及电子设备 | |
JP6837279B2 (ja) | 3d表示のための装置及び方法 | |
EP4307233A1 (en) | Data processing method and apparatus, and electronic device and computer-readable storage medium | |
CN108198044A (zh) | 商品信息的展示方法、装置、介质及电子设备 | |
KR20100119559A (ko) | 2d 이미지 데이터를 스테레오스코픽 이미지 데이터로 변환하기 위한 방법 및 시스템 | |
CN105530502B (zh) | 根据立体相机拍摄的图像帧生成视差图的方法和装置 | |
CN108986197A (zh) | 3d骨架线构建方法及装置 | |
JP4892113B2 (ja) | 画像処理方法及び装置 | |
CN105447885B (zh) | 计算视差的方法和装置 | |
KR20220149717A (ko) | 단안 카메라로부터 전체 골격 3d 포즈 복구 | |
CN105100768B (zh) | 用于立体匹配的方法和用于上采样的方法 | |
CN115272575B (zh) | 图像生成方法及装置、存储介质和电子设备 | |
CN104915941B (zh) | 计算视差的方法和装置 | |
Shidanshidi et al. | A quantitative approach for comparison and evaluation of light field rendering techniques | |
CN112257653B (zh) | 空间装饰效果图确定方法、装置、存储介质与电子设备 | |
CN105335984A (zh) | 跟踪对象的方法和装置 | |
KR20220169472A (ko) | 센서 캘리브레이트 방법 및 장치, 전자 기기와 저장 매체 | |
CN113537194A (zh) | 光照估计方法、光照估计装置、存储介质与电子设备 | |
Peng et al. | Projective reconstruction with occlusions | |
JP2013255172A (ja) | 画像処理装置及び画像処理方法 | |
CN115830588B (zh) | 一种基于点云的目标检测方法、***、存储介质及设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |