Added parameter General/sendNoObjDetectedEvents

git-svn-id: http://find-object.googlecode.com/svn/trunk/find_object@284 620bd6b2-0a58-f614-fd9a-1bd335dccda9
This commit is contained in:
matlabbe 2014-05-22 17:47:00 +00:00
parent 9422df9965
commit 6478e78899
4 changed files with 91 additions and 81 deletions

View File

@ -1716,12 +1716,16 @@ void MainWindow::update(const cv::Mat & image)
QTime::currentTime().toString("HH:mm:ss.zzz").toStdString().c_str(), QTime::currentTime().toString("HH:mm:ss.zzz").toStdString().c_str(),
(int)objectsDetected.begin().key()); (int)objectsDetected.begin().key());
} }
else else if(Settings::getGeneral_sendNoObjDetectedEvents())
{ {
printf("(%s) No objects detected.\n", printf("(%s) No objects detected.\n",
QTime::currentTime().toString("HH:mm:ss.zzz").toStdString().c_str()); QTime::currentTime().toString("HH:mm:ss.zzz").toStdString().c_str());
} }
if(objectsDetected.size() > 0 || Settings::getGeneral_sendNoObjDetectedEvents())
{
emit objectsFound(objectsDetected); emit objectsFound(objectsDetected);
}
ui_->label_objectsDetected->setNum(objectsDetected.size()); ui_->label_objectsDetected->setNum(objectsDetected.size());
} }
else else

View File

@ -183,6 +183,7 @@ class Settings
PARAMETER(General, autoScroll, bool, true, "Auto scroll to detected object in Objects panel."); PARAMETER(General, autoScroll, bool, true, "Auto scroll to detected object in Objects panel.");
PARAMETER(General, vocabularyIncremental, bool, false, "The vocabulary is created incrementally. When new objects are added, their descriptors are compared to those already in vocabulary to find if the visual word already exist or not. \"NearestNeighbor/nndrRatio\" is used to compare descriptors."); PARAMETER(General, vocabularyIncremental, bool, false, "The vocabulary is created incrementally. When new objects are added, their descriptors are compared to those already in vocabulary to find if the visual word already exist or not. \"NearestNeighbor/nndrRatio\" is used to compare descriptors.");
PARAMETER(General, vocabularyUpdateMinWords, int, 2000, "When the vocabulary is incremental (see \"General/vocabularyIncremental\"), after X words added to vocabulary, the internal index is updated with new words. This parameter lets avoiding to reconstruct the whole nearest neighbor index after each time descriptors of an object are added to vocabulary. 0 means no incremental update."); PARAMETER(General, vocabularyUpdateMinWords, int, 2000, "When the vocabulary is incremental (see \"General/vocabularyIncremental\"), after X words added to vocabulary, the internal index is updated with new words. This parameter lets avoiding to reconstruct the whole nearest neighbor index after each time descriptors of an object are added to vocabulary. 0 means no incremental update.");
PARAMETER(General, sendNoObjDetectedEvents, bool, true, "When there are no objects detected, send an empty object detection event.");
PARAMETER(Homography, homographyComputed, bool, true, "Compute homography? On ROS, this is required to publish objects detected."); PARAMETER(Homography, homographyComputed, bool, true, "Compute homography? On ROS, this is required to publish objects detected.");
PARAMETER(Homography, method, QString, "1:LMEDS;RANSAC", "Type of the robust estimation algorithm: least-median algorithm or RANSAC algorithm."); PARAMETER(Homography, method, QString, "1:LMEDS;RANSAC", "Type of the robust estimation algorithm: least-median algorithm or RANSAC algorithm.");

View File

@ -53,8 +53,6 @@ quint16 TcpServer::getPort() const
} }
void TcpServer::publishObjects(const QMultiMap<int, QPair<QRect, QTransform> > & objects) void TcpServer::publishObjects(const QMultiMap<int, QPair<QRect, QTransform> > & objects)
{
if(objects.size())
{ {
QList<QTcpSocket*> clients = this->findChildren<QTcpSocket*>(); QList<QTcpSocket*> clients = this->findChildren<QTcpSocket*>();
if(clients.size()) if(clients.size())
@ -90,7 +88,6 @@ void TcpServer::publishObjects(const QMultiMap<int, QPair<QRect, QTransform> > &
} }
} }
} }
}
void TcpServer::addClient() void TcpServer::addClient()
{ {

View File

@ -49,6 +49,13 @@ void TcpClient::readData()
in >> data; in >> data;
printf("---\n"); printf("---\n");
if(data.size() == 0)
{
printf("(%s) No objects detected.\n",
QTime::currentTime().toString("HH:mm:ss.zzz").toStdString().c_str());
}
else
{
for(int i=0; i<data.size(); i+=12) for(int i=0; i<data.size(); i+=12)
{ {
// get data // get data
@ -105,6 +112,7 @@ void TcpClient::readData()
} }
} }
} }
}
void TcpClient::displayError(QAbstractSocket::SocketError socketError) void TcpClient::displayError(QAbstractSocket::SocketError socketError)
{ {