0

単一のフレームについて、それをフレームに追加するかどうかを決定しようとしています.. (バックグラウンド減算の実装)。

どうすれば手っ取り早くできますか?(私はループでそれをやったし、それは本当に遅いです...)

これは私が持っているものです:(seqは入力、diffは私がテストしている画像、Fは新しい画像です)

  for y = 1:height
     for x = 1:width
        res = 0;
        for c = 1:channels
            if diff(y,x,c) > thresh
                res = 1;
            end
        end
        if res == 1
            F(y,x, :) = seq(y,x,:);
        else
            F(y,x, :) = 0;
        end
     end
  end

ありがとう !!

4

1 に答える 1

0

あなたの質問にはフィルターの定義が欠けていますが、これとは別に、画像マスキングの基本的なテンプレートを提供できます。

img=imread(...) %some input image
mask = sum( img>threshold , 3) >0
%now the tricky part, we have a nxmx3 image and a nxm mask to filter:
img2=bsxfun(@times,img,mask);

bsxfun-line を変更することもできますが、選択する画像を示すためにバイナリ マトリックスを使用するのが最も一般的な方法です。したがって、マスクを要件に合わせて調整します。

于 2013-10-20T17:33:23.560 に答える