私はWindows 7マシンのVisual Studio上でOpenCVアプリケーションを実行しています。最終的なアプリケーションの一部として、実行中のOpenCVアプリケーションと並行して実行されるタイマーが必要です。 OpenCVアプリケーションは、アイブリンク検出アルゴリズムへの入力としてリアルタイムビデオキャプチャを有する。 OpenCVコードは継続的に実行されていなければならず、一時停止または停止することはできません。しかし、瞬きの間隔を見つけるために、私はそれぞれの瞬きの後にタイマーを走らせる必要があります。したがって、点滅が検出されている間はタイマーを実行する必要があります。私はSetTimer関数とCreateTimerQueueTimer関数を使いこなし、これについてどうやって行くのかをはっきりと理解できませんでした。 C++プログラムでタイマーを実行する他の方法はありますか?どんな提案や解決策も高く評価されます。実行中のプログラムと平行に、cppでタイマーを実行する
1
A
答えて
0
なぜ点滅間隔を計算するためにタイマーが必要ですか?現在の時刻を瞬きごとに保存し、それを前の時刻から減算することはできませんか?あなたは、単純なタイマーにするためにstd::chrono
を使用することができますc++11
で
0
:
...
auto take = (end - start);
if(take > std::chrono::nanoseconds(x)) {
// ... do whatever you want here
}
ああと1:他の回答にコメントに反応して
auto start = std::chrono::high_resolution_clock::now();
// do processing here
auto end = std::chrono::high_resolution_clock::now();
std::cout << "time was " <<
std::chrono::duration_cast<std::chrono::nanoseconds>(end - start).count();
編集し、次の操作を行うことができ言及しなければならないのは、nanoseconds
を他の時間単位に置き換えることができるということです。
関連する問題
- 1. テーブルの実行中平均
- 2. プログラムの実行中にsigsegv
- 3. CPPプログラムが実行されない
- 4. プログラムの実行中に連続して実行するテスト
- 5. プログラムの実行中に実行されるコード行は何回ですか?
- 6. SIGPIPE実行中のプログラム
- 7. 実行中にCプログラムがクラッシュする
- 8. asp.netプロジェクトでタイマーを実行
- 9. aspxタイマーでjavascriptを実行
- 10. 実行中のブタを実行する
- 11. Visual Studio SDKでcppプログラムの実行状態を知る方法
- 12. タイマーの実行中にrepeatCountプロパティをリセットするには
- 13. cppプログラムがサーバで遅く実行する
- 14. testngの実行中にプログラムによるプロファイリングを行う方法
- 15. 実行中のプログラムをMATLABで中止するには?
- 16. Linux上で実行中のプログラムのディレクトリ?
- 17. Androidで実行中のタスクと実行中のプロセスの違い
- 18. AndroidでCプログラムを実行中
- 19. アプリケーションサーバー内でばねプログラムを実行中
- 20. VMで実行中のプログラム生成エラー
- 21. アクセス - 計算フィールド(実行中の平均)
- 22. Javaで実行可能ファイルを実行中に落とす
- 23. タイマーでbackgroundworkerを実行する方法
- 24. タイマーでタスクを実行する
- 25. javascriptでタイマーを実行する
- 26. バックグラウンドでタイマーを実行する
- 27. 別のJavaプログラムの中でJavaプログラムを実行する方法
- 28. 実行中のすべてのタイマーを停止する
- 29. 実行中のドッカーコンテナでソルト状態を実行するには
- 30. プログラムの実行中に完了の進行状況を表示
1回目の点滅後にタイマーを始めると、次の点滅がタイマーが切れる前に発生するかどうかに基づいて決定したいと思います。タイマーが切れた後に次の点滅が起こると、 dは点滅カウントを再起動し、タイマーをリセットする必要があります。これでわかりやすくわかりやすくなりましたか。 – chandru