Download PDF
Download page Process file.
Process file
Qinertia uses a JSON (JavaScript Object Notation) text file to describe what Qinertia CLI should do. It is used to import data, define the INS mechanical installation, setup the processing itself and export processed data.
This JSON CLI process file can also be used in Qinertia GUI to create a new project. This feature is very interesting to test your CLI file but most importantly to offer an optimized user experience for third party IMU/INS support.
Thanks to this process file, you can per-configure all the project creation steps and parameters and provide, for example, all the INS configuration. You can then simply drag and drop this JSON file in the Project Creation Wizard page and Qinertia will automatically configure the wizard with it.
JSON Example
Please find below several JSON processing file examples to illustrate each main use case.
QUANTA INS Example
This is the simplest JSON processing file that could be used by Qinertia CLI. We import a QUANTA INS project that has been acquired using an UAV and read data and settings from it. We just have to specify the processing mode and even use an auto mode to let Qinertia handle all the complicated stuff. Finally, we export the data to an ASCII file at 200 Hz as well as an SBET file.
{
"version": "1.0",
"project": {
"name":"QuantaCLI",
"author": "John Doe",
"organization": "SBG Systems",
"type":"sbgECom",
"path":"./UavData_0005/"
},
"processing": {
"motionProfile":"uav",
"type":"insAuto"
},
"exports": [
{
"name":"Export SBET",
"profile":"SBET: 200Hz"
},
{
"name":"Export ASCII",
"profile":"ASCII: INS at 200Hz"
}
],
"reports": [
{
"name": "JSON report",
"template": "jsonStandard",
"outputDir": "./report/json"
}
]
}
Third Party IMU Example
The following CLI processing file illustrates how to create and process an INS tightly coupled solution that has been acquired using a third party IMU + GNSS. This example also shows a single base station INS PPK solution with a base station supplied by the user.
{
"version": "1.0",
"project": {
"name":"ThirdPartyIMU",
"author": "John Doe",
"organization": "SBG Systems",
},
"sources": {
"imu": {
"files": ["imuData.txt"]
},
"rawGnss": {
"files": ["roverData.20O", "roverData.20N", "roverData.20G"]
}
},
"settings": {
"imu": {
"id": "stim300V1",
"referencePoint": [ -0.0004, -0.0011, -0.0865],
"referencePointFrame": "body",
"alignment": {
"rough": ["forward", "right"],
"fine": [-0.03, 0.01, 0.9],
"alreadyApplied": false
},
"leverArm": [-0.2,0.9,-1.2]
},
"gnss": {
"enabled": true,
"raw": {
"modelId": "topcon",
"antenna": {
"type": "generic",
"reference": "arp",
"height": 0,
"leverArm": [-0.8640, 0.2750, -3.1189]
},
"preciseSetup": true
}
}
},
"processing": {
"motionProfile":"automotive",
"type":"insSingle",
"processFrom":"2020-04-27T09:00:00Z",
"processUntil":"2020-04-27T09:15:00Z",
"bases": [
{
"positionMode": "manual",
"position": {
"latitude": 48.018614136,
"longitude": 0.155282549,
"height": 128.174,
"frame": "ITRF2014"
},
"data": [
"base/41232770.16g",
"base/41232770.16n",
"base/41232770.16o",
"base/41232780.16g",
"base/41232780.16n",
"base/41232780.16o",
"base/41232790.16g",
"base/41232790.16n",
"base/41232790.16o"
]
}
]
},
"exports": [
{
"name":"Google Earth Preview",
"profile":"G.Earth: 50Hz"
},
{
"name":"Export ASCII",
"profile":"ASCII: INS at 200Hz"
}
],
"reports": [
{
"name": "JSON report",
"template": "jsonStandard",
"outputDir": "./report/json"
}
]
}
Project Creation Only
You can also use a CLI JSON processing file to create a new project in Qinertia GUI. This is very helpful to offer an optimized workflow for third party IMU support as you can prefill all the INS settings automatically. For this mode, the JSON processing file doesn't event have to include all blocks and parameters. The exports
block is completely ignored and only the motionProfile
parameter is used in the processing
block.
{
"version": "1.0",
"project": {
"name":"Project Creation",
"author": "John Doe",
"organization": "SBG Systems",
"description": "This log has been converted automatically by your own converter."
},
"sources": {
"imu": {
"files": ["imuData.txt"]
},
"hdt": {
"files": ["hdtData.txt"]
},
"rawGnss": {
"files": ["bd982Data.bin"]
}
},
"settings": {
"imu": {
"id": "ln200V1",
"referencePoint": [ -0.0004, -0.0011, -0.0865],
"referencePointFrame": "body",
"alignment": {
"rough": ["forward", "right"],
"fine": [-0.03, 0.01, 0.9],
"alreadyApplied": false
},
"leverArm": [-0.2,0.9,-1.2]
},
"gnss": {
"enabled": true,
"raw": {
"antenna": {
"type": "generic",
"reference": "arp",
"height": 0,
"leverArm": [-0.79400002956390381, -0.032999999821186066, -1.0410000085830688],
},
"preciseSetup": true
},
"trueHeading": {
"mode": "dualManual",
"antenna": {
"type": "generic",
"reference": "arp",
"height": 0,
"leverArm": [-0.79400002956390381, -0.032999999821186066, -1.0410000085830688],
"secondaryLeverArm": [1.2029999494552612, -0.047999999485909939, -1.0180000085383654]
},
"preciseSetup": true
}
}
},
"processing": {
"motionProfile":"automotive",
}
}
GNSS only processing
In this example, we just process a kinematic u-blox F9 kinematic solution using automatic base station download and GNSS augmentation selection by Qinertia.
{
"version": "1.0",
"project": {
"name":"GNSS only",
"author": "John Doe",
"organization": "SBG Systems"
},
"sources": {
"rawGnss": {
"files": ["gnssData.ubx"]
}
},
"processing": {
"motionProfile": "uav",
"type": "gnssAuto"
},
"exports": [
{
"name":"Google Earth Preview",
"profile":"G.Earth: 50Hz"
},
{
"name":"Export ASCII",
"profile":"ASCII: INS at 200Hz"
}
],
"reports": [
{
"name": "JSON report",
"template": "jsonStandard",
"outputDir": "./report/json"
}
]
}
General Block Schema
This is the main CLI JSON processing file schema only composed of object expect for the version string.
Parameter | Type | Optional | Description |
---|---|---|---|
version | string | The version of the processing file and should be set to "1.0" | |
project | object | Project block, define the mission name and main import data path. | |
sources | object | Sources block, import data from specific files or data source (GNSS1/GNSS2). | |
settings | object | Settings block, setup the INS installation parameters such as lever arms. | |
processing | object | Processing block, configure the GNSS/INS processing and base stations. | |
photogrammetry | object | Photogrammetry block, load or setup photo/event matches. | |
exports | object | Export block, select how to output processed results. | |
report | object | Report Block, configure processing result report generation. |
Blocks reference