注:本站教程若所特殊说明,所使用的OpenCV版本为OpenCV – 4.6.0。
下载地址:https://sourceforge.net/projects/opencvlibrary/files/4.6.0/opencv-4.6.0-vc14_vc15.exe/download
打开Visual Studio 2022,创建一个C++应用程序项目并取名为opencvProject,然后按照前面的教程在项目的属性对话框中,配置opencv相关的引入参数,这样一个C++应用程序的准备工作就完成了。
接着在该项目中新增一个C++类,类名为ImageHelper。IDE会帮我们分别创建ImageHelper.h头文件和ImageHelper.cpp类文件。打开ImageHelper.h头文件,键入下面的代码
#include <opencv2/opencv.hpp>
using namespace cv;
using namespace std;
class ImageHelper
{
public:
void Start();
};
然后在ImageHelper.cpp类文件中,键入下面的代码
#include "ImageHelper.h"
void ImageHelper::Start() {
Mat image(300, 500, CV_8UC3, Scalar(0, 0, 255));
string text = "Hello,OpenCV";
Point pos(50, image.rows / 2); // 写入坐标
int font = cv::FONT_HERSHEY_SIMPLEX; // 字体类型
double scale = 2.0; // 字号缩放
Scalar color(0, 255, 255); // 黄色
int thickness = 5; // 笔画粗细
putText(image, text, pos, font, scale, color, thickness);
namedWindow("image", WINDOW_AUTOSIZE); // 创建窗口
imshow("image", image); // 显示图片
imwrite("image.bmp", image); // 保存图片
}
最后,打开opencvProject.cpp,找到InitInstance函数,在函数的最后增加下面的代码
//使用图像类
ImageHelper helper;
helper.Start();
最后,我们来看完整的InitInstance函数的样子
//
// 函数: InitInstance(HINSTANCE, int)
//
// 目标: 保存实例句柄并创建主窗口
//
// 注释:
//
// 在此函数中,我们在全局变量中保存实例句柄并
// 创建和显示主程序窗口。
//
BOOL InitInstance(HINSTANCE hInstance, int nCmdShow)
{
hInst = hInstance; // 将实例句柄存储在全局变量中
HWND hWnd = CreateWindowW(szWindowClass, szTitle, WS_OVERLAPPEDWINDOW,
CW_USEDEFAULT, 0, CW_USEDEFAULT, 0, nullptr, nullptr, hInstance, nullptr);
if (!hWnd)
{
return FALSE;
}
ShowWindow(hWnd, nCmdShow);
UpdateWindow(hWnd);
//使用图像类
ImageHelper helper;
helper.Start();
return TRUE;
}
做完这一切工作,就可以按下F5,运行这个项目。如何一切OK,您会看到在启动的C++应用程序中弹出了一个对话框,并在该对话框中显示了一张图片。

这张图就是使用OpenCV库的Mat类快速创建的,它的背景是红色的,前景(字体颜色)是黄色的,尺寸为500*300,大小约为439k。
打开项目的根目录,您还会在其中找到名为“image.bmp”的图像,这张图像也是由opencv提供的imwrite函数保存的。
我知道您一定有许多的疑问,比如计算机是如何表示一张图像的,图像都有哪些参数或特性,图像的大小是如何计算的,我们如何通过opencv实现对图像更多的操作。这些问题,我们将在下一节得到解答。
——重庆教主 2025年5月6日
若文章对您有帮助,可以激励一下我哦,祝您平安幸福!
微信 | 支付宝 |
---|---|
![]() |
![]() |