水下机器人基于双目测距原理测量鱼长

这是我发表的第一篇文章,在学习前人和师兄的基础上完成的。

 

硬件:双目相机

因为是水下机器人拍的,借用了树莓派作为图像处理的平台

效果图:

 实现思路:视差-距离-长度

图像前期处理:HSV阈值切割进行边缘检测,然后通过视差获取图像形心到机器人的距离,再根据三角形相似比得到最终鱼长。

1、图像前期处理:

# 图像前期处理

def color_filter(img, Lower, Upper, k_e, k_d):  # k_e为腐蚀处理的卷积核,k_d为膨胀处理的卷积核
    HSV_img = cv2.cvtColor(img, cv2.COLOR_BGR2HSV)
    if Lower[0] > Upper[0]:
        mask1 = cv2.inRange(HSV_img, Lower, 180)
        mask2 = cv2.inRange(HSV_img, 0, Upper)
        mask = cv2.bitwise_and(mask1, mask2)
    else:
        mask = cv2.inRange(HSV_img, Lower, Upper)

        kernel_e = np.ones((k_e, k_e), np.uint8)  # 卷积核设置
        erosion = cv2.erode(mask, kernel_e, iterations=3)  # 腐蚀处理
        kernel_d = np.ones((k_d, k_d),
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值