当前位置: 首页 > news >正文

帧间提取水印

http://www.opencv.org.cn/forum.php?mod=viewthread&tid=33957

视频地址

链接: http://pan.baidu.com/s/1kV5xKDh 密码: abd2   //pan,baidu.com/文章附件 test.avi

 

本帖最后由 OpenCV_Westin 于 2015-1-18 14:47 编辑

代码:
#include <opencv2\core\core.hpp>
#include <opencv2\highgui\highgui.hpp>
#include <opencv2\imgproc\imgproc.hpp>

#include <iostream>

using namespace std;
using namespace cv;

int main(int argc, char** argv)
{
        cv::VideoCapture cap("test.avi");
        if(!cap.isOpened())
        {
                cout << "Failed!" << endl;
                return -1;
        }

        Mat result,mask;
        cv::namedWindow("Result",1);
        cv::namedWindow("Frame",1);
        int i = 0;
        for(;;)
        {
                Mat frame;
                cap >> frame;
                if(!frame.data)
                {
                        cout << "Over!" << endl;
                        break;
                }

                if(i <= 30)  //看视频,自己调试确定这个值,二十几帧之后左上角那个小图才出来,所以选了30
                {
                        if(i == 30)
                        {
                                mask = frame;
                                cv::cvtColor(mask,mask,CV_BGR2GRAY);
                                imshow("Frame",frame);
                                imshow("Result",mask);
                                //waitKey();
                        }                        
                }
                else
                {
                        cv::cvtColor(frame,result,CV_BGR2GRAY);
                        cv::bitwise_and(result,mask,mask);
                        imshow("Frame",frame);
                        imshow("Result",mask);
                        //waitKey();
                        if(cv::waitKey(33) >= 0) break;
                }
                i++;
        }

        waitKey();
        return 0;
}

转载于:https://www.cnblogs.com/donaldlee2008/p/5381323.html

相关文章:

  • 面试遇到的一些题
  • Charles中如何对https抓包
  • 大家一起和snailren学java-(13)字符串
  • 九、搭建织梦cms网站
  • I.MX6 driver goto 使用
  • wcf系列学习5天速成——第四天 wcf之分布式架构
  • 【HBase】start master 与 start master --backup 的区别
  • 【Mongodb】如何创建mongodb的replica set
  • ti processor sdk linux am335x evm /bin/setup-host-check.sh hacking
  • ST:(Lab2)Selenium 实验
  • MySQL中MAX函数与Group By一起使用的注意事项
  • 网易前端JavaScript编码规范
  • BAT面试笔记
  • Architecture.the-reactive-manifesto
  • 一起Polyfill系列:Function.prototype.bind的四个阶段
  • [js高手之路]搞清楚面向对象,必须要理解对象在创建过程中的内存表示
  • 【腾讯Bugly干货分享】从0到1打造直播 App
  • 08.Android之View事件问题
  • ABAP的include关键字,Java的import, C的include和C4C ABSL 的import比较
  • Angular 响应式表单之下拉框
  • Docker 1.12实践:Docker Service、Stack与分布式应用捆绑包
  • gops —— Go 程序诊断分析工具
  • MyEclipse 8.0 GA 搭建 Struts2 + Spring2 + Hibernate3 (测试)
  • RedisSerializer之JdkSerializationRedisSerializer分析
  • Spring-boot 启动时碰到的错误
  • Wamp集成环境 添加PHP的新版本
  • 阿里中间件开源组件:Sentinel 0.2.0正式发布
  • 对象引论
  • 今年的LC3大会没了?
  • 前嗅ForeSpider采集配置界面介绍
  • 区块链将重新定义世界
  • 如何邀请好友注册您的网站(模拟百度网盘)
  • 使用 QuickBI 搭建酷炫可视化分析
  • 使用Envoy 作Sidecar Proxy的微服务模式-4.Prometheus的指标收集
  • 移动端解决方案学习记录
  • 交换综合实验一
  • 小白应该如何快速入门阿里云服务器,新手使用ECS的方法 ...
  • ​人工智能之父图灵诞辰纪念日,一起来看最受读者欢迎的AI技术好书
  • #define用法
  • #我与虚拟机的故事#连载20:周志明虚拟机第 3 版:到底值不值得买?
  • $NOIp2018$劝退记
  • (pytorch进阶之路)扩散概率模型
  • (二)WCF的Binding模型
  • (附源码)SSM环卫人员管理平台 计算机毕设36412
  • (附源码)计算机毕业设计SSM在线影视购票系统
  • (简单) HDU 2612 Find a way,BFS。
  • (自适应手机端)响应式新闻博客知识类pbootcms网站模板 自媒体运营博客网站源码下载
  • (最优化理论与方法)第二章最优化所需基础知识-第三节:重要凸集举例
  • .NET Core引入性能分析引导优化
  • .NET Framework Client Profile - a Subset of the .NET Framework Redistribution
  • .net开发引用程序集提示没有强名称的解决办法
  • .NET开源的一个小而快并且功能强大的 Windows 动态桌面软件 - DreamScene2
  • /etc/shadow字段详解
  • [acwing周赛复盘] 第 94 场周赛20230311
  • [BZOJ1089][SCOI2003]严格n元树(递推+高精度)