opencv笔记 2.一些简单的绘图函数使用

#include<iostream>
#include<cv.hpp>
using namespace std;
using namespace cv;

#define WINDOW_NAME1 "【绘制图1】"         //为窗口标题定义的宏 
#define WINDOW_WIDTH 600                   //定义窗口大小的宏

int main(void)
{
    // 创建空白的Mat图像
    Vec3b a = {255,255,255};               //定义一个三个元素的一维向量
    Mat atomImage = Mat::zeros(WINDOW_WIDTH, WINDOW_WIDTH, CV_8UC3) + a;           //使每个像素点的值加上相应元素,如果加上一个标量,则只在第一通道上加
    //  cout << atomImage;                 //输出测试的图像元素

    //下面的绘图中,可以预先宏定义颜色、线宽和线型
    Point start(20,80);                    //定义两个点
    Point end(300,300);
    line(atomImage,start,end,Scalar(0, 255, 0),3,6);                               //画直线(图像,起始点,结束点,颜色,线宽,线型)

    rectangle(atomImage,Point(50, 70),Point(100, 300),Scalar(0, 255, 255),3,8);    //画矩形(图像,左上角点,右下角点,颜色,线宽,线型)

    circle(atomImage, Point(60,80),80, Scalar(0, 255, 255), 2, 7);                 //画圆(图像,圆点,颜色,线宽,线型)

    ellipse(atomImage, Point(WINDOW_WIDTH / 2, WINDOW_WIDTH / 2), Size(WINDOW_WIDTH / 8, WINDOW_WIDTH / 16), 30, 0, 300, Scalar(255, 255, 255), -1, 8);
      //画椭圆(图像,中心点,包含椭圆的矩形,旋转角,填充/绘画角度范围,颜色,线宽(-1表示填充),线型)
    putText(atomImage, "hahaha", Point(500, 70), FONT_HERSHEY_SIMPLEX, 0.8,Scalar(0, 0, 0), 1, 8, false);
      //写文字(图像,字符串,文字左下角起始点,字体类型,填充/绘画角度范围,颜色,线宽(-1表示填充),线型,最后一个有默认值)

    // ---------------------------<3>显示绘制出的图像------------------------
    imshow(WINDOW_NAME1, atomImage);
    moveWindow(WINDOW_NAME1, 0, 200);                //移动窗口(窗口名称,移动后的左上点坐标x,y)
    imshow("WINDOW_NAME2", atomImage);
    moveWindow("WINDOW_NAME2", WINDOW_WIDTH, 100);

    waitKey(0);
    return(0);
}

具体函数参数可以参考:http://blog.csdn.net/ubunfans/article/details/24421981

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值