-1

私の質問は、この回答で提供されている解決策に関連しています。

スライダーの位置を更新すると、ビデオは常にフレーム0から始まりますが、スライダーは移動した位置から先に進みます。どうすればこれを修正できますか?

4

1 に答える 1

0

トラックバーの作成に使用されるすべてのパラメータを理解していることを確認してください。そのうちの1つは、という名前countで、スライダーの最大位置を定義します(最小は0です)。

あなたがする必要があるのは、ビデオファイルのフレームの総数を取得し(ビデオのフレームを読み始める前に)、この値をcountパラメータとして渡すことです。したがって、スライダーの最大位置はビデオの合計フレームです。 。

ヒントcvGetCaptureProperty()CV_CAP_PROP_FRAME_COUNT

次に、スライダーを更新するには、現在のフレームの番号を取得し(を見CV_CAP_PROP_POS_FRAMESてください)、タイプのコールバックがCvTrackbarCallbackトラックバーにこの情報を設定して、その位置を正しく更新することを確認します。

于 2013-01-24T16:18:07.160 に答える