📄 sift_8h.html
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"><title>SIFT: sift.h File Reference</title><link href="doxygen.css" rel="stylesheet" type="text/css"><link href="tabs.css" rel="stylesheet" type="text/css"></head><body><!-- Generated by Doxygen 1.5.2 --><div class="tabs"> <ul> <li><a href="index.html"><span>Main Page</span></a></li> <li><a href="annotated.html"><span>Data Structures</span></a></li> <li class="current"><a href="files.html"><span>Files</span></a></li> </ul></div><div class="tabs"> <ul> <li><a href="files.html"><span>File List</span></a></li> <li><a href="globals.html"><span>Globals</span></a></li> </ul></div><h1>sift.h File Reference</h1><hr><a name="_details"></a><h2>Detailed Description</h2>Functions for detecting SIFT image features. <p>For more information, refer to:<p>Lowe, D. Distinctive image features from scale-invariant keypoints. <em>International Journal of Computer Vision, 60</em>, 2 (2004), pp.91--110.<p>Copyright (C) 2006-2007 Rob Hess <<a href="mailto:hess@eecs.oregonstate.edu">hess@eecs.oregonstate.edu</a>><p>Note: The SIFT algorithm is patented in the United States and cannot be used in commercial products without a license from the University of British Columbia. For more information, refer to the file LICENSE.ubc that accompanied this distribution.<p><dl class="version" compact><dt><b>Version:</b></dt><dd>1.1.1-20070913 </dd></dl><p><code>#include "cxcore.h"</code><br><table border="0" cellpadding="0" cellspacing="0"><tr><td></td></tr><tr><td colspan="2"><br><h2>Data Structures</h2></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structdetection__data.html">detection_data</a></td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">holds <a class="el" href="structfeature.html" title="Structure to represent an affine invariant image feature.">feature</a> data relevant to detection <a href="structdetection__data.html#_details">More...</a><br></td></tr><tr><td colspan="2"><br><h2>Defines</h2></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="19f3e70f0f896ab32a10ba077f9e7c4c"></a><!-- doxytag: member="sift.h::SIFT_INTVLS" ref="19f3e70f0f896ab32a10ba077f9e7c4c" args="" -->#define </td><td class="memItemRight" valign="bottom"><a class="el" href="sift_8h.html#19f3e70f0f896ab32a10ba077f9e7c4c">SIFT_INTVLS</a> 3</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">default number of sampled intervals per octave <br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="94631e7c4450c2e5b17537fdcd0c8c0e"></a><!-- doxytag: member="sift.h::SIFT_SIGMA" ref="94631e7c4450c2e5b17537fdcd0c8c0e" args="" -->#define </td><td class="memItemRight" valign="bottom"><a class="el" href="sift_8h.html#94631e7c4450c2e5b17537fdcd0c8c0e">SIFT_SIGMA</a> 1.6</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">default sigma for initial gaussian smoothing <br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="e1ef6659f1f7745f2dbd172290f3c9a7"></a><!-- doxytag: member="sift.h::SIFT_CONTR_THR" ref="e1ef6659f1f7745f2dbd172290f3c9a7" args="" -->#define </td><td class="memItemRight" valign="bottom"><a class="el" href="sift_8h.html#e1ef6659f1f7745f2dbd172290f3c9a7">SIFT_CONTR_THR</a> 0.04</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">default threshold on keypoint contrast |D(x)| <br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f628c36786ebd0447914599222e3f4a6"></a><!-- doxytag: member="sift.h::SIFT_CURV_THR" ref="f628c36786ebd0447914599222e3f4a6" args="" -->#define </td><td class="memItemRight" valign="bottom"><a class="el" href="sift_8h.html#f628c36786ebd0447914599222e3f4a6">SIFT_CURV_THR</a> 10</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">default threshold on keypoint ratio of principle curvatures <br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="e194d6044a398e670e4b3a8a3ff471ef"></a><!-- doxytag: member="sift.h::SIFT_IMG_DBL" ref="e194d6044a398e670e4b3a8a3ff471ef" args="" -->#define </td><td class="memItemRight" valign="bottom"><a class="el" href="sift_8h.html#e194d6044a398e670e4b3a8a3ff471ef">SIFT_IMG_DBL</a> 1</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">double image size before pyramid construction? <br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="82abba99c2beb3585d449dce8dd7e0bf"></a><!-- doxytag: member="sift.h::SIFT_DESCR_WIDTH" ref="82abba99c2beb3585d449dce8dd7e0bf" args="" -->#define </td><td class="memItemRight" valign="bottom"><a class="el" href="sift_8h.html#82abba99c2beb3585d449dce8dd7e0bf">SIFT_DESCR_WIDTH</a> 4</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">default width of descriptor histogram array <br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="6a12fa45503d7dc95042ab6738f554d2"></a><!-- doxytag: member="sift.h::SIFT_DESCR_HIST_BINS" ref="6a12fa45503d7dc95042ab6738f554d2" args="" -->#define </td><td class="memItemRight" valign="bottom"><a class="el" href="sift_8h.html#6a12fa45503d7dc95042ab6738f554d2">SIFT_DESCR_HIST_BINS</a> 8</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">default number of bins per histogram in descriptor array <br></td></tr><tr><td colspan="2"><br><h2>Functions</h2></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="sift_8h.html#b38678735e475d5f9ee393681298064b">sift_features</a> (IplImage *img, struct <a class="el" href="structfeature.html">feature</a> **feat)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Finds SIFT features in an image using default parameter values. <a href="#b38678735e475d5f9ee393681298064b"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="sift_8h.html#2fa4531923bf71c51c7b27c4728a18d7">_sift_features</a> (IplImage *img, struct <a class="el" href="structfeature.html">feature</a> **feat, int intvls, double sigma, double contr_thr, int curv_thr, int img_dbl, int descr_width, int descr_hist_bins)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Finda SIFT features in an image using user-specified parameter values. <a href="#2fa4531923bf71c51c7b27c4728a18d7"></a><br></td></tr></table><hr><h2>Function Documentation</h2><a class="anchor" name="b38678735e475d5f9ee393681298064b"></a><!-- doxytag: member="sift.h::sift_features" ref="b38678735e475d5f9ee393681298064b" args="(IplImage *img, struct feature **feat)" --><div class="memitem"><div class="memproto"> <table class="memname"> <tr> <td class="memname">int sift_features </td> <td>(</td> <td class="paramtype">IplImage * </td> <td class="paramname"> <em>img</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">struct <a class="el" href="structfeature.html">feature</a> ** </td> <td class="paramname"> <em>feat</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td width="100%"></td> </tr> </table></div><div class="memdoc"><p>Finds SIFT features in an image using default parameter values. <p>All detected features are stored in the array pointed to by <em>feat</em>.<p><dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>img</em> </td><td>the image in which to detect features </td></tr> <tr><td valign="top"></td><td valign="top"><em>feat</em> </td><td>a pointer to an array in which to store detected features</td></tr> </table></dl><dl class="return" compact><dt><b>Returns:</b></dt><dd>Returns the number of features stored in <em>feat</em> or -1 on failure </dd></dl><dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="sift_8h.html#2fa4531923bf71c51c7b27c4728a18d7" title="Finda SIFT features in an image using user-specified parameter values.">_sift_features()</a> </dd></dl></div></div><p><a class="anchor" name="2fa4531923bf71c51c7b27c4728a18d7"></a><!-- doxytag: member="sift.h::_sift_features" ref="2fa4531923bf71c51c7b27c4728a18d7" args="(IplImage *img, struct feature **feat, int intvls, double sigma, double contr_thr, int curv_thr, int img_dbl, int descr_width, int descr_hist_bins)" --><div class="memitem"><div class="memproto"> <table class="memname"> <tr> <td class="memname">int _sift_features </td> <td>(</td> <td class="paramtype">IplImage * </td> <td class="paramname"> <em>img</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">struct <a class="el" href="structfeature.html">feature</a> ** </td> <td class="paramname"> <em>feat</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int </td> <td class="paramname"> <em>intvls</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">double </td> <td class="paramname"> <em>sigma</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">double </td> <td class="paramname"> <em>contr_thr</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int </td> <td class="paramname"> <em>curv_thr</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int </td> <td class="paramname"> <em>img_dbl</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int </td> <td class="paramname"> <em>descr_width</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int </td> <td class="paramname"> <em>descr_hist_bins</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td width="100%"></td> </tr> </table></div><div class="memdoc"><p>Finda SIFT features in an image using user-specified parameter values. <p>All detected features are stored in the array pointed to by <em>feat</em>.<p><dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>img</em> </td><td>the image in which to detect features </td></tr> <tr><td valign="top"></td><td valign="top"><em>feat</em> </td><td>a pointer to an array in which to store detected features </td></tr> <tr><td valign="top"></td><td valign="top"><em>intvls</em> </td><td>the number of intervals sampled per octave of scale space </td></tr> <tr><td valign="top"></td><td valign="top"><em>sigma</em> </td><td>the amount of Gaussian smoothing applied to each image level before building the scale space representation for an octave </td></tr> <tr><td valign="top"></td><td valign="top"><em>contr_thr</em> </td><td>a threshold on the value of the scale space function <img class="formulaInl" alt="$\left|D(\hat{x})\right|$" src="form_0.png">, where <img class="formulaInl" alt="$\hat{x}$" src="form_1.png"> is a vector specifying <a class="el" href="structfeature.html" title="Structure to represent an affine invariant image feature.">feature</a> location and scale, used to reject unstable features; assumes pixel values in the range [0, 1] </td></tr> <tr><td valign="top"></td><td valign="top"><em>curv_thr</em> </td><td>threshold on a feature's ratio of principle curvatures used to reject features that are too edge-like </td></tr> <tr><td valign="top"></td><td valign="top"><em>img_dbl</em> </td><td>should be 1 if image doubling prior to scale space construction is desired or 0 if not </td></tr> <tr><td valign="top"></td><td valign="top"><em>descr_width</em> </td><td>the width, <img class="formulaInl" alt="$n$" src="form_2.png">, of the <img class="formulaInl" alt="$n \times n$" src="form_3.png"> array of orientation histograms used to compute a feature's descriptor </td></tr> <tr><td valign="top"></td><td valign="top"><em>descr_hist_bins</em> </td><td>the number of orientations in each of the histograms in the array used to compute a feature's descriptor</td></tr> </table></dl><dl class="return" compact><dt><b>Returns:</b></dt><dd>Returns the number of keypoints stored in <em>feat</em> or -1 on failure </dd></dl><dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="sift_8h.html#b38678735e475d5f9ee393681298064b" title="Finds SIFT features in an image using default parameter values.">sift_features()</a> </dd></dl></div></div><p><hr size="1"><address style="text-align: right;"><small>Generated on Tue Oct 30 11:37:27 2007 for SIFT by <a href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.2 </small></address></body></html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -