将边界框等同于另一个边界框:Opencv,Android

时间:2015-05-03 21:49:34

标签: java android sorting opencv bounding-box

我正在尝试对边界框进行排序,在我的算法中我有一条线,其中索引j的边界框等于索引j + 1

 contourRects.get(j) = contourRects.get(j+1);

但是它给出了一个错误,左手边只能是变量。

编辑:

                int j;
                boolean flag = true;
                Rect temp;

                while(flag)
                {
                    flag = false;

                    for(j=0; j<contourRects.size(); j++)
                    {
                        if(contourRects.get(j).y < contourRects.get(j+1).y)
                        {
                            temp = contourRects.get(j);
                            contourRects(j) = contourRects.get(j+1);
                            contourRects.get(j+1) = temp;
                        }
                    }
                }

还有一件事是contoursRect是一个列表

List<Rect> contourRects = new ArrayList();

1 个答案:

答案 0 :(得分:1)

您可以使用f.f.g代码:

Collections.swap(contourRects, j, j + 1);

而不是:

 temp = contourRects.get(j);
 contourRects(j) = contourRects.get(j+1);
 contourRects.get(j+1) = temp;