using namespace cv;
using namespace std;
int main(){
VideoCapture capture("1.mov");
vector<Mat> vec;
int i = 1;
while (1){
char file[50];
Mat src, img,img1,img2,img3,img4,src1,src2;
capture >> img;
sprintf_s(file,"img//%d.png",i++);
Mat img_add1(1080, 1920, CV_8UC1, Scalar(255));
split(img, vec);
vec.push_back(img_add1);
merge(vec,src2);
if (img.empty()){
break;
}
Mat rand1_src(img.rows,img.cols,CV_8UC3,Scalar(80,130,100));
Mat rand2_src(img.rows, img.cols, CV_8UC3, Scalar(180, 255, 255));
cvtColor(src2,src,CV_BGR2HSV);
inRange(src, rand1_src, rand2_src, img1);
bitwise_not(img1,img2);
src2.copyTo(img3,img2);
imwrite(file, img3);
waitKey(20);
}
return 0;
}
视频背景抠图(opencv)
最新推荐文章于 2023-11-26 16:21:46 发布
本文介绍了一种使用OpenCV库进行视频帧处理的方法。通过读取视频文件,对每一帧进行颜色空间转换、阈值设定等操作实现特定颜色区域的提取,并将处理后的图像保存。此外还涉及了图像分割、背景去除等技术。
部署运行你感兴趣的模型镜像
您可能感兴趣的与本文相关的镜像
Stable-Diffusion-3.5
图片生成
Stable-Diffusion
Stable Diffusion 3.5 (SD 3.5) 是由 Stability AI 推出的新一代文本到图像生成模型,相比 3.0 版本,它提升了图像质量、运行速度和硬件效率
2662

被折叠的 条评论
为什么被折叠?



