Metadata-related adjustments
This commit is contained in:
parent
f963ee84a7
commit
4ffc5277c0
@ -16,7 +16,33 @@ const TECH_NAMES = {
|
|||||||
hsi: "Hyperspectral Imaging",
|
hsi: "Hyperspectral Imaging",
|
||||||
uvf: "Technical Photography UVF",
|
uvf: "Technical Photography UVF",
|
||||||
}
|
}
|
||||||
|
const authors = {
|
||||||
|
DAN: 'Danilo P. Pavone',
|
||||||
|
};
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* @param {string} imgFilename
|
||||||
|
* @returns {object}
|
||||||
|
*/
|
||||||
|
function extractNIRMetadata(imgFilename) {
|
||||||
|
return {
|
||||||
|
papyrus: imgFilename.split('_')[0].split('-')[2],
|
||||||
|
imageAuthor: authors[imgFilename.split('-')[0].replace(/\d{4}/,'')],
|
||||||
|
date: imgFilename.split('-')[0].match(/\d{4}/)[0],
|
||||||
|
}
|
||||||
|
}
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* @param {string} imgFilename
|
||||||
|
* @returns {object}
|
||||||
|
*/
|
||||||
|
function extractDNOMetadata(imgFilename) {
|
||||||
|
return {
|
||||||
|
papyrus: imgFilename.split('_')[1],
|
||||||
|
imageAuthor: '',
|
||||||
|
date: '',
|
||||||
|
}
|
||||||
|
}
|
||||||
/**
|
/**
|
||||||
* @param {string} manifestId
|
* @param {string} manifestId
|
||||||
*/
|
*/
|
||||||
@ -25,7 +51,7 @@ Common.getImageList = async function (manifestId) {
|
|||||||
return `PHerc_${g1}_${g2.toUpperCase()}`;
|
return `PHerc_${g1}_${g2.toUpperCase()}`;
|
||||||
});
|
});
|
||||||
|
|
||||||
let baseFolder = folderName.split('_')[0] + '_' + folderName.split('_')[1];
|
let baseFolder = `${folderName.split('_')[0]}_${folderName.split('_')[1]}`;
|
||||||
|
|
||||||
let files = await fs.promises.readdir(
|
let files = await fs.promises.readdir(
|
||||||
`${process.env.IMAGES_DIR}/${baseFolder}/${folderName}`
|
`${process.env.IMAGES_DIR}/${baseFolder}/${folderName}`
|
||||||
@ -147,25 +173,23 @@ Common.populateCanvases = async function (manifest, images) {
|
|||||||
* @returns {ManifestMetadata}
|
* @returns {ManifestMetadata}
|
||||||
*/
|
*/
|
||||||
Common.createMetadata = function (manifest, imgFilename) {
|
Common.createMetadata = function (manifest, imgFilename) {
|
||||||
let metadata = this.getMetadataFromImgName(imgFilename);
|
let metadata = this.getMetadataFromImgName(imgFilename, manifest.technique);
|
||||||
metadata.technique = TECH_NAMES[manifest.technique];
|
metadata.technique = TECH_NAMES[manifest.technique];
|
||||||
|
|
||||||
return new ManifestMetadata(metadata);
|
return new ManifestMetadata(metadata);
|
||||||
}
|
}
|
||||||
/**
|
/**
|
||||||
* @todo Only works with NIR!!
|
|
||||||
* @param {string} imgFilename
|
* @param {string} imgFilename
|
||||||
|
* @param {string} technique
|
||||||
*/
|
*/
|
||||||
Common.getMetadataFromImgName = function (imgFilename) {
|
Common.getMetadataFromImgName = function (imgFilename, technique) {
|
||||||
const authors = {
|
const extractor = {
|
||||||
DAN: 'Danilo P. Pavone'
|
nir: extractNIRMetadata,
|
||||||
};
|
dn: extractDNOMetadata,
|
||||||
|
do: extractDNOMetadata,
|
||||||
return {
|
|
||||||
papyrus: imgFilename.split('_')[0].split('-')[2],
|
|
||||||
imageAuthor: authors[imgFilename.split('-')[0].replace(/\d{4}/,'')],
|
|
||||||
date: imgFilename.split('-')[0].match(/\d{4}/)[0],
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
return extractor[technique](imgFilename);
|
||||||
}
|
}
|
||||||
|
|
||||||
export default Common;
|
export default Common;
|
Loading…
Reference in New Issue
Block a user