#ifndef IMAGE_TEST_H #define IMAGE_TEST_H #include #include #include #include namespace ImageTest { void saveImageFromData(unsigned char *data, int width, int height, const std::string &filename = "./output.png") { cv::Mat image(height, width, CV_8UC3, data); cv::imwrite(filename, image); } class HighResolutionTimer { public: // 开始计时 void start() { start_time = std::chrono::high_resolution_clock::now(); } // 停止计时 void stop() { end_time = std::chrono::high_resolution_clock::now(); } // 获取经过的时间(以秒为单位) double elapsed() const { return std::chrono::duration(end_time - start_time).count(); } // 获取经过的时间(以毫秒为单位) double elapsed_milliseconds() const { return std::chrono::duration(end_time - start_time).count(); } // 获取经过的时间(以微秒为单位) double elapsed_microseconds() const { return std::chrono::duration(end_time - start_time).count(); } private: std::chrono::high_resolution_clock::time_point start_time; std::chrono::high_resolution_clock::time_point end_time; }; } #endif // IMAGE_TEST_H