![]() |
IPSDK
4_1_0_2
IPSDK : Image Processing Software Development Kit
|
measure the roughness More...
Classes | |
| class | ipsdk::imaproc::shape::analysis::Roughness2dMsr |
| Measurement object for measure Roughness2d. More... | |
| class | ipsdk::imaproc::shape::analysis::Roughness2dMsrInfo |
| Information object for measure Roughness2d. More... | |
| class | ipsdk::imaproc::shape::analysis::Roughness2dMsrParams |
| Parameter object for measure Roughness2d. More... | |
measure the roughness
Roughness measure needs, among other input parameters, the maximum distance between 2 points for the polygon approximation. This allows to extract another polygon approximation
from the shape
and computes its perimeter
. The roughness
is simply the ratio between those perimeters:
Where
is the perimeter of the input shape
and
is the perimeter of the second polygon approximation
using the measure input parameter PolygApproxMaxDist.
We note that
and increases when the difference between
and
increases.
The following figure illustrates a concave shape with two polygon approximations. The blue polygon has a maximum distance polygon approximation of 1.5 (its default value) and the green one has an approximation of 10:
Here is an example of roughness measurement, with "consider holes" parameter set to 'true'and the maximum distance polygon approximation set to 10:
measure the roughness
| Measure Type | Measure Unit Type | Parameter Type | Result Type | Shape Requirements |
|---|---|---|---|---|
Geometry 2d |
None |
|
Value (ipsdk::ipReal64) |
Boundary Approximation |
This is a geometry 2d measure
This measure can only be used in 2d case
Measure Roughness2d is not associated to any unit [ipsdk::shape::analysis::eMsrUnitFormat::eMUF_NoUnit]
Measure Roughness2d is associated to Roughness2dMsrParams parameters
Measure Roughness2d is associated to ipsdk::shape::analysis::ValueMeasureResult<ipsdk::ipReal64> results
Measure Roughness2d requires boundary approximation from shape data
Measure Roughness2d depends on following measures :
| Measure Mode | Measure Name | Measure Type | Measure Parameters |
|---|---|---|---|
| eMVP_2d | Perimeter2d | Perimeter2d | createHolesBasicPolicyMsrParams(_pMsrParams->getValue<Roughness2dMsrParams::ProcessHoles>()) |
Generic example in 2d case :
1.8.14