src
AddObjectDialog.h
Go to the documentation of this file.
1
/*
2
Copyright (c) 2011-2014, Mathieu Labbe - IntRoLab - Universite de Sherbrooke
3
All rights reserved.
4
5
Redistribution and use in source and binary forms, with or without
6
modification, are permitted provided that the following conditions are met:
7
* Redistributions of source code must retain the above copyright
8
notice, this list of conditions and the following disclaimer.
9
* Redistributions in binary form must reproduce the above copyright
10
notice, this list of conditions and the following disclaimer in the
11
documentation and/or other materials provided with the distribution.
12
* Neither the name of the Universite de Sherbrooke nor the
13
names of its contributors may be used to endorse or promote products
14
derived from this software without specific prior written permission.
15
16
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
17
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
18
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
19
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY
20
DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
21
(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
22
LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
23
ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
24
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
25
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26
*/
27
28
#ifndef ADDOBJECTDIALOG_H_
29
#define ADDOBJECTDIALOG_H_
30
31
#include <QDialog>
32
#include <QtCore/QTimer>
33
#include <opencv2/features2d/features2d.hpp>
34
#include <opencv2/core/core.hpp>
35
#include "
find_object/Header.h
"
36
37
class
Ui_addObjectDialog;
38
39
namespace
find_object
{
40
41
class
ObjWidget;
42
class
Camera;
43
class
KeypointItem;
44
class
Feature2D;
45
class
ObjSignature;
46
47
class
AddObjectDialog
:
public
QDialog {
48
49
Q_OBJECT
50
51
public
:
52
AddObjectDialog
(
Camera
* camera,
const
cv::Mat & image,
bool
mirrorView, QWidget * parent = 0, Qt::WindowFlags
f
= 0);
53
virtual
~AddObjectDialog
();
54
55
// ownership transferred to caller
56
void
retrieveObject
(
ObjWidget
** widget,
ObjSignature
** signature);
57
58
private
Q_SLOTS:
59
void
update
(
const
cv::Mat &);
60
void
update
(
const
cv::Mat &,
const
find_object::Header
&,
const
cv::Mat &,
float
);
61
void
next
();
62
void
back
();
63
void
cancel
();
64
void
takePicture
();
65
void
updateNextButton
();
66
void
updateNextButton
(
const
cv::Rect &);
67
void
changeSelectionMode
();
68
69
protected
:
70
virtual
void
closeEvent
(QCloseEvent* event);
71
72
private
:
73
void
setState
(
int
state);
74
cv::Rect
computeROI
(
const
std::vector<cv::KeyPoint> & kpts);
75
private
:
76
Ui_addObjectDialog *
ui_
;
77
Camera
*
camera_
;
78
ObjWidget
*
objWidget_
;
79
ObjSignature
*
objSignature_
;
80
cv::Mat
cameraImage_
;
81
cv::Rect
roi_
;
82
Feature2D
*
detector_
;
83
Feature2D
*
extractor_
;
84
85
enum
State
{
kTakePicture
,
kSelectFeatures
,
kVerifySelection
,
kClosing
};
86
int
state_
;
87
};
88
89
}
// namespace find_object
90
91
#endif
/* ADDOBJECTDIALOG_H_ */
find_object::AddObjectDialog::detector_
Feature2D * detector_
Definition:
AddObjectDialog.h:82
find_object::Feature2D
Definition:
Settings.h:370
find_object::AddObjectDialog::kVerifySelection
@ kVerifySelection
Definition:
AddObjectDialog.h:85
find_object::AddObjectDialog::kSelectFeatures
@ kSelectFeatures
Definition:
AddObjectDialog.h:85
find_object::AddObjectDialog::kTakePicture
@ kTakePicture
Definition:
AddObjectDialog.h:85
find_object::AddObjectDialog::camera_
Camera * camera_
Definition:
AddObjectDialog.h:77
find_object::AddObjectDialog::AddObjectDialog
AddObjectDialog(Camera *camera, const cv::Mat &image, bool mirrorView, QWidget *parent=0, Qt::WindowFlags f=0)
Definition:
AddObjectDialog.cpp:51
find_object::AddObjectDialog::changeSelectionMode
void changeSelectionMode()
Definition:
AddObjectDialog.cpp:203
find_object::AddObjectDialog::updateNextButton
void updateNextButton()
Definition:
AddObjectDialog.cpp:137
f
f
find_object::AddObjectDialog::state_
int state_
Definition:
AddObjectDialog.h:86
find_object::AddObjectDialog::computeROI
cv::Rect computeROI(const std::vector< cv::KeyPoint > &kpts)
Definition:
AddObjectDialog.cpp:417
find_object::AddObjectDialog
Definition:
AddObjectDialog.h:47
find_object::Camera
Definition:
Camera.h:42
find_object::Header
Definition:
Header.h:36
find_object::AddObjectDialog::next
void next()
Definition:
AddObjectDialog.cpp:120
find_object::AddObjectDialog::closeEvent
virtual void closeEvent(QCloseEvent *event)
Definition:
AddObjectDialog.cpp:110
find_object::AddObjectDialog::back
void back()
Definition:
AddObjectDialog.cpp:124
find_object::ObjWidget
Definition:
ObjWidget.h:50
find_object::AddObjectDialog::setState
void setState(int state)
Definition:
AddObjectDialog.cpp:208
find_object::ObjSignature
Definition:
ObjSignature.h:42
find_object::AddObjectDialog::retrieveObject
void retrieveObject(ObjWidget **widget, ObjSignature **signature)
Definition:
AddObjectDialog.cpp:102
find_object
Definition:
Camera.h:38
find_object::AddObjectDialog::ui_
Ui_addObjectDialog * ui_
Definition:
AddObjectDialog.h:76
find_object::AddObjectDialog::cancel
void cancel()
Definition:
AddObjectDialog.cpp:128
find_object::AddObjectDialog::cameraImage_
cv::Mat cameraImage_
Definition:
AddObjectDialog.h:80
find_object::AddObjectDialog::State
State
Definition:
AddObjectDialog.h:85
find_object::AddObjectDialog::kClosing
@ kClosing
Definition:
AddObjectDialog.h:85
find_object::AddObjectDialog::objWidget_
ObjWidget * objWidget_
Definition:
AddObjectDialog.h:78
find_object::AddObjectDialog::update
void update(const cv::Mat &)
Definition:
AddObjectDialog.cpp:382
find_object::AddObjectDialog::takePicture
void takePicture()
Definition:
AddObjectDialog.cpp:132
find_object::AddObjectDialog::~AddObjectDialog
virtual ~AddObjectDialog()
Definition:
AddObjectDialog.cpp:85
find_object::AddObjectDialog::extractor_
Feature2D * extractor_
Definition:
AddObjectDialog.h:83
Header.h
find_object::AddObjectDialog::objSignature_
ObjSignature * objSignature_
Definition:
AddObjectDialog.h:79
find_object::AddObjectDialog::roi_
cv::Rect roi_
Definition:
AddObjectDialog.h:81
find_object_2d
Author(s): Mathieu Labbe
autogenerated on Mon Dec 12 2022 03:43:35