Flip signal (positive and negative)

148 views (last 30 days)
I need help to program a flip-signal to separate the negative signal from the negative and reverse it ?
  1 Comment
Rik
Rik on 6 Jun 2018
Have a read here and here. It will greatly improve your chances of getting an answer.

Sign in to comment.

Accepted Answer

Image Analyst
Image Analyst on 6 Jun 2018
I have no idea what you want, but take a look at flipping functions flipud() and fliplr(), as well as masking:
negIndexes = signal < 0;
negValuesOnly = signal(negIndexes); % Extract neg values only, or...
% Set negative values to zero (masking)
noNegatives = signal; % Initialize.
noNegatives(negIndexes) = 0; % Set negatives to zero, positives remain as-is.
% Reverse the signal horizontally
reversedSignal = fliplr(signal);
% Invert the signal vertically
signal = max(signal) - signal;
  4 Comments
Souarv De
Souarv De on 17 Sep 2023
@Image Analyst, for inversion of a signal vertically why do you subtract it from the maximum value? Does it not simply the postive values becomes and negative and vice-versa?
Image Analyst
Image Analyst on 17 Sep 2023
You don't have to. You could simply negate it. Like I said, I didn't know what the original poster really wanted.

Sign in to comment.

More Answers (1)

Crispin Foli
Crispin Foli on 10 Jul 2020
to flip the signal about the x-axis (negatives to positives and vice versa), simply use the function gnegate (x).
Where X is the signal you're flipping.
This turns all peaks to troughs and all troughs to peaks.

Tags

Community Treasure Hunt

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

Start Hunting!