How to calculate residence time?
8 次查看(过去 30 天)
显示 更早的评论
Hi,
I have a time column in picoseconds and 442 distance columns measured in nanometres. I know how to extract the time points that meet the distance threshold I have set.
x = xlsread('10_1.xlsx')
x = x(x(:,2)<=0.5,:);
I want to calculate the total residence time for each of the columns. How can I do this?
Akash
2 个评论
回答(1 个)
Image Analyst
2019-3-19
Use regionprops() and ask for PixelIdxList. Then use PixelIdxList(end) - PixelIdxList(1) for each region found. Something like
props = regionprops(vec, 'PixelIdxList'); % Vec is a 1-d list of binary (boolean/logical) data of whether x is above 0.5 or not.
% Now find the delta time for all regions found in this vector, vec.
for k = 1 : length(props)
startingIndex = props(k).PixelIdxList(1);
endingIndex = props(k).PixelIdxList(end);
deltaTime(k) = x(endingIndex) - x(startingIndex); % x is the time vector
end
Attach '10_1.xlsx' if you need more help.
0 个评论
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!