加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

Halcon的area_center()函数,用于获取区域的面积和中心

(2014-03-19 09:28:02)
标签:

halcon函数解释

it

分类: Halcon

函数原型:area_center(Regions:::Area,Row,Column)

 

功能:

测得区域的面积和中心位置。面积是由区域的像素个数决定,中心是由区域的行列坐标平均值所决定。如果输入区域是多个,则输出变量分索引号也是多个,并且一一对应。如果区域为空,则所以参数的值为0.0。

 

参数列表:

第1个参数Regions是输入对象,即被测区域

第2个参数Area是输出变量,即被测区域的面积

第3个参数Row是输出变量,即被测区域中心的行索引

第4个参数Column是输出变量,即被测区域中心的列索引

 

复杂度:

如果区域的面积记为F,则算法的时间复杂度为O(sqrt(F))

 

可能前置函数:

threshold()、regiongrowing()、connection()

 

例子(代码):

#include "HIOStream.h"
#include
using namespace std;
#include "HalconCpp.h"
using namespace Halcon;

void main()
{
 HTuple area,row,column;
 HImage img("test");
 HWindow w;
 
 img.Display(w);
 w.Click();

 HRegionArray reg=(img>=164).Connection();

 reg.Display(w);
 w.Click();

 area=reg.AreaCenter(&row,&column);

 for(int i=0;i
 {
  cout<<"Row ["<<i<<"]"<<"="<<row[i].D();
  cout<<"\t\tColumn["<<i<<"]"<<"="<<column[i].D()<<endl;
 }

 cout<<"Total number of regions:"<<reg.Num()<<endl;
}

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有