-
Notifications
You must be signed in to change notification settings - Fork 3
Expand file tree
/
Copy pathTrackerParameterView.cpp
More file actions
80 lines (59 loc) · 2.91 KB
/
TrackerParameterView.cpp
File metadata and controls
80 lines (59 loc) · 2.91 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
#include "TrackerParameterView.h"
#include "ui_TrackerParameterView.h"
#include <iostream>
TrackerParameterView::TrackerParameterView(QWidget *parent, IController *controller, IModel *model) :
IViewWidget(parent, controller, model),
_ui(new Ui::TrackerParameterView)
{
_ui->setupUi(this);
getNotified();
QObject::connect(_ui->lineEdit_2_binThresh, SIGNAL(valueChanged(int)), this, SLOT(on_pushButton_clicked()));
QObject::connect(_ui->lineEdit_3_SizeErode, SIGNAL(valueChanged(int)), this, SLOT(on_pushButton_clicked()));
QObject::connect(_ui->lineEdit_4_SizeDilate, SIGNAL(valueChanged(int)), this, SLOT(on_pushButton_clicked()));
QObject::connect(_ui->lineEdit_8_MinBlob, SIGNAL(valueChanged(int)), this, SLOT(on_pushButton_clicked()));
QObject::connect(_ui->lineEdit_9MaxBlob, SIGNAL(valueChanged(int)), this, SLOT(on_pushButton_clicked()));
QObject::connect(_ui->lineEdit_7_MogBack, SIGNAL(valueChanged(double)), this, SLOT(on_pushButton_clicked()));
_ui->pushButton->setVisible(false);
}
TrackerParameterView::~TrackerParameterView()
{
delete _ui;
}
void TrackerParameterView::on_pushButtonResetBackground_clicked() {
TrackerParameter *parameter = qobject_cast<TrackerParameter *>(getModel());
parameter->setResetBackground(true);
}
void TrackerParameterView::on_comboBoxSendImage_currentIndexChanged(int v) {
TrackerParameter *parameter = qobject_cast<TrackerParameter *>(getModel());
parameter->setSendImage(v);
parameter->setNewSelection(_ui->comboBoxSendImage->currentText().toStdString());
}
void TrackerParameterView::on_pushButton_clicked()
{
TrackerParameter *parameter = qobject_cast<TrackerParameter *>(getModel());
int setBinarizationThreshold = _ui->lineEdit_2_binThresh->text().toInt();
int setSizeErode = _ui->lineEdit_3_SizeErode->text().toInt();
int setSizeDilate = _ui->lineEdit_4_SizeDilate->text().toInt();
int setMinBlobSize = _ui->lineEdit_8_MinBlob->text().toInt();
int setMaxBlobSize = _ui->lineEdit_9MaxBlob->text().toInt();
double setmog2BackgroundRatio = _ui->lineEdit_7_MogBack->value();
parameter->setAll(0, setBinarizationThreshold, setSizeErode, setSizeDilate, 0, 0,
setmog2BackgroundRatio, setMinBlobSize, setMaxBlobSize);
Q_EMIT parametersChanged();
}
void TrackerParameterView::getNotified()
{
TrackerParameter *parameter = qobject_cast<TrackerParameter *>(getModel());
int val = parameter->getBinarizationThreshold();
_ui->lineEdit_2_binThresh->setValue(val);
val = parameter->getSizeErode();
_ui->lineEdit_3_SizeErode->setValue(val);
val = parameter->getSizeDilate();
_ui->lineEdit_4_SizeDilate->setValue(val);
double dval = parameter->getmog2BackgroundRatio();
_ui->lineEdit_7_MogBack->setValue(dval);
val = parameter->getMinBlobSize();
_ui->lineEdit_8_MinBlob->setValue(val);
val = parameter->getMaxBlobSize();
_ui->lineEdit_9MaxBlob->setValue(val);
}