所有软件外包项目 Gray arrow bg 视频各帧抠图重新合成+简单图像处理(缩放、旋转)

视频各帧抠图重新合成+简单图像处理(缩放、旋转)

发包方 : Instect 状态 :竞标已结束
项目编号 : 214515
项目预算 : ¥15,000-20,000
开发周期 : 7 天
技能 : C++
发布日期 : 2015-01-22
竞标后显示联系方式

描述

1、 播放:能够打开本地视频文件(mp4)进行播放、暂停操作并显示播放进度条;
2、 定位:对于已打开的视频,能够通过向左按钮、向右按钮定位到上一帧或下一帧图像,通过拖动播放进度条能够定位到相应位置的帧图像;
3、 选区:通过依次连续点击视频画面上的多个点构建闭合的多边形选区(贝塞尔曲线),这些点均可以上下左右微调;
4、 抠图:将选区填充为固定色(如RGB(0,0,255)),同时记住当前选区的信息以备应用成下一帧的选区;
5、 位置匹配:提供图像调节功能,通过人工调节来获取抠像区域的位置信息。固定加载一张200*300大小的头像图片,将它放到视频每一帧的背后,通过缩放、旋转、移动操作来匹配抠掉的区域,并记下调整后的头像左上角位置、旋转角度(x轴/y轴/z轴)、缩放信息,同时记住当前头像的调整信息以备应用到下一帧的位置匹配里。
注:把头像放到视频的被抠区域,调整头像边框的可操作点(缩放、平移、旋转x/y/z),直到头像与抠图区完好重合,这时图像旋转过的角度x/y/z、缩放比例、相对视频左上角的坐标 这些就是我们要的位置信息。
6、 头像位置信息数据结构
{
int nTop;//头像左上角相对视频左上角的坐标y值
int nLeft; //头像左上角相对视频左上角的坐标x值
float fX;//头像绕x轴顺时针旋转的角度(将头像置于观察者的左前方)
float fY; //头像绕y轴顺时针旋转的角度
float fX;//头像绕z轴顺时针旋转的角度
float fZoom;//调整后的头像相对于原始头像的缩放比例
}
注:假如抠图区里是一个正脸正位头像,那么fx,fy,fz均为0;
假如抠图区里是一个正脸斜位头像,那么fx=0,fy=0,fz为头斜的程度;
假如抠图区里是一个低头正位头像,那么fy=0,fz=0,fx为低头的程度;
假如抠图区里是一个扭头正位头像,那么fx=0,fz=0,fy为扭头的程度;
7、 保存视频:抠像并填充固定色后另存为MP4格式的视频文件(264编码)。
8、 保存头像位置信息:将每一帧对应的头像位置调整信息以数组的形式保存到一个二进制文件里。
9、 预览:将背景图片按每一帧对应的位置信息调整后,合成到视频的每一帧里,通过慢播(慢镜头)看看效果,有抠图不理想,或背景图片位置设置不佳的地方允许二次调整。
以上。
联系人:王先生,13381393587

项目竞标

接包方 国家/地区
通过实名认证 拥有案例
3
Linkboycn
杭州市
通过实名认证 拥有案例
1
Ann sean software

竞标

请您先登录,然后提交此项目的竞标方案。
还不是智城用户? 智城期待您的加入,请注册成为我们的一员吧!
Project ad2
Baidu
map