OPENCV中数字图像处理知识运用

 
 
 
 

cvCircle(CvArr* img, CvPoint center, int radius, CvScalar color, int thickness=1, int lineType=8, int shift=0)

img为图像指针,单通道多通道都行,不需要特殊要求

center为画圆的圆心坐标

radius为圆的半径

color为设定圆的颜色,比如用CV_RGB(255, 0,0)设置为红色

thickness为设置圆线条的粗细,值越大则线条越粗,为负数则是填充效果

 
 
 
 
 
 
   1:  #include"stdafx.h"
   2:  #include"opencv2/opencv.hpp"
   3:  #include"opencv2/opencv_modules.hpp"
   4:  #include"cv.h"
   5:  #include"cxcore.h"
   6:  #include"highgui.h"
   7:   
   8:  #define RaderImageWdith 720
   9:  #define RaderImageHeight 720
  10:   
  11:   
  12:  /*******************从文件中读取一副图像并在屏幕中显示***********************/
  13:  int main()
  14:  {
  15:    /*********************雷达数据处理*********************/
  16:    IplImage* RaderImage = cvCreateImage(cvSize(RaderImageWdith,RaderImageHeight),IPL_DEPTH_8U,1);
  17:    cvZero(RaderImage);
  18:    int dx =  RaderImageWdith/2;
  19:    int dy =  RaderImageHeight*3/4;
  20:    cvCircle(RaderImage, cvPoint(dx,dy),3, CV_RGB(0,255,255), -1, 8,0);
  21:    cvShowImage("RaderImage",RaderImage);
  22:      
  23:      
  24:      
  25:      
  26:      
  27:      
  28:      
  29:      
  30:      //定义一个字符指针,并指向图片所在的位置
  31:    char *PFileName;
  32:    PFileName = "D:\\Pictures\\parrot.jpg";
  33:    //读取一张图片并载入内存,并用一个数据结构指针指向这张图片
  34:    IplImage *Img = cvLoadImage(PFileName);
  35:    if(NULL == Img)//如果读入失败,退出程序
  36:        exit(1);
  37:    //创建一个窗体,标题为Example,自增益
  38:    cvNamedWindow("Example",1);
  39:   
  40:     //用指针指向图像的数据区头部
  41:    uchar *pchar;
  42:    int width = Img ->width;          //读取图像宽度
  43:    int height = Img ->height;       //读取图像高度
  44:    int channel = Img ->nChannels;   //读取图像的通道数
  45:    int widthStep = Img ->widthStep;//读取图像一行像素所占的字节数
  46:    int i,j;
  47:    for(i = 0; i < height ; i++)   //以下是遍历一副图像中的每个像素点
  48:    {
  49:        pchar = (uchar*)Img ->imageData + i * widthStep;
  50:        for(j = 0; j < width; j++)
  51:        {
  52:            uchar *temp = pchar + j * channel;
  53:            temp[0] += 10;  //通道B
  54:            temp[1] += 10;  //通道G
  55:            temp[2] += 10;  //通道R
  56:        }
  57:    }
  58:    //在窗口中显示这张图片
  59:    cvShowImage("Example",Img);
  60:    //暂停程序,等待用户触发一个按键
  61:    cvWaitKey(0);
  62:    //释放图像所分配的内存空间
  63:    cvReleaseImage(&Img);
  64:    //销毁窗口
  65:    cvDestroyWindow("Example");
  66:    return 0;
  67:  }

转载于:https://www.cnblogs.com/zhuxuekui/p/3565410.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值