b2科目四模拟试题多少题驾考考爆了怎么补救
b2科目四模拟试题多少题 驾考考爆了怎么补救

cvcircle_cvrectangle_malloc

电脑杂谈  发布时间:2016-11-22 21:02:06  来源:网络整理

malloc_cvcircle_cvrectangle

1、创建一个100*100的3通道图像,先把图设置成黑色,再用cvCircle画一个圆,最后显示之。

#include "stdafx.h"

#include <cv.h>
#include <cxcore.h>
#include <highgui.h>

#include <stdlib.h>
int _tmain(int argc, _TCHAR* argv[])
{
	//IPlImage * img = cvCreatMat(
	IplImage * img = cvCreateImage( cvSize(100,100), IPL_DEPTH_8U, 3);//创建一个IplImage对象,尺寸100*100,字节型,3通道

	cvZero(img);//将像素值全部置为0

	cvCircle(img,cvPoint(50,50), 45, cvScalar(255,255,255,0.5), 1, 8, 0);//画一个圈

	cvNamedWindow("show an image", CV_WINDOW_AUTOSIZE);
	cvShowImage("show an image", img);
	cvWaitKey(0);
	cvReleaseImage(&img);
	cvDestroyWindow("show an image");
	return 0;
}
结果:

2、创建一个100*100的3通道图像,先把图设置成黑色,再通过cvPtr2D将指针指向绿色通道,以(20,5)和(40,20)为定点画一个长方形

#include <cv.h>
#include <cxcore.h>
#include <highgui.h>

#include <stdlib.h>
int _tmain(int argc, _TCHAR* argv[])
{
	IplImage * img = cvCreateImage( cvSize(100,100), IPL_DEPTH_8U, 3);//创建一个IplImage对象
	cvZero(img);//将像素值全部置为0


	int top = 20,left = 5, bottom = 40, right = 20;
        for(;top <= bottom;top++)//两条竖线
        {
            *(cvPtr2D(img,top,left)+1)=255;//green
            *(cvPtr2D(img,top,right)+1)=255;//green
        }
        top = 20;
        for(left = 5;left <= right; left++)//两条横线
        {
            //*(cvPtr2D(img,top,left))=255;//blue
            *(cvPtr2D(img,top,left)+1)=255;//green
            //*(cvPtr2D(img,top,left)+2)=255;//red
            *(cvPtr2D(img,bottom,left)+1)=255;//green
        }
	cvNamedWindow("show an image", CV_WINDOW_AUTOSIZE);
	cvShowImage("show an image", img);
	cvWaitKey(0);
	cvReleaseImage(&img);
	cvDestroyWindow("show an image");

	return 0;
}


本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/jisuanjixue/article-21538-1.html

相关阅读
    发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

    • 刘子星
      刘子星

      就好比当年珍珠港一样

    热点图片
    拼命载入中...