• No results found

Selective Exploration

4.1 Exploring the Space of Camera Settings

4.1.1 Selective Exploration

Domain-specific knowledge can be used to reduce the search complexity by reducing the search space size. For example, instead of searching the entire space of camera settings, the entire pan and tilt range can be covered at the smallest zoom, and further exploration of smaller fields of view by zooming in can be done only where ROIs are in view. Additionally, the number of metric evaluations can be decreased by keeping the overlap between camera views to a minimum. The pan and tilt settings values are in a spherical coordinate system. To achieve minimum overlap between views, the number of pan setting values explored can decrease as the tilt value increases: for a constant field of view, fewer views with minimal overlap are required as the tilt value increases from the sphere’s equator toward its poles. The number of camera views with minimum overlap can be approximated using solid angles inside a unit sphere. LetPmax andPmin be the maximum and minimum pan values. LetTmax

andTmin be the maximum and minimum tilt values. LetZmax andZmin=1 be the maximum

and minimum zoom values. Letφ andθ be the horizontal and vertical field of view angles at

the lowest zoom.

The solid angle corresponding to the part of the sphere covered by the camera over the entire range of pan and tilt settings, at the lowest zoom, can be computed as:

AS= (sin(Tmax+θ/2)−sin(Tmin−θ/2)) (Pmax−Pmin+φ) (4.1.1)

The solid angle inside the field of view pyramid with apex anglesφ andθ can be computed

as:

AP=4arcsin(sin(φ/2)sin(θ/2)) (4.1.2)

For each camerac, the number of camera views with minimum overlap at the lowest zoom can be approximated as:

nViewsc= AS

AP (4.1.3)

LetGP,GT andGZbe the granularities of the pan, tilt and zoom settings, or the differences between two successive setting values. Each of thenViewscviews can be explored hierarchi- cally and selectively, starting with the lowest zoom and zooming in only in camera views where there are ROIs. Maintaining minimum overlap between camera views while zooming can be performed in a binary partitioning fashion by doubling the zoom value at every binary tree depthd, corresponding to zoom×2d . Eachparent camera view from depthdgets split into 4 child camera views at depth d+1, up to a maximum depth D=log2(Zmax). In the

ideal case, this results in an increased metric value for 1 of the 4 child camera views due to the increased image resolution, and zero for the metric values corresponding to the other 3 child camera views. Only the child camera view with the increased value needs to be explored by becoming a parent for further splitting, while the other 3 child camera views do not need to be explored. When the metric value decreases (zoomed in too far), or more than 1 of the 4 child camera views have non-zero metric values (the ROIs are split between camera views), a local optimization must be performed to compute the optimal configuration and its corresponding metric value inside the PTZ domain enclosed by the parent camera view. The camera field of view at zoom×2d can be computed asφ/2d. The number of zoom settings between zoom

factor×2d and the maximum zoom valueZmax can be computed as(Zmax−2d)/GZ. If the local

optimization process is a simple exhaustive exploration, the number of camera configurations explored at depthdby each cameraccan be approximated as:

nLocalc,d= φ 2d · 1 GP · θ 2d· 1 GT · Zmax−2d GZ (4.1.4)

gc,d=1−fc,d the probability that camerac’s view gets explored though local optimization. The number of camera configurations that are evaluated at depthd∈ {0,1, . . . ,D}for camera

cis:

nCon f igsc,d=nViewsc· 4+nLocalc,d·gc,d·

d

i=1

(fc,i−1) (4.1.5)

The total number of possible configurations for camera cfor a time step of lengthlStep

time units is:

nCon f igsc= D

d=0 nCon f igsc,d !lStep (4.1.6)

When usingnCamscameras, assuming they are of the same type, the number of possible camera configurations to explore for each time step is:

nCon f igsselective=

nCams

c=1

nCon f igsc= (nCon f igsc)nCams (4.1.7)

Substituting Equations 4.1.7,3.2.1 into the Search Complexity Equation 3.2.5, the total number of contribution computations when selectively exploring the entire camera settings space is:

SCselective= (nCon f igsc)nCams·nSteps·nCams·nROIs·nU nits (4.1.8)

Equation 4.1.8 shows that selective exploration helps reduce search complexity by reduc- ing the base of the exponential function,nCon f igsc. However, the computational complexity remains exponential in terms of bothnCamsandnSteps. A special case occurs if at the lowest zoom some ROIs are split between multiple camera views. This situation can be handled by local exhaustive exploration. The computation in Equation 4.1.8 ignores this special case.

To enable comparison with the exhaustive exploration numerical example in Section 3.3, I set the corresponding values for the settings granularities to GP =GT =10, and assume

the maximum zoom setting value is×20, with the corresponding granularityGZ =4 and the maximum depthD=4. I set the probabilities fc,d=gc,d=0.5 for depthsd=0,1,2,3. Finally,

fc,4=0 andgc,4=1 to ensure local exhaustive exploration at the highest level of zoom. I also

setPmin=Tmin=0◦,Pmax =360◦, Tmax=90◦, φ =80◦ andθ =60◦. Using Equation 4.1.3,

the number of camera views with minimum overlap at the lowest zoom isnViewsc'8. The number of possible configurations for a single camera c is nCon f igsc '1095. Figure 3.1

shows a plot of the selective search complexity in terms of computed contributions.

5 10 15 20 102 103 104 nROIs log 10 (SC settings ) nCams=10 nCams=20 nCams=30

Figure 4.1: Numerical example for selective exploration of the camera settings space. Setting values are the same as in Figure 3.1.