How to quantify the object shift between projection images using Matlab?
9 ビュー (過去 30 日間)
古いコメントを表示
Hi, I am tasked with quantifying the shift between these 2D simulated images, by implementing an algorithm (e.g. cross-correlation or centre of mass) using matlab. I have attached the data and script for the images. Any help would be appreciated.


回答 (1 件)
Image Analyst
2023 年 8 月 12 日
Or try normalized cross correlation. See attached demo.
4 件のコメント
Image Analyst
2023 年 8 月 13 日
Now that I can see your images, why don't you just threshold and find the centroid of the blob? Do this for each image and see how the centroid shifted. Something like
mask1 = grayImage1 > someThresholdValue;
% Take largest blob only.
mask1 = bwareafilt(mask1, 1);
props1 = regionprop(mask1, 'Centroid');
xy1 = props1.Centroid
% Now for image 2
mask2 = grayImage2 > someThresholdValue;
% Take largest blob only.
mask2 = bwareafilt(mask2, 1);
props2 = regionprop(mask2, 'Centroid');
xy2 = props2.Centroid
% Now compute delta x and y
deltax = xy1(1) - xy2(1)
deltay = xy1(2) - xy2(2)
It's a generic, general purpose demo of how to threshold an image to find blobs, and then measure things about the blobs, and extract certain blobs based on their areas or diameters.
参考
カテゴリ
Help Center および File Exchange で Feature Detection and Extraction についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!