OpenCV各種繪制調用:線,矩形,圓,橢圓,文字


OpenCV提供了各種繪制接口,可以往圖片里畫各種東西,這種功能可以為以后在圖像上標記一些信息方便調試

 

// drawcall.cpp: 定義控制台應用程序的入口點。
//

#include "stdafx.h"
#include "opencv2/opencv.hpp"


int main()
{
    cv::Mat img(cv::Size(400, 300),CV_8UC3);
    
    // 畫線 起點,終點,顏色,線寬
    cv::line(img, cv::Point(20, 100), cv::Point(20, 200), cv::Scalar(0, 0, 255), 3);
    // 畫一組線 連續線段 0-1 1-2 2-3
    std::vector<cv::Point> vList;
    vList.push_back(cv::Point(10, 10));// 點0
    vList.push_back(cv::Point(60, 60));// 點1
    vList.push_back(cv::Point(60, 10));// 點2
    vList.push_back(cv::Point(100, 30));// 點3
    cv::polylines(img, vList, false, cv::Scalar(255, 0, 0), 2);
    // 畫矩形 矩形區域,顏色,線寬
    cv::rectangle(img, cv::Rect(20, 20, 50, 60), cv::Scalar(0, 255, 0), 2);
    // 畫圓 圓心坐標 半徑 顏色 線寬
    cv::circle(img, cv::Point(100, 100), 30, cv::Scalar(255,0,0),2);
    // 畫橢圓 中線點 長軸,短軸長度 橢圓旋轉角度 橢圓弧顯示范圍(0-360) 顏色 線寬
    cv::ellipse(img, cv::Point(150, 150), cv::Size(100, 50), 45,0, 360, cv::Scalar(0, 255, 255), 2);
    // 畫文字
    cv::putText(img, "hello", cv::Point(180, 150), cv::FONT_HERSHEY_SIMPLEX,3, cv::Scalar(255, 255, 0), 2);

    cv::imshow("draw", img);
    cv::waitKey();
   cv::destroyAllWindows();
return 0; }

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM