📄 opencv image processing and computer vision reference manual.mht
字号:
From: <由 Microsoft Internet Explorer 5 保存>
Subject: OpenCV: Image Processing and Computer Vision Reference Manual
Date: Fri, 3 Dec 2004 08:30:54 +0800
MIME-Version: 1.0
Content-Type: multipart/related;
boundary="----=_NextPart_000_0000_01C4D912.687010B0";
type="text/html"
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000
This is a multi-part message in MIME format.
------=_NextPart_000_0000_01C4D912.687010B0
Content-Type: text/html;
charset="gb2312"
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.assuredigit.com/incoming/sourcecode/opencv/chinese_docs/ref/opencvref_cv.htm
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" =
"http://www.w3c.org/TR/1999/REC-html401-19991224/loose.dtd">
<HTML><HEAD><TITLE>OpenCV: Image Processing and Computer Vision =
Reference Manual</TITLE>
<META http-equiv=3DContent-Type content=3D"text/html; =
charset=3Dgb2312"><LINK=20
href=3D"http://www.assuredigit.com/incoming/sourcecode/opencv/chinese_doc=
s/ref/opencvref.css"=20
type=3Dtext/css charset=3DISO-8859-1 rel=3DSTYLESHEET>
<META content=3D"MSHTML 6.00.2600.0" name=3DGENERATOR></HEAD>
<BODY>
<H1>CV Reference Manual</H1>
<HR>
<P>
<UL>
<LI><A=20
=
href=3D"http://www.assuredigit.com/incoming/sourcecode/opencv/chinese_doc=
s/ref/opencvref_cv.htm#cv_imgproc">Image=20
Processing</A>=20
<UL>
<LI><A=20
=
href=3D"http://www.assuredigit.com/incoming/sourcecode/opencv/chinese_doc=
s/ref/opencvref_cv.htm#cv_imgproc_features">Gradients,=20
Edges and Corners</A>=20
<LI><A=20
=
href=3D"http://www.assuredigit.com/incoming/sourcecode/opencv/chinese_doc=
s/ref/opencvref_cv.htm#cv_imgproc_resampling">Sampling,=20
Interpolation and Geometrical Transforms</A>=20
<LI><A=20
=
href=3D"http://www.assuredigit.com/incoming/sourcecode/opencv/chinese_doc=
s/ref/opencvref_cv.htm#cv_imgproc_morphology">Morphological=20
Operations</A>=20
<LI><A=20
=
href=3D"http://www.assuredigit.com/incoming/sourcecode/opencv/chinese_doc=
s/ref/opencvref_cv.htm#cv_imgproc_filters">Filters=20
and Color Conversion</A>=20
<LI><A=20
=
href=3D"http://www.assuredigit.com/incoming/sourcecode/opencv/chinese_doc=
s/ref/opencvref_cv.htm#cv_imgproc_pyramids">Pyramids=20
and the Applications</A>=20
<LI><A=20
=
href=3D"http://www.assuredigit.com/incoming/sourcecode/opencv/chinese_doc=
s/ref/opencvref_cv.htm#cv_imgproc_ccomp">Connected=20
Components</A>=20
<LI><A=20
=
href=3D"http://www.assuredigit.com/incoming/sourcecode/opencv/chinese_doc=
s/ref/opencvref_cv.htm#cv_imgproc_moments">Image=20
and Contour Moments</A>=20
<LI><A=20
=
href=3D"http://www.assuredigit.com/incoming/sourcecode/opencv/chinese_doc=
s/ref/opencvref_cv.htm#cv_imgproc_special">Special=20
Image Transforms</A>=20
<LI><A=20
=
href=3D"http://www.assuredigit.com/incoming/sourcecode/opencv/chinese_doc=
s/ref/opencvref_cv.htm#cv_imgproc_histograms">Histograms</A>=20
<LI><A=20
=
href=3D"http://www.assuredigit.com/incoming/sourcecode/opencv/chinese_doc=
s/ref/opencvref_cv.htm#cv_imgproc_matching">Matching</A>=20
</LI></UL>
<LI><A=20
=
href=3D"http://www.assuredigit.com/incoming/sourcecode/opencv/chinese_doc=
s/ref/opencvref_cv.htm#cv_sa">Structural=20
Analysis</A>=20
<UL>
<LI><A=20
=
href=3D"http://www.assuredigit.com/incoming/sourcecode/opencv/chinese_doc=
s/ref/opencvref_cv.htm#cv_sa_contours">Contour=20
Processing</A>=20
<LI><A=20
=
href=3D"http://www.assuredigit.com/incoming/sourcecode/opencv/chinese_doc=
s/ref/opencvref_cv.htm#cv_sa_compgeom">Computational=20
Geometry</A>=20
<LI><A=20
=
href=3D"http://www.assuredigit.com/incoming/sourcecode/opencv/chinese_doc=
s/ref/opencvref_cv.htm#cv_sa_subdiv">Planar=20
Subdivisions</A> </LI></UL>
<LI><A=20
=
href=3D"http://www.assuredigit.com/incoming/sourcecode/opencv/chinese_doc=
s/ref/opencvref_cv.htm#cv_motion">Motion=20
Analysis and Object Tracking</A>=20
<UL>
<LI><A=20
=
href=3D"http://www.assuredigit.com/incoming/sourcecode/opencv/chinese_doc=
s/ref/opencvref_cv.htm#cv_motion_acc">Accumulation=20
of Background Statistics</A>=20
<LI><A=20
=
href=3D"http://www.assuredigit.com/incoming/sourcecode/opencv/chinese_doc=
s/ref/opencvref_cv.htm#cv_motion_motempl">Motion=20
Templates</A>=20
<LI><A=20
=
href=3D"http://www.assuredigit.com/incoming/sourcecode/opencv/chinese_doc=
s/ref/opencvref_cv.htm#cv_motion_tracking">Object=20
Tracking</A>=20
<LI><A=20
=
href=3D"http://www.assuredigit.com/incoming/sourcecode/opencv/chinese_doc=
s/ref/opencvref_cv.htm#cv_motion_optflow">Optical=20
Flow</A>=20
<LI><A=20
=
href=3D"http://www.assuredigit.com/incoming/sourcecode/opencv/chinese_doc=
s/ref/opencvref_cv.htm#cv_motion_estimators">Estimators</A>=20
</LI></UL>
<LI><A=20
=
href=3D"http://www.assuredigit.com/incoming/sourcecode/opencv/chinese_doc=
s/ref/opencvref_cv.htm#cv_pattern">Pattern=20
Recognition</A>=20
<UL>
<LI><A=20
=
href=3D"http://www.assuredigit.com/incoming/sourcecode/opencv/chinese_doc=
s/ref/opencvref_cv.htm#cv_pattern_objdetection">Object=20
Detection</A> </LI></UL>
<LI><A=20
=
href=3D"http://www.assuredigit.com/incoming/sourcecode/opencv/chinese_doc=
s/ref/opencvref_cv.htm#cv_3d">Camera=20
Calibration and 3D Reconstruction</A>=20
<UL>
<LI><A=20
=
href=3D"http://www.assuredigit.com/incoming/sourcecode/opencv/chinese_doc=
s/ref/opencvref_cv.htm#cv_3d_calibration">Camera=20
Calibration</A>=20
<LI><A=20
=
href=3D"http://www.assuredigit.com/incoming/sourcecode/opencv/chinese_doc=
s/ref/opencvref_cv.htm#cv_3d_pose">Pose=20
Estimation</A>=20
<LI><A=20
=
href=3D"http://www.assuredigit.com/incoming/sourcecode/opencv/chinese_doc=
s/ref/opencvref_cv.htm#cv_3d_epipolar">Epipolar=20
Geometry</A> </LI></UL>
<LI><A=20
=
href=3D"http://www.assuredigit.com/incoming/sourcecode/opencv/chinese_doc=
s/ref/opencvref_cv.htm#cv_func_index">Alphabetical=20
List of Functions</A>=20
<LI><A=20
=
href=3D"http://www.assuredigit.com/incoming/sourcecode/opencv/chinese_doc=
s/ref/opencvref_cv.htm#cv_bib">Bibliography</A>=20
</LI></UL>
<P></P>
<HR>
<H1><A name=3Dcv_imgproc>Image Processing</A></H1>
<P>Note:<BR>The chapter describes functions for image processing and =
analysis.=20
Most of the functions work with 2d arrays of pixels. We refer the arrays =
as=20
"images" however they do not neccesserily have to be IplImage's, they =
may be=20
CvMat's or CvMatND's as well. </P>
<HR>
<H2><A name=3Dcv_imgproc_features>Gradients, Edges and Corners</A></H2>
<HR>
<H3><A name=3Ddecl_cvSobel>Sobel</A></H3>
<P class=3DBlurb>Calculates first, second, third or mixed image =
derivatives using=20
extended Sobel operator</P><PRE>void cvSobel( const CvArr* src, CvArr* =
dst, int xorder, int yorder, int aperture_size=3D3 );
</PRE>
<P>
<DL>
<DT>src
<DD>Source image.=20
<DT>dst
<DD>Destination image.=20
<DT>xorder
<DD>Order of the derivative x .=20
<DT>yorder
<DD>Order of the derivative y .=20
<DT>aperture_size
<DD>Size of the extended Sobel kernel, must be 1, 3, 5 or 7. In all =
cases=20
except 1, aperture_size =A1=C1aperture_size separable kernel will be =
used to=20
calculate the derivative. For <CODE>aperture_size</CODE>=3D1 3x1 or =
1x3 kernel=20
is used (Gaussian smoothing is not done). There is also special value=20
<CODE>CV_SCHARR</CODE> (=3D-1) that corresponds to 3x3 Scharr filter =
that may=20
give more accurate results than 3x3 Sobel. Scharr aperture is: <PRE>| =
-3 0 3|
|-10 0 10|
| -3 0 3|
</PRE>for x-derivative or transposed for y-derivative. </DD></DL>
<P>The function <A=20
href=3D"http://www.assuredigit.com/incoming/sourcecode/opencv/chinese_doc=
s/ref/opencvref_cv.htm#decl_cvSobel">cvSobel</A>=20
calculates the image derivative by convolving the image with the =
appropriate=20
kernel:</P><PRE>dst(x,y) =3D =
d<SUP>xorder+yoder</SUP>src/dx<SUP>xorder</SUP>•dy<SUP>yorder</SUP>=
|<SUB>(x,y)</SUB>
</PRE>The Sobel operators combine Gaussian smoothing and differentiation =
so the=20
result is more or less robust to the noise. Most often, the function is =
called=20
with (xorder=3D1, yorder=3D0, aperture_size=3D3) or (xorder=3D0, =
yorder=3D1,=20
aperture_size=3D3) to calculate first x- or y- image derivative. The =
first case=20
corresponds to
<P></P><PRE> |-1 0 1|
|-2 0 2|
|-1 0 1|
</PRE>
<P>kernel and the second one corresponds to</P><PRE> |-1 -2 -1|
| 0 0 0|
| 1 2 1|
or
| 1 2 1|
| 0 0 0|
|-1 -2 -1|
</PRE>kernel, depending on the image origin (<CODE>origin</CODE> field =
of=20
<CODE>IplImage</CODE> structure). No scaling is done, so the destination =
image=20
usually has larger by absolute value numbers than the source image. To =
avoid=20
overflow, the function requires 16-bit destination image if the source =
image is=20
8-bit. The result can be converted back to 8-bit using <A=20
href=3D"http://www.assuredigit.com/incoming/sourcecode/opencv/chinese_doc=
s/ref/opencvref_cv.htm#decl_cvConvertScale">cvConvertScale</A>=20
or <A=20
href=3D"http://www.assuredigit.com/incoming/sourcecode/opencv/chinese_doc=
s/ref/opencvref_cxcore.htm#decl_cvConvertScaleAbs">cvConvertScaleAbs</A> =
functions. Besides 8-bit images the function can process 32-bit =
floating-point=20
images. Both source and destination must be single-channel images of =
equal size=20
or ROI size.=20
<P></P>
<HR>
<H3><A name=3Ddecl_cvLaplace>Laplace</A></H3>
<P class=3DBlurb>Calculates Laplacian of the image</P><PRE>void =
cvLaplace( const CvArr* src, CvArr* dst, int aperture_size=3D3 );
</PRE>
<P>
<DL>
<DT>src
<DD>Source image.=20
<DT>dst
<DD>Destination image.=20
<DT>aperture_size
<DD>Aperture size (it has the same meaning as in <A=20
=
href=3D"http://www.assuredigit.com/incoming/sourcecode/opencv/chinese_doc=
s/ref/opencvref_cv.htm#decl_cvSobel">cvSobel</A>).=20
</DD></DL>
<P>The function <A=20
href=3D"http://www.assuredigit.com/incoming/sourcecode/opencv/chinese_doc=
s/ref/opencvref_cv.htm#decl_cvLaplace">cvLaplace</A>=20
calculates Laplacian of the source image by summing second x- and y- =
derivatives=20
calculated using Sobel operator:</P><PRE>dst(x,y) =3D =
d<SUP>2</SUP>src/dx<SUP>2</SUP> + d<SUP>2</SUP>src/dy<SUP>2</SUP>
</PRE>
<P>Specifying <CODE>aperture_size</CODE>=3D1 gives the fastest variant =
that is=20
equal to convolving the image with the following kernel:</P><PRE>|0 1 =
0|
|1 -4 1|
|0 1 0|
</PRE>
<P>Similar to <A=20
href=3D"http://www.assuredigit.com/incoming/sourcecode/opencv/chinese_doc=
s/ref/opencvref_cv.htm#decl_cvSobel">cvSobel</A>=20
function, no scaling is done and the same combinations of input and =
output=20
formats are supported. </P>
<HR>
<H3><A name=3Ddecl_cvCanny>Canny</A></H3>
<P class=3DBlurb>Implements Canny algorithm for edge =
detection</P><PRE>void cvCanny( const CvArr* image, CvArr* edges, double =
threshold1,
double threshold2, int aperture_size=3D3 );
</PRE>
<P>
<DL>
<DT>image
<DD>Input image.=20
<DT>edges
<DD>Image to store the edges found by the function.=20
<DT>threshold1
<DD>The first threshold.=20
<DT>threshold2
<DD>The second threshold.=20
<DT>aperture_size
<DD>Aperture parameter for Sobel operator (see <A=20
=
href=3D"http://www.assuredigit.com/incoming/sourcecode/opencv/chinese_doc=
s/ref/opencvref_cv.htm#decl_cvSobel">cvSobel</A>).=20
</DD></DL>
<P>The function <A=20
href=3D"http://www.assuredigit.com/incoming/sourcecode/opencv/chinese_doc=
s/ref/opencvref_cv.htm#decl_cvCanny">cvCanny</A>=20
finds the edges on the input image <CODE>image</CODE> and marks them in =
the=20
output image <CODE>edges</CODE> using the Canny algorithm. The smallest =
of=20
<CODE>threshold1</CODE> and <CODE>threshold2</CODE> is used for edge =
linking,=20
the largest - to find initial segments of strong edges.</P>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -