博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
对OpenCV中seamlessClone的初步实验
阅读量:6874 次
发布时间:2019-06-26

本文共 1027 字,大约阅读时间需要 3 分钟。

seamlessClone是OpenCV中新出现的函数,应该说如果能够基于较为准确的图像分割,能够得到很好的结果。

原始的前景,背景
三种flag下的融合结果
 
//注意头文件中添加  
#include
 <opencv2/photo.hpp>
int main( 
int argc, 
const 
char
*
* argv )
{
    Mat src 
= imread(
"iloveyoupapa.png");
    Mat dst 
= imread(
"wood.png");
    
// Create an all white mask
    Mat src_mask 
= 
255 
* Mat
:
:ones(src.rows, src.cols, src.depth());
    
// The location of the center of the src in the dst
    Point center(dst.cols
/
2,dst.rows
/
2);
    
// Seamlessly clone src into dst and put the results in output
    Mat normal_clone;
    Mat mixed_clone;
    Mat monochrome_clone;
    seamlessClone(src, dst, src_mask, center, normal_clone, NORMAL_CLONE);
    seamlessClone(src, dst, src_mask, center, mixed_clone, MIXED_CLONE);
    seamlessClone(src, dst, src_mask, center, monochrome_clone, MONOCHROME_TRANSFER);
    imshow(
"normal_clone",normal_clone);
    imshow(
"minxed_clone",mixed_clone);
    imshow(
"monochrome_clone",monochrome_clone);
    imshow(
"wood",dst);
    imshow(
"lovepapa",src);
    waitKey();
    
return 
0;
}
当然选择这个例子有些讨巧的存在,因为前景为白底红色的文字,这个时候还是比较好进行区分的。同时我还做了一些其他图片的实验。
使用蝴蝶和星空来进行融合

转载地址:http://nwpfl.baihongyu.com/

你可能感兴趣的文章
每一个Servlet只有一个实例,多个线程
查看>>
C#--栈
查看>>
ReSharper warns: “Static field in generic type”
查看>>
编译Android AOSP代码
查看>>
atom 安装插件出现 EIO 错误
查看>>
NET/ASP.NET Routing路由(深入解析路由系统架构原理)(转载)
查看>>
OpenStack 企业私有云的若干需求(5):主流硬件支持、云快速交付 和 SLA 保证...
查看>>
Backbone源码分析(一)
查看>>
JVM 垃圾回收机制( 一) 回收对象的判定
查看>>
如果两个对象具有相同的哈希码,但是不相等的,它们可以在HashMap中同时存在吗?...
查看>>
Android studio修改debug.keystore
查看>>
linux如何关闭防火墙
查看>>
Zabbix利用msmtp+mutt发送邮件报警
查看>>
Socket实现仿QQ聊天(可部署于广域网)附源码(2)-服务器搭建
查看>>
DIRECT3D状态详解
查看>>
Asp.Net生命周期和Http管道技术
查看>>
case when then else end 用法
查看>>
解决新版Android studio导入微信支付和支付宝官方Demo的问题
查看>>
Atitit 《控制论原理与概论attilax总结
查看>>
Laravel系列2入门使用
查看>>