《学习opencv》笔记——关于一些绘图的函数
2016-06-20 16:13
501 查看
http://blog.csdn.net/zhurui_idea/article/details/29195513
主题 OpenCV
绘图函数
(1)直线cvLine函数
其结构
实例代码
输出结果
(2)矩形cvRectangle函数
其结构
实例代码
输出结果
(3)圆形cvCircle函数
其结构
实例代码
输出结果
(4)椭圆cvEllipse函数
其结构
实例代码
输出结果
(5)多边形函数
1.cvFillPoly函数
其结构
2.cvFillConvexPoly函数
其结构
3.cvPolyLine函数
实例代码
输出结果
(6)绘制文字cvPutText函数
其结构
实例代码
输出结果
to be continued
主题 OpenCV
绘图函数
(1)直线cvLine函数
其结构
void cvLine(//画直线 CvArr* array,//画布图像 CvPoint pt1,//起始点 CvPoint pt2,//终点 CvScalar color,//颜色 int thickness = 1,//宽度 int connectivity = 8//反走样 );
实例代码
#include <cv.h> #include <highgui.h> #include <stdio.h> int main(int argc, char** argv) { IplImage *src1; src1 = cvLoadImage("10.jpg"); cvLine(src1,cvPoint(20,20),cvPoint(250,250),CV_RGB(255,0,0),8); cvShowImage( "原图", src1); cvWaitKey(); return 0; }
输出结果
(2)矩形cvRectangle函数
其结构
void cvRectangle(//画矩形 CvArr* array,//画布图形 CvPoint pt1,//起始点 CvPoint pt2,//终点 CvScalar color,//颜色 int thickness = 1,//宽度 );
实例代码
#include <cv.h> #include <highgui.h> #include <stdio.h> int main(int argc, char** argv) { IplImage *src1; src1 = cvLoadImage("10.jpg"); cvRectangle(src1,cvPoint(20,20),cvPoint(200,200),CV_RGB(0,255,0),8); cvShowImage( "原图", src1); cvWaitKey(); return 0; }
输出结果
(3)圆形cvCircle函数
其结构
void cvCircle(//画圆 CvArr* array,//画布图像 CvPoint cevter,//圆心 int radius,//半径 CvScalar color,//颜色 int thickness = 1,//宽度 int connectivity = 8//反走样 );
实例代码
#include <cv.h> #include <highgui.h> #include <stdio.h> int main(int argc, char** argv) { IplImage *src1; src1 = cvLoadImage("10.jpg"); cvCircle(src1,cvPoint(150,150),100,CV_RGB(0,0,255),5); cvShowImage( "原图", src1); cvWaitKey(); return 0; }
输出结果
(4)椭圆cvEllipse函数
其结构
void cvEllipse(//画椭圆 CvArr* img,//画布图像 CvPoint center,//中心点 CvSize axes,//长短轴 double angle,//偏离主轴角度 double start_angle,//弧线开始位置 double end_angle,//弧线结束位置 CvScalar color,//颜色 int thickness = 1,//宽度 int line_type = 8// );
实例代码
#include <cv.h> #include <highgui.h> #include <stdio.h> int main(int argc, char** argv) { IplImage *src1; src1 = cvLoadImage("10.jpg"); cvEllipse(src1,cvPoint(150,150),cvSize(150,50),45,0,360,CV_RGB(255,0,0),3); cvShowImage( "原图", src1); cvWaitKey(); return 0; }
输出结果
(5)多边形函数
1.cvFillPoly函数
其结构
void cvFillPoly(//画多个实心多边形 CvArr* img,//画布图像 CvPoint** pts,//点序列 int* npt,//计数点数组 int contours,//显示几个多边形 CvScalar color,//颜色 int line_type = 8 );
2.cvFillConvexPoly函数
其结构
void cvFillConvexPoly(//画一个实心多边形 CvArr* img,//画布图像 CvPoint* pts,//点序列 int npt,//计数点数组 CvScalar color,//颜色 int line_type = 8 );
3.cvPolyLine函数
void cvFillPoly(//画多个空心多边形 CvArr* img,//画布图像 CvPoint** pts,//点序列 int* npt,//计数点数组 int contours,//显示几个多边形 int is_closed,//是否从上个多边形尾点开始 CvScalar color,//颜色 int thickness = 1,//宽度 int line_type = 8 );
实例代码
#include <cv.h> #include <highgui.h> #include <stdio.h> int main(int argc, char** argv) { IplImage *src1,*src2,*src3; src1 = cvLoadImage("7.jpg"); src2 = cvLoadImage("8.jpg"); src3 = cvLoadImage("9.jpg"); int arr[3]= {4,4,4}; CvPoint ** pt =new CvPoint*[3]; pt[0] = new CvPoint[4]; pt[0][0] = cvPoint(10,10); pt[0][1] = cvPoint(210,10); pt[0][2] = cvPoint(210,210); pt[0][3] = cvPoint(10,210); pt[1] = new CvPoint[4]; pt[1][0] = cvPoint(10,310); pt[1][1] = cvPoint(210,310); pt[1][2] = cvPoint(210,510); pt[1][3] = cvPoint(10,510); pt[2] = new CvPoint[4]; pt[2][0] = cvPoint(310,10); pt[2][1] = cvPoint(410,10); pt[2][2] = cvPoint(410,210); pt[2][3] = cvPoint(310,210); cvPolyLine(src1, pt, arr, 3, 1, CV_RGB(0,255,0),5); cvFillPoly(src2, pt,arr,3,CV_RGB(250,0,0)); cvFillConvexPoly(src3,pt[0],4,CV_RGB(0,0,255)); cvShowImage( "原图1", src1); cvShowImage( "原图2", src2); cvShowImage( "原图3", src3); cvWaitKey(); return 0; }
输出结果
(6)绘制文字cvPutText函数
其结构
void cvPutText(//绘制文字 CvArr* img,//绘图图像 const char* text,//文字内容 CvPoint origin,//文字起始位置 const CvFont* font,//文字字体设置 CvScalar color//颜色 );
实例代码
#include <cv.h> #include <highgui.h> #include <stdio.h> int main(int argc, char** argv) { IplImage *src1,*src2,*src3; src1 = cvLoadImage("10.jpg"); char* str = "I am a student!"; CvFont* cf = new CvFont(); cvInitFont(cf,CV_FONT_HERSHEY_SIMPLEX,1.0,0.5); cvPutText(src1,str,cvPoint(50,100),cf,CV_RGB(255,0,0)); cvShowImage( "原图1", src1); cvWaitKey(); return 0; }
输出结果
to be continued
相关文章推荐
- Tomcat是如何启动及运行—对tomcat的源码解析
- leetcode之Russian Doll Envelopes
- CentOs 6.2 安装android studio 的问题
- Linux 使用 iptables 禁止某些 IP 访问
- ecshop中的浏览历史
- Linux I/O模型
- OpenLayers 之 地图图层数据来源(ol.source)详解,ps图层混合模式详解
- PHP Apache Mysql的配置搭建及多站点配置
- 每天一个Linux命令(53)service命令
- BASH基本特性
- 2-5打开新窗口(window.open)
- 获取用户根目录,不在tomcat目录下
- Centos 7.2 安装 Mysql 5.7.13
- Centos环境下将修改后的MAC地址永久保存的正确
- CentOS 6.5 安装与配置LAMP FTP
- 让Nginx处理Django的静态文件
- 【shell】case语句
- linux 安装nginx
- 微信授权登录基本流程(网站应用)
- centos 6.5下安装mysql+nginx+redmine 3.1.0 笔记