java如何获取storage_如何获取javacv中提取的对象的x,y坐标?

尝试通过以下代码,它将为您的问题提供答案.

IplImage img=cvLoadImage("pathtosourceimage");

CvSize cvSize = cvSize(img.width(),img.height());

IplImage gry=cvCreateImage(cvSize,255,CV_THRESH_BINARY);

cvAdaptiveThreshold(gry,CV_ADAPTIVE_THRESH_MEAN_C,CV_THRESH_BINARY_INV,11,5);

CvMemStorage storage = CvMemStorage.create();

CvSeq contours = new CvContour(null);

int noOfContors = cvFindContours(gry,storage,CV_CHAIN_APPROX_NONE,new CvPoint(0,0));

CvSeq ptr = new CvSeq();

int count =1;

CvPoint p1 = new CvPoint(0,0),p2 = new CvPoint(0,0);

for (ptr = contours; ptr != null; ptr = ptr.h_next()) {

CvScalar color = CvScalar.BLUE;

CvRect sq = cvBoundingRect(ptr,0);

System.out.println("Contour No ="+count);

System.out.println("X ="+ sq.x()+" Y="+ sq.y());

System.out.println("Height ="+sq.height()+" Width ="+sq.width());

System.out.println("");

p1.x(sq.x());

p2.x(sq.x()+sq.width());

p1.y(sq.y());

p2.y(sq.y()+sq.height());

cvRectangle(img,p1,p2,CV_RGB(255,2,8,0);

cvDrawContours(img,ptr,color,CV_RGB(0,-1,CV_FILLED,0));

count++;

}

cvShowImage("contures",img);

cvWaitKey(0);

这是我给出的给定图像的输出.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值