sift.cc File Reference#include "sift.hpp"
#include "sift-conv.tpp"
#include <algorithm>
#include <iostream>
#include <sstream>
#include <cassert>
#include <cstring>
Go to the source code of this file.
Namespaces |
| namespace | VL |
| | VisionLab namespace.
|
| namespace | VL::Detail |
Defines |
| #define | CHECK_NEIGHBORS(CMP, SGN) |
| #define | at(dx, dy, ds) (*( pt + (dx)*xo + (dy)*yo + (ds)*so)) |
| #define | Aat(i, j) (A[(i)+(j)*3]) |
| #define | at(dx, dy) (*(pt + (dx)*xo + (dy)*yo)) |
| #define | atd(dbinx, dbiny, dbint) *(dpt + (dbint)*binto + (dbiny)*binyo + (dbinx)*binxo) |
Functions |
| std::istream & | VL::Detail::operator>> (std::istream &is, _cmnt &manip) |
| | Extract a comment from a stream.
|
| void | VL::Detail::copy (pixel_t *dst, pixel_t const *src, int width, int height) |
| | Copy an image.
|
| void | VL::Detail::copyAndUpsampleRows (pixel_t *dst, pixel_t const *src, int width, int height) |
| | Copy an image upsampling two times.
|
| void | VL::Detail::copyAndDownsample (pixel_t *dst, pixel_t const *src, int width, int height, int d) |
| | Copy and downasample an image.
|
| void | VL::Detail::normalize_histogram (VL::float_t *L_begin, VL::float_t *L_end) |
|
|
| std::ostream & | VL::insertPgm (std::ostream &os, pixel_t const *im, int width, int height) |
| | Insert PGM file into stream.
|
| void | VL::createPgmBufferFromArray (int w, int h, pixel_t *d, PgmBuffer &buffer) |
| std::istream & | VL::extractPgm (std::istream &in, PgmBuffer &buffer) |
| | Extract PGM file from stream.
|
Variables |
| int const | VL::Detail::expnTableSize = 256 |
| VL::float_t const | VL::Detail::expnTableMax = VL::float_t(25.0) |
| VL::float_t | VL::Detail::expnTable [expnTableSize+1] |
| struct VL::Detail::buildExpnTable | VL::Detail::_buildExpnTable |
| class VL::Detail::_cmnt | VL::Detail::cmnt |
Define Documentation
| #define Aat |
( |
i, |
|
|
j |
|
) |
(A[(i)+(j)*3]) |
| #define at |
( |
dx, |
|
|
dy |
|
) |
(*(pt + (dx)*xo + (dy)*yo)) |
| #define at |
( |
dx, |
|
|
dy, |
|
|
ds |
|
) |
(*( pt + (dx)*xo + (dy)*yo + (ds)*so)) |
| #define atd |
( |
dbinx, |
|
|
dbiny, |
|
|
dbint |
|
) |
*(dpt + (dbint)*binto + (dbiny)*binyo + (dbinx)*binxo) |
| #define CHECK_NEIGHBORS |
( |
CMP, |
|
|
SGN |
|
) |
|
Value:( v CMP ## = SGN 0.8 * threshold && \
v CMP *(pt + xo) && \
v CMP *(pt - xo) && \
v CMP *(pt + so) && \
v CMP *(pt - so) && \
v CMP *(pt + yo) && \
v CMP *(pt - yo) && \
\
v CMP *(pt + yo + xo) && \
v CMP *(pt + yo - xo) && \
v CMP *(pt - yo + xo) && \
v CMP *(pt - yo - xo) && \
\
v CMP *(pt + xo + so) && \
v CMP *(pt - xo + so) && \
v CMP *(pt + yo + so) && \
v CMP *(pt - yo + so) && \
v CMP *(pt + yo + xo + so) && \
v CMP *(pt + yo - xo + so) && \
v CMP *(pt - yo + xo + so) && \
v CMP *(pt - yo - xo + so) && \
\
v CMP *(pt + xo - so) && \
v CMP *(pt - xo - so) && \
v CMP *(pt + yo - so) && \
v CMP *(pt - yo - so) && \
v CMP *(pt + yo + xo - so) && \
v CMP *(pt + yo - xo - so) && \
v CMP *(pt - yo + xo - so) && \
v CMP *(pt - yo - xo - so) )
Referenced by VL::Sift::detectKeypoints().
|