Fitting the data so that one a single continuous line is achived

3 ビュー (過去 30 日間)
waqas
waqas 2019 年 9 月 4 日
コメント済み: waqas 2019 年 9 月 4 日
Hi,
I have following line that I want to smooth out so that only one point will be there in one column:
Annotation 2019-09-04 112619.png
mat file for the data is also attached. I tried to look for curve fitting and interpolation etc but could not comprehend how exactly tackle this.

回答 (1 件)

KSSV
KSSV 2019 年 9 月 4 日
I = imread('Annotation 2019-09-04 112619.png') ;
I1 = imcrop(I) ; % crop to remove white borders present around the image
I1 = rgb2gray(I1) ;
[y,x] = find(I1) ;
% Do fitting
p = polyfit(x,y,2) ;
xi = min(x):max(x) ;
yi = polyval(p,xi) ;
imshow(I1)
hold on
plot(xi,yi,'r')
  3 件のコメント
KSSV
KSSV 2019 年 9 月 4 日
Try using smooth
imshow(I1)
hold on
plot(x,smooth(y),'r')
waqas
waqas 2019 年 9 月 4 日
It is still giving almost the same fit. I reckon if some sort of trignomatric fit can give better conservation of orginal randomness of line. Line is basically depicting a crack and showing it as a smooth curve would be a simplified case which would cause problems in later stages of analysis.

サインインしてコメントする。

カテゴリ

Help Center および File ExchangeInterpolation についてさらに検索

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by