首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >OpencvSharp图像融合

OpencvSharp图像融合

作者头像
云未归来
发布2025-07-18 12:40:24
发布2025-07-18 12:40:24
800
举报

最近学习OpencvSharp使用Opencv仿照C++opencv翻译过来。举个例子,图像融合C++版

    clock_t start1, end1;     clock_t start2, end2;

    Mat src = imread("D:/dd.jpg");     Mat dst = imread("D:/ss.jpg ");

    Mat src_mask = 255 * Mat::ones(src.rows, src.cols, src.depth());     Point center(dst.cols / 2, dst.rows / 2);

    Mat normal_clone;     Mat mixed_clone;

    start1 = clock();     seamlessClone(src, dst, src_mask, center, normal_clone, NORMAL_CLONE);     end1 = clock();

    start2 = clock();     seamlessClone(src, dst, src_mask, center, mixed_clone, MIXED_CLONE);     end2 = clock();

    printf("NORMAL_CLONE use time: %d\n", end1 - start1);     printf("MIXED_CLONE use time: %d\n", end2 - start2);

    imshow("ROI_img", src);     imshow("bg_img", dst);     imshow("normal_clone", normal_clone);     imshow("mixed_clone", mixed_clone);     waitKey(0); 上面MFC上面跑起来没问题,翻译成C#版

    Mat src =Cv2.ImRead("D:/dd.jpg");     Mat dst = Cv2.ImRead("D:/ss.jpg ");

    Mat src_mask = 255 * Mat.Ones(src.Size(),MatType.CV_8U);     OpenCvSharp.Point center=new OpenCvSharp.Point(dst.Cols / 2, dst.Rows / 2);

    Mat normal_clone=new Mat();     Mat mixed_clone=new Mat();         Cv2.SeamlessClone(src, dst, src_mask, center, normal_clone, SeamlessCloneMethods.NormalClone);         Cv2.SeamlessClone(src, dst, src_mask, center, mixed_clone, SeamlessCloneMethods.MixedClone);

 Cv2.ImShow("ROI_img", src);  Cv2.ImShow("bg_img", dst);  Cv2.ImShow("normal_clone", normal_clone);  Cv2.ImShow("mixed_clone", mixed_clone);  Cv2.WaitKey(0);

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2018-08-10,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档