![]() |
zxhproj v 2.2
zxhproj
|
zxhEdgeCanny.cpp return canny edge contour points image, no gaussian filter is applied here More...
#include <zxhEdgeCanny.h>
Public Member Functions | |
| virtual bool | Evaluate () |
| bool | EvaluateCannyImage () |
| zxhImageDataT< float > * | GetCannyImage () |
| bool | RemoveSmallConnectRegions (float fFraction=0.01) |
| void | SetThreshold (float low, float high) |
| void | GetThreshold (float &low, float &high) |
Protected Member Functions | |
| bool | ThresholdEdgePoint () |
| 2) Threshold and searching edge point candidates | |
| bool | Hysteresis () |
| 3) Hysteresis | |
Protected Attributes | |
| zxhImageDataT< float > | m_CannyImage |
| zxhImageData | m_imgResampleImage |
| zxhImageDataT< float > | m_imgResampleImageGradientMag |
| float | m_Threshold [2] |
zxhEdgeCanny.cpp return canny edge contour points image, no gaussian filter is applied here
| bool zxhEdgeCannyT< PixelType >::Evaluate | ( | ) | [virtual] |
run algorithm to compute the edge image, return whether success 1) compute differentiate 2) Threshold 3)hysteresis
run algorithm to compute the edge image, return whether success 1) compute differentiate=EvaluateCannyImage 2) Threshold 3)hysteresis
Implements zxhEdgeBaseT< PixelType >.
Reimplemented in zxhMultiCannyEdge.
| bool zxhEdgeCannyT< PixelType >::EvaluateCannyImage | ( | ) |
1) only compute differentiate c(x,y,z) = [fxx * fx^2 + fyy * fy^2 + fzz * fz^2 + 2( fx*fy*fxy + fx*fz*fxz + fy*fz*fyz )]/(fx^2 + fy^2 + fz^2);
1) compute differentiate c(x,y,z) = [fxx * fx^2 + fyy * fy^2 + fzz * fz^2 + 2( fx*fy*fxy + fx*fz*fxz + fy*fz*fyz )]/(fx^2 + fy^2 + fz^2);
| bool zxhEdgeCannyT< PixelType >::Hysteresis | ( | ) | [protected] |
3) Hysteresis
3) Hysteresis change -1 and -3 into Foreground and -2 and 0 into background
| bool zxhEdgeCannyT< PixelType >::RemoveSmallConnectRegions | ( | float | fFraction = 0.01 | ) |
remove small regions if the region's connected pixels is smaller than fFraction of total region pixels then remove them
zxhImageDataT<float> zxhEdgeCannyT< PixelType >::m_CannyImage [protected] |
store the second order canny image c(x,y,z) = [fxx * fx^2 + fyy * fy^2 + fzz * fz^2 + 2( fx*fy*fxy + fx*fz*fxz + fy*fz*fyz )]/(fx^2 + fy^2 + fz^2);