Opencv 从自拍照生成视频
我不确定这是否是发布此类问题的正确位置。但也许有人能帮我Opencv 从自拍照生成视频,opencv,video,image-processing,photo,face-detection,Opencv,Video,Image Processing,Photo,Face Detection,我不确定这是否是发布此类问题的正确位置。但也许有人能帮我 在过去的几个月里,我从一个人那里拍了很多照片。这些照片都是正面照片,有不同的光线,一次脸离相机近一点,然后又离相机远一点等等。现在我想用所有照片制作一部电影,展示一些进展。但在我开始手动更正照片(修复闪电、使所有面大小相同、旋转一点面…)并将其放入Premiere之前,我想知道是否有某种软件可以实现这一点。它可能是一个程序,脚本,库。。。我读了一点关于OpenCV的内容,但可能已经有了一些东西。可能有OpenCV 根据你的要求,第一件事是
在过去的几个月里,我从一个人那里拍了很多照片。这些照片都是正面照片,有不同的光线,一次脸离相机近一点,然后又离相机远一点等等。现在我想用所有照片制作一部电影,展示一些进展。但在我开始手动更正照片(修复闪电、使所有面大小相同、旋转一点面…)并将其放入Premiere之前,我想知道是否有某种软件可以实现这一点。它可能是一个程序,脚本,库。。。我读了一点关于OpenCV的内容,但可能已经有了一些东西。可能有OpenCV 根据你的要求,第一件事是 照明调整 OpenCV有一个关于的完整文档。用另一种方法调整对比度。为此,您需要将RGB图像转换为HSV并应用于V(值)通道 OpenCV调整大小 要调整大小,可以使用OpenCV函数 下面是一段代码如何做到这一点
Mat src = imread(image.jpg);
Mat dst;
resize(src, dst, Size(640, 480), 0, 0, INTER_CUBIC); // resize to 640X480 resolution
旋转
对于旋转,可以使用
视频写作
OpenCV拥有使用各种帧速率、编解码器、分辨率等编写视频的类
下面是使用一系列图像编写视频的源代码,假设您的图像名为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;
}
intmain()
{
录像作者;
writer.open(“out.avi”,CV_FOURCC('M','J','P','G'),15,大小(640480),true);//初始化视频编写器。分辨率应与源图像相同
如果(!writer.isOpened()){
coutcool,谢谢!是否可以检测人脸的形状,并基于此旋转、缩放等图片?我认为可能,您可以查看这些链接,但我不理解向下投票。有什么原因吗?