Back to Adaptive Vision Library website

You are here: Start » Function Reference » Region » Region Features » RegionPerimeterLength


Header: AVL.h
Namespace: avl
Module: FoundationBasic

Computes the length of the input region perimeter.


void avl::RegionPerimeterLength
	const avl::Region& inRegion,
	float& outPerimeterLength


Name Type Default Description
inRegion const Region& Input region
outPerimeterLength float&


The operation computes the perimeter length of a region shape. Because regions are pixel-precise, the literal computation of the length of the region contour would lead to the overestimation of the diagonal edges. Therefore, the filter employs the following equation to approximate the result:


  • sides denotes the number of pixel sides adjacent to the region background
  • vertices is the number of turns to right during clockwise walk along the pixel sides of the region boundary
  • a, b are constants defined as follows:

To compute the actual contour of the region, one can use RegionContours filter.


RegionPerimeterLength run on the sample region (circular region of radius 100) computes outPerimeterLength = 627.382, while the actual perimeter of the perfect circle of radius 100 is 628.318 .

See Also

  • RegionContours – Computes an array of closed paths corresponding to the contours of the input region.
  • RegionDiameter – Computes the longest segment connecting two pixels contained in region and its length.