From 5af74419e0928465f5d1618f34aa3defc054da01 Mon Sep 17 00:00:00 2001 From: Gatsby Van Date: Mon, 10 Jun 2024 21:46:03 +0800 Subject: [PATCH] update calibration data script. --- caldata | 3 +- calibration_data/dataGen.m | 56 +++++++++++++++++++++++--------------- 2 files changed, 36 insertions(+), 23 deletions(-) diff --git a/caldata b/caldata index b99b815..a742a18 100644 --- a/caldata +++ b/caldata @@ -437,4 +437,5 @@ calMap[LJ06]="\{\n\ \{ 0, -9911, -4149, -5877\}, \{ 0, -9844, -4016, -5908\},\n\ \{ 0, -9528, -3912, -5604\}, \{ 0, -9432, -3911, -5648\},\n\ \{ 0, -9314, -3730, -5422\}, \n\ -};" \ No newline at end of file +};" + diff --git a/calibration_data/dataGen.m b/calibration_data/dataGen.m index 94b912f..5ce55e8 100644 --- a/calibration_data/dataGen.m +++ b/calibration_data/dataGen.m @@ -1,28 +1,40 @@ clear;clc; -files = dir ('./*.mat'); -L = length (files); +fid = fopen("../caldata", "w"); +fprintf(fid, "declare -A calMap\n"); -for i=1:L - image{i}=csvread(strcat(path,'\',file(i).name)); - % process the image in here +for i = 1:6 + id = sprintf("JG%02d", i); + write_data(fid, pwd, id); end -name = 'LJ03'; -load(['phase_' name '.mat']); -data = sortrows(dataDec1, 1); - -fprintf('calMap[%s]="\\{\\n\\\n', name); -for i = 1:size(data,1) - if (mod(i, 2) == 1) - fprintf("\t"); - end - fprintf("\\{%6d, %6d, %6d, %6d\\},", ... - data(i,2), data(i,3), data(i,4), data(i,5)); - if (mod(i, 2) == 1) - fprintf(" "); - else - fprintf("\\n\\\n"); - end +for i = 1:6 + id = sprintf("LJ%02d", i); + write_data(fid, pwd, id); end -fprintf('\\n\\\n};"\n'); \ No newline at end of file + +fclose(fid); + +function write_data(fid, folder_name, dev_id) + file_path = sprintf("%s/phase_%s.mat", folder_name, dev_id); + if ~isfile(file_path) + warning('[%s] dose not exist.\n', file_path); + return; + end + load(file_path); + data = sortrows(dataDec1, 1); + fprintf(fid, 'calMap[%s]="\\{\\n\\\n', dev_id); + for i = 1:size(data,1) + if (mod(i, 2) == 1) + fprintf(fid, "\t"); + end + fprintf(fid, "\\{%6d, %6d, %6d, %6d\\},", ... + data(i,2), data(i,3), data(i,4), data(i,5)); + if (mod(i, 2) == 1) + fprintf(fid, " "); + else + fprintf(fid, "\\n\\\n"); + end + end + fprintf(fid, '\\n\\\n};"\n\n'); +end \ No newline at end of file