mirror of
https://github.com/introlab/rtabmap.git
synced 2026-09-02 01:20:25 +08:00
DbViewer: Added calibration info
This commit is contained in:
@@ -131,6 +131,7 @@ private:
|
||||
QLabel * labelId,
|
||||
QLabel * labelMapId,
|
||||
QLabel * labelPose,
|
||||
QLabel * labeCalib,
|
||||
bool updateConstraintView);
|
||||
void updateStereo(const SensorData * data);
|
||||
void updateWordsMatching();
|
||||
|
||||
@@ -2059,6 +2059,7 @@ void DatabaseViewer::sliderAValueChanged(int value)
|
||||
ui_->label_idA,
|
||||
ui_->label_mapA,
|
||||
ui_->label_poseA,
|
||||
ui_->label_calibA,
|
||||
true);
|
||||
}
|
||||
|
||||
@@ -2076,6 +2077,7 @@ void DatabaseViewer::sliderBValueChanged(int value)
|
||||
ui_->label_idB,
|
||||
ui_->label_mapB,
|
||||
ui_->label_poseB,
|
||||
ui_->label_calibB,
|
||||
true);
|
||||
}
|
||||
|
||||
@@ -2091,6 +2093,7 @@ void DatabaseViewer::update(int value,
|
||||
QLabel * labelId,
|
||||
QLabel * labelMapId,
|
||||
QLabel * labelPose,
|
||||
QLabel * labelCalib,
|
||||
bool updateConstraintView)
|
||||
{
|
||||
UTimer timer;
|
||||
@@ -2102,6 +2105,7 @@ void DatabaseViewer::update(int value,
|
||||
labelMapId->clear();
|
||||
labelPose->clear();
|
||||
stamp->clear();
|
||||
labelCalib->clear();
|
||||
QRectF rect;
|
||||
if(value >= 0 && value < ids_.size())
|
||||
{
|
||||
@@ -2163,6 +2167,53 @@ void DatabaseViewer::update(int value,
|
||||
{
|
||||
stamp->setText(QDateTime::fromMSecsSinceEpoch(s*1000.0).toString("dd.MM.yyyy hh:mm:ss.zzz"));
|
||||
}
|
||||
if(data.cameraModels().size() || data.stereoCameraModel().isValidForProjection())
|
||||
{
|
||||
if(data.cameraModels().size())
|
||||
{
|
||||
if(!data.depthRaw().empty() && data.depthRaw().cols!=data.imageRaw().cols && data.imageRaw().cols)
|
||||
{
|
||||
labelCalib->setText(tr("%1 %2x%3 [%8x%9] fx=%4 fy=%5 cx=%6 cy=%7")
|
||||
.arg(data.cameraModels().size())
|
||||
.arg(data.cameraModels()[0].imageWidth()>0?data.cameraModels()[0].imageWidth():data.imageRaw().cols/data.cameraModels().size())
|
||||
.arg(data.cameraModels()[0].imageHeight()>0?data.cameraModels()[0].imageHeight():data.imageRaw().rows)
|
||||
.arg(data.cameraModels()[0].fx())
|
||||
.arg(data.cameraModels()[0].fy())
|
||||
.arg(data.cameraModels()[0].cx())
|
||||
.arg(data.cameraModels()[0].cy())
|
||||
.arg(data.depthRaw().cols/data.cameraModels().size())
|
||||
.arg(data.depthRaw().rows));
|
||||
}
|
||||
else
|
||||
{
|
||||
labelCalib->setText(tr("%1 %2x%3 fx=%4 fy=%5 cx=%6 cy=%7")
|
||||
.arg(data.cameraModels().size())
|
||||
.arg(data.cameraModels()[0].imageWidth()>0?data.cameraModels()[0].imageWidth():data.imageRaw().cols/data.cameraModels().size())
|
||||
.arg(data.cameraModels()[0].imageHeight()>0?data.cameraModels()[0].imageHeight():data.imageRaw().rows)
|
||||
.arg(data.cameraModels()[0].fx())
|
||||
.arg(data.cameraModels()[0].fy())
|
||||
.arg(data.cameraModels()[0].cx())
|
||||
.arg(data.cameraModels()[0].cy()));
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
//stereo
|
||||
labelCalib->setText(tr("%1x%2 fx=%3 fy=%4 cx=%5 cy=%6 baseline=%7m")
|
||||
.arg(data.stereoCameraModel().left().imageWidth()>0?data.stereoCameraModel().left().imageWidth():data.imageRaw().cols)
|
||||
.arg(data.stereoCameraModel().left().imageHeight()>0?data.stereoCameraModel().left().imageHeight():data.imageRaw().rows)
|
||||
.arg(data.stereoCameraModel().left().fx())
|
||||
.arg(data.stereoCameraModel().left().fy())
|
||||
.arg(data.stereoCameraModel().left().cx())
|
||||
.arg(data.stereoCameraModel().left().cy())
|
||||
.arg(data.stereoCameraModel().baseline()));
|
||||
}
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
labelCalib->setText("NA");
|
||||
}
|
||||
|
||||
//stereo
|
||||
if(!data.depthOrRightRaw().empty() && data.depthOrRightRaw().type() == CV_8UC1)
|
||||
@@ -2811,6 +2862,7 @@ void DatabaseViewer::updateConstraintView(
|
||||
ui_->label_idA,
|
||||
ui_->label_mapA,
|
||||
ui_->label_poseA,
|
||||
ui_->label_calibA,
|
||||
false); // don't update constraints view!
|
||||
this->update(idToIndex_.value(link.to()),
|
||||
ui_->label_indexB,
|
||||
@@ -2824,6 +2876,7 @@ void DatabaseViewer::updateConstraintView(
|
||||
ui_->label_idB,
|
||||
ui_->label_mapB,
|
||||
ui_->label_poseB,
|
||||
ui_->label_calibB,
|
||||
false); // don't update constraints view!
|
||||
}
|
||||
|
||||
|
||||
@@ -51,33 +51,12 @@
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>205</width>
|
||||
<height>184</height>
|
||||
<y>-24</y>
|
||||
<width>190</width>
|
||||
<height>208</height>
|
||||
</rect>
|
||||
</property>
|
||||
<layout class="QGridLayout" name="gridLayout" rowstretch="0,0,0,0,0,0,0" columnstretch="1,1">
|
||||
<item row="0" column="0">
|
||||
<widget class="QLabel" name="label_parentsA_2">
|
||||
<property name="text">
|
||||
<string>Parents</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="0" column="1">
|
||||
<widget class="QLabel" name="label_parentsA">
|
||||
<property name="text">
|
||||
<string/>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="0">
|
||||
<widget class="QLabel" name="label_childrenA_2">
|
||||
<property name="text">
|
||||
<string>Children</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<layout class="QGridLayout" name="gridLayout" rowstretch="0,0,0,0,0,0,0,0" columnstretch="1,1">
|
||||
<item row="1" column="1">
|
||||
<widget class="QLabel" name="label_childrenA">
|
||||
<property name="text">
|
||||
@@ -148,6 +127,27 @@
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="0" column="0">
|
||||
<widget class="QLabel" name="label_parentsA_2">
|
||||
<property name="text">
|
||||
<string>Parents</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="0" column="1">
|
||||
<widget class="QLabel" name="label_parentsA">
|
||||
<property name="text">
|
||||
<string/>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="0">
|
||||
<widget class="QLabel" name="label_childrenA_2">
|
||||
<property name="text">
|
||||
<string>Children</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="5" column="1">
|
||||
<widget class="QLabel" name="label_poseA">
|
||||
<property name="text">
|
||||
@@ -155,6 +155,20 @@
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="7" column="0">
|
||||
<widget class="QLabel" name="label_childrenA_14">
|
||||
<property name="text">
|
||||
<string>Calib</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="7" column="1">
|
||||
<widget class="QLabel" name="label_calibA">
|
||||
<property name="text">
|
||||
<string/>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</widget>
|
||||
@@ -171,9 +185,9 @@
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>203</width>
|
||||
<height>184</height>
|
||||
<y>-24</y>
|
||||
<width>188</width>
|
||||
<height>208</height>
|
||||
</rect>
|
||||
</property>
|
||||
<layout class="QGridLayout" name="gridLayout_2" columnstretch="0,1">
|
||||
@@ -275,6 +289,20 @@
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="7" column="0">
|
||||
<widget class="QLabel" name="label_childrenA_15">
|
||||
<property name="text">
|
||||
<string>Calib</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="7" column="1">
|
||||
<widget class="QLabel" name="label_calibB">
|
||||
<property name="text">
|
||||
<string/>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</widget>
|
||||
|
||||
Reference in New Issue
Block a user