OpenCVを使って真っ白な画像を作成する(0003)

真っ白な画面はすべてのチャンネルを255にする。

#include <string>
#include <opencv2/opencv.hpp>

//画面をだすよ
void display(cv::Mat image) {
    //名前をつける
    std::string windowName = "windowName";
    cv::namedWindow(windowName);
    //画面出た!!
    cv::imshow(windowName, image);
    //なにかキーをおして~
    cv::waitKey(1000 * 10);
    //整理整頓
    cv::destroyWindow(windowName);
}

//
// ここから
//
int main(int argc, char** argv) {

    //100x100の画像 CV_8UC3(8bit 3チャンネル)
    cv::Mat image = cv::Mat::zeros(500, 500, CV_8UC3);

    int cols = image.cols;
    int rows = image.rows;
    for (int j = 0; j < rows; j++) {
        for (int i = 0; i < cols; i++) {
            image.at<cv::Vec3b>(j, i)[0] = 255; //青
            image.at<cv::Vec3b>(j, i)[1] = 255; //緑
            image.at<cv::Vec3b>(j, i)[2] = 255; //赤
        }
    }

    //画面に出して!!
    display(image);

}

f:id:treehitsuji:20150112223154p:plain