zoukankan      html  css  js  c++  java
  • opencv学习之路(10)、ROI与mask掩码

    一、ROI

     1 #include<opencv2/opencv.hpp>
     2 using namespace cv;
     3 
     4 void main(){
     5     Mat img=imread("E://0.jpg");
     6     Mat logo=imread("E://opencv.jpg");
     7     Mat ROI=img(Rect(20,20,logo.cols,logo.rows));//x,y,w,h    xy坐标,宽度,高度
     8     //Mat ROI=img(Range(20,20+logo.rows),Range(20,20+logo.cols));//纵坐标范围,行坐标范围
     9     logo.copyTo(ROI);//logo复制到ROI上面
    10     
    11     imshow("img",img);
    12     waitKey(0);
    13 }

    低级融合

    二、mask掩码

    图像高级融合

     1 #include<opencv2/opencv.hpp>
     2 using namespace cv;
     3 
     4 void main(){
     5     Mat img=imread("E://0.jpg");
     6     Mat logo=imread("E://opencv.jpg");
     7     Mat mask=imread("E://opencv.jpg",0);//以灰度图的形式读入
     8     bitwise_not(mask, mask);//图像取反,白色背景变黑
     9     imshow("mask",mask);
    10     threshold(mask, mask, 50, 255, THRESH_BINARY);//二值化,50这个取值是经过调试后选择的,若取值为100则左下角的标志会消失
    11     imshow("threshold", mask);
    12 
    13     Mat ROI=img(Rect(20,20,logo.cols,logo.rows));//x,y,w,h    xy坐标,宽度,高度
    14     logo.copyTo(ROI,mask);//logo复制到ROI上面
    15     
    16     imshow("img",img);
    17     waitKey(0);
    18 }

    图像加法

     1 #include<opencv2/opencv.hpp>
     2 using namespace cv;
     3 
     4 void main(){
     5     Mat img1=imread("E://3.jpg");
     6     Mat img2=imread("E://4.jpg");
     7     Mat mask=Mat::zeros(img1.size(),CV_8SC1);//纯黑
     8     circle(mask,Point(mask.cols/2,mask.rows/2),100,Scalar(100),-1,8);
     9     Mat dst;
    10     add(img1,img2,dst,mask);
    11     imshow("result",dst);
    12     waitKey(0);
    13 }

  • 相关阅读:
    序列化组件
    restful_framework之视图组件
    如何优化MYSQL数据库
    pycharm如何显示工具栏
    cmd常用命令
    pycharm如何回到过去某个时间
    RESTful API设计规范
    MyBatis之传入参数——parameterType(转)
    Spring3事务管理——使用@Transactional 注解(转)
    Eclipse 启动问题:'Initilizing Java Tooling' has encountered a problem(。。。)
  • 原文地址:https://www.cnblogs.com/little-monkey/p/7207766.html
Copyright © 2011-2022 走看看