OpenCV用C画线代码示例

简介: OpenCV用C画线代码示例

 工作原因,需要用C调用OpenCV,在视频画面上画线。经过一番折腾,确实把线画出来了。也许有人需要,这里就发出来。


 从视频得到一个缓冲区(RGBA),然后绘制一个斜线。其他的数据源、绘制要求,也很容易了。


#include <imgproc/imgproc_c.h>
#include <highgui/highgui_c.h>
#include <core/core_c.h>
//注意opencv要求格式为gbr,会导致红蓝颠倒
int gh_trace_draw_track(FrameData* pFrame)
{
    CvPoint p1;
    CvPoint p2;
    CvScalar color;
    CvSize size;
    if (!(pFrame->buffer.data))
    {
        return 0;
    }
    size.width = pFrame->size2d.width;
    size.height= pFrame->size2d.height;
    //根据不同格式,使用对应的大小
    IplImage* iplImage = cvCreateImageHeader(size, IPL_DEPTH_8U, SIZE_ARGB);
    cvSetData(iplImage, pFrame->buffer.data, size.width*SIZE_ARGB);
    p1.x = 0;
    p1.y = 0;
    p2.x = size.width;
    p2.y = size.height;
    color.val[0] = 0xFF;
    color.val[1] = 0;
    color.val[2] = 0xFF;
    color.val[3] = 0;
    // 可以用cvPoint(x1,y1)的写法
    cvLine(iplImage, p1, p2, color, 1, 8, 0);
    return 0;
}


画矩形

cvRectangle(iplImage, cvPoint(x1,y1), cvPoint(x2,y2), color, CV_FILLED, 8, 0);

目录
相关文章
|
存储 算法 开发工具
OpenCV 安卓编程示例:1~6 全
OpenCV 安卓编程示例:1~6 全
318 0
|
计算机视觉 Python
最快速度写出一个识别效果——OpenCV模板匹配(含代码)
最快速度写出一个识别效果——OpenCV模板匹配(含代码)
1119 0
|
算法 IDE 开发工具
OpenCV常用的 7 个示例:从读取到人脸检测(Python版)
OpenCV常用的 7 个示例:从读取到人脸检测(Python版)
|
传感器 C++ 计算机视觉
【opencv3】详述PnP测距完整流程(附C++代码)
【opencv3】详述PnP测距完整流程(附C++代码)
1171 0
|
机器学习/深度学习 算法 数据可视化
计算机视觉+深度学习+机器学习+opencv+目标检测跟踪+一站式学习(代码+视频+PPT)-2
计算机视觉+深度学习+机器学习+opencv+目标检测跟踪+一站式学习(代码+视频+PPT)
|
算法 开发工具 计算机视觉
【零代码研发】OpenCV实验大师工作流引擎C++ SDK演示
【零代码研发】OpenCV实验大师工作流引擎C++ SDK演示
239 1
|
机器学习/深度学习 Ubuntu Linux
计算机视觉+深度学习+机器学习+opencv+目标检测跟踪+一站式学习(代码+视频+PPT)-1
计算机视觉+深度学习+机器学习+opencv+目标检测跟踪+一站式学习(代码+视频+PPT)
|
算法 计算机视觉 Python
python利用opencv进行相机标定获取参数,并根据畸变参数修正图像附有全部代码(流畅无痛版)
该文章详细介绍了使用Python和OpenCV进行相机标定以获取畸变参数,并提供了修正图像畸变的全部代码,包括生成棋盘图、拍摄标定图像、标定过程和畸变矫正等步骤。
python利用opencv进行相机标定获取参数,并根据畸变参数修正图像附有全部代码(流畅无痛版)
|
计算机视觉 Python
opencv在pycharm不能自动补全代码
opencv在pycharm不能自动补全代码
85 0
|
算法 API 计算机视觉
基于opencv的大米计数统计(详细处理流程+代码)
基于opencv的大米计数统计(详细处理流程+代码)
基于opencv的大米计数统计(详细处理流程+代码)