Retrieves contours from the binary image and returns the number of retrieved contours. The pointer firstContour is filled by the function. It will contain pointer to the first most outer contour or IntPtr.Zero if no contours is detected (if the image is completely black). Other contours may be reached from firstContour using h_next and v_next links. The sample in cvDrawContours discussion shows how to use contours for connected component detection. Contours can be also used for shape analysis and object recognition - see squares.c in OpenCV sample directory
The function modifies the source image? content
Namespace: Emgu.CVAssembly: Emgu.CV (in Emgu.CV.dll) Version: 2.2.1.1150 (2.2.1.1150)
Syntax
C# | Visual Basic | Visual C++ |
Parameters
- image
- IntPtr
The source 8-bit single channel image. Non-zero pixels are treated as 1s, zero pixels remain 0s - that is image treated as binary. To get such a binary image from grayscale, one may use cvThreshold, cvAdaptiveThreshold or cvCanny. The function modifies the source image content
- storage
- IntPtr
Container of the retrieved contours
- firstContour
- IntPtr%
Output parameter, will contain the pointer to the first outer contour
- headerSize
- Int32
Size of the sequence header, >=sizeof(CvChain) if method=CV_CHAIN_CODE, and >=sizeof(CvContour) otherwise
- mode
- RETR_TYPE
Retrieval mode
- method
- CHAIN_APPROX_METHOD
Approximation method (for all the modes, except CV_RETR_RUNS, which uses built-in approximation).
- offset
- Point
Offset, by which every contour point is shifted. This is useful if the contours are extracted from the image ROI and then they should be analyzed in the whole image context
Return Value
[Missing <returns> documentation for "M:Emgu.CV.CvInvoke.cvFindContours(System.IntPtr,System.IntPtr,System.IntPtr@,System.Int32,Emgu.CV.CvEnum.RETR_TYPE,Emgu.CV.CvEnum.CHAIN_APPROX_METHOD,System.Drawing.Point)"]