《OpenCV-python学习》第四章 深度估计与分割

4.1深度摄像头

深度图:是灰度图,每个像素值是摄像头到物体表面之间距离的估计值
点云图:xyz
视差图:是灰度图,每个像素值代表物体表面的立体视差。立体视差:从不同角度观察同一场景得到的两张图像叠放在一起,度量两幅图像相互对应的两个像素点之间的距离,即为立体视差。近距离的物体会产生较大的立体视差,远距离的会小一些,因此近距离的物体在视差图中会更明亮些。
有效深度掩模:表明给定的像素的深度信息是否有效。(非零有效,零值无效)
np.median(数组):获取中位值
np.where(条件;为真的输出;为假的输出)

4.2立体视觉

极几何,跟踪从摄像头到图像上每个物体的虚线,对第二幅图像(相同距离下拍摄的)同样操作,根据对同一个物体对应的交叉来计算距离。
创建StereoSGBM()实例,用compute()计算,从二维图片中得到三维信息。

4.3物体分割

GrabCut算法:在图片中定义含有物体的矩形;矩形外的区域被自动认为是背景;对于用户自定义的矩形区域,可用背景中的数据来区别它里面的前景和背景区域;用高斯混合模型(GMM)来对前景和背景建模,并将未定义的像素标记为可能的前景或背景;根据像素与周围像素颜色的相似性,每个像素可看作通过虚拟边与周围像素相连接,每条边都有一个属于前景或背景的概率;每个像素与一个前景点后背景点相连,若节点之间的边属于不同终端,则切断他们之间的边,得到图像的分割。
分水岭算法:把图像中低密度的区域(变化少)想象成山谷,高密度区域(变化多)想象成山峰,向山谷注入水直到不同的山谷的水开始汇聚。为阻止不同山谷的水汇聚,可以设置一些栅栏,所得到的栅栏即为图像分割。
转灰度图–>二值化–>去噪声–>膨胀(获取背景)–>distanceTransform()根据背景设置阈值获取前景–>背景与前景相减获得重合部分–>connectedComponents(前景)获取栅栏–>watershed()

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值