gpt4 book ai didi

c++ - 如何将 OpenCV Mat 的所有像素设置为特定值?

转载 作者:IT老高 更新时间:2023-10-28 21:53:58 34 4
gpt4 key购买 nike

我有一个 CV_8UC1 类型的图像。如何将所有像素值设置为特定值?

最佳答案

  • 灰度图:

    cv::Mat m(100, 100, CV_8UC1); //gray 
    m = Scalar(5); //used only Scalar.val[0]

    cv::Mat m(100, 100, CV_8UC1); //gray 
    m.setTo(Scalar(5)); //used only Scalar.val[0]

    Mat mat = Mat(100, 100, CV_8UC1, cv::Scalar(5));
  • 对于彩色图像(例如 3 channel )

    cv::Mat m(100, 100, CV_8UC3); //3-channel 
    m = Scalar(5, 10, 15); //Scalar.val[0-2] used

    cv::Mat m(100, 100, CV_8UC3); //3-channel 
    m.setTo(Scalar(5, 10, 15)); //Scalar.val[0-2] used

    Mat mat = Mat(100, 100, CV_8UC3, cv::Scalar(5,10,15));

P.S.:查看 this thread如果您还想知道如何在不更改其他 channel 的情况下有效地将 cv::Mat 的给定 channel 设置为给定值。

关于c++ - 如何将 OpenCV Mat 的所有像素设置为特定值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20816955/

34 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com