从带时间戳的图像数据集中挑选想要的图像时间戳
#include <iostream>#include <vector>#include <string>#include <set>#include <fstream>#include <opencv2/opencv.hpp>in
·
#include <iostream>
#include <vector>
#include <string>
#include <set>
#include <fstream>
#include <opencv2/opencv.hpp>
int main(int argc, char **argv) {
std::string root_path = "/home/alan/images/";
std::string timestamp_path = root_path + "timestamps.txt";
std::ifstream file(timestamp_path);
if (!file.is_open()) {
std::cout << "can not open file: " << timestamp_path << std::endl;
}
std::vector<long long> timestamps;
std::string timestamp;
while (file >> timestamp) {
timestamps.push_back(std::stoll(timestamp));
}
std::vector<long long> choosed_timestamps;
std::set<long long> sorted_timestamps;
int i = 0;
int key = cv::waitKey(0);
while(key != 27) {
switch((char)key) {
case 'u':
i++;
if(i >= timestamps.size()) {
i = timestamps.size() - 1;
}
break;
case 'd':
i--;
if(i < 0) {
i = 0;
}
break;
case 'c':
sorted_timestamps.insert(timestamps[i]);
break;
case 's':
std::ofstream out(root_path + "choosed_timestamps.txt");
for (auto timestamp : sorted_timestamps) {
out << timestamp << std::endl;
}
break;
}
cv::Mat image = cv::imread(root_path + std::to_string(timestamps[i]) + ".jpg");
cv::imshow("image", image);
key = cv::waitKey(0);
}
return 0;
}

GitCode 天启AI是一款由 GitCode 团队打造的智能助手,基于先进的LLM(大语言模型)与多智能体 Agent 技术构建,致力于为用户提供高效、智能、多模态的创作与开发支持。它不仅支持自然语言对话,还具备处理文件、生成 PPT、撰写分析报告、开发 Web 应用等多项能力,真正做到“一句话,让 Al帮你完成复杂任务”。
更多推荐
所有评论(0)