文章目录
头文件:
#include<opencv2/plot.hpp>
动态库:
llibopencv_plot454d
复制代码
int main()
{
//准备一行51列的数据位置
Mat data_x(1, 51, CV_64F);
Mat data_y(1, 51, CV_64F);
//填充模拟数据
for (int i = 0; i < data_x.cols; i++) {
double x = (i - data_x.cols / 2);
data_x.at<double>(0, i) = x;
data_y.at<double>(0, i) = x * x * x;
}
std::cout << "data_x : " << data_x << std::endl;
std::cout << "data_y : " << data_y << std::endl;
Mat plot_result;
Ptr<plot::Plot2d> plot=plot::Plot2d::create(data_x,data_y);
plot->render(plot_result);
imshow("plot 2d data in default way!",plot_result);
//自定义参数
plot->setShowText(false);
plot->setShowGrid(false);
plot->setPlotBackgroundColor(Scalar(255, 200, 200));
plot->setPlotLineColor(Scalar(255, 0, 0));
plot->setPlotLineWidth(2);
plot->setInvertOrientation(true);//左右颠倒绘制
plot->render(plot_result);//根据参数进行渲染
imshow("The plot rendered with some of custom visualization options", plot_result);
waitKey();
return 0;
}
输出结果:


该篇文章展示了如何利用OpenCV的plot模块创建2D图形,从生成模拟数据到在C++中进行渲染。代码示例详细解释了如何绘制数据点,设置显示参数如背景色、线条颜色、网格线,并调整绘图方向。

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



