Cần thiết: Peaks và thuật toán máng

J

JimTex

Guest
Tôi đang tìm một algroithm đáng tin cậy cho việc tìm kiếm và mô tả các đỉnh và đáy trong dữ liệu chuỗi thời gian. Chuỗi thời gian của tôi là tương đối ngắn (500-1000) và các đỉnh và đáy chính là không lặp đi lặp lại. Xin vui lòng xem ảnh đính kèm. Thanks Jim
 
nếu một mẫu nhỏ hơn so với mẫu trước đó và cũng nhỏ hơn so với các mẫu tiếp theo, sau đó lấy mẫu là một máng. Một logic tương tự có thể được hình thành để tìm đỉnh.
 
Bạn có lowpass các dữ liệu đầu tiên, nếu không bạn sẽ nhận được quá nhiều máng sai Dưới đây là một kịch bản ví dụ tôi đã ném lại với nhau: [size = 2] [color = # 999999] Thêm vào sau 8 giây: [/color] [/size]% Tạo một tín hiệu trông kinda như của bạn t = 1:1000; tiếng ồn = randn (1, chiều dài (tín hiệu)); tín hiệu = 10 * sin (0,02 * t) + 4 * sin (0,05 * t) + tiếng ồn;% sản lượng đầu ra vector = zeros (1, chiều dài (tín hiệu));% Lowpass tín hiệu để có được thoát khỏi nội dung tần số cao. Lưu ý rằng filtfilt% sẽ tránh được xu hướng tín hiệu. Các giá trị chính xác của bộ lọc% được tinh chỉnh cho đến khi họ nhìn bên phải [ba] = bơ (4, .05); lowpass_signal = (filtfilt (b, một tín hiệu,)); lô (t, tín hiệu, t, lowpass_signal); tiêu đề ('So sánh các tín hiệu'); truyền thuyết ('gốc', 'lọc');% tốc độ thay đổi độ dốc tín hiệu lọc khác (lowpass_signal);% Trough:% không dốc, ít hơn so với xung quanh giá trị% Cắm -1 vào các vector đầu ra mà đỉnh điểm%:% không độ dốc lớn hơn xung quanh các giá trị% Cắm -1 vào vector đầu ra tại vị trí này cho i = 1: (chiều dài (tín hiệu) -6) if (abs (độ dốc (i))
 

Welcome to EDABoard.com

Sponsor

Back
Top