Finding Point of Increased Event Frequency

3 ビュー (過去 30 日間)
Christopher Eirich
Christopher Eirich 2014 年 9 月 13 日
回答済み: Image Analyst 2014 年 9 月 13 日
Good morning
I am trying to find the point in my data where an event begins happening more frequently.
For example, here is an image of a plot:
I am interested specifically in finding the point around 3700 where the frequency of the particular event begins occurring more often. The change is subtle, but the slope does begin increasing there.

採用された回答

Youssef  Khmou
Youssef Khmou 2014 年 9 月 13 日
編集済み: Youssef Khmou 2014 年 9 月 13 日
From the graph 3700 is approximately the point, from theoretical view point, you can search the inflection point using second derivative, the index of the maximum indicates that transition,
note : d=diff(f,2) truncates one element so if max(d) is N then N+1 is the inflection .
Example :
f=[0:10 (10:20).^2]; plot(f)
figure; plot(diff(f,2))
hold on
plot(f,'r')
title(' Transition point');

その他の回答 (1 件)

Image Analyst
Image Analyst 2014 年 9 月 13 日
You can use the triangle thresholding method . How it works is this: Draw a line from the peak to the base of your bar chart. Then draw perpendicular lines from that line until it intersects the bars. The bar (x-value) that has the longest perpendicular line is the one to use. It's good for picking out what looks like the "corner" in humps that have flat parts and steep parts. There is code for it in the File Exchange or the web. It often picks good thresholds when the more common Otsu method fails.

カテゴリ

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

タグ

Community Treasure Hunt

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

Start Hunting!

Translated by