<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE article PUBLIC "-//NLM//DTD Journal Publishing DTD v2.3 20070202//EN" "journalpublishing.dtd">
<article xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink" xml:lang="en" article-type="research-article">
<front>
<journal-meta>
<journal-id journal-id-type="nlm-ta">Sensors</journal-id>
<journal-title>Sensors</journal-title>
<issn pub-type="epub">1424-8220</issn>
<publisher>
<publisher-name>Molecular Diversity Preservation International (MDPI)</publisher-name></publisher></journal-meta>
<article-meta>
<article-id pub-id-type="doi">10.3390/s120608073</article-id>
<article-id pub-id-type="publisher-id">sensors-12-08073</article-id>
<article-categories>
<subj-group>
<subject>Article</subject></subj-group></article-categories>
<title-group>
<article-title>Robust Feedback Zoom Tracking for Digital Video Surveillance</article-title></title-group>
<contrib-group>
<contrib contrib-type="author">
<name><surname>Zou</surname><given-names>Tengyue</given-names></name></contrib>
<contrib contrib-type="author">
<name><surname>Tang</surname><given-names>Xiaoqi</given-names></name></contrib>
<contrib contrib-type="author">
<name><surname>Song</surname><given-names>Bao</given-names></name><xref ref-type="corresp" rid="c1-sensors-12-08073"><sup>*</sup></xref></contrib>
<contrib contrib-type="author">
<name><surname>Wang</surname><given-names>Jin</given-names></name></contrib>
<contrib contrib-type="author">
<name><surname>Chen</surname><given-names>Jihong</given-names></name></contrib>
<aff id="af1-sensors-12-08073">National NC System Engineering Research Center, Huazhong University of Science and Technology, Wuhan 430074, China; E-Mails: <email>zouty@smail.hust.edu.cn</email> (T.Z.); <email>xqtang@hust.edu.cn</email> (X.T.); <email>iamlaoking@smail.hust.edu.cn</email> (J.W.); <email>jhongchen65@gmail.com</email> (J.C.)</aff></contrib-group>
<author-notes>
<corresp id="c1-sensors-12-08073">
<label>*</label>Author to whom correspondence should be addressed; E-Mail: <email>songbao@hust.edu.cn</email>; Tel.: +86-27-8754-4383; Fax: +86-27-8754-0024.</corresp></author-notes>
<pub-date pub-type="collection">
<year>2012</year></pub-date>
<pub-date pub-type="epub">
<day>11</day>
<month>06</month>
<year>2012</year></pub-date>
<volume>12</volume>
<issue>6</issue>
<fpage>8073</fpage>
<lpage>8099</lpage>
<history>
<date date-type="received">
<day>09</day>
<month>04</month>
<year>2012</year></date>
<date date-type="rev-recd">
<day>31</day>
<month>05</month>
<year>2012</year></date>
<date date-type="accepted">
<day>01</day>
<month>06</month>
<year>2012</year></date></history>
<permissions>
<copyright-statement>© 2012 by the authors; licensee MDPI, Basel, Switzerland.</copyright-statement>
<copyright-year>2012</copyright-year>
<license>
<p>This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution license (http://creativecommons.org/licenses/by/3.0/).</p></license></permissions>
<abstract>
<p>Zoom tracking is an important function in video surveillance, particularly in traffic management and security monitoring. It involves keeping an object of interest in focus during the zoom operation. Zoom tracking is typically achieved by moving the zoom and focus motors in lenses following the so-called “trace curve”, which shows the in-focus motor positions versus the zoom motor positions for a specific object distance. The main task of a zoom tracking approach is to accurately estimate the trace curve for the specified object. Because a proportional integral derivative (PID) controller has historically been considered to be the best controller in the absence of knowledge of the underlying process and its high-quality performance in motor control, in this paper, we propose a novel feedback zoom tracking (FZT) approach based on the geometric trace curve estimation and PID feedback controller. The performance of this approach is compared with existing zoom tracking methods in digital video surveillance. The real-time implementation results obtained on an actual digital video platform indicate that the developed FZT approach not only solves the traditional one-to-many mapping problem without pre-training but also improves the robustness for tracking moving or switching objects which is the key challenge in video surveillance.</p></abstract>
<kwd-group>
<kwd>zoom tracking</kwd>
<kwd>video surveillance</kwd>
<kwd>focus value</kwd>
<kwd>focus control</kwd>
<kwd>PID feedback</kwd></kwd-group></article-meta></front>
<body>
<sec sec-type="intro">
<label>1.</label>
<title>Introduction</title>
<p>Due to the remarkable growth in the video surveillance market over the last few years [<xref ref-type="bibr" rid="b1-sensors-12-08073">1</xref>–<xref ref-type="bibr" rid="b3-sensors-12-08073">3</xref>], high-quality imaging results from zoom operation are now demanded by consumers [<xref ref-type="bibr" rid="b4-sensors-12-08073">4</xref>,<xref ref-type="bibr" rid="b5-sensors-12-08073">5</xref>], particularly in traffic management and security monitoring [<xref ref-type="bibr" rid="b6-sensors-12-08073">6</xref>–<xref ref-type="bibr" rid="b8-sensors-12-08073">8</xref>]. Maintaining image sharpness or focus during the entire zoom process is the main challenge of zoom tracking. <xref ref-type="fig" rid="f1-sensors-12-08073">Figure 1</xref> shows the zoom tracking effect as the zoom is changed from a wide-angle zoom to a tele-angle zoom. As shown in this figure, the plant remains in-focus as the zoom is changed by the user in the presence of zoom tracking. However, the image becomes out-of-focus in the absence of zoom tracking, and the image finally clarifies after zoom tracking due to an auto-focusing (AF) [<xref ref-type="bibr" rid="b9-sensors-12-08073">9</xref>] algorithm.</p>
<sec>
<label>1.1.</label>
<title>Zoom Tracking Principle</title>
<p>Users often utilise two different zoom options in a digital video system: optical zoom and digital zoom. Digital zoom works by cropping and subsequently enlarging a captured image, which produces an image of lower optical resolution. In contrast, optical zoom uses the optic lens to bring the subject closer [<xref ref-type="bibr" rid="b10-sensors-12-08073">10</xref>]. In this paper the zoom tracking problem is only studied for optical zoom. <xref ref-type="fig" rid="f2-sensors-12-08073">Figure 2(a)</xref> shows an actual zoom system, and its structure chart is shown in <xref ref-type="fig" rid="f2-sensors-12-08073">Figure 2(b)</xref>.</p>
<p><xref ref-type="fig" rid="f2-sensors-12-08073">Figure 2(c)</xref> introduces the zoom tracking mechanism in detail. When the zoom is changed from wide-angle to tele-angle, the zoom lens focal length increases from <italic>F</italic><sub>wide</sub> to <italic>F</italic><sub>tele</sub>, whereas the angle of view reduces from <italic>Φ</italic><sub>wide</sub> to <italic>Φ</italic><sub>tele</sub>. In response to this change, the in-focus plane (image distance) should shift during this process. For an object at a distance <italic>d</italic>, <italic>s<sub>d</sub>(z<sub>wide</sub>)</italic> and <italic>s<sub>d</sub>(z<sub>tele</sub>)</italic> are defined as the image distance at wide-angle and tele-angle zooms, respectively. Thus, when the zoom is changed from wide-angle to tele-angle, to maintain image sharpness, the image sensor must be moved from the wide-angle in-focus plane at <italic>s<sub>d</sub>(z<sub>wide</sub>)</italic> to the tele-angle in-focus plane at <italic>s<sub>d</sub>(z<sub>tele</sub>)</italic>. As the zoom lens focal length is altered via a zoom motor and the image sensor is moved by a focus motor, the zoom tracking is typically achieved by following the so-called “trace curves”, which show zoom motor positions <italic>versus</italic> in-focus motor positions for various object distances in <xref ref-type="fig" rid="f3-sensors-12-08073">Figure 3</xref>. Thus, trace curve estimation is a crucial problem for zoom tracking methods. A major challenge in this estimation is the one-to-many mapping problem [<xref ref-type="bibr" rid="b11-sensors-12-08073">11</xref>], which becomes troublesome when the zoom is changed from wide-angle to tele-angle. This problem will be further described in Section 2.</p></sec>
<sec sec-type="methods">
<label>1.2.</label>
<title>Existing Zoom Tracking Methods</title>
<p>The existing zoom tracking methods can be divided into two categories: (1) geometric methods, such as geometric zoom tracking (GZT) and adaptive zoom tracking (AZT); (2) machine learning methods, such as relational zoom tracking (RZT) and predictive zoom tracking (PZT). The development of zoom tracking can be traced back to the look-up table method [<xref ref-type="bibr" rid="b12-sensors-12-08073">12</xref>], which stores a large number of trace curves for various object distances in memory. The real trace curve is estimated by selecting the closest curve among the stored ones. However, this approach is not often used in practice because of its large memory requirement. To cover the shortage of memory, the GZT [<xref ref-type="bibr" rid="b13-sensors-12-08073">13</xref>,<xref ref-type="bibr" rid="b14-sensors-12-08073">14</xref>] has been proposed. The GZT approach obtains an estimate of a trace curve via linear interpolation only based on two trace curves for near and far objects. A drawback of this approach is that the offset between the estimated and the real trace curves gradually increases as the zoom is changed from wide-angle to tele-angle. This approach is later extended to the AZT method [<xref ref-type="bibr" rid="b15-sensors-12-08073">15</xref>], which incorporates a recalibration procedure at the boundary zoom position where the trace curve changes from linear to non-linear.</p>
<p>The RZT [<xref ref-type="bibr" rid="b16-sensors-12-08073">16</xref>] and PZT [<xref ref-type="bibr" rid="b11-sensors-12-08073">11</xref>] methods were proposed later to improve the estimation accuracy through machine learning. RZT generates an estimate of the distance range in which the object resides by so-called “relational curves”. This distance range is then used to estimate a trace curve. PZT uses an input-output model trained by <italic>a priori</italic> characteristic trace curves to generate an estimate of a trace curve. The trained model is often based on the Auto-Regression with Exogenous Inputs (ARX) model [<xref ref-type="bibr" rid="b17-sensors-12-08073">17</xref>] or the Recurrent Neural Network (RNN) model [<xref ref-type="bibr" rid="b18-sensors-12-08073">18</xref>]. Both RZT and PZT solve the one-to-many mapping problem well, but they require a significant amount of <italic>a priori</italic> knowledge for training. It is not always convenient to obtain these <italic>a priori</italic> trace curves in practical use. Furthermore, the errors in the learning step will also have an effect on the estimation. Because the variation of the lens or scenes often requires additional time for re-training, the adaptability of these two algorithms is relatively poor.</p></sec>
<sec>
<label>1.3.</label>
<title>Zoom Tracking for Digital Video Surveillance</title>
<p>There are typically two occasions for which the optical zoom is used: (1) the enlarged occasion, which enlarges the object at a constant distance in image to look at it in detail; and (2) the telephoto occasion, which tracks the object moving away. In traffic management and security monitoring, the telephoto occasions are often encountered, for example, for capturing the license plate of an escaping vehicle that has just run a red light. However, all existing zoom tracking methods mentioned previously have been developed for the digital still camera systems. These algorithmic methods assume that the object distance is constant; thus, the moving or switching object in video surveillance [<xref ref-type="bibr" rid="b19-sensors-12-08073">19</xref>] has not been considered.</p>
<p><xref ref-type="fig" rid="f4-sensors-12-08073">Figure 4(a)</xref> shows the moving object as the zoom is changed from wide-angle to tele-angle. The object distance is changing as the car moves towards the video camera during zooming. In this situation, existing methods cannot produce an ideal result. There are several other situations in which these methods cannot properly function, even when the objects are stationary. <xref ref-type="fig" rid="f4-sensors-12-08073">Figure 4(b)</xref> illustrates the switching object during zooming. The computer box and network switch are shown as two stationary objects at different distances in the scene. When the zoom motor is moved from wide-angle to tele-angle, the main target in the video changes from the computer box to the network switch. The traditional zoom tracking methods will also fail in this situation.</p>
<p>To track moving and switching objects in digital video surveillance and to acquire better estimated results without pre-training the system, we propose the robust feedback zoom tracking (FZT) method to revise the estimated trace curve, which is based on traditional GZT estimation and utilises a proportional-integral-derivative (PID) loop-closed feedback controller [<xref ref-type="bibr" rid="b20-sensors-12-08073">20</xref>–<xref ref-type="bibr" rid="b22-sensors-12-08073">22</xref>]. In the absence of knowledge of the underlying process, a PID controller has historically been considered optimal [<xref ref-type="bibr" rid="b23-sensors-12-08073">23</xref>]. The controller can provide control action for specific process requirements by tuning its parameters. This method compensates for errors along the estimated trace curve using the real-time focus value (FV), which is typically used in the auto-focusing function.</p></sec>
<sec>
<label>1.4.</label>
<title>Contributions and Organisation</title>
<p>In this work: (1) we discuss the zoom tracking methods in video surveillance for the first time; (2) we propose a novel zoom tracking method called FZT, which is robust in tracking moving or switching objects in video surveillance; (3) we implement our FZT zoom tracking algorithm on real-time digital video hardware and compare it with commonly used algorithms. To the best of our knowledge, the focus value and real-time feedback mechanism have not yet been used in previous zoom tracking studies, and there have been no previous reports on the implementation of the zoom tracking method in video surveillance devices.</p>
<p>This paper is organised as follows. Section 2 introduces our FZT method in detail. The FZT approach is then implemented on the hardware platform in Section 3. Our experimental results and comparisons between our algorithm and other existing methods in terms of accuracy and speed are reported in Section 4. Finally, conclusions are stated in Section 5.</p></sec></sec>
<sec>
<label>2.</label>
<title>Feedback Zoom Tracking</title>
<p>As mentioned above, zoom tracking is related to the zoom and focus motor positions. It is typically achieved by following a trace curve. If the motors are moved following the trace curve during zoom operation, the image will always stay sharp. <xref ref-type="fig" rid="f3-sensors-12-08073">Figure 3</xref> shows the trace curves for an 18× zoom lens. Each trace curve corresponds to a certain object distance.</p>
<sec>
<label>2.1.</label>
<title>Trace Curve Estimation</title>
<p>The first goal in zoom tracking that we addressed is how to estimate the right trace curve without any special distance measurement equipment. Let <italic>f</italic><sub>d</sub> denote the real trace curve acquired by running the global search auto-focusing function [<xref ref-type="bibr" rid="b24-sensors-12-08073">24</xref>,<xref ref-type="bibr" rid="b25-sensors-12-08073">25</xref>]. Thus, <italic>f</italic><sub>d</sub> indicates the in-focus motor position for each zoom motor position <italic>z<sub>n</sub></italic> at a given object distance <italic>d</italic>. For simplicity, let <italic>z<sub>1</sub></italic> and <italic>z<sub>n</sub></italic> denote the wide-angle zoom (<italic>z<sub>wide</sub></italic>) and tele-angle zoom (<italic>z<sub>tele</sub></italic>), respectively. As shown in <xref ref-type="fig" rid="f3-sensors-12-08073">Figure 3</xref>, all of the trace curves for various object distances have the same in-focus motor position at the wide-angle zoom <italic>z<sub>1</sub></italic>, which is <italic>f</italic><sub>1m</sub> (<italic>z<sub>1</sub></italic>) = <italic>f</italic><sub>1.5m</sub> (<italic>z<sub>1</sub></italic>) =… = <italic>f</italic><sub>30m</sub> (<italic>z<sub>1</sub></italic>). However, it is difficult to determine which trace curve should be followed during zooming without the distance information, particularly when the zoom motor moves from the wide-angle towards the tele-angle. This issue is the so-called “one-to-many” mapping problem.</p>
<p>Thus, a zoom tracking approach is required to estimate a trace curve as close as possible to the real one. The classical method GZT estimates the trace curve via linear interpolation based on the stored trace curves for near and far objects. It obtains the estimated trace curve using <xref rid="FD1" ref-type="disp-formula">Equation (1)</xref>:
<disp-formula id="FD1">
<label>(1)</label>
<mml:math id="mm1" display="block">
<mml:semantics id="sm1">
<mml:mrow>
<mml:msubsup>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mtext mathvariant="italic">est</mml:mtext></mml:mrow>
<mml:mi>d</mml:mi></mml:msubsup>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>z</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>=</mml:mo>
<mml:mrow>
<mml:mo>{</mml:mo>
<mml:mrow>
<mml:mtable columnalign="left">
<mml:mtr columnalign="left">
<mml:mtd columnalign="left">
<mml:mrow>
<mml:msubsup>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mtext mathvariant="italic">start</mml:mtext></mml:mrow>
<mml:mi>d</mml:mi></mml:msubsup>
<mml:mo stretchy="false">(</mml:mo>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mrow>
<mml:mtext mathvariant="italic">init</mml:mtext></mml:mrow></mml:msub>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mtd>
<mml:mtd columnalign="left">
<mml:mrow>
<mml:mi>z</mml:mi>
<mml:mo>=</mml:mo>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mrow>
<mml:mtext mathvariant="italic">init</mml:mtext></mml:mrow></mml:msub></mml:mrow></mml:mtd></mml:mtr>
<mml:mtr columnalign="left">
<mml:mtd columnalign="left">
<mml:mrow>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:mrow>
<mml:mfrac>
<mml:mrow>
<mml:msubsup>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mtext mathvariant="italic">start</mml:mtext></mml:mrow>
<mml:mi>d</mml:mi></mml:msubsup>
<mml:mo stretchy="false">(</mml:mo>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mrow>
<mml:mtext mathvariant="italic">init</mml:mtext></mml:mrow></mml:msub>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>−</mml:mo>
<mml:msubsup>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mtext mathvariant="italic">true</mml:mtext></mml:mrow>
<mml:mrow>
<mml:mtext mathvariant="italic">far</mml:mtext></mml:mrow></mml:msubsup>
<mml:mo stretchy="false">(</mml:mo>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mrow>
<mml:mtext mathvariant="italic">init</mml:mtext></mml:mrow></mml:msub>
<mml:mo stretchy="false">)</mml:mo></mml:mrow>
<mml:mrow>
<mml:msubsup>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mtext mathvariant="italic">true</mml:mtext></mml:mrow>
<mml:mrow>
<mml:mtext mathvariant="italic">near</mml:mtext></mml:mrow></mml:msubsup>
<mml:mo stretchy="false">(</mml:mo>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mrow>
<mml:mtext mathvariant="italic">init</mml:mtext></mml:mrow></mml:msub>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>−</mml:mo>
<mml:msubsup>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mtext mathvariant="italic">true</mml:mtext></mml:mrow>
<mml:mrow>
<mml:mtext mathvariant="italic">far</mml:mtext></mml:mrow></mml:msubsup>
<mml:mo stretchy="false">(</mml:mo>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mrow>
<mml:mtext mathvariant="italic">init</mml:mtext></mml:mrow></mml:msub>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mfrac></mml:mrow>
<mml:mo>)</mml:mo></mml:mrow>
<mml:mo>∗</mml:mo>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:mrow>
<mml:msubsup>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mtext mathvariant="italic">true</mml:mtext></mml:mrow>
<mml:mrow>
<mml:mtext mathvariant="italic">near</mml:mtext></mml:mrow></mml:msubsup>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>z</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>−</mml:mo>
<mml:msubsup>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mtext mathvariant="italic">true</mml:mtext></mml:mrow>
<mml:mrow>
<mml:mtext mathvariant="italic">far</mml:mtext></mml:mrow></mml:msubsup>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>z</mml:mi>
<mml:mo stretchy="false">)</mml:mo></mml:mrow>
<mml:mo>)</mml:mo></mml:mrow>
<mml:mo>+</mml:mo>
<mml:msubsup>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mtext mathvariant="italic">true</mml:mtext></mml:mrow>
<mml:mrow>
<mml:mtext mathvariant="italic">far</mml:mtext></mml:mrow></mml:msubsup>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>z</mml:mi>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mtd>
<mml:mtd columnalign="left">
<mml:mrow>
<mml:mi>z</mml:mi>
<mml:mo>≠</mml:mo>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mrow>
<mml:mtext mathvariant="italic">init</mml:mtext></mml:mrow></mml:msub></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:mrow></mml:mrow></mml:mrow></mml:semantics></mml:math></disp-formula>where 
<inline-formula>
<mml:math id="mm2" display="inline">
<mml:semantics id="sm2">
<mml:mrow>
<mml:msubsup>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mtext mathvariant="italic">true</mml:mtext></mml:mrow>
<mml:mrow>
<mml:mtext mathvariant="italic">near</mml:mtext></mml:mrow></mml:msubsup>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>z</mml:mi>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:semantics></mml:math></inline-formula> and 
<inline-formula>
<mml:math id="mm3" display="inline">
<mml:semantics id="sm3">
<mml:mrow>
<mml:msubsup>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mtext mathvariant="italic">true</mml:mtext></mml:mrow>
<mml:mrow>
<mml:mtext mathvariant="italic">far</mml:mtext></mml:mrow></mml:msubsup>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>z</mml:mi>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:semantics></mml:math></inline-formula> denote in-focus motor positions at the zoom position <italic>z</italic> for near and far objects, respectively, and <italic>z<sub>init</sub></italic> and 
<inline-formula>
<mml:math id="mm4" display="inline">
<mml:semantics id="sm4">
<mml:mrow>
<mml:msubsup>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mtext mathvariant="italic">start</mml:mtext></mml:mrow>
<mml:mi>d</mml:mi></mml:msubsup>
<mml:mo stretchy="false">(</mml:mo>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mrow>
<mml:mtext mathvariant="italic">init</mml:mtext>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:msub></mml:mrow></mml:semantics></mml:math></inline-formula> represent the initial zoom motor position and its corresponding in-focus motor position for an object at a distance <italic>d</italic>, respectively. The subscript “<italic>start</italic>” indicates that the in-focus motor position is obtained by performing auto-focusing before the zoom motor is moved. As shown in <xref ref-type="fig" rid="f5-sensors-12-08073">Figure 5</xref>, GZT actually uses the so-called GZT focus ratio described in <xref rid="FD2" ref-type="disp-formula">Equation (2)</xref> to estimate the in-focus motor position:
<disp-formula id="FD2">
<label>(2)</label>
<mml:math id="mm5" display="block">
<mml:semantics id="sm5">
<mml:mrow>
<mml:mfrac>
<mml:mrow>
<mml:msubsup>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mtext mathvariant="italic">start</mml:mtext></mml:mrow>
<mml:mi>d</mml:mi></mml:msubsup>
<mml:mo stretchy="false">(</mml:mo>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mrow>
<mml:mtext mathvariant="italic">init</mml:mtext></mml:mrow></mml:msub>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>−</mml:mo>
<mml:msubsup>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mtext mathvariant="italic">true</mml:mtext></mml:mrow>
<mml:mrow>
<mml:mtext mathvariant="italic">far</mml:mtext></mml:mrow></mml:msubsup>
<mml:mo stretchy="false">(</mml:mo>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mrow>
<mml:mtext mathvariant="italic">init</mml:mtext></mml:mrow></mml:msub>
<mml:mo stretchy="false">)</mml:mo></mml:mrow>
<mml:mrow>
<mml:msubsup>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mtext mathvariant="italic">true</mml:mtext></mml:mrow>
<mml:mrow>
<mml:mtext mathvariant="italic">near</mml:mtext></mml:mrow></mml:msubsup>
<mml:mo stretchy="false">(</mml:mo>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mrow>
<mml:mtext mathvariant="italic">init</mml:mtext></mml:mrow></mml:msub>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>−</mml:mo>
<mml:msubsup>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mtext mathvariant="italic">true</mml:mtext></mml:mrow>
<mml:mrow>
<mml:mtext mathvariant="italic">far</mml:mtext></mml:mrow></mml:msubsup>
<mml:mo stretchy="false">(</mml:mo>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mrow>
<mml:mtext mathvariant="italic">init</mml:mtext></mml:mrow></mml:msub>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mfrac>
<mml:mo>=</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:msubsup>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mtext mathvariant="italic">est</mml:mtext></mml:mrow>
<mml:mi>d</mml:mi></mml:msubsup>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>z</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>−</mml:mo>
<mml:msubsup>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mtext mathvariant="italic">true</mml:mtext></mml:mrow>
<mml:mrow>
<mml:mtext mathvariant="italic">far</mml:mtext></mml:mrow></mml:msubsup>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>z</mml:mi>
<mml:mo stretchy="false">)</mml:mo></mml:mrow>
<mml:mrow>
<mml:msubsup>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mtext mathvariant="italic">true</mml:mtext></mml:mrow>
<mml:mrow>
<mml:mtext mathvariant="italic">near</mml:mtext></mml:mrow></mml:msubsup>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>z</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>−</mml:mo>
<mml:msubsup>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mtext mathvariant="italic">true</mml:mtext></mml:mrow>
<mml:mrow>
<mml:mtext mathvariant="italic">far</mml:mtext></mml:mrow></mml:msubsup>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>z</mml:mi>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mfrac></mml:mrow></mml:semantics></mml:math></disp-formula></p>
<p><xref ref-type="fig" rid="f6-sensors-12-08073">Figure 6</xref> shows the effectiveness of the GZT focus ratio for the targets at different distances. When the zoom is changed from wide-angle to tele-angle, the GZT focus ratio shows non-linear characteristics, resulting in large estimation errors when predicting the trace curves with GZT. Although AZT uses recalibration to improve its accuracy, it also cannot completely avoid this type of error caused by using linear interpolation to fit the non-linear problem.</p></sec>
<sec>
<label>2.2.</label>
<title>Trace Curve Revision</title>
<p>To overcome the disadvantages of GZT and the issues associated with the moving and switching objects, we utilise the feedback method to revise the estimated trace curve automatically in real-time applications. The first step of the feedback method is to acquire the error from the system. We first consider the focus value (FV) [<xref ref-type="bibr" rid="b26-sensors-12-08073">26</xref>–<xref ref-type="bibr" rid="b28-sensors-12-08073">28</xref>], which is the measurement of sharpness in the auto-focusing application. As the focus value increases, an object's image increases in sharpness. <xref ref-type="fig" rid="f7-sensors-12-08073">Figure 7</xref> illustrates the focus values for per focus motor position <italic>versus</italic> per zoom motor position acquired using our digital video surveillance equipment, which is described in Section 3. <xref ref-type="fig" rid="f7-sensors-12-08073">Figure 7</xref> shows that the highest focus value is on the peak of the mountain and that sharpness decreases gradually down the hillside. The peak line is the real trace curve for the object in the experiment. Away from the trace curves, the corresponding focus value declines symmetrically on both sides of the mountain. Thus, the FV can be used as a measurement of the offset between a test point and the real trace curve.</p>
<p>Using focus values, we propose that the FZT method will maintain object sharpness during the entire zoom process, even when there are moving or switching objects in the scene. <xref ref-type="fig" rid="f8-sensors-12-08073">Figure 8</xref> depicts the FZT method flowchart. There are three main stages in this flowchart: <italic>detection position estimation</italic>, <italic>feedback value calculation</italic>, and <italic>trace curve revision</italic>.</p>
<p>In the first stage, the initial estimated trace curve is given by the GZT model according to the geometric characteristics at the beginning of zooming. When the user changes the zoom from wide-angle to tele-angle, the approach requires a feedback period length <italic>fp</italic> to determine where it should revise the trace curve. If <italic>fp</italic> = 48, the system must detect the error once every 48 zoom motor steps. For example, if the first detection begins at motor position <italic>z</italic> = −2,536, the following feedback mechanism will be run at z = −2,584, −2,632, −2,680, and so on. As shown in <xref ref-type="fig" rid="f8-sensors-12-08073">Figure 8</xref>, if the current zoom position does not require revision, the zoom and focus motors are moved according to the current estimated trace curve without detection; otherwise, the system would acquire the focus values at two corresponding probe points for real-time feedback revision. The probe points are detecting positions for obtaining the focus values needed by our FZT, and they are symmetrically located on both sides of the current estimated trace curve. <xref ref-type="fig" rid="f9-sensors-12-08073">Figure 9</xref> shows that the two probe point positions <italic>p<sub>1</sub></italic> and <italic>p<sub>2</sub></italic> are calculated using <italic>p<sub>1</sub></italic> = <italic>p<sub>0</sub></italic> + <italic>ps</italic>, <italic>p<sub>2</sub></italic> = <italic>p<sub>0</sub>− ps</italic>, in which <italic>p<sub>0</sub></italic> is the point on the current estimated trace curve at the corresponding zoom position, and <italic>ps</italic> is a probe step length parameter used to determine positions <italic>p<sub>1</sub></italic> and <italic>p<sub>2</sub></italic>. This <italic>ps</italic> parameter controls the detection boundary of the algorithm. A small <italic>ps</italic> may miss some tiny errors, whereas a large <italic>ps</italic> will increase the fluctuation of the trace curve. The <italic>ps</italic> can be either constant or variable. Here, we propose an adaptive selection mechanism: the <italic>ps</italic> is determined using the difference between the current and next focus motor positions on the estimated trace curve. The adaptive mechanism is described by <xref rid="FD3" ref-type="disp-formula">Equation (3)</xref>:
<disp-formula id="FD3">
<label>(3)</label>
<mml:math id="mm6" display="block">
<mml:semantics id="sm6">
<mml:mrow>
<mml:mrow>
<mml:mo>{</mml:mo>
<mml:mrow>
<mml:mtable columnalign="right">
<mml:mtr columnalign="right">
<mml:mtd columnalign="right">
<mml:mrow>
<mml:mi>p</mml:mi>
<mml:mi>s</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>2</mml:mn></mml:mrow></mml:mtd>
<mml:mtd columnalign="right">
<mml:mrow>
<mml:mo>,</mml:mo>
<mml:mn>0</mml:mn>
<mml:mo>&lt;</mml:mo>
<mml:msub>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mtext mathvariant="italic">next</mml:mtext></mml:mrow></mml:msub>
<mml:mo>−</mml:mo>
<mml:msub>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mtext mathvariant="italic">current</mml:mtext></mml:mrow></mml:msub>
<mml:mo>≤</mml:mo>
<mml:mn>10</mml:mn></mml:mrow></mml:mtd></mml:mtr>
<mml:mtr columnalign="right">
<mml:mtd columnalign="right">
<mml:mrow>
<mml:mi>p</mml:mi>
<mml:mi>s</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>4</mml:mn></mml:mrow></mml:mtd>
<mml:mtd columnalign="right">
<mml:mrow>
<mml:mo>,</mml:mo>
<mml:mn>10</mml:mn>
<mml:mo>&lt;</mml:mo>
<mml:msub>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mtext mathvariant="italic">next</mml:mtext></mml:mrow></mml:msub>
<mml:mo>−</mml:mo>
<mml:msub>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mtext mathvariant="italic">current</mml:mtext></mml:mrow></mml:msub>
<mml:mo>≤</mml:mo>
<mml:mn>20</mml:mn></mml:mrow></mml:mtd></mml:mtr>
<mml:mtr columnalign="right">
<mml:mtd columnalign="right">
<mml:mrow>
<mml:mi>p</mml:mi>
<mml:mi>s</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>6</mml:mn></mml:mrow></mml:mtd>
<mml:mtd columnalign="right">
<mml:mrow>
<mml:mo>,</mml:mo>
<mml:mn>20</mml:mn>
<mml:mo>&lt;</mml:mo>
<mml:msub>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mtext mathvariant="italic">next</mml:mtext></mml:mrow></mml:msub>
<mml:mo>−</mml:mo>
<mml:msub>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mtext mathvariant="italic">current</mml:mtext></mml:mrow></mml:msub>
<mml:mo>≤</mml:mo>
<mml:mn>30</mml:mn></mml:mrow></mml:mtd></mml:mtr>
<mml:mtr columnalign="right">
<mml:mtd columnalign="right">
<mml:mrow>
<mml:mi>p</mml:mi>
<mml:mi>s</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>8</mml:mn></mml:mrow></mml:mtd>
<mml:mtd columnalign="right">
<mml:mrow>
<mml:mo>,</mml:mo>
<mml:mn>20</mml:mn>
<mml:mo>&lt;</mml:mo>
<mml:msub>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mtext mathvariant="italic">next</mml:mtext></mml:mrow></mml:msub>
<mml:mo>−</mml:mo>
<mml:msub>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mtext mathvariant="italic">current</mml:mtext></mml:mrow></mml:msub>
<mml:mo>≤</mml:mo>
<mml:mn>40</mml:mn></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:mrow></mml:mrow></mml:mrow></mml:semantics></mml:math></disp-formula>where <italic>F<sub>current</sub></italic> represents the focus motor position on the estimated trace curve at the current step, and <italic>F<sub>next</sub></italic> represents the focus motor position at the next step. Both of these are shown on the y-axis in <xref ref-type="fig" rid="f9-sensors-12-08073">Figure 9</xref>.</p>
<p>In the second stage, the focus motor is moved from <italic>p<sub>1</sub></italic> to <italic>p<sub>2</sub></italic>, and the corresponding focus values <italic>e<sub>1</sub></italic> and <italic>e<sub>2</sub></italic> are acquired at these two points, respectively. Because the focus value decreases symmetrically on both sides with the increasing distance from the real trace curve, the revision can be made by our FZT algorithm. Because they are the same distance from the point <italic>p<sub>0</sub></italic>, the probe points <italic>p<sub>1</sub></italic> and <italic>p<sub>2</sub></italic> should have approximately the same focus value. However, because the estimated trace curve often deviates from the real one, the focus values <italic>e<sub>1</sub></italic> and <italic>e<sub>2</sub></italic> are often different. By studying the relationship between these two values, we can determine the actual location of the trace curve. As illustrated in <xref ref-type="fig" rid="f10-sensors-12-08073">Figure 10</xref>, the red line represents the real focus value curve at the current zoom position, whereas the blue line represents the estimated focus value curve. Thus, <italic>e<sub>2</sub></italic> &gt; <italic>e<sub>1</sub></italic> in <xref ref-type="fig" rid="f10-sensors-12-08073">Figure 10</xref> indicates that the probe point <italic>p<sub>2</sub></italic> is closer to the real trace curve than is <italic>p<sub>1</sub></italic>. Thus, the estimated trace curve should be revised towards the direction of <italic>p<sub>2</sub></italic> to approach the real one. In contrast, if <italic>e<sub>1</sub></italic> &gt; <italic>e<sub>2</sub></italic>, the estimated trace curve should be moved towards <italic>p<sub>1</sub></italic>.</p>
<p>During the <italic>trace curve revision</italic> stage, revision is achieved by moving the next estimated position <italic>p<sub>e</sub></italic> on the current estimated trace curve to <italic>p<sub>r</sub></italic>, as shown in <xref ref-type="fig" rid="f9-sensors-12-08073">Figure 9</xref>. The program then updates the GZT focus ratio <italic>k</italic> by <italic>p<sub>r</sub></italic> and rebuilds the estimated trace curve. The revision distance Δ<italic>S</italic>, which will be discussed later, is finally calculated by the PID controller.</p>
<p>In addition to the feedback period <italic>fp</italic>, there are several other variable parameters in our FZT model. In the feedback area, the motors are moved following straight lines. The feedback area length <italic>fa</italic>, which consists of the front area length <italic>fra</italic> and the back area length <italic>bka</italic>, influences the fluctuations of the motor trace. A large <italic>fa</italic> value will reduce the slope of the trace adjustment and causes less shaking in the image during the process. In other parts of the feedback period, the motors should be moved according to the current estimated trace curve.</p>
<p>The process of revision is given in <xref ref-type="fig" rid="f9-sensors-12-08073">Figure 9</xref>. When the zoom motor enters the first feedback area at point <italic>p<sub>s</sub></italic>, the probe position <italic>p<sub>1</sub></italic>, <italic>p<sub>2</sub></italic> should be calculated at the next step. The motors are then moved to these positions to acquire the focus values <italic>e<sub>1</sub></italic> and <italic>e<sub>2</sub></italic> following straight lines. The error can then be obtained using <xref rid="FD4" ref-type="disp-formula">Equation (4)</xref>:
<disp-formula id="FD4">
<label>(4)</label>
<mml:math id="mm7" display="block">
<mml:semantics id="sm7">
<mml:mrow>
<mml:mo>Δ</mml:mo>
<mml:mi>e</mml:mi>
<mml:mo>=</mml:mo>
<mml:msub>
<mml:mi>e</mml:mi>
<mml:mn>1</mml:mn></mml:msub>
<mml:mo>−</mml:mo>
<mml:msub>
<mml:mi>e</mml:mi>
<mml:mn>2</mml:mn></mml:msub></mml:mrow></mml:semantics></mml:math></disp-formula></p>
<p>Because Δ<italic>e</italic> &lt; 0 and |Δ<italic>e</italic>| &gt; <italic>e<sub>thr</sub></italic>, the estimated trace curve should be revised towards the <italic>p<sub>2</sub></italic> direction in which <italic>e<sub>thr</sub></italic> is a threshold parameter that avoids system jittering. Next, the position <italic>p<sub>e</sub></italic> on the current estimated trace curve is revised to <italic>p<sub>r</sub></italic> = <italic>p<sub>e</sub></italic> + Δ<italic>S<sub>1</sub></italic>. The focus ratio <italic>k</italic> is then recalculated via the position of <italic>p<sub>r</sub></italic>, and the new estimated trace curve <italic>C<sub>2</sub></italic> is built by the classical GZT method.</p>
<p>The motors pass through the back area following the straight line from <italic>p<sub>2</sub></italic> to <italic>p<sub>r</sub></italic>. They then move from <italic>p<sub>r</sub></italic> to <italic>p</italic>′<italic><sub>s</sub></italic> following the curve <italic>C<sub>2</sub></italic> without feedback and enter the second feedback area. Because Δ<italic>e</italic> &gt; 0 in this area, the estimated trace curve <italic>C<sub>2</sub></italic> is judged to have a lower value than the real trace curve. Then, the position <italic>p</italic>′<italic><sub>e</sub></italic> is revised to <italic>p</italic>′<italic><sub>r</sub></italic> on the curve <italic>C<sub>3</sub></italic> by Δ<italic>S<sub>2</sub></italic>. The green line in <xref ref-type="fig" rid="f9-sensors-12-08073">Figure 9</xref> shows the actual motor trace during this process. The feedback mechanism occurs during the entire zoom operation process.</p></sec>
<sec>
<label>2.3.</label>
<title>Revision Distance Control</title>
<p>The revision distance Δ<italic>S</italic> is a critical parameter that decides the regulating ability of the algorithm. If the Δ<italic>S</italic> is smaller than the ideal Δ<italic>S</italic>, the revised trace curve will not approach the real trace curve efficiently. However, if Δ<italic>S</italic> is too large, an overshoot error will occur. Because the revision is influenced not only by the current error but also by the previous errors, we use a proportional-integral (PI) controller to improve its accuracy. The PI controller, which is widely used in motor control, can provide the control action according to the current and previous errors. <xref ref-type="fig" rid="f11-sensors-12-08073">Figure 11</xref> shows the control structure of our FZT method. The controller action, which consists of proportional and integral components, can also be written as <xref rid="FD5" ref-type="disp-formula">Equation (5)</xref>:
<disp-formula id="FD5">
<label>(5)</label>
<mml:math id="mm8" display="block">
<mml:semantics id="sm8">
<mml:mrow>
<mml:mo>Δ</mml:mo>
<mml:mi>S</mml:mi>
<mml:mo>=</mml:mo>
<mml:msub>
<mml:mi>K</mml:mi>
<mml:mi>P</mml:mi></mml:msub>
<mml:mrow>
<mml:mo>[</mml:mo>
<mml:mrow>
<mml:mo>Δ</mml:mo>
<mml:mi>e</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>+</mml:mo>
<mml:mfrac>
<mml:mn>1</mml:mn>
<mml:mrow>
<mml:msub>
<mml:mi>T</mml:mi>
<mml:mi>I</mml:mi></mml:msub></mml:mrow></mml:mfrac>
<mml:mrow>
<mml:msubsup>
<mml:mo>∫</mml:mo>
<mml:mn>0</mml:mn>
<mml:mi>t</mml:mi></mml:msubsup>
<mml:mrow>
<mml:mo>Δ</mml:mo>
<mml:mi>e</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>τ</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:mi>d</mml:mi>
<mml:mi>τ</mml:mi></mml:mrow></mml:mrow></mml:mrow>
<mml:mo>]</mml:mo></mml:mrow></mml:mrow></mml:semantics></mml:math></disp-formula>where <italic>K<sub>P</sub></italic> is the proportional gain and <italic>T<sub>I</sub></italic> is the integral time. The integral component accumulates all previous errors to compensate for the error value, with the intention of completely eliminating these errors in <italic>T<sub>I</sub></italic> seconds. The resulting compensated error value is scaled by the proportional gain <italic>K<sub>P</sub></italic>.</p>
<p>Because the <xref rid="FD5" ref-type="disp-formula">Equation (5)</xref> can only be used in analogue systems, the integral component should be discretised for the digital equipment. <xref rid="FD6" ref-type="disp-formula">Equation (6)</xref> shows the formula conversion from the integral term to the sum of discrete errors:
<disp-formula id="FD6">
<label>(6)</label>
<mml:math id="mm9" display="block">
<mml:semantics id="sm9">
<mml:mrow>
<mml:mrow>
<mml:msubsup>
<mml:mo>∫</mml:mo>
<mml:mn>0</mml:mn>
<mml:mi>t</mml:mi></mml:msubsup>
<mml:mrow>
<mml:mo>Δ</mml:mo>
<mml:mi>e</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>τ</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:mi>d</mml:mi>
<mml:mi>τ</mml:mi></mml:mrow></mml:mrow>
<mml:mo>=</mml:mo>
<mml:munderover>
<mml:mo>∑</mml:mo>
<mml:mrow>
<mml:mi>j</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>0</mml:mn></mml:mrow>
<mml:mi>n</mml:mi></mml:munderover>
<mml:mrow>
<mml:mo>Δ</mml:mo>
<mml:mi>e</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>j</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>⋅</mml:mo>
<mml:mo>Δ</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo>=</mml:mo>
<mml:mi>T</mml:mi></mml:mrow>
<mml:munderover>
<mml:mo>∑</mml:mo>
<mml:mrow>
<mml:mi>j</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>0</mml:mn></mml:mrow>
<mml:mi>n</mml:mi></mml:munderover>
<mml:mrow>
<mml:mo>Δ</mml:mo>
<mml:mi>e</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>j</mml:mi>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:semantics></mml:math></disp-formula>where Δ<italic>t</italic> = <italic>T</italic> represents the sampling period. In our experiments, the value of <italic>T</italic> is set to 1. <xref rid="FD5" ref-type="disp-formula">Equation (5)</xref> can then be rewritten in discrete form as <xref rid="FD7" ref-type="disp-formula">Equation (7)</xref>:
<disp-formula id="FD7">
<label>(7)</label>
<mml:math id="mm10" display="block">
<mml:semantics id="sm10">
<mml:mrow>
<mml:mo>Δ</mml:mo>
<mml:mi>S</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>k</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>=</mml:mo>
<mml:msub>
<mml:mi>K</mml:mi>
<mml:mi>P</mml:mi></mml:msub>
<mml:mrow>
<mml:mo>[</mml:mo>
<mml:mrow>
<mml:mo>Δ</mml:mo>
<mml:mi>e</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>k</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>+</mml:mo>
<mml:mfrac>
<mml:mi>T</mml:mi>
<mml:mrow>
<mml:msub>
<mml:mi>T</mml:mi>
<mml:mi>I</mml:mi></mml:msub></mml:mrow></mml:mfrac>
<mml:munderover>
<mml:mo>∑</mml:mo>
<mml:mrow>
<mml:mi>j</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>0</mml:mn></mml:mrow>
<mml:mi>N</mml:mi></mml:munderover>
<mml:mrow>
<mml:mo>Δ</mml:mo>
<mml:mi>e</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>j</mml:mi>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow>
<mml:mo>]</mml:mo></mml:mrow></mml:mrow></mml:semantics></mml:math></disp-formula></p>
<p>According to <xref rid="FD8" ref-type="disp-formula">Equation (8)</xref>, <xref rid="FD7" ref-type="disp-formula">Equation (7)</xref> can be further converted to the incremental form as <xref rid="FD9" ref-type="disp-formula">Equation (9)</xref>, which simplifies the calculation and saves storage space. This equation now only needs the last Δ<italic>S</italic> and the errors in the last two consecutive steps to calculate the revision distance:
<disp-formula id="FD8">
<label>(8)</label>
<mml:math id="mm11" display="block">
<mml:semantics id="sm11">
<mml:mrow>
<mml:mo>Δ</mml:mo>
<mml:mi>S</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>k</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>−</mml:mo>
<mml:mo>Δ</mml:mo>
<mml:mi>S</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>k</mml:mi>
<mml:mo>−</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>=</mml:mo>
<mml:msub>
<mml:mi>K</mml:mi>
<mml:mi>P</mml:mi></mml:msub>
<mml:mrow>
<mml:mo>[</mml:mo>
<mml:mrow>
<mml:mo>Δ</mml:mo>
<mml:mi>e</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>k</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>−</mml:mo>
<mml:mo>Δ</mml:mo>
<mml:mi>e</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>k</mml:mi>
<mml:mo>−</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>+</mml:mo>
<mml:mfrac>
<mml:mi>T</mml:mi>
<mml:mrow>
<mml:msub>
<mml:mi>T</mml:mi>
<mml:mi>I</mml:mi></mml:msub></mml:mrow></mml:mfrac>
<mml:mo>Δ</mml:mo>
<mml:mi>e</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>k</mml:mi>
<mml:mo stretchy="false">)</mml:mo></mml:mrow>
<mml:mo>]</mml:mo></mml:mrow></mml:mrow></mml:semantics></mml:math></disp-formula>
<disp-formula id="FD9">
<label>(9)</label>
<mml:math id="mm12" display="block">
<mml:semantics id="sm12">
<mml:mrow>
<mml:mo>Δ</mml:mo>
<mml:mi>S</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>k</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>=</mml:mo>
<mml:mo>Δ</mml:mo>
<mml:mi>S</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>k</mml:mi>
<mml:mo>−</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>+</mml:mo>
<mml:msub>
<mml:mi>K</mml:mi>
<mml:mi>P</mml:mi></mml:msub>
<mml:mo stretchy="false">[</mml:mo>
<mml:mo>Δ</mml:mo>
<mml:mi>e</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>k</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>−</mml:mo>
<mml:mo>Δ</mml:mo>
<mml:mi>e</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>k</mml:mi>
<mml:mo>−</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo stretchy="false">]</mml:mo>
<mml:mo>+</mml:mo>
<mml:msub>
<mml:mi>K</mml:mi>
<mml:mi>I</mml:mi></mml:msub>
<mml:mo>Δ</mml:mo>
<mml:mi>e</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>k</mml:mi>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:semantics></mml:math></disp-formula>where 
<inline-formula>
<mml:math id="mm13" display="inline">
<mml:semantics id="sm13">
<mml:mrow>
<mml:msub>
<mml:mi>K</mml:mi>
<mml:mi>I</mml:mi></mml:msub>
<mml:mo>=</mml:mo>
<mml:msub>
<mml:mi>K</mml:mi>
<mml:mi>P</mml:mi></mml:msub>
<mml:mfrac>
<mml:mi>T</mml:mi>
<mml:mrow>
<mml:msub>
<mml:mi>T</mml:mi>
<mml:mi>I</mml:mi></mml:msub></mml:mrow></mml:mfrac></mml:mrow></mml:semantics></mml:math></inline-formula> is the integral coefficient.</p>
<p>Using the PI controller, FZT is able to complete its feedback procedure. However, the parameters <italic>K<sub>P</sub></italic> and <italic>T<sub>I</sub></italic> need tuning before use. Tuning a PI control loop involves adjusting these parameters to the optimum values for the desired control response. There are several methods for tuning a PI loop, including manual tuning, the Ziegler-Nichols method [<xref ref-type="bibr" rid="b29-sensors-12-08073">29</xref>], the Cohen-Coon method [<xref ref-type="bibr" rid="b30-sensors-12-08073">30</xref>] and so on.</p></sec></sec>
<sec>
<label>3.</label>
<title>Real-Time Hardware Implementation</title>
<p>The improved FZT algorithm and traditional methods were implemented on a high-speed TI TMS320DM365 digital video platform, and the focus value calculation for the 720-P (1280 × 720 pixels) image was simultaneously performed at 30f/s. <xref ref-type="fig" rid="f12-sensors-12-08073">Figure 12(a)</xref> shows the configuration of this platform. This platform consists of a zoom lens, CMOS chip, dedicated video capture board, lens control board, and PC.</p>
<p>For the high-speed camera head, we adopted a CHIOPT 18× zoom lens, in which the zoom range is sufficiently large for experiments. To increase motion accuracy, the zoom motor was driven by a program in four-subdivision mode, which divides each normal motor step into four smaller steps. <xref ref-type="fig" rid="f12-sensors-12-08073">Figure 12(b)</xref> shows an overview of the device. Twelve-bit RAW image data were built by the 5-MP CMOS chip (MT9P031) and then transferred to the video capture board at 30f/s for 1,280 × 720 pixels. The video capture board is designed as a dedicated device for video capturing, transferring, processing, and focus value calculation. <xref ref-type="fig" rid="f12-sensors-12-08073">Figure 12(c)</xref> shows an overview of this board, which consists of four parts: (1) an ARM microprocessor (TMS320DM365) for building video from CMOS and transferring it to a PC via Ethernet; (2) a C8051F microcontroller (C8051F360) for calculating the focus value and outputting it by RS485; (3) memories, including DDR-SDRAM (MT47H64M16HR); and (4) interface circuits, such as UART and Ethernet. This board, CMOS, and zoom lens actually construct a standard internet protocol network camera (IPNC) system.</p>
<p>The lens zoom board is another electronic function in this system. This board contains another C8051F microcontroller for estimating the trace curve. It receives zoom commands and focus values from the PC and video capture board, respectively. The FZT algorithm is implemented here to acquire the positions of motors using focus values. The motor control signals are then produced by the special motor control chip. The entire working procedure of our device is as follows:
<list list-type="order">
<list-item>
<p><italic>Receive zoom command from PC</italic>: The PC transfers the zoom command given by the user to the lens control board.</p></list-item>
<list-item>
<p><italic>Acquire motor position by estimated trace curve:</italic> Our FZT algorithm is an improved GZT that accounts for the focus value when revising the estimated trace curve. Before obtaining the corresponding focus value, the lens control board applies GZT to estimate the position of the focus motor. In the feedback area, the probe positions are also acquired on this board through FZT.</p></list-item>
<list-item>
<p><italic>Calculate the focus value:</italic> The focus value is calculated by the video capture board and sent to the lens control board. To fit the real-time requirement, we use the analogue circuits. The corresponding analogue video signals are first output by the Video DAC in TMS320DM365. Then, an analogue band-pass circuit is used to filter out the high-frequency components. As the number of high-frequency components increases, the clarity of the image increases. A precise small-signal rectifier and analogue integrator circuit are applied to build a voltage from high-frequency components that represents the focus value. The 10-bit A/D converter embedded in the C8051F microcontroller is used to obtain the exact digital focus value from the voltage. Furthermore, the focus value can also be obtained digitally through the information contained in the H3A register in TMS320DM365.</p></list-item>
<list-item>
<p><italic>Revise the estimated trace curve using FZT:</italic> The FZT is run on the lens control board to revise the estimated trace curve. The next motor positions can then be obtained by the new curve.</p></list-item>
<list-item>
<p><italic>Create control signals and move the motors:</italic> The motor control signals are created by the special motor control chip in the lens control board according to the new trace curve. The zoom and focus motors are then moved to the exact positions according to these signals.</p></list-item>
<list-item>
<p><italic>Update the image on the PC:</italic> The latest image captured by the video capture board is sent to the PC via the Ethernet for display.</p></list-item></list></p>
<p>This hardware implementation can run as an IPNC video surveillance system, which fits the active object during zoom operation. It can also run as the base of various applications, including active tracking [<xref ref-type="bibr" rid="b31-sensors-12-08073">31</xref>,<xref ref-type="bibr" rid="b32-sensors-12-08073">32</xref>], salient recognition [<xref ref-type="bibr" rid="b33-sensors-12-08073">33</xref>], speed estimation [<xref ref-type="bibr" rid="b34-sensors-12-08073">34</xref>] and automatic driving [<xref ref-type="bibr" rid="b35-sensors-12-08073">35</xref>,<xref ref-type="bibr" rid="b36-sensors-12-08073">36</xref>]. In this paper, we use a PC with a 2.6-GHz Intel Pentium Dual-Core CPU and 2 GB of memory for observation and control.</p></sec>
<sec sec-type="results|discussion">
<label>4.</label>
<title>Experimental Results and Discussion</title>
<p>In this section, we provide a comparison of our FZT with the traditional zoom tracking approaches of GZT, AZT, RZT and PZT. The performance measures considered include tracking accuracy, tracking speed, storage space and training requirements. Tracking accuracy was measured in terms of mean offsets between the estimated and real trace curves for stationary and moving objects, respectively. Tracking speed was measured in terms of the total zoom operation time, which is dependent on the lens' motor type. Training and storage requirements were measured using the demand of determining the optimal model parameters. The parameters of the PI controller are also discussed in this section. Finally, the drawbacks of our method observed in the experiments are discussed.</p>
<p>All of the experiments were realised by the digital video surveillance system described in Section 3. Due to the four-subdivision mode, the zoom motor position, which was four times the normal pattern (190 to −970), ranged from 760 to −3,880. This mode improved the precision of our experiments. Furthermore, all of the experiments described in this section were under the zoom direction of wide-angle to tele-angle because the reverse sequence does not cause the one-to-many mapping problem when applied.</p>
<p>Moreover, because there are many independent parameters for our proposed system, we discuss how to obtain these values here. The seven main parameters in our algorithm are <italic>K<sub>P</sub></italic>, <italic>T<sub>I</sub></italic>, <italic>T</italic>, <italic>fp</italic>, <italic>fra</italic>, <italic>bka</italic> and <italic>ps</italic>. The proportional gain <italic>K<sub>P</sub></italic>, integral time <italic>T<sub>I</sub></italic> and sampling period <italic>T</italic> are three important parameters for the PI controller. We propose a combined tuning method for setting these three values in our experiments, as it is relatively difficult to obtain sufficient results using single tuning methods in complex surveillance environments. First, we use the Ziegler-Nichols [<xref ref-type="bibr" rid="b29-sensors-12-08073">29</xref>] method to obtain the approximate values. Then, the manual tuning is performed for further optimisation according to the actual effect of the algorithm. The different revision effects acquired by the various <italic>K<sub>P</sub></italic> and <italic>T<sub>I</sub></italic> values in our experiments will be discussed in Section 4.3 as a reference for the stage of manual tuning. Because the <italic>fp</italic>, <italic>fra</italic>, <italic>bka</italic> and <italic>ps</italic> depend on different zoom lenses, image sensors, control circuits and application environments, it is difficult to find a common setting method for them. They should be regulated based on the hardware and software conditions and application environment, which can be obtained through several actual experiments in the user's specific working environment. We chose these values manually according to our digital surveillance platform and the scenes in our experiments. The feedback period <italic>fp</italic> controls the feedback frequency along the trace curve. A small <italic>fp</italic> value can increase the accuracy within a certain range through a frequent feedback procedure but causes increased time consumption and fluctuations on the trace curve. Thus, the <italic>fp</italic> value should achieve a balance between accuracy and user experience according to the specific application scene. Because user experience varies, this value setting mainly relies on actual tests and manual regulation. When there are many high-speed moving objects or objects with complex movement, such as in traffic or outdoor video surveillance, the value of <italic>fp</italic> should be relatively reduced. Otherwise, the <italic>fp</italic> should be set relatively high for indoor surveillance. The effect of <italic>fp</italic> in our experiment will be further discussed in Section 4.3 for advanced reference. The front area length <italic>fra</italic> and back area length <italic>bka</italic> are two auxiliary parameters that also affect the user experience by influencing the motor trace fluctuations. Their values are often set to 1/4 or 1/5 of the feedback period <italic>fp</italic>, depending on the user experience. The probe step length parameter <italic>ps</italic> controls the detection boundary of the algorithm, for which we have proposed an adaptive mechanism to determine this boundary described in Section 2.2.</p>
<sec>
<label>4.1.</label>
<title>Stationary Objects</title>
<p>The performance measures for tracking stationary object during zoom operation were collected from 600 distinct scenes under different lighting conditions and various object distances. This evaluation was performed for enlarged occasions in surveillance, which was described in Section 1.3. The object distances were set to 2, 3, 5, 10 and 20 m. For each distance, 120 samples were obtained from the GZT, AZT, RZT, PZT (S = 5), PZT (S = 20) and FZT models (20 samples for each method). Due to its higher accuracy in comparison to the RNN model [<xref ref-type="bibr" rid="b11-sensors-12-08073">11</xref>], we chose the ARX model for PZT for all of our experiments. PZT(S = 5) indicates that the PZT model was only trained using five characteristic trace curves before use, whereas PZT (S = 20) was trained using 20 curves.</p>
<p><xref ref-type="fig" rid="f13-sensors-12-08073">Figure 13</xref> shows an example of the trace curve for a 3 m stationary object acquired using our FZT method. In this case, the parameters were set as follows: <italic>fp</italic> = 96, <italic>fra</italic> = <italic>bka</italic> = 24, <italic>K<sub>P</sub></italic> = 3, <italic>T<sub>I</sub></italic> = 6, <italic>T</italic> = 1, and the adaptive probe step mechanism was applied to choose the <italic>ps</italic>. The real trace curve was obtained by running the global search auto-focusing function at each zoom motor position. The FZT trace curve was observed to tightly fit the real trace curve with several small fluctuations.</p>
<p><xref ref-type="table" rid="t1-sensors-12-08073">Table 1</xref> summarises the overall tracking accuracy of the developed FZT compared with the existing GZT, AZT, RZT and PZT approaches. From this table, it can be observed that FZT exhibits better tracking accuracies than most of the traditional methods. However, FZT does not gain improvement in comparison with PZT trained by 20 trace curves due to its beneficial adaptability to the one-to-many mapping problem. However, if PZT has not been trained sufficiently, as shown in the PZT (S = 5) results, it may lose its advantages.</p>
<p>The distributions of offsets for all of the approaches in these experiments are shown in <xref ref-type="fig" rid="f14-sensors-12-08073">Figure 14</xref>. The cases are divided into two groups: 0 m to 10 m stationary objects and 10 m to 20 m stationary objects. The offsets of most points on the FZT trace curve were within five steps. The experiments also showed that there was a tolerant threshold of focus position offset for human vision. If the offset stays below the tolerant threshold, the user will not feel uncomfortable. This threshold is not a constant value but a variable that gradually increases from 10 to 30 steps when the zoom is changed from wide-angle to tele-angle in our system. Thus, the small fluctuations from probe steps on the FZT trace curve did not cause user discomfort.</p>
<p>To compare the approaches for situations involving the one-to-many mapping problem, a further study was performed for the different zooming sequences shown in <xref ref-type="fig" rid="f15-sensors-12-08073">Figure 15</xref>. As indicated in this figure, the four different zooming sequences depend on the location of the initial and stopping zoom motor positions with respect to the boundary zoom position. Zooming Sequence-3 (ZS-3) incorporates the sequences that generate the one-to-many mapping problem because the zoom motor is moved from the linear region to the non-linear region on the trace curves.</p>
<p>A total of 400 experiments were performed to evaluate the performance for tracking an 8 m stationary object. For each zooming sequence, 100 samples were obtained using the GZT, AZT, RZT, PZT (S = 20) and FZT models (20 samples for each method). <xref ref-type="table" rid="t2-sensors-12-08073">Table 2</xref> provides the overall tracking accuracies for each sequence region. For stationary objects, PZT (S = 20) generated the least mean offset of 8.13 motor steps for ZS-3 compared to other approaches and worked better for the other three sequences as well. Furthermore, FZT exhibited a mean offset of 8.37 motor steps, which was more than that of PZT.</p>
<p>The FZT model was found to work better than most of the existing methods for tracking stationary objects with the exception of the PZT model with sufficient training. However, FZT does not require any specified training before tracking; thus, it is more suitable for use in complex environments in which the user is not able to acquire a sufficient amount of accurate training trace curves. It can also be applied to a video surveillance system with many different lens configurations in which the RZT or PZT models would have to be trained for every lens.</p></sec>
<sec>
<label>4.2.</label>
<title>Moving and Switching Objects</title>
<p>Experiments were also performed to evaluate the robustness in tracking moving or switching objects. <xref ref-type="fig" rid="f16-sensors-12-08073">Figure 16</xref> shows the focus values of an object moving from 6 m to 8 m. The focus values acquired by our equipment show an obvious real trace curve. Therefore, according to these values, the feedback mechanism can be run to revise the estimated trace curve.</p>
<p><xref ref-type="fig" rid="f17-sensors-12-08073">Figure 17</xref> shows the FZT trace curves for an object moving from 3 m to 4 m and an object moving from 5 m to 8 m compared with the RZT and PZT models. In these cases, the FZT parameters were set as follows: <italic>fp</italic> = 96, <italic>fra</italic> = <italic>bka</italic> = 24, <italic>K<sub>P</sub></italic> = 1, <italic>T<sub>I</sub></italic> = 8, <italic>T</italic> = 1, and the adaptive <italic>ps</italic> was used. The FZT trace curve was observed to be closer to the real trace curve than the RZT and PZT curves due to its real-time revision based on the feedback mechanism.</p>
<p>To further study the robustness in tracking moving or switching objects, we performed another 500 experiments for tracking objects moving from 2 m to 3 m, 5 m, 8 m, 10 m and 20 m. For each group of moving distance, 20 cases under different scenes for each tracking method were modelled. In these experiments, the FZT parameters were set as follows: <italic>fp</italic> = 96, <italic>fra</italic> = <italic>bka</italic> = 24, <italic>K<sub>P</sub></italic> = 1, <italic>T<sub>I</sub></italic> = 8, and <italic>T</italic> = 1.</p>
<p><xref ref-type="table" rid="t3-sensors-12-08073">Table 3</xref> provides the results of the average tracking accuracy for these experiments. The FZT approach showed significant robustness, which was better than those of the other existing approaches. Furthermore, the mean offset of FZT grew slowly as the moving distance increased. The additional real-time estimate revision contributed to all of these effects.</p>
<p>Another 500 experiments under the similar parameter conditions were performed to validate the robustness for tracking switching objects in various scenes. We set two testing objects at 2 m and 3 m in the 2 m; 3 m group. When the main target switched from 2 m to 3 m, the FZT model exhibited the least mean offset of 8.41 motor steps in <xref ref-type="table" rid="t4-sensors-12-08073">Table 4</xref> compared with the other algorithms. <xref ref-type="table" rid="t4-sensors-12-08073">Table 4</xref> shows the overall accuracy results for this type of experiment.</p>
<p>Unlike moving object, switching object shows a transition in real trace curve because of the different object distances of switching targets in the scene. The focus value of image increases as motor positions approach the characteristic trace curve of new target. Thus, the estimated trace curve can be revised to the new object trace curve gradually towards the high focus value direction using real-time feedback mechanism of our FZT. The revision effect mainly focuses on a small range of the trace curve, in which the main object of image switches. Outside this range, FZT has little influence on the estimated trace curve. Experimental results show that FZT has better robustness compared with other existing methods on tracking switching object.</p>
<p><xref ref-type="fig" rid="f18-sensors-12-08073">Figure 18</xref> shows the offset distributions for the 2 m; 5 m and 2 m; 20 m groups in the experiments. Most of the offsets on the FZT trace curve were within 10 steps, whereas more than 40% of the offsets on the other trace curves exceeded 15 steps. The large offset may cause users to be uncomfortable. Thus, FZT is the best choice for scenes that contain many moving or switching objects.</p></sec>
<sec>
<label>4.3.</label>
<title>Control Parameters</title>
<p>The control parameter setting is an important problem in the applications of FZT applications. In this section we discuss the feedback period <italic>fp</italic>, proportional gain <italic>K<sub>P</sub></italic> and integral time <italic>T<sub>I</sub></italic>. The feedback period <italic>fp</italic> controls the feedback frequency along the estimated trace curve. <xref ref-type="fig" rid="f19-sensors-12-08073">Figure 19</xref> shows the FZT trace curves for tracking an 8 m stationary object with different feedback periods under <italic>fra</italic> = <italic>bka</italic> = 24, <italic>K<sub>P</sub></italic> = 3, <italic>T<sub>I</sub></italic> = 6, and T = 1. A group of 20 experimental cases was performed for each <italic>fp</italic> value, and the average accuracies and time consumption are shown in <xref ref-type="table" rid="t5-sensors-12-08073">Table 5</xref>. A small <italic>fp</italic> value caused the feedback procedure to occur frequently. In addition, it increased the accuracy within a certain range but caused a larger time consumption and more fluctuations along the trace curve. Moreover, the overly frequent revision might reduce the tracking accuracy at times due to the overshoot effect. <xref ref-type="table" rid="t5-sensors-12-08073">Table 5</xref> shows that <italic>fp</italic> = 96 was the suitable value for our device in this experiment due to the feedback procedure's high accuracy and relatively low time consumption.</p>
<p>After the discussion of <italic>fp</italic>, we consider the proportional gain <italic>K<sub>P</sub></italic> for the PI controller. The parameter <italic>K<sub>P</sub></italic> decides the revision magnitude. To show the magnitude in a clear manner, we use the feed response curves in which <italic>fp</italic> = <italic>fa</italic> and the motors are moved following the straight connection of probe points. For instance, if we want to produce the feedback response curve in <xref ref-type="fig" rid="f9-sensors-12-08073">Figure 9</xref>, the motors should be moved using the following sequence: <italic>p<sub>1</sub></italic>, <italic>p<sub>2</sub></italic>, <italic>p′<sub>1</sub></italic>, <italic>p′<sub>2</sub></italic>, <italic>p″<sub>1</sub></italic>, <italic>p″<sub>2</sub></italic>. This type of curve causes feedback operation throughout the time period and shows the revision distance ΔS directly through the amplitude of the curve.</p>
<p><xref ref-type="fig" rid="f20-sensors-12-08073">Figure 20</xref> shows the feedback response curves for tracking the same 8 m stationary object with <italic>T<sub>I</sub></italic> = 6, <italic>T</italic> = 1 and <italic>K<sub>P</sub></italic> = 1, 3, 5, and 8. It was observed that the <italic>K<sub>P</sub></italic> influenced the magnitude significantly. A high <italic>K<sub>P</sub></italic> caused a large fluctuation on the response curve, which indicates strong adjustment on the estimated trace curve. In contrast, the small <italic>K<sub>P</sub></italic> with a weak revision effect is not able to complement the error in time. Thus, the choice of <italic>K<sub>P</sub></italic> should be based on the offset between the estimated and actual trace curves. For stationary objects, the <italic>K<sub>P</sub></italic> can be set to a small value, whereas a larger <italic>K<sub>P</sub></italic> is necessary for tracking moving or switching objects.</p>
<p>The integral term in the PI controller accumulates the past errors over time and adds them to the revision distance Δ<italic>S</italic> as a complementary effect. The parameter <italic>T<sub>I</sub></italic> controls the speed of releasing the accumulated errors to the revision distance. <xref ref-type="fig" rid="f21-sensors-12-08073">Figure 21</xref> illustrates the feedback response curves for tracking the same 8 m stationary object mentioned above with <italic>K<sub>P</sub></italic> = 5, <italic>T</italic> = 1 and <italic>T<sub>I</sub></italic> = 1, 3, and 8. As observed in <xref ref-type="fig" rid="f21-sensors-12-08073">Figure 21</xref>, a large <italic>T<sub>I</sub></italic> value reduced the fluctuations of the response curve.</p>
<p>However, <xref ref-type="fig" rid="f22-sensors-12-08073">Figure 22</xref> shows two additional cases with <italic>T<sub>I</sub></italic> = 10 and 20 in which an excessively large <italic>T<sub>I</sub></italic> could not achieve a sufficient feedback result because it reduced the role of the integral value. Thus, <italic>T<sub>I</sub></italic> should be set properly according to the <italic>K<sub>P</sub></italic> value, considering the revision effect and fluctuation.</p></sec>
<sec>
<label>4.4.</label>
<title>Speed and Drawback</title>
<p>Because zoom tracking is a real-time application, tracking speed is also a key issue. <xref ref-type="table" rid="t6-sensors-12-08073">Table 6</xref> summarises the time consumption for the experiments of stationary, moving and switching targets. AZT took the largest amount of time due to its recalibration when crossing the boundary zoom position. FZT with <italic>fp</italic> = 96 achieved the second-highest time cost due to an additional 637 ms for feedback revision. Thus, FZT sacrifices speed in exchange for accuracy.</p>
<p>The comparison of other performance measures is summarised in <xref ref-type="table" rid="t7-sensors-12-08073">Table 7</xref>. The following observations are made from this table. (1) GZT, AZT and FZT do not require any training procedures, while RZT and PZT require a minimum of 20 trace curves to generate an acceptable tracking result; (2) To revise the estimate, FZT requires some additional memory spaces, but this storage requirement does not grow as the number of discrete zoom motor position <italic>N</italic> increases. Thus, FZT limits the storage usage on the order of <italic>N</italic> similar to GZT, AZT and RZT, as opposed to PZT, which requires storage on the order of <italic>N<sup>2</sup></italic>; (3) Unlike AZT, FZT does not cause discomfort when crossing the boundary zoom position. However, it causes users to be uncomfortable when the fluctuations on its trace curve are serious. Fortunately, this phenomenon occurs seldomly when we choose suitable parameters for the PI controller; (4) Based on the feedback, with respect to the moving or switching objects that often appear in video surveillance, FZT demonstrates robustness, while RZT and PZT have large offsets in these situations. Therefore, based on the above observations, FZT not only solves the one-to-many mapping problem but also improves the tracking robustness.</p>
<p>Finally, it is also worth mentioning that similar to GZT, AZT, RZT and PZT, our FZT method may also fail in several scenes in which there are two main targets at different distances due to an incorrect estimate acquired by auto-focusing at the beginning of the algorithms. <xref ref-type="fig" rid="f23-sensors-12-08073">Figure 23</xref> shows one example of this failure. There are two peak lines in the figure that indicate the two main targets, whereas only one line is present in the normal case, as shown in <xref ref-type="fig" rid="f16-sensors-12-08073">Figure 16</xref>. The additional peak line will disturb the auto-focusing program and build an incorrect estimated trace curve due to its relatively high focus value. Due to this incorrect estimate at the beginning of the algorithm, FZT may fall into the local adjustment along the wrong curve.</p>
<p>It should also be noted that this drawback is not caused by the feedback mechanism but by the auto-focusing procedure. Thus, all of the existing zoom tracking approaches that use the auto-focusing program at the beginning of the algorithm have this drawback. The advanced auto-focusing technique concerning image content can further be used to cover this shortage.</p></sec></sec>
<sec sec-type="conclusions">
<label>5.</label>
<title>Conclusions</title>
<p>In this paper, a robust feedback zoom tracking method has been introduced for digital video surveillance systems. This real-time method uses focus values and a PI loop-closed controller to revise the estimation of the trace curve. To assess performance, a real-time hardware implementation of the FZT algorithm along with commonly used methods was performed on an actual digital video platform. The extensive experiments under different lighting conditions for both stationary and moving objects revealed that the proposed feedback method generates better accuracies without pre-training compared to the commonly used approaches. Furthermore, the feedback mechanism may cause several fluctuations on the trace curve, but they typically stay within the tolerance level of a human being if the method parameters are properly chosen. Although it takes a little more time than traditional methods, the FZT method improves the robustness and adaptability of zoom tracking, particularly for moving or switching objects in video surveillance.</p></sec></body>
<back>
<ack>
<p>This study was supported by the National Natural Science Foundation of China (Grant No. 50905069 and No. 51121002) and the National Science and Technology Major Project (Grant No. 2012ZX04001012).</p></ack>
<ref-list>
<title>References</title>
<ref id="b1-sensors-12-08073"><label>1.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Haritaoglu</surname><given-names>I.</given-names></name><name><surname>Harwood</surname><given-names>D.</given-names></name><name><surname>Davis</surname><given-names>L.S.</given-names></name></person-group><article-title>W-4: Real-time surveillance of people and their activities</article-title><source>IEEE Trans. Pattern Anal. Mach. Intell.</source><year>2000</year><volume>22</volume><fpage>809</fpage><lpage>830</lpage><pub-id pub-id-type="doi">10.1109/34.868683</pub-id></citation></ref>
<ref id="b2-sensors-12-08073"><label>2.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Foresti</surname><given-names>G.L.</given-names></name><name><surname>Micheloni</surname><given-names>C.</given-names></name><name><surname>Piciarelli</surname><given-names>C.</given-names></name><name><surname>Snidaro</surname><given-names>L.</given-names></name></person-group><article-title>Visual sensor technology for advanced surveillance systems: Historical view, technological aspects and research activities in Italy</article-title><source>Sensors</source><year>2009</year><volume>9</volume><fpage>2252</fpage><lpage>2270</lpage><pub-id pub-id-type="doi">10.3390/s90402252</pub-id><pub-id pub-id-type="pmid">22574011</pub-id></citation></ref>
<ref id="b3-sensors-12-08073"><label>3.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Chen</surname><given-names>Y.-L.</given-names></name><name><surname>Chiang</surname><given-names>H.-H.</given-names></name><name><surname>Chiang</surname><given-names>C.-Y.</given-names></name><name><surname>Liu</surname><given-names>C.-M.</given-names></name><name><surname>Yuan</surname><given-names>S.-M.</given-names></name><name><surname>Wang</surname><given-names>J.-H.</given-names></name></person-group><article-title>A vision-based driver nighttime assistance and surveillance system based on intelligent image sensing techniques and a heterogamous dual-core embedded system architecture</article-title><source>Sensors</source><year>2012</year><volume>12</volume><fpage>2373</fpage><lpage>2399</lpage><pub-id pub-id-type="doi">10.3390/s120302373</pub-id><pub-id pub-id-type="pmid">22736956</pub-id></citation></ref>
<ref id="b4-sensors-12-08073"><label>4.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Tordoff</surname><given-names>B.J.</given-names></name><name><surname>Murray</surname><given-names>D.W.</given-names></name></person-group><article-title>A method of reactive zoom control from uncertainty in tracking</article-title><source>Comput. Vis. Image Underst.</source><year>2007</year><volume>105</volume><fpage>131</fpage><lpage>144</lpage><pub-id pub-id-type="doi">10.1016/j.cviu.2006.09.006</pub-id></citation></ref>
<ref id="b5-sensors-12-08073"><label>5.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Fayman</surname><given-names>J.A.</given-names></name><name><surname>Sudarsky</surname><given-names>O.</given-names></name><name><surname>Rivlin</surname><given-names>E.</given-names></name><name><surname>Rudzsky</surname><given-names>M.</given-names></name></person-group><article-title>Zoom tracking and its applications</article-title><source>Mach. Vis. Appl.</source><year>2001</year><volume>13</volume><fpage>25</fpage><lpage>37</lpage><pub-id pub-id-type="doi">10.1007/PL00013268</pub-id></citation></ref>
<ref id="b6-sensors-12-08073"><label>6.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Cheng</surname><given-names>H.Y.</given-names></name><name><surname>Hsu</surname><given-names>S.H.</given-names></name></person-group><article-title>Intelligent highway traffic surveillance with self-diagnosis abilities</article-title><source>IEEE Trans. Intell. Transp. Syst.</source><year>2011</year><volume>12</volume><fpage>1462</fpage><lpage>1472</lpage><pub-id pub-id-type="doi">10.1109/TITS.2011.2160171</pub-id></citation></ref>
<ref id="b7-sensors-12-08073"><label>7.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Lee</surname><given-names>Y.S.</given-names></name><name><surname>Chung</surname><given-names>W.Y.</given-names></name></person-group><article-title>Visual sensor based abnormal event detection with moving shadow removal in home healthcare applications</article-title><source>Sensors</source><year>2012</year><volume>12</volume><fpage>573</fpage><lpage>584</lpage><pub-id pub-id-type="doi">10.3390/s120100573</pub-id><pub-id pub-id-type="pmid">22368486</pub-id></citation></ref>
<ref id="b8-sensors-12-08073"><label>8.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Kumar</surname><given-names>P.</given-names></name><name><surname>Ranganath</surname><given-names>S.</given-names></name><name><surname>Huang</surname><given-names>W.</given-names></name><name><surname>Sengupta</surname><given-names>K.</given-names></name></person-group><article-title>Framework for real-time behavior interpretation from traffic video</article-title><source>Intell. Transp. Syst. IEEE Trans.</source><year>2005</year><volume>6</volume><fpage>43</fpage><lpage>53</lpage><pub-id pub-id-type="doi">10.1109/TITS.2004.838219</pub-id></citation></ref>
<ref id="b9-sensors-12-08073"><label>9.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Gamadia</surname><given-names>M.</given-names></name><name><surname>Peddigari</surname><given-names>V.</given-names></name><name><surname>Kehtarnavaz</surname><given-names>N.</given-names></name><name><surname>Lee</surname><given-names>S.-Y.</given-names></name><name><surname>Cook</surname><given-names>G.</given-names></name></person-group><article-title>Real-time implementation of autofocus on the TI DSC processor</article-title><conf-name>Proceedings of the SPIE Electronic Imaging Symposium</conf-name><conf-loc>San Jose, CA, USA</conf-loc><conf-date>20 January 2004</conf-date><fpage>10</fpage><lpage>18</lpage></citation></ref>
<ref id="b10-sensors-12-08073"><label>10.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Weerasinghe</surname><given-names>C.</given-names></name><name><surname>Nilsson</surname><given-names>M.</given-names></name><name><surname>Lichman</surname><given-names>S.</given-names></name><name><surname>Kharitonenko</surname><given-names>I.</given-names></name></person-group><article-title>Digital zoom camera with image sharpening and noise suppression</article-title><source>IEEE Trans. Consum. Electron.</source><year>2004</year><volume>50</volume><fpage>777</fpage><lpage>786</lpage><pub-id pub-id-type="doi">10.1109/TCE.2004.1341679</pub-id></citation></ref>
<ref id="b11-sensors-12-08073"><label>11.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Peddigari</surname><given-names>V.</given-names></name><name><surname>Kehtarnavaz</surname><given-names>N.</given-names></name></person-group><article-title>Real-time predictive zoom tracking for digital still cameras</article-title><source>J. Real-Time Image Process</source><year>2007</year><volume>2</volume><fpage>45</fpage><lpage>54</lpage><pub-id pub-id-type="doi">10.1007/s11554-007-0036-y</pub-id></citation></ref>
<ref id="b12-sensors-12-08073"><label>12.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Hoad</surname><given-names>P.</given-names></name><name><surname>Illingworth</surname><given-names>J.</given-names></name></person-group><article-title>Automatic Control of Camera Pan, Zoom and Focus for Improving Object Recognition</article-title><conf-name>Fifth International Conference on Image Processing and its Applications</conf-name><conf-loc>Edinburgh, UK</conf-loc><conf-date>4–6 July 1995</conf-date><fpage>291</fpage><lpage>295</lpage></citation></ref>
<ref id="b13-sensors-12-08073"><label>13.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Kim</surname><given-names>Y.</given-names></name><name><surname>Lee</surname><given-names>J.S.</given-names></name><name><surname>Morales</surname><given-names>A.W.</given-names></name><name><surname>Ko</surname><given-names>S.J.</given-names></name></person-group><article-title>A video camera system with enhanced zoom tracking and auto white balance</article-title><source>IEEE Trans. Consum. Electron.</source><year>2002</year><volume>48</volume><fpage>428</fpage><lpage>434</lpage><pub-id pub-id-type="doi">10.1109/TCE.2002.1037024</pub-id></citation></ref>
<ref id="b14-sensors-12-08073"><label>14.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Peddigari</surname><given-names>V.R.</given-names></name><name><surname>Kehtarnavaz</surname><given-names>N.</given-names></name><name><surname>Lee</surname><given-names>S.-Y.</given-names></name><name><surname>Cook</surname><given-names>G.</given-names></name></person-group><article-title>Real-time implementation of zoom tracking on TI DM processor</article-title><conf-name>Proceedings of the SPIE Electronic Imaging Symposium</conf-name><conf-loc>San Jose, CA, USA</conf-loc><conf-date>18 January 2005</conf-date><fpage>8</fpage><lpage>18</lpage></citation></ref>
<ref id="b15-sensors-12-08073"><label>15.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>June-Sok</surname><given-names>L.</given-names></name><name><surname>Sung-Jea</surname><given-names>K.</given-names></name><name><surname>Yoon</surname><given-names>K.</given-names></name><name><surname>Morales</surname><given-names>A.</given-names></name></person-group><article-title>A video camera system with adaptive zoom tracking</article-title><conf-name>Proceedings of the International Conference on Consumer Electronics</conf-name><conf-loc>Los Angeles, CA, USA</conf-loc><conf-date>18–20 June 2002</conf-date><fpage>56</fpage><lpage>57</lpage></citation></ref>
<ref id="b16-sensors-12-08073"><label>16.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Peddigari</surname><given-names>V.</given-names></name><name><surname>Kehtarnavaz</surname><given-names>N.</given-names></name></person-group><article-title>A relational approach to zoom tracking for digital still cameras</article-title><source>IEEE Trans. Consum. Electron.</source><year>2005</year><volume>51</volume><fpage>1051</fpage><lpage>1059</lpage><pub-id pub-id-type="doi">10.1109/TCE.2005.1561824</pub-id></citation></ref>
<ref id="b17-sensors-12-08073"><label>17.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Wang</surname><given-names>D.</given-names></name><name><surname>Ding</surname><given-names>F.</given-names></name></person-group><article-title>Input-output data filtering based recursive least squares identification for cararma systems</article-title><source>Digit. Signal Process.</source><year>2010</year><volume>20</volume><fpage>991</fpage><lpage>999</lpage><pub-id pub-id-type="doi">10.1016/j.dsp.2009.12.006</pub-id></citation></ref>
<ref id="b18-sensors-12-08073"><label>18.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Kamijo</surname><given-names>K.</given-names></name><name><surname>Tanigawa</surname><given-names>T.</given-names></name></person-group><article-title>Stock price pattern recognition-a recurrent neural network approach</article-title><conf-name>Proceedings of the International Joint Conference on Neural Networks</conf-name><conf-loc>San Diego, CA, USA</conf-loc><conf-date>17–21 June 1990</conf-date><fpage>215</fpage><lpage>221</lpage></citation></ref>
<ref id="b19-sensors-12-08073"><label>19.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Sánchez</surname><given-names>J.</given-names></name><name><surname>Benet</surname><given-names>G.</given-names></name><name><surname>Simó</surname><given-names>J.E.</given-names></name></person-group><article-title>Video sensor architecture for surveillance applications</article-title><source>Sensors</source><year>2012</year><volume>12</volume><fpage>1509</fpage><lpage>1528</lpage><pub-id pub-id-type="doi">10.3390/s120201509</pub-id><pub-id pub-id-type="pmid">22438723</pub-id></citation></ref>
<ref id="b20-sensors-12-08073"><label>20.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Hu</surname><given-names>H.G.</given-names></name><name><surname>Xu</surname><given-names>L.H.</given-names></name><name><surname>Wei</surname><given-names>R.H.</given-names></name><name><surname>Zhu</surname><given-names>B.K.</given-names></name></person-group><article-title>Multi-objective control optimization for greenhouse environment using evolutionary algorithms</article-title><source>Sensors</source><year>2011</year><volume>11</volume><fpage>5792</fpage><lpage>5807</lpage><pub-id pub-id-type="doi">10.3390/s110605792</pub-id><pub-id pub-id-type="pmid">22163927</pub-id></citation></ref>
<ref id="b21-sensors-12-08073"><label>21.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Jimenez-Fernandez</surname><given-names>A.</given-names></name><name><surname>Jimenez-Moreno</surname><given-names>G.</given-names></name><name><surname>Linares-Barranco</surname><given-names>A.</given-names></name><name><surname>Dominguez-Morales</surname><given-names>M.J.</given-names></name><name><surname>Paz-Vicente</surname><given-names>R.</given-names></name><name><surname>Civit-Balcells</surname><given-names>A.</given-names></name></person-group><article-title>A neuro-inspired spike-based PID motor controller for multi-motor robots with low cost fpgas</article-title><source>Sensors</source><year>2012</year><volume>12</volume><fpage>3831</fpage><lpage>3856</lpage><pub-id pub-id-type="doi">10.3390/s120403831</pub-id><pub-id pub-id-type="pmid">22666004</pub-id></citation></ref>
<ref id="b22-sensors-12-08073"><label>22.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Yu</surname><given-names>Z.P.</given-names></name><name><surname>Wang</surname><given-names>J.D.</given-names></name><name><surname>Huang</surname><given-names>B.A.</given-names></name><name><surname>Bi</surname><given-names>Z.F.</given-names></name></person-group><article-title>Performance assessment of PID control loops subject to setpoint changes</article-title><source>J. Process. Control</source><year>2011</year><volume>21</volume><fpage>1164</fpage><lpage>1171</lpage><pub-id pub-id-type="doi">10.1016/j.jprocont.2011.06.012</pub-id></citation></ref>
<ref id="b23-sensors-12-08073"><label>23.</label><citation citation-type="book"><person-group person-group-type="author"><name><surname>Bennett</surname><given-names>S.</given-names></name></person-group><source>A History of Control Engineering, 1930–1955</source><publisher-name>P. Peregrinus on behalf of the Institution of Electrical Engineers</publisher-name><publisher-loc>London, UK</publisher-loc><year>1993</year><fpage>48</fpage></citation></ref>
<ref id="b24-sensors-12-08073"><label>24.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Kehtarnavaz</surname><given-names>N.</given-names></name><name><surname>Oh</surname><given-names>H.J.</given-names></name></person-group><article-title>Development and real-time implementation of a rule-based auto-focus algorithm</article-title><source>Real-Time Imaging</source><year>2003</year><volume>9</volume><fpage>197</fpage><lpage>203</lpage><pub-id pub-id-type="doi">10.1016/S1077-2014(03)00037-8</pub-id></citation></ref>
<ref id="b25-sensors-12-08073"><label>25.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Peddigari</surname><given-names>V.</given-names></name><name><surname>Gamadia</surname><given-names>M.</given-names></name><name><surname>Kehtarnavaz</surname><given-names>N.</given-names></name></person-group><article-title>Real-time implementation issues in passive automatic focusing for digital still cameras</article-title><source>J. Imaging Sci. Technol.</source><year>2005</year><volume>49</volume><fpage>114</fpage><lpage>123</lpage></citation></ref>
<ref id="b26-sensors-12-08073"><label>26.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Kuo</surname><given-names>C.F.J.</given-names></name><name><surname>Chiu</surname><given-names>C.H.</given-names></name></person-group><article-title>Improved auto-focus search algorithms for cmos image-sensing module</article-title><source>J. Inf. Sci. Eng.</source><year>2011</year><volume>27</volume><fpage>1377</fpage><lpage>1393</lpage></citation></ref>
<ref id="b27-sensors-12-08073"><label>27.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Burge</surname><given-names>J.</given-names></name><name><surname>Geisler</surname><given-names>W.S.</given-names></name></person-group><article-title>Optimal defocus estimation in individual natural images</article-title><source>Proc. Natl. Acad. Sci. USA</source><year>2011</year><volume>108</volume><fpage>16849</fpage><lpage>16854</lpage><pub-id pub-id-type="doi">10.1073/pnas.1108491108</pub-id><pub-id pub-id-type="pmid">21930897</pub-id></citation></ref>
<ref id="b28-sensors-12-08073"><label>28.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Lee</surname><given-names>J.-Y.</given-names></name><name><surname>Wang</surname><given-names>Y.-H.</given-names></name><name><surname>Lai</surname><given-names>L.-J.</given-names></name><name><surname>Lin</surname><given-names>Y.-J.</given-names></name><name><surname>Chang</surname><given-names>Y.-H.</given-names></name></person-group><article-title>Development of an auto-focus system based on the moiré method</article-title><source>Measurement</source><year>2011</year><volume>44</volume><fpage>1793</fpage><lpage>1800</lpage><pub-id pub-id-type="doi">10.1016/j.measurement.2011.08.026</pub-id></citation></ref>
<ref id="b29-sensors-12-08073"><label>29.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Åström</surname><given-names>K.J.</given-names></name><name><surname>Hägglund</surname><given-names>T.</given-names></name></person-group><article-title>Revisiting the ziegler-nichols step response method for PID control</article-title><source>J. Process Control</source><year>2004</year><volume>14</volume><fpage>635</fpage><lpage>650</lpage><pub-id pub-id-type="doi">10.1016/j.jprocont.2004.01.002</pub-id></citation></ref>
<ref id="b30-sensors-12-08073"><label>30.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Ho</surname><given-names>W.K.</given-names></name><name><surname>Hang</surname><given-names>C.C.</given-names></name><name><surname>Zhou</surname><given-names>J.H.</given-names></name></person-group><article-title>Performance and gain and phase margins of well-known PI tuning formulas</article-title><source>Control Syst. Technol. IEEE Trans.</source><year>1995</year><volume>3</volume><fpage>245</fpage><lpage>248</lpage><pub-id pub-id-type="doi">10.1109/87.388135</pub-id></citation></ref>
<ref id="b31-sensors-12-08073"><label>31.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Huang</surname><given-names>J.W.</given-names></name><name><surname>Li</surname><given-names>Z.N.</given-names></name></person-group><article-title>Automatic detection of object of interest and tracking in active video</article-title><source>J. Signal Process. Syst. Signal Image Video Technol.</source><year>2011</year><volume>65</volume><fpage>49</fpage><lpage>62</lpage><pub-id pub-id-type="doi">10.1007/s11265-010-0540-3</pub-id></citation></ref>
<ref id="b32-sensors-12-08073"><label>32.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Kumar</surname><given-names>P.</given-names></name><name><surname>Dick</surname><given-names>A.</given-names></name><name><surname>Sheng</surname><given-names>T.S.</given-names></name></person-group><article-title>Real Time Target Tracking with Pan Tilt Zoom Camera</article-title><conf-name>Proceedings of the 2009 Digital Image Computing: Techniques and Applications</conf-name><conf-loc>Melbourne, Australia</conf-loc><conf-date>1–3 December 2009</conf-date><fpage>492</fpage><lpage>497</lpage></citation></ref>
<ref id="b33-sensors-12-08073"><label>33.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Kwak</surname><given-names>S.</given-names></name><name><surname>Ko</surname><given-names>B.</given-names></name><name><surname>Byun</surname><given-names>H.</given-names></name></person-group><article-title>Salient human detection for robot vision</article-title><source>Pattern Anal. Appl.</source><year>2007</year><volume>10</volume><fpage>291</fpage><lpage>299</lpage><pub-id pub-id-type="doi">10.1007/s10044-007-0068-8</pub-id></citation></ref>
<ref id="b34-sensors-12-08073"><label>34.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Doǧan</surname><given-names>S.</given-names></name><name><surname>Temiz</surname><given-names>M.S.</given-names></name><name><surname>Külür</surname><given-names>S.</given-names></name></person-group><article-title>Real time speed estimation of moving vehicles from side view images from an uncalibrated video camera</article-title><source>Sensors</source><year>2010</year><volume>10</volume><fpage>4805</fpage><lpage>4824</lpage><pub-id pub-id-type="doi">10.3390/s100504805</pub-id><pub-id pub-id-type="pmid">22399909</pub-id></citation></ref>
<ref id="b35-sensors-12-08073"><label>35.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Lin</surname><given-names>C.-C.</given-names></name><name><surname>Wang</surname><given-names>M.-S.</given-names></name></person-group><article-title>A vision based top-view transformation model for a vehicle parking assistant</article-title><source>Sensors</source><year>2012</year><volume>12</volume><fpage>4431</fpage><lpage>4446</lpage><pub-id pub-id-type="doi">10.3390/s120404431</pub-id><pub-id pub-id-type="pmid">22666038</pub-id></citation></ref>
<ref id="b36-sensors-12-08073"><label>36.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Garcia-Garrido</surname><given-names>M.A.</given-names></name><name><surname>Ocana</surname><given-names>M.</given-names></name><name><surname>Llorca</surname><given-names>D.F.</given-names></name><name><surname>Arroyo</surname><given-names>E.</given-names></name><name><surname>Pozuelo</surname><given-names>J.</given-names></name><name><surname>Gavilan</surname><given-names>M.</given-names></name></person-group><article-title>Complete vision-based traffic sign recognition supported by an i2v communication system</article-title><source>Sensors</source><year>2012</year><volume>12</volume><fpage>1148</fpage><lpage>1169</lpage><pub-id pub-id-type="doi">10.3390/s120201148</pub-id><pub-id pub-id-type="pmid">22438704</pub-id></citation></ref></ref-list>
<sec sec-type="display-objects">
<title>Figures and Tables</title>
<fig id="f1-sensors-12-08073" position="float">
<label>Figure 1.</label>
<caption>
<p>Illustration of the zoom tracking effect.</p></caption>
<graphic xlink:href="sensors-12-08073f1.gif"/></fig>
<fig id="f2-sensors-12-08073" position="float">
<label>Figure 2.</label>
<caption>
<p>(<bold>a</bold>) Illustration of an actual zoom system; (<bold>b</bold>) The structure of a zoom system; (<bold>c</bold>) Zoom tracking mechanism.</p></caption>
<graphic xlink:href="sensors-12-08073f2.gif"/></fig>
<fig id="f3-sensors-12-08073" position="float">
<label>Figure 3.</label>
<caption>
<p>Trace curves for an 18× zoom lens.</p></caption>
<graphic xlink:href="sensors-12-08073f3.gif"/></fig>
<fig id="f4-sensors-12-08073" position="float">
<label>Figure 4.</label>
<caption>
<p>(<bold>a</bold>) Moving object during zooming; (<bold>b</bold>) Switching object during zooming.</p></caption>
<graphic xlink:href="sensors-12-08073f4.gif"/></fig>
<fig id="f5-sensors-12-08073" position="float">
<label>Figure 5.</label>
<caption>
<p>Illustration of the GZT focus ratio.</p></caption>
<graphic xlink:href="sensors-12-08073f5.gif"/></fig>
<fig id="f6-sensors-12-08073" position="float">
<label>Figure 6.</label>
<caption>
<p>GZT focus ratio curves.</p></caption>
<graphic xlink:href="sensors-12-08073f6.gif"/></fig>
<fig id="f7-sensors-12-08073" position="float">
<label>Figure 7.</label>
<caption>
<p>Focus values for each motor position.</p></caption>
<graphic xlink:href="sensors-12-08073f7.gif"/></fig>
<fig id="f8-sensors-12-08073" position="float">
<label>Figure 8.</label>
<caption>
<p>Feedback zoom tracking method.</p></caption>
<graphic xlink:href="sensors-12-08073f8.gif"/></fig>
<fig id="f9-sensors-12-08073" position="float">
<label>Figure 9.</label>
<caption>
<p>Illustration of FZT revision.</p></caption>
<graphic xlink:href="sensors-12-08073f9.gif"/></fig>
<fig id="f10-sensors-12-08073" position="float">
<label>Figure 10.</label>
<caption>
<p>Principle of FZT revision.</p></caption>
<graphic xlink:href="sensors-12-08073f10.gif"/></fig>
<fig id="f11-sensors-12-08073" position="float">
<label>Figure 11.</label>
<caption>
<p>Control structure of FZT.</p></caption>
<graphic xlink:href="sensors-12-08073f11.gif"/></fig>
<fig id="f12-sensors-12-08073" position="float">
<label>Figure 12.</label>
<caption>
<p>High-speed TI TMS320DM365 digital video platform.</p></caption>
<graphic xlink:href="sensors-12-08073f12.gif"/></fig>
<fig id="f13-sensors-12-08073" position="float">
<label>Figure 13.</label>
<caption>
<p>FZT trace curve for a 3 m stationary object.</p></caption>
<graphic xlink:href="sensors-12-08073f13.gif"/></fig>
<fig id="f14-sensors-12-08073" position="float">
<label>Figure 14.</label>
<caption>
<p>Offset distribution for stationary objects.</p></caption>
<graphic xlink:href="sensors-12-08073f14.gif"/></fig>
<fig id="f15-sensors-12-08073" position="float">
<label>Figure 15.</label>
<caption>
<p>Different types of zooming sequences.</p></caption>
<graphic xlink:href="sensors-12-08073f15.gif"/></fig>
<fig id="f16-sensors-12-08073" position="float">
<label>Figure 16.</label>
<caption>
<p>Focus value for per zoom position versus focus motor position.</p></caption>
<graphic xlink:href="sensors-12-08073f16.gif"/></fig>
<fig id="f17-sensors-12-08073" position="float">
<label>Figure 17.</label>
<caption>
<p>(<bold>a</bold>) Trace curves for an object moving from 3 m to 4 m; (<bold>b</bold>) Trace curves for an object moving from 5 m to 8 m.</p></caption>
<graphic xlink:href="sensors-12-08073f17.gif"/></fig>
<fig id="f18-sensors-12-08073" position="float">
<label>Figure 18.</label>
<caption>
<p>(<bold>a</bold>) Offset distribution for objects switching from 2 m to 5 m; (<bold>b</bold>) Offset distribution for objects switching from 2 m to 20 m.</p></caption>
<graphic xlink:href="sensors-12-08073f18.gif"/></fig>
<fig id="f19-sensors-12-08073" position="float">
<label>Figure 19.</label>
<caption>
<p>Trace curves for different FZT feedback periods.</p></caption>
<graphic xlink:href="sensors-12-08073f19.gif"/></fig>
<fig id="f20-sensors-12-08073" position="float">
<label>Figure 20.</label>
<caption>
<p>Feedback response curves for different proportional gains.</p></caption>
<graphic xlink:href="sensors-12-08073f20.gif"/></fig>
<fig id="f21-sensors-12-08073" position="float">
<label>Figure 21.</label>
<caption>
<p>Feedback response curves for different integral time.</p></caption>
<graphic xlink:href="sensors-12-08073f21.gif"/></fig>
<fig id="f22-sensors-12-08073" position="float">
<label>Figure 22.</label>
<caption>
<p>Complementary response curves for different integral time.</p></caption>
<graphic xlink:href="sensors-12-08073f22.gif"/></fig>
<fig id="f23-sensors-12-08073" position="float">
<label>Figure 23.</label>
<caption>
<p>One example of FZT failure.</p></caption>
<graphic xlink:href="sensors-12-08073f23.gif"/></fig>
<table-wrap id="t1-sensors-12-08073" position="float">
<label>Table 1.</label>
<caption>
<p>Tracking accuracy for stationary objects.</p></caption>
<table frame="hsides" rules="groups">
<thead>
<tr>
<th align="center" valign="middle" rowspan="3"><bold>Zoom tracking approach</bold></th>
<th colspan="5" align="center" valign="top"><bold>Mean offset (motor steps) wide-angle &gt; tele-angle</bold></th></tr>
<tr>
<th valign="bottom" colspan="5">
<hr/></th></tr>
<tr>
<th align="center" valign="top"><bold>2 m</bold></th>
<th align="center" valign="top"><bold>3 m</bold></th>
<th align="center" valign="top"><bold>5 m</bold></th>
<th align="center" valign="top"><bold>10 m</bold></th>
<th align="center" valign="top"><bold>20 m</bold></th></tr></thead>
<tbody>
<tr>
<td align="center" valign="top">GZT</td>
<td align="center" valign="top">7.68</td>
<td align="center" valign="top">7.36</td>
<td align="center" valign="top">7.13</td>
<td align="center" valign="top">6.85</td>
<td align="center" valign="top">6.59</td></tr>
<tr>
<td align="center" valign="top">AZT</td>
<td align="center" valign="top">7.45</td>
<td align="center" valign="top">7.16</td>
<td align="center" valign="top">6.95</td>
<td align="center" valign="top">6.69</td>
<td align="center" valign="top">6.46</td></tr>
<tr>
<td align="center" valign="top">RZT</td>
<td align="center" valign="top">5.92</td>
<td align="center" valign="top">5.64</td>
<td align="center" valign="top">5.46</td>
<td align="center" valign="top">5.22</td>
<td align="center" valign="top">5.04</td></tr>
<tr>
<td align="center" valign="top">PZT (S = 5)</td>
<td align="center" valign="top">6.14</td>
<td align="center" valign="top">5.87</td>
<td align="center" valign="top">5.68</td>
<td align="center" valign="top">5.45</td>
<td align="center" valign="top">5.23</td></tr>
<tr>
<td align="center" valign="top">PZT (S = 20)</td>
<td align="center" valign="top">5.15</td>
<td align="center" valign="top">4.89</td>
<td align="center" valign="top">4.73</td>
<td align="center" valign="top">4.52</td>
<td align="center" valign="top">4.34</td></tr>
<tr>
<td align="center" valign="top">FZT</td>
<td align="center" valign="top">5.79</td>
<td align="center" valign="top">5.53</td>
<td align="center" valign="top">5.34</td>
<td align="center" valign="top">5.10</td>
<td align="center" valign="top">4.91</td></tr></tbody></table></table-wrap>
<table-wrap id="t2-sensors-12-08073" position="float">
<label>Table 2.</label>
<caption>
<p>Tracking accuracy for each zooming sequence.</p></caption>
<table frame="hsides" rules="groups">
<thead>
<tr>
<th align="center" valign="middle" rowspan="3"><bold>Zoom tracking approach</bold></th>
<th colspan="4" align="center" valign="top"><bold>Mean offset (motor steps) Object distance = 8 m</bold></th></tr>
<tr>
<th valign="bottom" colspan="4">
<hr/></th></tr>
<tr>
<th align="center" valign="top"><bold>ZS-1</bold></th>
<th align="center" valign="top"><bold>ZS-2</bold></th>
<th align="center" valign="top"><bold>ZS-3</bold></th>
<th align="center" valign="top"><bold>ZS-4</bold></th></tr></thead>
<tbody>
<tr>
<td align="center" valign="top">GZT</td>
<td align="center" valign="middle">3.19</td>
<td align="center" valign="middle">3.18</td>
<td align="center" valign="middle">9.07</td>
<td align="center" valign="middle">6.22</td></tr>
<tr>
<td align="center" valign="top">AZT</td>
<td align="center" valign="middle">3.34</td>
<td align="center" valign="middle">3.32</td>
<td align="center" valign="middle">7.79</td>
<td align="center" valign="middle">6.56</td></tr>
<tr>
<td align="center" valign="top">RZT</td>
<td align="center" valign="middle">2.86</td>
<td align="center" valign="middle">2.95</td>
<td align="center" valign="middle">8.68</td>
<td align="center" valign="middle">5.65</td></tr>
<tr>
<td align="center" valign="top">PZT(S = 20)</td>
<td align="center" valign="middle">2.49</td>
<td align="center" valign="middle">2.33</td>
<td align="center" valign="middle">8.13</td>
<td align="center" valign="middle">4.61</td></tr>
<tr>
<td align="center" valign="top">FZT</td>
<td align="center" valign="top">2.63</td>
<td align="center" valign="top">2.57</td>
<td align="center" valign="top">8.37</td>
<td align="center" valign="top">5.13</td></tr></tbody></table></table-wrap>
<table-wrap id="t3-sensors-12-08073" position="float">
<label>Table 3.</label>
<caption>
<p>Tracking accuracy for moving objects.</p></caption>
<table frame="hsides" rules="groups">
<thead>
<tr>
<th align="center" valign="middle" rowspan="3"><bold>Zoom tracking approach</bold></th>
<th colspan="5" align="center" valign="top"><bold>Mean offset (motor steps) wide-angle &gt; tele-angle</bold></th></tr>
<tr>
<th valign="bottom" colspan="5">
<hr/></th></tr>
<tr>
<th align="center" valign="top"><bold>2 m-&gt;3 m</bold></th>
<th align="center" valign="top"><bold>2 m-&gt;5 m</bold></th>
<th align="center" valign="top"><bold>2 m-&gt;8 m</bold></th>
<th align="center" valign="top"><bold>2 m-&gt;10 m</bold></th>
<th align="center" valign="top"><bold>2 m-&gt;20 m</bold></th></tr></thead>
<tbody>
<tr>
<td align="center" valign="top">GZT</td>
<td align="center" valign="top">10.74</td>
<td align="center" valign="top">12.46</td>
<td align="center" valign="top">13.31</td>
<td align="center" valign="top">13.79</td>
<td align="center" valign="top">14.15</td></tr>
<tr>
<td align="center" valign="top">AZT</td>
<td align="center" valign="top">10.56</td>
<td align="center" valign="top">12.27</td>
<td align="center" valign="top">13.11</td>
<td align="center" valign="top">13.57</td>
<td align="center" valign="top">13.93</td></tr>
<tr>
<td align="center" valign="top">RZT</td>
<td align="center" valign="top">9.97</td>
<td align="center" valign="top">11.66</td>
<td align="center" valign="top">12.47</td>
<td align="center" valign="top">12.92</td>
<td align="center" valign="top">13.26</td></tr>
<tr>
<td align="center" valign="top">PZT(S = 20)</td>
<td align="center" valign="top">9.66</td>
<td align="center" valign="top">11.33</td>
<td align="center" valign="top">12.12</td>
<td align="center" valign="top">12.54</td>
<td align="center" valign="top">12.87</td></tr>
<tr>
<td align="center" valign="top">FZT</td>
<td align="center" valign="top">7.48</td>
<td align="center" valign="top">8.23</td>
<td align="center" valign="top">8.59</td>
<td align="center" valign="top">8.87</td>
<td align="center" valign="top">9.09</td></tr></tbody></table></table-wrap>
<table-wrap id="t4-sensors-12-08073" position="float">
<label>Table 4.</label>
<caption>
<p>Tracking accuracy for switching objects.</p></caption>
<table frame="hsides" rules="groups">
<thead>
<tr>
<th align="center" valign="middle" rowspan="3"><bold>Zoom tracking approach</bold></th>
<th colspan="5" align="center" valign="top"><bold>Mean offset (motor steps) wide-angle &gt; tele-angle</bold></th></tr>
<tr>
<th valign="bottom" colspan="5">
<hr/></th></tr>
<tr>
<th align="center" valign="top"><bold>2 m; 3 m</bold></th>
<th align="center" valign="top"><bold>2 m; 5 m</bold></th>
<th align="center" valign="top"><bold>2 m; 8 m</bold></th>
<th align="center" valign="top"><bold>2 m; 10 m</bold></th>
<th align="center" valign="top"><bold>2 m; 20 m</bold></th></tr></thead>
<tbody>
<tr>
<td align="center" valign="top">GZT</td>
<td align="center" valign="top">12.43</td>
<td align="center" valign="top">14.76</td>
<td align="center" valign="top">15.85</td>
<td align="center" valign="top">16.51</td>
<td align="center" valign="top">17.07</td></tr>
<tr>
<td align="center" valign="top">AZT</td>
<td align="center" valign="top">12.21</td>
<td align="center" valign="top">14.53</td>
<td align="center" valign="top">15.61</td>
<td align="center" valign="top">16.27</td>
<td align="center" valign="top">16.83</td></tr>
<tr>
<td align="center" valign="top">RZT</td>
<td align="center" valign="top">11.54</td>
<td align="center" valign="top">13.78</td>
<td align="center" valign="top">14.79</td>
<td align="center" valign="top">15.42</td>
<td align="center" valign="top">15.97</td></tr>
<tr>
<td align="center" valign="top">PZT(S = 20)</td>
<td align="center" valign="top">11.17</td>
<td align="center" valign="top">13.41</td>
<td align="center" valign="top">14.43</td>
<td align="center" valign="top">15.06</td>
<td align="center" valign="top">15.59</td></tr>
<tr>
<td align="center" valign="top">FZT</td>
<td align="center" valign="top">8.41</td>
<td align="center" valign="top">9.32</td>
<td align="center" valign="top">9.79</td>
<td align="center" valign="top">10.13</td>
<td align="center" valign="top">10.42</td></tr></tbody></table></table-wrap>
<table-wrap id="t5-sensors-12-08073" position="float">
<label>Table 5.</label>
<caption>
<p>Tracking accuracy and time consumption for different FZT feedback periods.</p></caption>
<table frame="hsides" rules="groups">
<thead>
<tr>
<th align="center" valign="top"><bold>Feedback period</bold></th>
<th align="center" valign="top"><bold>Revision time</bold></th>
<th align="center" valign="top"><bold>Total time</bold></th>
<th align="center" valign="top"><bold>Mean offset</bold></th></tr></thead>
<tbody>
<tr>
<td align="center" valign="top"><italic>fp</italic> = 48</td>
<td align="center" valign="top">1,274 ms</td>
<td align="center" valign="top">4,780 ms</td>
<td align="center" valign="top">5.21</td></tr>
<tr>
<td align="center" valign="top"><italic>fp</italic> = 72</td>
<td align="center" valign="top">849 ms</td>
<td align="center" valign="top">4,355 ms</td>
<td align="center" valign="top">5.14</td></tr>
<tr>
<td align="center" valign="top"><italic>fp</italic> = 96</td>
<td align="center" valign="top">637 ms</td>
<td align="center" valign="top">4,143 ms</td>
<td align="center" valign="top">5.18</td></tr>
<tr>
<td align="center" valign="top"><italic>fp</italic> = 120</td>
<td align="center" valign="top">510 ms</td>
<td align="center" valign="top">4,016 ms</td>
<td align="center" valign="top">5.24</td></tr>
<tr>
<td align="center" valign="top"><italic>fp</italic> = 144</td>
<td align="center" valign="top">425 ms</td>
<td align="center" valign="top">3,931 ms</td>
<td align="center" valign="top">5.37</td></tr>
<tr>
<td align="center" valign="top"><italic>fp</italic> = 168</td>
<td align="center" valign="top">364 ms</td>
<td align="center" valign="top">3,870 ms</td>
<td align="center" valign="top">5.59</td></tr>
<tr>
<td align="center" valign="top"><italic>fp</italic> = 192</td>
<td align="center" valign="top">318 ms</td>
<td align="center" valign="top">3,824 ms</td>
<td align="center" valign="top">6.04</td></tr></tbody></table></table-wrap>
<table-wrap id="t6-sensors-12-08073" position="float">
<label>Table 6.</label>
<caption>
<p>Time consumption of zoom tracking approaches.</p></caption>
<table frame="hsides" rules="groups">
<thead>
<tr>
<th align="center" valign="middle"><bold>Zoom tracking approach</bold></th>
<th align="center" valign="top"><bold>Auto-focus</bold></th>
<th align="center" valign="top"><bold>Feedback revision</bold></th>
<th align="center" valign="top"><bold>Trace curve estimation</bold></th>
<th align="center" valign="top"><bold>Total time</bold></th></tr></thead>
<tbody>
<tr>
<td align="center" valign="top">GZT</td>
<td align="center" valign="top">658 ms</td>
<td align="center" valign="top">0 ms</td>
<td align="center" valign="top">5 ms</td>
<td align="center" valign="top">3,506 ms</td></tr>
<tr>
<td align="center" valign="top">AZT</td>
<td align="center" valign="top">1,316 ms</td>
<td align="center" valign="top">0 ms</td>
<td align="center" valign="top">5 ms</td>
<td align="center" valign="top">4,164 ms</td></tr>
<tr>
<td align="center" valign="top">RZT</td>
<td align="center" valign="top">658 ms</td>
<td align="center" valign="top">0 ms</td>
<td align="center" valign="top">8 ms</td>
<td align="center" valign="top">3,509 ms</td></tr>
<tr>
<td align="center" valign="top">PZT</td>
<td align="center" valign="top">658 ms</td>
<td align="center" valign="top">0 ms</td>
<td align="center" valign="top">13 ms</td>
<td align="center" valign="top">3,514 ms</td></tr>
<tr>
<td align="center" valign="top">FZT</td>
<td align="center" valign="top">658 ms</td>
<td align="center" valign="top">637 ms</td>
<td align="center" valign="top">5 ms</td>
<td align="center" valign="top">4,143 ms</td></tr></tbody></table></table-wrap>
<table-wrap id="t7-sensors-12-08073" position="float">
<label>Table 7.</label>
<caption>
<p>Performance comparison of zoom tracking approaches.</p></caption>
<table frame="hsides" rules="groups">
<thead>
<tr>
<th align="center" valign="top" rowspan="3"><bold>Performance measures</bold></th>
<th colspan="5" align="center" valign="top"><bold>Zoom tracking approach</bold></th></tr>
<tr>
<th align="center" valign="bottom" colspan="5">
<hr/></th></tr>
<tr>
<th align="center" valign="top"><bold>GZT</bold></th>
<th align="center" valign="top"><bold>AZT</bold></th>
<th align="center" valign="top"><bold>RZT</bold></th>
<th align="center" valign="top"><bold>PZT</bold></th>
<th align="center" valign="top"><bold>FZT</bold></th></tr></thead>
<tbody>
<tr>
<td align="center" valign="top">Requires training</td>
<td align="center" valign="middle">No</td>
<td align="center" valign="middle">No</td>
<td align="center" valign="middle">Yes</td>
<td align="center" valign="middle">Yes</td>
<td align="center" valign="middle">No</td></tr>
<tr>
<td align="center" valign="top">Number of trace curves for training</td>
<td align="center" valign="middle">0</td>
<td align="center" valign="middle">0</td>
<td align="center" valign="middle">20</td>
<td align="center" valign="middle">20</td>
<td align="center" valign="middle">0</td></tr>
<tr>
<td align="center" valign="top">Storage usage (<italic>N</italic> zoom positions)</td>
<td align="center" valign="middle">3N</td>
<td align="center" valign="middle">3N</td>
<td align="center" valign="middle">3N</td>
<td align="center" valign="middle">3N<sup>2</sup></td>
<td align="center" valign="middle">3N</td></tr>
<tr>
<td align="center" valign="top">Causes user discomfort during zooming</td>
<td align="center" valign="middle">No</td>
<td align="center" valign="middle">Boundary</td>
<td align="center" valign="middle">No</td>
<td align="center" valign="middle">No</td>
<td align="center" valign="middle">Seldom</td></tr>
<tr>
<td align="center" valign="top">Robustness for moving or switching objects</td>
<td align="center" valign="middle">No</td>
<td align="center" valign="middle">No</td>
<td align="center" valign="middle">No</td>
<td align="center" valign="middle">No</td>
<td align="center" valign="middle">Yes</td></tr></tbody></table></table-wrap></sec></back></article>
