From: Lukáš Jiřiště Date: Tue, 17 Dec 2024 08:28:51 +0000 (+0100) Subject: Show centimeter marks over the image X-Git-Url: https://git.ljiriste.work/?a=commitdiff_plain;h=e3456d4a24612e63c6fe8668f96166924354ec8c;p=Bubble_column.git Show centimeter marks over the image This is done to better judge the quality of the fit. --- diff --git a/create_meter.m b/create_meter.m index daa3fba..a107654 100644 --- a/create_meter.m +++ b/create_meter.m @@ -13,9 +13,18 @@ files = struct('name', cell(1, numel(filenames)), 'folder', cell(1,... [files.name] = deal(filenames{:}); [files.folder] = deal(last_path); [minfig, maxfig, meanfig] = get_aggregate_images(files); -meter = get_meter(maxfig, mask); +[meter, inverse] = get_meter(maxfig, mask, 2); figure(); imshow(meanfig); +pic_size = size(meanfig, 1, 2); +marks_meters = (0:0.01:5); +marks_pixels = inverse(marks_meters); +for i = 1:numel(marks_pixels) + line_x = marks_pixels(i); + if (0 < line_x && line_x < pic_size(2)) + line([line_x line_x], [0 pic_size(1)], 'Color', 'red') + end +end [meter_file_name, meter_path] = uiputfile([path '/*.mtr'], 'Save your meter as...'); if (meter_file_name ~= 0) save_meter([meter_path '/' meter_file_name], meter) diff --git a/functions/get_meter.m b/functions/get_meter.m index e6beebf..2ce75db 100644 --- a/functions/get_meter.m +++ b/functions/get_meter.m @@ -1,4 +1,4 @@ -function meter = get_meter(fig, mask, order) +function [meter, inverse] = get_meter(fig, mask, order) if nargin < 3 order = 1; end @@ -8,6 +8,8 @@ function meter = get_meter(fig, mask, order) mark_indeces = get_mark_indeces(intensity); coefs = polyfit(mark_indeces, 1:-0.1:1-(numel(mark_indeces)-1)*0.1, order); meter = @(pix) polyval(coefs, pix); + coefs_inverse = polyfit(1:-0.1:1-(numel(mark_indeces)-1)*0.1, mark_indeces, order); + inverse = @(meters) polyval(coefs_inverse, meters); %{ meter(mark_indeces) figure