源代码:http://download.csdn.net/detail/nuptboyzhb/3961698

Alpha融合菜单项

1.      增加alpha融合菜单项,修改相应的属性,建立类向导,编辑消息处理函数。

2.      在消息处理函数中添加如下代码

void CCVMFCView::OnAlphaMix()

{

//TODO: Add your command handler code here

//TODO: Add your command handler code here

IplImage*src1, *src2;

CStringcsAVI="src1 Files(lena.bmp)|*.bmp|";

CString csFilter=csAVI;

CStringcsFilter2="src2 Files(gs76.bmp)|*.bmp|";

CStringname[]={"","bmp",""};

CStringstrFileName;

CStringstrExtension;

CFileDialogFileDlg(true,NULL,NULL,OFN_HIDEREADONLY,csFilter);

if(FileDlg.DoModal()==IDOK ) {        //  选择了文件名

strFileName= FileDlg.m_ofn.lpstrFile;

if(FileDlg.m_ofn.nFileExtension == 0) { //  无文件后缀

strExtension= name[FileDlg.m_ofn.nFilterIndex];

strFileName= strFileName + '.' + strExtension;

//  加文件后缀

}

src1=cvLoadImage(strFileName);

if(src1)

{

MessageBox("还需要打开一张图片!");

}

CFileDialog FileDlg(true,NULL,NULL,OFN_HIDEREADONLY,csFilter2);

if(FileDlg.DoModal()==IDOK ) {        //  选择了文件名

strFileName= FileDlg.m_ofn.lpstrFile;

if(FileDlg.m_ofn.nFileExtension == 0) { //  无文件后缀

strExtension= name[FileDlg.m_ofn.nFilterIndex];

strFileName= strFileName + '.' + strExtension;

//  加文件后缀

}

src2=cvLoadImage(strFileName);

cvNamedWindow("src1",CV_WINDOW_AUTOSIZE);

cvMoveWindow("src1",300,300);

cvShowImage("src1",src1);

cvNamedWindow("src2",CV_WINDOW_AUTOSIZE);

cvMoveWindow("src2",300+src1->width,300);

cvShowImage("src2",src2);

intx = 112;

int y = 123;

int width =src2->width;

int height =src2->height;

double alpha = 0.5;

double beta  = 1-alpha;

cvSetImageROI(src1, cvRect(x,y,width,height));

cvSetImageROI(src2, cvRect(0,0,width,height));

cvAddWeighted(src1, alpha, src2, beta,0.0,src1);

cvResetImageROI(src1);

cvNamedWindow( "Alpha_blend",CV_WINDOW_AUTOSIZE );

cvMoveWindow("Alpha_blend",350+src1->width+src2->width,300);

cvShowImage( "Alpha_blend", src1 );

cvWaitKey(0);

cvReleaseImage(&src1);

cvReleaseImage(&src2);

}

}

}

播放wav音乐

1.插入资源(插入->资源->定制->(输入WAVA))

2.在resources中找到"WAVA"文件,打开有个IDR_WAVA1

3.右键->import->浏览后缀名为.wav的音频文件

4.在CXXXXView的构造函数中添加:

PlaySound(MAKEINTRESOURCE(IDR_TAOBAO_SENT_SOUND),AfxGetResourceHandle(),SND_ASYNC|SND_RESOURCE);

5.在该文件的上方,添加头文件#include"mmsystem.h"

6.工程->设置->连接->库模板添加"winmm.lib"

1.1.6-学习Opencv与MFC混合编程之---播放WAV音乐和 alpha融合功能的更多相关文章

  1. 1.0.1-学习Opencv与MFC混合编程之---播放AVI视频

    资源源代码:http://download.csdn.net/detail/nuptboyzhb/3961639 版本1.0.1新增内容 Ø  新建菜单项,Learning OpenCV——> ...

  2. 1.1-学习Opencv与MFC混合编程之---利用画图函数,生成视频,并写入视频文件

    源代码地址:http://download.csdn.net/detail/nuptboyzhb/3961674 写视频文件 Ø 新建菜单项,Learning OpenCV——> OpenCVr ...

  3. 1.0.x-学习Opencv与MFC混合编程之---视频运动检测

    源代码地址: http://download.csdn.net/detail/nuptboyzhb/3961668 版本1.0.x新增内容 视频运动检测 Ø 新建菜单项,Learning OpenCV ...

  4. 1.0.3-学习Opencv与MFC混合编程之---打开本地摄像头

    源代码:http://download.csdn.net/detail/nuptboyzhb/3961643 版本1.0.3新增内容 打开摄像头 Ø 新建菜单项,Learning OpenCV——&g ...

  5. 1.0.2-学习Opencv与MFC混合编程之---为播放AVI视频添加滑动条

    源代码地址:http://download.csdn.net/detail/nuptboyzhb/3961642 版本1.0.2新增内容 Ø  全局变量和函数的添加: 在CVMFCview.cpp文件 ...

  6. 1.1.7-学习Opencv与MFC混合编程之---为画图工具添加工具栏

    源代码:http://download.csdn.net/detail/nuptboyzhb/3961701 哎,其实里面有很多图片的,本来看起开很明了的,资源连接里有详细的文档,比下面的看的舒服的多 ...

  7. 1.1.5-学习Opencv与MFC混合编程之---画图工具 输入文字和填充图像 修改光标

    源代码:http://download.csdn.net/detail/nuptboyzhb/3961696 输入文字 l 对话框 1.    插入,资源,选择对话框资源 2.    编辑对话框如下: ...

  8. 1.1.4-学习Opencv与MFC混合编程之---画图工具 画椭圆

    源代码地址:http://download.csdn.net/detail/nuptboyzhb/3961690 1.    增加‘椭圆’菜单项,设置属性,添加类向导: 2.    编辑消息处理函数, ...

  9. 1.1.3-学习Opencv与MFC混合编程之---画图工具 通过对话框进行工具的参数设置 画曲线 绘图校正

    源代码:http://download.csdn.net/detail/nuptboyzhb/3961688 l 对话框 1.“插入”->“资源”->“对话框” 2.对话框属性如下: 双击 ...

随机推荐

  1. C#堆栈

    栈就是堆栈,因为堆和堆栈这样说太拗口了,搞得像绕口令,所以有些时候就把堆栈简称为栈.堆和栈,你看这又多舒服. 但无论什么时候,堆栈都不等于堆和栈,必须说,堆和栈或者堆和堆栈. 有人说:“C#的所有值类 ...

  2. ssh "openssh-daemon is stopped"操作之伤+sftp访问“-bash: /dev/null: Permission denied”

    1.ssh "openssh-daemon is stopped"操作之伤 原来好好的 sshd服务突然发现  不能重新启动了: [root@bogon rules.d]# ser ...

  3. Google Code Jam Round 1A 2015 Problem B. Haircut 二分

    Problem You are waiting in a long line to get a haircut at a trendy barber shop. The shop has B barb ...

  4. vb和vb.net事件机制

    学习java事件前,回顾了下vb6和vb.net的事件机制,总结在这里,供对比用. 事件是面对对象中对象间通信的方法.事件发生者(又叫事件源)发生一个事件时,通过发送一条消息,给事件接受者(事件处理者 ...

  5. 杭电--1862--EXCEL排序--结构体排序

    EXCEL排序 Time Limit: 10000/5000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total S ...

  6. POJ 2485:Highways(最小生成树&&prim)

    Highways Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 21628   Accepted: 9970 Descrip ...

  7. JAVA ANDROID SOCKET通信检测(SERVER)连接是否断开

    Pre 解决思路 代码后记: 客户端app上的部分代码 调用: 服务器上: 客户端判断服务器是否还活着代码: PRE 在利用socket写通讯程序的时候,想检测服务器是否还活着. 从网上找了很多资料, ...

  8. HFS - 简单的将个人电脑变服务器!

    网络硬盘   HTTP File Server(HFS)是我目前所知道的最简便的P2P文件分享方式,只一个大小为559KB的单文件绿色软件(hfs.exe)就可以在瞬间不经过任何系统设置将一台普通的联 ...

  9. 数据库迁移 - SQLServer->MySQL

    SqlServer转换为Mysql的一款工具推荐(mss2sql)

  10. python 函数形参四种格式

    1:f(a,b) 2:f(a,b=value)有默认值的参数必须在后面 3:f(*a)多个参数直接传进一个元组 4:f(**a)以keys=values 形式给参数,传入转换为字典 def test( ...