Point Cloud Library (PCL) 1.14.0
Loading...
Searching...
No Matches
keypoint.h
1/*
2 * Software License Agreement (BSD License)
3 *
4 * Point Cloud Library (PCL) - www.pointclouds.org
5 * Copyright (c) 2010-2012, Willow Garage, Inc.
6 *
7 * All rights reserved.
8 *
9 * Redistribution and use in source and binary forms, with or without
10 * modification, are permitted provided that the following conditions
11 * are met:
12 *
13 * * Redistributions of source code must retain the above copyright
14 * notice, this list of conditions and the following disclaimer.
15 * * Redistributions in binary form must reproduce the above
16 * copyright notice, this list of conditions and the following
17 * disclaimer in the documentation and/or other materials provided
18 * with the distribution.
19 * * Neither the name of Willow Garage, Inc. nor the names of its
20 * contributors may be used to endorse or promote products derived
21 * from this software without specific prior written permission.
22 *
23 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
24 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
25 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
26 * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
27 * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
28 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
29 * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
30 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
31 * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
32 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
33 * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
34 * POSSIBILITY OF SUCH DAMAGE.
35 *
36 * keypoint.h
37 *
38 * Created on: May 28, 2012
39 * Author: somani
40 */
41
42#pragma once
43
44#include <pcl/2d/edge.h>
45
46namespace pcl {
47
48template <typename ImageType>
49class Keypoint {
50private:
51 Edge<ImageType, ImageType> edge_detection;
53
54public:
55 Keypoint() = default;
56
57 void
58 harrisCorner(ImageType& output,
59 ImageType& input,
60 const float sigma_d,
61 const float sigma_i,
62 const float alpha,
63 const float thresh);
64
65 void
66 hessianBlob(ImageType& output, ImageType& input, const float sigma, bool SCALE);
67
68 void
69 hessianBlob(ImageType& output,
70 ImageType& input,
71 const float start_scale,
72 const float scaling_factor,
73 const int num_scales);
74
75 void
76 imageElementMultiply(ImageType& output, ImageType& input1, ImageType& input2);
77};
78
79} // namespace pcl
80
81#include <pcl/2d/impl/keypoint.hpp>
A 2D convolution class.
Definition convolution.h:60
Keypoint represents the base class for key points.
Definition keypoint.h:49
Keypoint()=default
void imageElementMultiply(ImageType &output, ImageType &input1, ImageType &input2)
Definition keypoint.hpp:244
void hessianBlob(ImageType &output, ImageType &input, const float sigma, bool SCALE)
Definition keypoint.hpp:122
void harrisCorner(ImageType &output, ImageType &input, const float sigma_d, const float sigma_i, const float alpha, const float thresh)
Definition keypoint.hpp:54