3

Kinectセンサー(opencvを使用)から深度フレームを継続的に取得し、それらをpngに保存するC++プログラムがあります。これらの画像を読み取って処理する別の MATLAB スクリプトがあります。

問題は、MATLAB が png を読み取るよりも速く C++ プログラムがファイルを上書きする可能性があるため、MATLAB が png を読み取ることができないことです。イメージの書き込みと読み取りが同期できれば、問題は解決できると考えました。

これを達成する最も簡単な方法は何でしょうか? ソリューションが機能する限り、パフォーマンスが多少低下しても構わないと思っています。

4

2 に答える 2

5

C++プログラムが新しいフレームを書き込んだことを示す一時的な空/シングルバイトファイルを作成し、C++に、Matlabが削除され、pngを読み取り、別の一時ファイルを書き込んで終了したことを示すまで待つように指示しますか?

于 2013-07-05T14:15:08.720 に答える
2

Matlab が 1 つのフレームの処理で常に C++ よりも遅い場合は、C++ プログラムに毎回新しいフレームを順次番号付けして書き込み、Matlab に読み取ったばかりのフレームを削除させます。このようにして、最終的に「バッファ」が作成され、両方のプログラムが正しく機能するために必要なディスク領域のみが使用されます。

于 2013-07-05T14:50:33.623 に答える