Lines Matching refs:neighbor
103 int count; // Number of neighbor corners
104 struct CvCBCorner* neighbors[4]; // Neighbor corners
118 // neighbors and corners are synced, i.e., neighbor 0 shares corner 0
490 // of the neighbor corners in the same row/column.
597 CvCBQuad *neighbor = q->neighbors[i];
611 if (neighbor && neighbor->ordered == false && neighbor->count == 4)
614 icvOrderQuad(neighbor, q->corners[i], (i+2)%4); // set in order
615 neighbor->ordered = true;
616 neighbor->row = row;
617 neighbor->col = col;
618 cvSeqPush( stack, &neighbor );
707 CvCBQuad *neighbor = quads[i]->neighbors[j];
708 if (neighbor && !neighbor->ordered && // is it an inner quad?
715 icvOrderQuad(neighbor, quads[i]->corners[j], (j+2)%4);
716 neighbor->ordered = true;
717 neighbor->row = row;
718 neighbor->col = col;
774 // looks for the neighbor of <quad> that isn't present,
784 for (int i=0; i<4; i++) // find no-neighbor corners
786 if (!quad->neighbors[i]) // ok, create and add neighbor
789 PRINTF("Adding quad as neighbor 2\n");
796 // set neighbor and group id
806 // same as neighbor quad, but offset
824 // now find other neighbor and add it, if possible
947 // remove any references to this quad as a neighbor
1099 // remove any references to this quad as a neighbor
1166 CvCBQuad *neighbor = q->neighbors[i];
1167 if( neighbor && neighbor->count > 0 && neighbor->group_idx < 0 )
1169 cvSeqPush( stack, &neighbor );
1170 out_group[count++] = neighbor;
1171 neighbor->group_idx = group_idx;
1172 neighbor->ordered = false;
1224 // - a quad with a single neighbor - with ROW1,
1272 // start with a corner that belongs to a quad with a signle neighbor.
1359 // find a neighbor that has not been processed yet
1360 // and that has a neighbor from the previous row
1539 // Check that each corner is a neighbor of different quads