1

ビデオを処理し、そこからいくつかの画像を返す関数があります。

必要なフレームを含む関数内に新しいビデオを作成し、ビデオを返すことでそうしています。これは、ビデオを再度読み取って処理する次の関数です。

それを行うより速い方法はありますか?たとえば、画像を含む配列を返し、それらを読み取るには?

4

1 に答える 1

1

デコードされたフレームを 3 次元配列として渡すことができます。たとえば、2 つの 2-D フレームframe1frame2がある場合、次のように 3 次元に沿ってそれらを連結できます。

M = cat(3, frame1, frame2);

3 次元配列からフレームを抽出するには、3 番目の座標を指定するだけです。たとえば、 を取得するにはframe1、次のように記述します。

frame1 = M(:, :, 1);

これにより、関数呼び出し間のフレームのエンコードとデコードの問題を回避し、連続したエンコードによるビデオ品質の低下を防ぐことができます。

于 2013-05-12T14:38:29.723 に答える