1. 程式人生 > 其它 >opencv之影象的載入、顯示和儲存

opencv之影象的載入、顯示和儲存

目錄

簡介

  • 載入影象: cv::imread()
  • 建立影象視窗: cv::namedWindow()
  • 顯示影象:cv::imshow()
  • 儲存影象:cv::imwrite()

測試程式碼

#include <opencv2/opencv.hpp> //總的標頭檔案
// #include <opencv2/core.hpp>
// #include <opencv2/imgcodecs.hpp>
// #include <opencv2/highgui.hpp>


#include <iostream>
#include <string>

int main(int argc, char** argv)
{
  std::string image_name = "/home/liuzhiyang/test/color_image.png";
  cv::Mat color_image;
  color_image = cv::imread(image_name, cv::IMREAD_COLOR);  
  if (color_image.empty())
  {
    std::cout << "fail to read image!" << std::endl;
    return 0;
  }
  cv::namedWindow("color_image");
  cv::namedWindow("gray_image");

  cv::Mat gray_image;
  cv::cvtColor(color_image, gray_image, cv::COLOR_BGR2GRAY);

  cv::imshow("color_image", color_image);
  cv::imshow("gray_image", gray_image);
  cv::waitKey(0);

  cv::imwrite("/home/liuzhiyang/test/gray_image.png", gray_image);

  return 0;
}

注: 讀取灰色影象

cv::imread(filename, IMREAD_GRAYSCALE);