可能有 OpenCV ,
根据您的要求,第一件事是
灯光调节
OpenCV 有一个关于Changing the contrast and brightness of an image 的完整文档。以另一种方式,您可以使用histogram equalization 调整对比度。为此,您需要将 RGB 图像转换为 HSV 并将 equalizeHist() 应用于 V(value) 通道。
OpenCV 调整大小
要调整大小,您可以使用 OpenCV resize 函数
这是一段代码如何做到这一点
Mat src = imread(image.jpg);
Mat dst;
resize(src, dst, Size(640, 480), 0, 0, INTER_CUBIC); // resize to 640X480 resolution
轮换
对于旋转,您可以使用Affine Transformations
视频写作
OpenCV 有VideoWriter 类可以使用各种帧速率、编解码器、分辨率等编写视频。
这里是使用一系列图像编写视频的源代码,假设您的图像名称为 0.jpg,1.jpg,2.jpg.....
int main()
{
VideoWriter writer;
writer.open("out.avi",CV_FOURCC('M','J','P','G'),15,Size(640,480),true);//Initialize video writer. The resolution should be same as source image
if(!writer.isOpened()){
cout<<"Cannot write video..!!!"<<endl;
return -1;
}
char name[10];
int i=0;
while(1){
sprintf(name,"%d.jpg",i++);
Mat src=imread(name,CV_LOAD_IMAGE_COLOR);
if (src.empty()){
cout<<"No source found...."<<endl;
break;
}
writer.write(src);
imshow("src", src);
waitKey(0);
}
return 0;
}