mirror of
https://github.com/introlab/rtabmap.git
synced 2026-09-02 01:20:25 +08:00
Db: Fixed octave field missing when opening databases prior to 0.12
This commit is contained in:
@@ -4490,7 +4490,7 @@ void DBDriverSqlite3::stepNode(sqlite3_stmt * ppStmt, const Signature * s) const
|
|||||||
UASSERT_MSG(rc == SQLITE_OK, uFormat("DB error (%s): %s", _version.c_str(), sqlite3_errmsg(_ppDb)).c_str());
|
UASSERT_MSG(rc == SQLITE_OK, uFormat("DB error (%s): %s", _version.c_str(), sqlite3_errmsg(_ppDb)).c_str());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
//step
|
//step
|
||||||
rc=sqlite3_step(ppStmt);
|
rc=sqlite3_step(ppStmt);
|
||||||
UASSERT_MSG(rc == SQLITE_DONE, uFormat("DB error (%s): %s", _version.c_str(), sqlite3_errmsg(_ppDb)).c_str());
|
UASSERT_MSG(rc == SQLITE_DONE, uFormat("DB error (%s): %s", _version.c_str(), sqlite3_errmsg(_ppDb)).c_str());
|
||||||
@@ -4770,7 +4770,7 @@ void DBDriverSqlite3::stepSensorData(sqlite3_stmt * ppStmt,
|
|||||||
// multi-cameras [fx,fy,cx,cy,width,height,local_transform, ... ,fx,fy,cx,cy,width,height,local_transform] (6+12)*float * numCameras
|
// multi-cameras [fx,fy,cx,cy,width,height,local_transform, ... ,fx,fy,cx,cy,width,height,local_transform] (6+12)*float * numCameras
|
||||||
// stereo [fx, fy, cx, cy, baseline, local_transform] (5+12)*float
|
// stereo [fx, fy, cx, cy, baseline, local_transform] (5+12)*float
|
||||||
if(sensorData.cameraModels().size() && sensorData.cameraModels()[0].isValidForProjection())
|
if(sensorData.cameraModels().size() && sensorData.cameraModels()[0].isValidForProjection())
|
||||||
{
|
{
|
||||||
if(uStrNumCmp(_version, "0.11.2") >= 0)
|
if(uStrNumCmp(_version, "0.11.2") >= 0)
|
||||||
{
|
{
|
||||||
calibration.resize(sensorData.cameraModels().size() * (6+Transform().size()));
|
calibration.resize(sensorData.cameraModels().size() * (6+Transform().size()));
|
||||||
@@ -4799,7 +4799,7 @@ void DBDriverSqlite3::stepSensorData(sqlite3_stmt * ppStmt,
|
|||||||
calibration[i*(4+localTransform.size())+2] = sensorData.cameraModels()[i].cx();
|
calibration[i*(4+localTransform.size())+2] = sensorData.cameraModels()[i].cx();
|
||||||
calibration[i*(4+localTransform.size())+3] = sensorData.cameraModels()[i].cy();
|
calibration[i*(4+localTransform.size())+3] = sensorData.cameraModels()[i].cy();
|
||||||
memcpy(calibration.data()+i*(4+localTransform.size())+4, localTransform.data(), localTransform.size()*sizeof(float));
|
memcpy(calibration.data()+i*(4+localTransform.size())+4, localTransform.data(), localTransform.size()*sizeof(float));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else if(sensorData.stereoCameraModel().isValidForProjection())
|
else if(sensorData.stereoCameraModel().isValidForProjection())
|
||||||
@@ -4926,7 +4926,7 @@ void DBDriverSqlite3::stepSensorData(sqlite3_stmt * ppStmt,
|
|||||||
UASSERT_MSG(rc == SQLITE_OK, uFormat("DB error (%s): %s", _version.c_str(), sqlite3_errmsg(_ppDb)).c_str());
|
UASSERT_MSG(rc == SQLITE_OK, uFormat("DB error (%s): %s", _version.c_str(), sqlite3_errmsg(_ppDb)).c_str());
|
||||||
rc = sqlite3_bind_double(ppStmt, index++, sensorData.gridViewPoint().z);
|
rc = sqlite3_bind_double(ppStmt, index++, sensorData.gridViewPoint().z);
|
||||||
UASSERT_MSG(rc == SQLITE_OK, uFormat("DB error (%s): %s", _version.c_str(), sqlite3_errmsg(_ppDb)).c_str());
|
UASSERT_MSG(rc == SQLITE_OK, uFormat("DB error (%s): %s", _version.c_str(), sqlite3_errmsg(_ppDb)).c_str());
|
||||||
}
|
}
|
||||||
|
|
||||||
//step
|
//step
|
||||||
rc=sqlite3_step(ppStmt);
|
rc=sqlite3_step(ppStmt);
|
||||||
@@ -5129,8 +5129,11 @@ void DBDriverSqlite3::stepKeypoint(sqlite3_stmt * ppStmt,
|
|||||||
UASSERT_MSG(rc == SQLITE_OK, uFormat("DB error (%s): %s", _version.c_str(), sqlite3_errmsg(_ppDb)).c_str());
|
UASSERT_MSG(rc == SQLITE_OK, uFormat("DB error (%s): %s", _version.c_str(), sqlite3_errmsg(_ppDb)).c_str());
|
||||||
rc = sqlite3_bind_double(ppStmt, index++, kp.response);
|
rc = sqlite3_bind_double(ppStmt, index++, kp.response);
|
||||||
UASSERT_MSG(rc == SQLITE_OK, uFormat("DB error (%s): %s", _version.c_str(), sqlite3_errmsg(_ppDb)).c_str());
|
UASSERT_MSG(rc == SQLITE_OK, uFormat("DB error (%s): %s", _version.c_str(), sqlite3_errmsg(_ppDb)).c_str());
|
||||||
rc = sqlite3_bind_int(ppStmt, index++, kp.octave);
|
if(uStrNumCmp(_version, "0.12.0") >= 0)
|
||||||
UASSERT_MSG(rc == SQLITE_OK, uFormat("DB error (%s): %s", _version.c_str(), sqlite3_errmsg(_ppDb)).c_str());
|
{
|
||||||
|
rc = sqlite3_bind_int(ppStmt, index++, kp.octave);
|
||||||
|
UASSERT_MSG(rc == SQLITE_OK, uFormat("DB error (%s): %s", _version.c_str(), sqlite3_errmsg(_ppDb)).c_str());
|
||||||
|
}
|
||||||
rc = sqlite3_bind_double(ppStmt, index++, pt.x);
|
rc = sqlite3_bind_double(ppStmt, index++, pt.x);
|
||||||
UASSERT_MSG(rc == SQLITE_OK, uFormat("DB error (%s): %s", _version.c_str(), sqlite3_errmsg(_ppDb)).c_str());
|
UASSERT_MSG(rc == SQLITE_OK, uFormat("DB error (%s): %s", _version.c_str(), sqlite3_errmsg(_ppDb)).c_str());
|
||||||
rc = sqlite3_bind_double(ppStmt, index++, pt.y);
|
rc = sqlite3_bind_double(ppStmt, index++, pt.y);
|
||||||
|
|||||||
Reference in New Issue
Block a user