我正在使用压力敏感的LED地板,它以二维阵列输出传感器。我想记录这些数据并将其发送到CSV文件。但是,使用我当前的代码,我每秒收集300.000 KB。
void DemoProjectApp::recorddata()
{
std::ofstream myfile;
myfile.open("datafloor.csv");
while(pressed = true)
{
for (int i = 0; i < ProjectSettings::NR_OF_TILES; i++)
{
myfile << "Tile" << i << ",";
myfile << tileIndexToSensorValues[i][0] << ",";
myfile << tileIndexToSensorValues[i][1] << ",";
myfile << tileIndexToSensorValues[i][2] << ",";
myfile << tileIndexToSensorValues[i][3] << "\n";
myfile.flush();
}
}
if(pressed = false)
{
myfile.close();
}
}
Pressed是一个布尔值,改变true或false以开始和停止录制。 有没有人有减少输出的解决方案,但仍能获得相关数据?
提前致谢!
答案 0 :(得分:0)
你在那里写的是有效的一系列图像。 Aka是一个视频文件。以非常低效的编码方案编码的视频。我猜压力场没有陡峭的变化,所以我的第一种方法是使用视频编解码器(MPEG4,h264等)对其进行编码。
答案 1 :(得分:0)
好吧,感觉非常愚蠢,但答案是在按下的布尔值上加上==。 完全忽略了它。