opencv中 cvSet2D 给某个点赋值,
CVAPI(void) cvSet2D( CvArr* arr, int idx0, int idx1, CvScalar value );
idx0代表是的行,即高度,对应于我们平常坐标系的y, idx1代表的是列,即宽度。。千万要注意坐标的顺序。
下面我想贴出代码 大家可以看看 ,这个代码是教大家如何画全0,全255像素的直线;
好了 不多说了 上代码啦 哈哈哈 !!!!!!!
#include<opencv2/opencv.hpp> #include <iostream> using namespace std; using namespace cv; int main() { IplImage *src=cvLoadImage("e:\\kankan\\baihe.jpg"); IplImage *dst=cvCreateImage(cvSize(255, 255), 8, 3); for (int y=dst->height-1; y>0; y--) { cvSet2D(dst, y, dst->height-y,cvScalar(255-y,255-y,255-y,0)); } cvNamedWindow("src"); cvShowImage("src",src); cvNamedWindow("dst"); cvShowImage("dst",dst); cvReleaseImage(&src); cvReleaseImage(&dst); cvWaitKey(0); return 0; }
原图:
画的图:
相信大家看到了 应该知道是怎么回事的啦 ,很简单的哦。。。