00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #include <cvd/image.h>
00021 #include <cvd/fast_corner.h>
00022 #include <cvd/nonmax_suppression.h>
00023
00024 #include <vector>
00025
00026 #include "cvd_fast.h"
00027
00028 using namespace std;
00029 using namespace CVD;
00030
00031
00032
00033
00034
00035
00036
00037 void fast_9_old::operator()(const CVD::Image<CVD::byte>& i, std::vector<CVD::ImageRef>& c, unsigned int n) const
00038 {
00039 vector<ImageRef> ct;
00040 vector<int> sc;
00041 fast_corner_detect_9(i, ct, static_cast<int>(n));
00042 fast_nonmax(i, ct, static_cast<int>(n), c);
00043 }
00044
00045 void fast_9::operator()(const CVD::Image<CVD::byte>& i, std::vector<CVD::ImageRef>& c, unsigned int n) const
00046 {
00047 fast_corner_detect_9_nonmax(i, c, static_cast<int>(n));
00048 }
00049
00050 void fast_12::operator()(const CVD::Image<CVD::byte>& i, std::vector<CVD::ImageRef>& c, unsigned int n) const
00051 {
00052 vector<ImageRef> cs;
00053 fast_corner_detect_12(i, cs, n);
00054 vector<int> sc;
00055 fast_corner_score_12(i, cs, n, sc);
00056 nonmax_suppression(cs, sc, c);
00057 }