背景消除或背景减法是这样一种假设。我们有2个图片,一个是静止的,比如场景,没有需要检测的东西,另一个照片则包含了要检测的对象,但他是侵入了背景里的东西,或对象。我们就是要检测这个东西,比如商场进入的小偷,老鼠,或者马路上通过的车辆。
利用背景减法,我们容易找到我们感兴趣的东西。先看看下面2张图片:

右边图片是我们的背景,左边图片是我们的结果,我们找到感兴趣的部分,就是框起来的部分。框起来前就是我们对比的图片,或者叫变化的图片。有这个教授坐在椅子上的部分。
本程序除了opencv 要安装好外,还要装好imutils。imutils 的下载和安装在 Python 下应用opencv 的简单功能演示 一文中有介绍。
本文的原始代码来自 https://www.pyimagesearch.com/2016/11/21/raspbian-opencv-pre-configured-and-pre-installed/ 的一个教学讲稿。
代码开始部分
注释里介绍使用方法:
python image_sub.py --bg 背景文件名 --fg 前景文件名
然后输入必要的包,命令行参数处理,这里有缺省参数,你可修改default 后的文件路径和名
# USAGE 使用方法
# python image_sub.py --bg images/bg.jpg --fg images/adrian.jpg
# import the necessary packages 输入必要的包
import numpy as np
import argparse
import imutils
import cv2
# construct the argument parser and parse the arguments
# 命令行参数处理,2个图片都存在imges 目录里,这里提供缺省值
# 这根据你的情况,更改default 后的文件名,当然也可命令行输入
ap = argparse.ArgumentParser()
ap.add_argument("-b", "--bg", default=
本文介绍了如何使用Python和OpenCV进行背景消除,通过将两张图片进行减法运算,检测出前景对象。文章详细阐述了从导入图片、灰度化处理、背景减法、二值化到边框检测的整个过程,旨在帮助读者理解并实现背景减法技术。
最低0.47元/天 解锁文章
2704

被折叠的 条评论
为什么被折叠?



