一 简介
目标检测即为在图像中找到自己感兴趣的部分,将其分割出来进行下一步操作,可避免背景的干扰。以下介绍几种基于opencv的单目标检测算法,算法总体思想先尽量将目标区域的像素值全置为1,背景区域全置为0,然后通过其它方法找到目标的外接矩形并分割,在此选择一张前景和背景相差较大的图片作为示例。
环境:python3.7 opencv4.4.0
二 背景前景分离
1 灰度+二值+形态学 轮廓特征和联通组件
根据图像前景和背景的差异进行二值化,例如有明显颜色差异的转换到HSV色彩空间进行分割。
1 原图
2 灰度化
3 二值化
4 形态学处理
5 提取轮廓并找出目标外接矩形
代码封装:
def get_roi_contours(image_path, morph_size, num_morph):
'''
参数详解:
image_path:所需处理图片路径
morph_size:形态学处理核的大小
num_morph:进行形态学处理的次数
'''
image =