Mercurial > hg > camir-aes2014
comparison toolboxes/FullBNT-1.0.7/KPMtools/rectintSparseC.m @ 0:e9a9cd732c1e tip
first hg version after svn
author | wolffd |
---|---|
date | Tue, 10 Feb 2015 15:05:51 +0000 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
-1:000000000000 | 0:e9a9cd732c1e |
---|---|
1 function [overlap, normoverlap] = rectintSparseC(A,B) | |
2 % | |
3 % function [area, normarea] = rectintSparseC(A,B) | |
4 % A(i,:) = [x y w h] | |
5 % B(j,:) = [x y w h] | |
6 % out(i,j) = area of intersection | |
7 % | |
8 % Same as built-in rectint, but uses less memory. | |
9 % Also, returns area of overlap normalized by area of patch. | |
10 % See rectintSparse | |
11 | |
12 if isempty(A) | isempty(B) | |
13 overlap = []; | |
14 normoverlap = []; | |
15 return; | |
16 end | |
17 | |
18 leftA = A(:,1); | |
19 bottomA = A(:,2); | |
20 rightA = leftA + A(:,3); | |
21 topA = bottomA + A(:,4); | |
22 | |
23 leftB = B(:,1)'; | |
24 bottomB = B(:,2)'; | |
25 rightB = leftB + B(:,3)'; | |
26 topB = bottomB + B(:,4)'; | |
27 | |
28 numRectA = size(A,1); | |
29 numRectB = size(B,1); | |
30 | |
31 verbose = 0; | |
32 [overlap, normoverlap] = rectintSparseLoopC(leftA, rightA, topA, bottomA, leftB, rightB, topB, bottomB, verbose); |