美文网首页
4. 图像位操作

4. 图像位操作

作者: 逍遥才子 | 来源:发表于2020-03-06 11:24 被阅读0次
image.png
#include <opencv.hpp>
#include <iostream>

using namespace cv;
using namespace std;

int main(int argc, char** argv) {
    
    Mat src = imread("D:/HUANGHAI_WORK/tools/opencv4/opencv/sources/samples/data/messi5.jpg");
    imshow("src", src);

    if (src.empty())
    {
        printf("读取出错");
        return -1;
    }

    namedWindow("huanghai", WINDOW_NORMAL);

    //图像取反
    Mat m1;
    Mat mask = Mat::zeros(src.size(), CV_8UC1);
    int w = src.cols/2;
    int h = src.rows/2;
    for (int row = 50; row < h; row++) {
        for (int col = 50; col < w; col++) {
            mask.at<uchar>(row, col) = 255;
        }
    }
    imshow("mask", mask);
    //非
    bitwise_not(src, m1,mask);
    imshow("bitwise_not", m1);

    //与
    Mat m2;
    bitwise_and(src, src, m2,mask);
    imshow("bitwise_and", m2);

    //或
    Mat m3;
    bitwise_or(src, src, m3, mask);
    imshow("bitwise_or", m3);

    waitKey(0);
    destroyAllWindows();
    return 0;
}

相关文章

网友评论

      本文标题:4. 图像位操作

      本文链接:https://www.haomeiwen.com/subject/whuvrhtx.html