for (int i = 0; i < c.length; i++)
{
for(int j=0; j<c[i].length;j++)
{
if(peak1[i]<c[i][j]){
peak1[i] = c[i][j];
peak1loc1[i]= j;
}
}
println(peak1[2]);
println(peak2[2]);`
这是我到目前为止所尝试的。由于某种原因peak1
,并且peak2
正在打印相同的值。
我有一个二维数组,它保存图像的 RGB 颜色值。我想找到每个通道(r,g,b)的两个主要峰,以及这两个主要峰之间的山谷,所以我会得到两个红色的主要峰,绿色的两个主要峰,蓝色的两个主要峰和一个谷(主峰之间的最小值),因此总共三个谷。
有什么算法可以解决这个问题,或者任何人都可以给我一些想法,我怎么能找到这些?伪代码真的很有帮助。