简单理解planesweeping算法

PlaneSweeping算法通过在参考图像上对每个像素点进行一系列深度平面的考察,利用单应变换和颜色匹配来估计像素点的深度。该方法假设物体在特定深度平面上,如果在源图像中找到颜色匹配的像素点,则确认该深度。多张源图像的使用能提高覆盖率,解决单张图像无法覆盖的情况。
摘要由CSDN通过智能技术生成

plane sweeping算法
input:1张reference img(refimg),若干张source img(srcimg),img均为RGB图像,没有深度图信息
output:reference img的深度图。更详细地说,是refimg每一个像素点(pix)的深度

具体方法:

  1. 在refimg的scene内划分一系列深度平面
  2. 考察refimg上某一个像素点,想要求得其深度。如果求得此像素点的深度,如法炮制,对每个像素点做类似操作即可获得refimg上所有像素点的深度。
  3. 假设此像素点对应的物体在某一个深度平面上,或者说假设此像素点的深度等于深度平面的深度。
  4. 如果此像素点对应的物体确实在此深度平面上,那么使用单应变换,可以预测出此像素点对应的物体在某一个srcimg上对应的像素点。
  5. 如果在srcimg上的预测位置的像素点确实和此物体的颜色一样(和refimg上此像素点的颜色一样),那么说明此像素点确实在假设的深度上。
for refpix in refimg:
	for d in hypotheticDepthPlaneList:
		refpix.depth=d	
		HypotheticSrcPix=refpix.homographyTo(srcimg)
		conpareResult=Compare(HypotheticSrcPix,
			srcimg[HypotheticSrcPix.i][HypotheticSrcPix.j])
		if conpareResult==True:
			refpix.depthConfirm=True
			break

补充:
如果只有一张srcimg,可能refimg上某些像素点在srcimg上找不到,所以要多张srcimg。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值