背景建模 - 计算中值图像

该博客探讨了如何计算中值背景,特别是中值图像的构建过程。通过排序算法和增量式更新,减少计算量。作者提供了自己编写的高效代码,并欢迎读者指出潜在的错误,以共同提升算法性能。
摘要由CSDN通过智能技术生成


% input: im1, im2, im3, im4, im5
% output: background image F
F = im1;
for i=1:3
    A = cat(3,im1(:,:,i),im2(:,:,i),im3(:,:,i),im4(:,:,i),im5(:,:,i));
    F(:,:,i) = median(A,3);
end
figure,imshow(F)

        在工程应用中,常常需要对固定相机拍摄的n幅图像做一个背景建模,然后用图像减去背景就得到运动变化部分。背景建模的方法很多,常用的有GM,GMM,这些经典算法在openCV里都集成了,但是速度上还不是特别快。对于类似的情况其实有更简单的方法建背景--中值背景就是在工程中用得最多,效果最理想的方法之一。 注意,这里说的中值,就是median,不是mean(均值)。

       计算中值的过程:举个例子,对5个数[20 30 32 23 90]计算中值,首选需要对其排序,用冒泡排序算法得到的结果应该是[20 23 30 32 90],然后取中间一个数,即30。

       计算中值图像( F )的时候,就是要对n幅图像( A1, A2, ..., An )上每个像素位置分别求中值,大概就是:

F = median_background( A1, A2, A3, ..., An )
s.t., F(x,y) = median( [ A1(x,y), A2(x,y), ..., An(x,y) ] )
 

        另外,我们希望算法是增量式的:比如刚才我已经对A1到An共n幅图像计算出了一个中值图像F,那么现在我又得到了第n+1幅图像,我希望更新这个背景:

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值