Back to Aurora Vision Library website

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

RegionPerimeterLength


Header: AVL.h
Namespace: avl
Module: FoundationBasic

Computes the length of the input region perimeter.

Syntax

C++
C#
 
void avl::RegionPerimeterLength
(
	const avl::Region& inRegion,
	float& outPerimeterLength
)

Parameters

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

Description

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:

Where

  • 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.

Examples

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.