1.样例1-图像读取与显示
#include <opencv2/opencv.hpp>
#include <iostream>
using namespace cv;
using namespace std;
int main()
{
//Mat src = imread("./1.png", IMREAD_GRAYSCALE);
Mat src = imread("./1.png");
if (src.empty())
{
cout << "Did not find the image" << endl;
return 0;
}
namedWindow("hello", WINDOW_FREERATIO);
imshow("hello", src);
waitKey(0);
return 0;
}

2.样例2-图像对象的创建与赋值
#include <opencv2/opencv.hpp>
#include <iostream>
using namespace cv;
using namespace std;
class QuickDemo
{
public:
void colorSpaceDemo(Mat &image);
};
void QuickDemo::colorSpaceDemo(Mat &image)
{
Mat gray, hsv;
cvtColor(image, hsv, COLOR_BGR2HSV);
cvtColor(image, gray, COLOR_BGR2GRAY);
imshow("HSV", hsv);
imshow("灰度", gray);
imwrite("./hsv.png", hsv);
imwrite("./gray.png", gray);
}
int main()
{
//Mat src = imread("./1.png", IMREAD_GRAYSCALE);
Mat src = imread("./1.png");
if (src.empty())
{
cout << "Did not find the image" << endl;
return 0;
}
namedWindow("hello", WINDOW_FREERATIO);
imshow("hello", src);
QuickDemo qd;
qd.colorSpaceDemo(src);
waitKey(0);
return 0;
}

该博客介绍了使用OpenCV库在C++中进行图像读取、显示以及颜色空间转换的基本操作。示例1展示了如何读取并显示图像,而示例2则进一步将图像从BGR转换为HSV和灰度空间,并保存转换后的图像。
399

被折叠的 条评论
为什么被折叠?



