这个程序使用OpenCV生成了10张测试图片,然后把这10张测试图片合并为webp动图。
WebP 是由 Google 开发的一种现代图像格式,旨在为网页提供更小的文件大小和更高的压缩效率,同时保持与 JPEG、PNG 和 GIF 相当甚至更好的视觉质量。
每张图片在这个webp动图里持续200ms。
代码:
#include <opencv2/highgui.hpp> #include <opencv2/imgcodecs.hpp> #include <opencv2/imgproc.hpp> #include <iostream> using namespace cv; int main() { Animation webp; Mat image(128, 256, CV_8UC4, Scalar(150, 150, 150, 255)); int duration = 200; for (int i = 0; i < 10; ++i) { webp.frames.push_back(image.clone()); putText(webp.frames[i], format("Frame %d", i), Point(30, 80), FONT_HERSHEY_SIMPLEX, 1.5, Scalar(255, 100, 0, 255), 2); webp.durations.push_back(duration); } imwriteanimation("animation.webp", webp, { IMWRITE_WEBP_QUALITY, 100 }); return 0; }