0
我想将直方图分成三部分并定义三部分的范围。将直方图分为三部分
minRed = min(red(:));
maxRed = max(red(:));
AvgRed = (minRed+maxRed)/3;
AvgRed2 = AvgRed+AvgRed;
但有时的AvgRed
值变成的AvgRed2
小于minRed
和值超过maxRed
。什么是正确的方法来做到这一点?
我想将直方图分成三部分并定义三部分的范围。将直方图分为三部分
minRed = min(red(:));
maxRed = max(red(:));
AvgRed = (minRed+maxRed)/3;
AvgRed2 = AvgRed+AvgRed;
但有时的AvgRed
值变成的AvgRed2
小于minRed
和值超过maxRed
。什么是正确的方法来做到这一点?
我认为这只是简单的数学:
假设minRed = 10
,并且maxRed = 100
minRed = 10;
maxRed = 100;
你想的范围划分为三个部分大小相等:
AvgRed
应40
和AvgRed2
应是70
。
% minRed AvgRed AvgRed2 minRed
% ------ ------ ------- ------
%1 10 40 70 100
%| | | | |
% <-------------------------->
% range
%Calculate the range:
range = maxRed - minRed;
%Size of each part is third of the range.
thirdRange = range/3;
%Add 1/3 of range to minRed to get AvgRed (round it case value needs to be an integer).
AvgRed = minRed + round(thirdRange);
%Add 2/3 of range to minRed to get AvgRed2.
AvgRed2 = minRed + round(thirdRange*2);
当你画它很简单......
你能说出分工背后的逻辑是什么? – Royi