Support for image groups

pull/143/head
Piero Toffanin 2021-02-05 15:33:02 -05:00
rodzic 0c0ee831b7
commit 56b767053a
5 zmienionych plików z 14 dodań i 7 usunięć

Wyświetl plik

@ -8,7 +8,7 @@ REST API to access ODM
=== Version information === Version information
[%hardbreaks] [%hardbreaks]
_Version_ : 2.1.3 _Version_ : 2.1.4
=== Contact information === Contact information
@ -340,7 +340,7 @@ _optional_|Token required for authentication (when authentication is required).|
|*FormData*|*dateCreated* + |*FormData*|*dateCreated* +
_optional_|An optional timestamp overriding the default creation date of the task.|integer| _optional_|An optional timestamp overriding the default creation date of the task.|integer|
|*FormData*|*images* + |*FormData*|*images* +
_optional_|Images to process, plus an optional GEO file (geo.txt) and/or an optional GCP file (*.txt) and/or an optional seed file (seed.zip). If included, the GCP file should have .txt extension. If included, the seed archive pre-polulates the task directory with its contents.|file| _optional_|Images to process, plus optional files such as a GEO file (geo.txt), image groups file (image_groups.txt), GCP file (*.txt) or seed file (seed.zip). If included, the GCP file should have .txt extension. If included, the seed archive pre-polulates the task directory with its contents.|file|
|*FormData*|*name* + |*FormData*|*name* +
_optional_|An optional name to be associated with the task|string| _optional_|An optional name to be associated with the task|string|
|*FormData*|*options* + |*FormData*|*options* +
@ -503,7 +503,7 @@ _required_|UUID of the task|string|
|*Query*|*token* + |*Query*|*token* +
_optional_|Token required for authentication (when authentication is required).|string| _optional_|Token required for authentication (when authentication is required).|string|
|*FormData*|*images* + |*FormData*|*images* +
_required_|Images to process, plus an optional GEO file (geo.txt) and/or an optional GCP file (*.txt) and/or an optional seed file (seed.zip). If included, the GCP file should have .txt extension. If included, the seed archive pre-polulates the task directory with its contents.|file| _required_|Images to process, plus optional files such as a GEO file (geo.txt), image groups file (image_groups.txt), GCP file (*.txt) or seed file (seed.zip). If included, the GCP file should have .txt extension. If included, the seed archive pre-polulates the task directory with its contents.|file|
|=== |===

File diff suppressed because one or more lines are too long

Wyświetl plik

@ -138,7 +138,7 @@ app.post('/task/new/init', authCheck, taskNew.assignUUID, formDataParser, taskNe
* - * -
* name: images * name: images
* in: formData * in: formData
* description: Images to process, plus an optional GEO file (geo.txt) and/or an optional GCP file (*.txt) and/or an optional seed file (seed.zip). If included, the GCP file should have .txt extension. If included, the seed archive pre-polulates the task directory with its contents. * description: Images to process, plus optional files such as a GEO file (geo.txt), image groups file (image_groups.txt), GCP file (*.txt) or seed file (seed.zip). If included, the GCP file should have .txt extension. If included, the seed archive pre-polulates the task directory with its contents.
* required: true * required: true
* type: file * type: file
* - * -
@ -205,7 +205,7 @@ app.post('/task/new/commit/:uuid', authCheck, taskNew.getUUID, taskNew.handleCom
* - * -
* name: images * name: images
* in: formData * in: formData
* description: Images to process, plus an optional GEO file (geo.txt) and/or an optional GCP file (*.txt) and/or an optional seed file (seed.zip). If included, the GCP file should have .txt extension. If included, the seed archive pre-polulates the task directory with its contents. * description: Images to process, plus optional files such as a GEO file (geo.txt), image groups file (image_groups.txt), GCP file (*.txt) or seed file (seed.zip). If included, the GCP file should have .txt extension. If included, the seed archive pre-polulates the task directory with its contents.
* required: false * required: false
* type: file * type: file
* - * -

Wyświetl plik

@ -49,6 +49,7 @@ module.exports = class Task{
this.options = options; this.options = options;
this.gcpFiles = []; this.gcpFiles = [];
this.geoFiles = []; this.geoFiles = [];
this.imageGroupsFiles = [];
this.output = []; this.output = [];
this.runningProcesses = []; this.runningProcesses = [];
this.webhook = webhook; this.webhook = webhook;
@ -77,12 +78,15 @@ module.exports = class Task{
files.forEach(file => { files.forEach(file => {
if (/^geo\.txt$/gi.test(file)){ if (/^geo\.txt$/gi.test(file)){
this.geoFiles.push(file); this.geoFiles.push(file);
}else if (/^image_groups\.txt$/gi.test(file)){
this.imageGroupsFiles.push(file);
}else if (/\.txt$/gi.test(file)){ }else if (/\.txt$/gi.test(file)){
this.gcpFiles.push(file); this.gcpFiles.push(file);
} }
}); });
logger.debug(`Found ${this.gcpFiles.length} GCP files (${this.gcpFiles.join(" ")}) for ${this.uuid}`); logger.debug(`Found ${this.gcpFiles.length} GCP files (${this.gcpFiles.join(" ")}) for ${this.uuid}`);
logger.debug(`Found ${this.geoFiles.length} GEO files (${this.geoFiles.join(" ")}) for ${this.uuid}`); logger.debug(`Found ${this.geoFiles.length} GEO files (${this.geoFiles.join(" ")}) for ${this.uuid}`);
logger.debug(`Found ${this.imageGroupsFiles.length} image groups files (${this.imageGroupsFiles.join(" ")}) for ${this.uuid}`);
cb(null); cb(null);
} }
}); });
@ -470,6 +474,9 @@ module.exports = class Task{
if (this.geoFiles.length > 0){ if (this.geoFiles.length > 0){
runnerOptions.geo = fs.realpathSync(path.join(this.getGcpFolderPath(), this.geoFiles[0])); runnerOptions.geo = fs.realpathSync(path.join(this.getGcpFolderPath(), this.geoFiles[0]));
} }
if (this.geoFiles.length > 0){
runnerOptions["split-image-groups"] = fs.realpathSync(path.join(this.getGcpFolderPath(), this.imageGroupsFiles[0]));
}
this.runningProcesses.push(odmRunner.run(runnerOptions, this.uuid, (err, code, signal) => { this.runningProcesses.push(odmRunner.run(runnerOptions, this.uuid, (err, code, signal) => {
if (err){ if (err){

Wyświetl plik

@ -1,6 +1,6 @@
{ {
"name": "NodeODM", "name": "NodeODM",
"version": "2.1.3", "version": "2.1.4",
"description": "REST API to access ODM", "description": "REST API to access ODM",
"main": "index.js", "main": "index.js",
"scripts": { "scripts": {