{'fraction_non_alphanumeric': 0.029460087247181462, 'fraction_numerical': 0.010896455347194682, 'mean_word_length': 4.572345575081553, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 1, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 8, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
A Joint Intensity-Neuromorphic Event Imaging System for Resource Constrained Devices

We present a novel adaptive multi-modal intensity-event algorithm to optimize an overall objective of object tracking under bit rate constraints for a host-chip architecture. The chip is a computationally resource constrained device acquiring high resolution intensity frames and events, while the host is capable of performing computationally expensive tasks. We develop a joint intensity-neuromorphic event rate-distortion compression framework with a quadtree (QT) based compression of intensity and events scheme. The data acquisition on the chip is driven by the presence of objects of interest in the scene as detected by an object detector. The most informative intensity and event data are communicated to the host under rate constraints, so that the best possible tracking performance is obtained. The detection and tracking of objects in the scene are done on the distorted data at the host. Intensity and events are jointly used in a fusion framework to enhance the quality of the distorted images, so as to improve the object detection and tracking performance. The performance assessment of the overall system is done in terms of the multiple object tracking accuracy (MOTA) score. Compared to using intensity modality only, there is an improvement in MOTA using both these modalities in different scenarios.

Event cameras are novel sensors which capture visual information in a drastically different form. Instead of outputting the intensity signals as in traditional cameras, they compare the difference between the current log intensity state and the previous state and fire an event when it exceeds the firing positive or negative threshold. Compared to traditional cameras, event sensing provides several benefits such as low latency operation of individual pixels, high dynamic range, reduce redundant capturing of static scenes, low power consumption.
The issue of selecting task specific appropriate data from either modality is critical. This problem can be framed as a rate-distortion optimization one in multiple modalities prior to transmitting data. While there can be enough computational power on the chip (remote device on the field) for processing data, followed by transmitting only vital information, we develop our framework based on a host-chip architecture, where the chip is resource constrained to perform limited computations. It may be argued that multiple modalities represent redundant information in the scene. However, this is not the case as different imaging modalities capture data in different methods and forms and each modality provides complimentary information to the other modalities. Additionally, processing algorithms rely on joint modalities to improve upon their performance. For instance several such works have been done in the RGB-IR domain: [1], [2], and in the intensity-event domain: [3], [4], just to refer a few. In this work we focus on the intensity and neuromorphic event modalities which is gaining popularity in recent years. Several neuromorphic event cameras such as DAVIS346 [5], CeleX-V [6] provide intensity frames and events.
Rate-distortion or resource allocation optimization has been a fundamental approach, addressed mostly for video/image compression and transmission over the last few decades. However, in recent years, with the advancement of other imaging modalities, the fundamental rate-distortion formulation needs to be effectively addressed especially for the multi-modality imaging framework, with intensity -event modality being one such multi-modal system. To the best of authors' knowledge, there has been no work addressing the joint rate-distortion optimization for intensity-event modalities. Moreoever, in this work, we develop the host-chip framework to optimize the rate-distortion equation together with the reconstruction algorithms for object detection and tracking based on both these modalities. While compression of these data can be done in several ways, in this work we use a QT decomposition of the intensity-event volume. The QT structure has been used as QT based block compression schemes fit into the most popular encoding schemes, such as, VVC [7], HEVC [8]. The arXiv:2105.14164v1 [eess.IV] 29 May 2021 architecture is based on a host-chip model, with the chip being the computationally constrained imager on the field, while the host being a server with high computational power. While this system has the flexibility of optimizing any end to end task, in this work, object tracking is the goal. In our previous work, [9] and [10], we solved the rate-distortion problem for only the intensity modality in discrete spatio-temporal volume using QT compression optimized (on the chip), together with a reconstruction algorithm for object detection and tracking. In this work, we jointly solve the rate-distortion problem for the intensity and asynchronous event modalities in a continuous spatio-temporal volume incorporating QT compression and lossy event compression strategy (on the chip), together with a reconstruction algorithm for object detection and tracking. While in our previous work, the host performs object detection and tracking in reconstructed intensity frames, in this work, the host reconstructs intensity frames with the aid of events, followed by object detection and tracking separately in intensity and event modalities, before finally fusing them. To the best of authors' knowledge, the joint rate-distortion optimization of intensity-event modalities for object detection and tracking has not been studied in the literature. The main contributions of the paper are as follows: • Development of a host-chip architecture for optimal information extraction using intensity and event modalities in a computationally resource constrained chip and bandwidth constrained communication channel. • Development of resource allocation and a joint intensity and event rate-distortion framework on chip. • Development of detection and tracking in intensity and event modalities separately with a late fusion model. • Task-specific processing of distorted intensity and events for object tracking.

II. RELATED WORK
Conventional image and video coding techniques have successfully evolved over the past several decades. This has resulted in a number of video standards, some of the latest ones being VVC, HEVC [7], [8]. These sophisticated standards take into consideration rate constraints, quality constraints among other factors. Compression schemes specifically for events have evolved in recent years [11], [12] exploiting spatial and temporal correlation among events. Our work on event compression [13] exploited spatio-temporal redundancy along with Poisson Disk Sampling [14] in order to compress events in a lossy manner using a QT optimized scheme and intensity modality, under rate constraints.
Most of the work in the literature on rate-distortion optimization for video / images do not take into account regions of interest (RoI) while performing rate limited compression. One of the early works on region-based rate control for H.264 is described in [15]. The authors used a region-based rate control scheme for macroblocks and grouped regions of similar characteristics as same region for treating them as a basic unit for rate control. Similar works on region-classificationbased rate control for Coding Tree Units (CTUs) in I-frames to improve its reconstruction quality for suppressing flicker artifacts has been done in [16]. Region-based intra-frame ratecontrol scheme to improve the objective quality and reduce PSNR fluctuations among CTUs [17] has been done, while moving regions has been used as the RoI for identifying the depth level of CTU [18], and other works [19], [20].
Further progress has been made in the RoI aware ratecontrol, where a higher bit rate is allocated to regions with human faces [21] and combination of human faces with CTU level [22] and using human faces and tile-based rate control [23]. Work has been done in attention region based rate control for 3DVC depth map coding based on regions classified as foreground, edges of objects and dynamic regions [24]. A content-aware rate control scheme for HEVC has been done on static and dynamic saliency detection using deep convolutional network for extracting static saliency map [25]. Work has been done on preserving scale-invariant features such as SIFT/SURF [26]. The rate control algorithm of HEVC is based on RoI using an improved Itti algorithm [27]. Rate control has also been done via adjustment of λ [28] and in other works. Work on the joint optimization of multiple modalities is scarce in literature. For point clouds, joint bit allocation problem for geometry and color in the point clouds has been solved using a model based approach using interior point method [29]. In [30], a 2 step approach was used for encoding geometry and color video sequences in a video based point cloud compression (V-PCC) standard.
Object detection and tracking has been one of topics studied widely which has been accelerated with the advances in Deep Learning. Such intensity based object detector are presented in [31], [32], [33]. Several works on intensity based object trackers using both deep learning and non deep learning based approaches such as [34], [35], [36]. Event based processing has also been done in recent years to solve classical as well as novel problems in computer vision and robotics. For instance event only based object detection has been done in [37], [38], [39]. Object tracking based on events have been done, for example, in [40], [38], [41]. Deblurring of objects using events has been done in [42], [43] and other algorithms based on events have been developed.
Clearly, there has not been any work in the literature (to the best of authors' knowledge) on optimal information extraction based on joint intensity -event modalities constrained on computationally constrained chip devices at low bit rates in order to optimize end-to-end task-specific objectives, such as object tracking. We address this vital issue in this paper.

III. MULTI MODAL HOST-CHIP ARCHITECTURE
The system architecture consists of a host and a chip for object detection and tracking in a multi-modal framework. The multiple modalities used in this work are the grayscale intensity and neuromorphic events. While grayscale intensity frames are generated at a fixed frame rate, the events are inherently asynchronous in nature, with each event represented as (x, y, t, p), where (x, y) is the position, t the timestamp and p the polarity. We develop a framework as a predictioncorrection feedback system (shown in Fig. 1) which is able to work with synchronous (frame-based) and asynchronous data under the constraints of a limited bandwidth channel capacity B between the host and the chip, remotely deployed in the field. The host predicts the Regions of Interest (RoIs) in a frame and updates its prediction based on the data received from the chip. The chip acquires high resolution intensity frames at every time t and corresponding events in a scene asynchronously. The communication bandwidth between the chip and host is limited. In such a scenario, it is not possible for the chip to transmit all the captured intensity and event data to the host. The intensity and event data are compressed using a QT structure in an optimal rate-distortion sense. For the intensity frames, the QT, modes of leaves (skip or acquire) and pixel values corresponding to the acquire mode are sent to the host. On the other hand, the asynchronous events are first quantized in time and then sampled as per the Poisson Disk Sampling method [14]. The sampled events are then compressed as per the QT blocks before being transmitted to the host. The host reconstructs the distorted intensity frames and events based on the data sent by the chip and the previous reconstructed intensity frame. The reconstructed intensity frames and events are used for enhancing the reconstructed frame, object detection and tracking in intensity and event modalities in order to extract the RoIs in each modality. The RoIs from each modality are fused to predict the overall RoIs at the next time instance t + 1, which are then sent to the chip. Figure 1 shows the predictive-corrective feedback loop between the chip and the host.  Figure 2 shows the chip architecture. The undistorted grayscale frame at t + 1, f t+1 and events between time t and t + 1, e t+1 captured by the chip occupy high communication bandwidth. Hence, the data need to be compressed before transmitting them from the chip to the host. A QT based compression of the intensity frame and events is used in this work. The optimal QT structure, S t+1 , is obtained by jointly solving the rate-distortion equation for both intensity and events by taking into account the priority regions bb f use t+1 as well. The priority regions bb f use t+1 is computed on the host based on the intensity and event data sent from the chip.
The host computed bb f use t+1 is sent to the chip before every time instance t + 1. The rate-distortion optimization is solved using dynamic programming based Viterbi optimization. For the intensity modality, the Viterbi optimization also generates skip-acquire modes Q t+1 , corresponding to the QT leaves. For the acquire mode in the QT, the superpixel values V t+1 for the leaves of QT are obtained from f t+1 . The events are sampled and compressed based on the QT using Huffman and run length encoding, generating compressed coded eventsê t+1 . S t+1 , Q t+1 , V t+1 along withê t+1 are sent from the chip to the host. The distorted framef t at time t stored in the chip, is used for computation at time t + 1.
1) Operational Rate Distortion Optimization based on multiple modalities: The communication bandwidth between chip and host limits the amount of data to be transferred between them. Moreover, due to the presence of image and events modalities, the optimal allocation of bits among these two modalities is very critical. In our previous work [9] and [10], we used dynamic programming based Viterbi optimization for controlling the trade-off between the frame distortion and bit rate for the intensity modality only. In this work, we extend the Viterbi optimization framework for performing ratedistortion optimization on both intensity and event modalities. Additionally, the algorithm determines the optimal bit rate allocation between intensity and events in order to minimize the total distortion. The number of bits allocated to intensity and events depends on the compression strategies applied to them. For a pixel intensity value corresponding to the acquire mode, 8 bits are used to represent it. On the other hand, the events are first sampled using the Poisson disk sampling method in the QT along with Huffman and run length encoding, similar to our work in [13]. In it, the QT is result from the rate-distortion optimization of intensity frames and then event compression is performed based on different QT block sizes. In this work, the QT has been obtained by joint rate-distortion optimization on both intensity and event modalities considering the event compression strategy in each QT block as in [13].
The event timestamps are truncated to place the events spatially into N temporal bins, (N chosen to be equal to 4 in the experiments). One event volume with N temporal bins is considered in the QT blocks with the Poisson disk sampling technique having Poisson Disk Radius (PDR), r, to sample events in the QT blocks. In this compression scheme, smaller r is chosen for smaller blocks and larger r for larger blocks, as we prioritize smaller blocks over larger blocks, more events are sampled relatively from smaller blocks. We apply PDR for QT blocks of size ≥ 4. For QT blocks of size smaller than 4, we consider all events as important and sample them all.
In general it is possible to choose different r candidate values for each QT block and then optimize over the entire QT and r. However, the larger the number of candidate r values, the larger the required number of computations. In general, we can have M τ values for the PDR, r 0 , r 1 , ..., r Mτ −1 to be optimized in addition to N τ leaves of the QT, where M τ ≤ N τ . The total distortion (D) is the sum of the intensity frame distortion (D i ) and event distortion (D e ), over each leaf x of the QT and PDR value r, where, Similarly, the total rate (Ra) is the sum of the intensity frame rate (R i ) and event rate (R e ), over each leaf x of the QT and PDR value r, that is, Thus given a maximum bit rate R max , we formulate the following rate-distortion optimization problem arg min The constrained discrete optimization problem of Eqn. 3 is solved using Lagrangian relaxation, leading to solutions in the convex hull of the rate-distortion curve for single modality [44], [45]. For dual modality, the Lagrangian cost function is, where λ ≥ 0 is a Lagrangian multiplier. Equation 4 can be rewritten as, which can be written as the following minimization problem, The goal is to solve Eqn. 6 using Dynamic Programming (DP) to find the optimal state sequence x * 0 , x * 1 , ..., x * Nτ −1 , over leaves of QT and r * 0 , r * 1 , ..., r * Mτ −1 , over PDR at each leaf. The PDR is optimized over M τ leaves out of N τ in the QT, where M τ ≤ N τ . Considering g * k (x k , r k ) as the minimum cost up to epoch k, with n 0 is the root of the QT, and, where is the Lagrangian cost function for the j th block with d(x j , r j ) and r a (x j , r j ) being the distortion and rate respectively. Now, which results in the DP recursion formula shown in Eqn. 10 with g * k+1 (x k+1 , r k+1 ), the minimum cost up to epoch k + 1, The DP forward recursion algorithm can be used to find the optimal state sequence. In every epoch (out of 4 (N −n0) ) in the Viterbi algorithm, the shortest path is found over the set of all admissible nodes of the previous epoch k − 1 to every node in the set of admissible nodes in the current epoch k which are referred as "from" set F l,i "to" set T l,i , where l and i are level and block of the QT. In each block there are p values of PDRs to chose from in order to optimize over r. The sequence of initialization, recursion, termination and backtracking for the forward DP algorithm [44], [45] has been followed in order to obtain the optimal state sequence x * 0 , x * 1 , ..., x * Nτ −1 , r * 0 , r * 1 , ..., r * Mτ −1 . For a given λ, g(x k+1 , r k+1 ) in Eqn. 10 can be defined as: Figure 3 represents the multi-level trellis for a 16 × 16 block of image (event) frame (N = 4), with a QT segmentation developed down to level 2 (n 0 = 4 × 4). In actual implementation, for a 512 × 512 frame, N = 9 and n 0 = 0. Each QT node has intensity QT nodes and event QT nodes, denoted by pink and blue color in Fig. 3, respectively. The transitions between the intensity QT nodes are shown in pink arrows while transition between the event QT nodes are shown in black dashed arrows. The number of nodes in the QT denotes the number of admissible states in the QT. Although there can be several nodes in the intensity QT and event QT nodes, for simplicity only 2 nodes are shown for the intensity QT (denoting skip/acquire modes) and 3 nodes in the event QT (denoting 3 candidate PDR values) at each node. The intensity rate r i (x k+1 ) for node x k+1 is further sub-divided as the sum of r seg (x k+1 ), r mode (x k+1 ) and r v (x k+1 ) which are the bit rate allocated for the segmentation, skip/acquire modes and values for the intensity pixels in the acquire mode, respectively. The distortion as described in Eqn. 1 can be described as the weighted average of the distortions at each leaf due to the intensity and event. In our previous work, [10], the distortion was used as the weighted distortion normalized over the area A i for each RoI. In this work, we add the weighted distortion on the events (with the weight parameter w e ) to the intensity distortion, that is, where, Ω is the set of differently weighted regions. The distortion for the intensity differs for the skip / acquire modalities in each leaf node as described in [10]. The distortion for the events in each leaf node is described by Eqn. 13. E org (i, j) and E dist (i, j) are the aggregated event counts in pixel (i, j) along the temporal axis for the original (undistorted) and distorted events, respectively. N bl,events are the QT blocks containing events. The aggregation step is done without accounting for the polarity of the events. Thus, event count takes into account both positive and negative events.
In order to operate the system at fixed bit rate (within certain tolerance), the λ value in Eqn. 4 is adjusted in each frame. The optimal λ * is computed by a convex search in the Bezier curve [45], which accelerates convergence. Figure 4 shows the computation on the host. The host receives from the chip QT, skip/acquire modes and values corresponding to the acquire modes at time t, denoted as S t , Q t and V t , respectively, along with compressed eventsê t . The reconstructed framef t is generated from S t , Q t , V t and the reconstructed framef t−1 at t − 1. The coded eventsê t are decoded asê t which is an event-frame representation, before further processing.ê t andf t are used for refining the edges in the reconstructed framef t to create the enhanced framê f edge t , which is then used for object detection and classification generating bounding boxes which are then fed to a Kalman filter based tracker. The eventsê t are additionally used to perform object detection and classification n times between times t and t + 1 before feeding them as observations to the Kalman filter-based tracker for generating bounding boxes every n timesteps between t and t + 1. At time t + 1, the predicted bounding boxes generated from the event based detections are fused with those from the intensity based detections to generate fused bounding boxes bb  1) Intensity based Processing: S t , Q t and V t are sent from the chip to the host at time t. The reconstructed framef t−1 at t − 1 is used along with S t , Q t and V t to reconstruct framê f t . Since the framef t is decomposed as QT blocks, it has block-like artifacts, clearly identifiable near the edges of the objects in the scene, especially at low bit rates, as shown in Fig. 5 (top left). In order to enhance the quality of the edges inf t , we use an event-based edge enhancement algorithm.

B. Host Computation
Event-based edge enhancement: The events are used to enhance the edges in intensity frames using a deep neural network model, as detailed in [46]. The last and current reconstructed framesf t−1 andf t along with the event frames between t−1 and t are fed as input to the model. In this work, 4 event frames are fed to the model, which has residual blocks along with convolutional layers. The resulting enhanced framê f edge t at time t has edges which closely resemble the actual ones. Figure 5 shows an example of the edge enhancement for a highly distorted frame. The distorted framef 82 has significant distortion (generated with λ = 650), with the letters clearly not distinctly seen on the side of the airplane. With events, the resultant enhanced frame has edges which are quite distinct. The letters written on the body of the airplane are also clearly readable, with the block-like artifacts significantly reduced. By looking carefully at the edge enhanced framê f edge t , it can be seen that the edges are preferentially enhanced especially on part of the image the events are concentrated at. Object Detection and Tracking on Intensity Frames: The regions of interest in the edge enhanced intensity framef edge t are detected by using an object detector on the host. In this architecture the object detector is a modular sub-system. It can be updated/replaced/augmented as per the requirements of the end application. In this work Faster R-CNN is used as the object detector, with the detector trained with a novel 2-step methodology as in our previous work [10]. The object detector generates bounding boxes with class labels, which are fed as input to an object tracker. Our modular design approach allows upgrading the object tracker as well. In this work, we use a Kalman filter-based multiple object tracker, simple online and realtime tracking [47] for its popularity and easy implementation, as used in our previous work [10]. The key adaptation from [47] is that, in our implementation, the tracker appends the class information of the objects, which is critical for fusing the regions of interest as described in III-B3. For every time t, the bounding boxes from the object detector are used as the observations for updating the state predicted by the Kalman tracker.
2) Event based object detection and tracking: The compressed events are sent from the chip to the host for further processing. On chip, the events are sampled and temporally quantized to generate event frames. The events are received by the host as data packets, which are then decoded by inverting the coding processes of run length and Huffman encoding. For the intensity frames at F i frames per second (fps), the events are aggregated into event frames at F e fps. Thus, the events during 1/F e seconds are aggregated together into event frames. Conversion of the events from asynchronous to synchronous event frames enables their frame-based processing.
On host, the events can be used to perform any task specific processing. In this work, object tracking is the end task to be performed. Hence, the events are used to improve object tracking performance. For fast moving objects, tracking of objects using intensity frames only leads to mis-detection of objects owing to blur and fewer frames are able to capture the object moving across the field of view. The event frames are used to circumvent such situations, and accurately detect and identify objects using an event based object detector. The event based object detector helps in not only locating and identifying the fast moving objects which move significantly during 1/F i seconds but also objects which disappear from the frame within 1/F i seconds. This improves the tracking accuracy of the objects over the sequence of frames. It must be kept in mind that any event based object detector can be used in our modular architecture for identifying objects from events. However, in this work, Tiny Yolo [37] has been used as the object detector on the aggregated event frames due to its lightweight architecture owing to fewer convolutional layers in the object detection network. It must be kept in mind that typically F e > F i . For instance, for 30 fps intensity frame rate, the aggregated event frame rate could be 120 fps (or higher) and hence the event based object detector needs to process many more event frames over the same duration. The requirement of having a light-weight event object detector architecture is hence vital. Fig. 6 show examples of airplane, car side and ferry detections on N-Caltech dataset [48] using this event object detector. It can be seen that the event detector is able to identify, detect and classify objects in both dense event frames Fig. 6 (b) (Car Side) as well as from relatively sparse event frames Fig. 6(a),(c).
The event object detector generates bounding boxes with class labels, which are used as input to the event object tracker. The class labels are appended for each of the bounding boxes tracked by the event tracker. We maintain a separate tracker for the objects detected from the event frames. This is due to the fact that the objects detected from intensity frames might be different from the objects detected from the event frames. Moreover the aggregated event frames are at a higher frame rate than the intensity frame rate. Thus the detection of objects from the event frames will be at a higher frame rate than intensity based detections. This will inherently introduce a mismatch in the rate of information received from each of the modalities to track objects in a scene.
The event based object tracker is a modular component of the whole architecture which can be replaced / updated based on the users' choice. In this work, we adapt the Kalman filterbased multiple object tracker, SORT [47] for object tracking similar to the implementation in intensity based object tracker in Section III-B1. The event tracker uses a linear motion model to predict the bounding box location in the event frameê t based on the state at time t−1+(N −1)/N . The observations are the bounding boxes detected by the event object detector at time t with the association of the observed and predicted bounding boxes done as described in Section III-B1. The Kalman filter predicts the location of the bounding boxes, bb   , respectively, are very critical for determining the resulting predicted bounding boxes before sending them to the chip. This is vital for the information being sent to the chip for prioritization of bits in the RoIs at time t + 1, in the Viterbi optimization algorithm.
The fusion model consists of two parts, bounding box filter module and bounding box fusion module. In the bounding box filter module, the features are first extracted for each bounding box predictions. Next, a fully connected neural network is constructed to predict the confidence score for each bounding box prediction based on these extracted features, which measures the probability of each bounding box predictions belonging to a ground truth bounding box and removes the bounding box predictions with low confidence score. Then, the bounding box fusion module utilizes a designed fusion mechanism to fuse the remaining bounding box predictions.
Bounding  (d) Aspect Ratio (AR): The AR of each class (example, Airplane) usually differs from another. AR, defined as ratio of height to width is chosen as a feature.
(e) Overlap Ratio (OR): OR is defined as the maximum Intersection over Union (IoU) between the target bounding box prediction and other bounding box predictions from the same source (intensity or events) as shown in Eqn. 14. High OR indicates that the probability of those two bounding box predictions containing the same object is high.
(f) Crowdedness Ratio (CR): The CR measures the crowdedness of each bounding box predictions from the same source. It is the number of the other bounding box prediction centers from the same source in the target bounding box regions.
(g) Support Value (SV): For a given bounding box from a particular source, if there exists a bounding box prediction from the other source and its IoU with the target bounding box prediction is greater or equal to threshold (0.7), the SV for the target bounding box prediction is 1. Otherwise, there is no bounding box prediction from the other source, and the SV is 0. If SV is greater than 0, we can find a correlated bounding box prediction from the other source, which means the intensity Kalman filter and event Kalman filter predictions detect the same object, and the probability of such bounding box prediction is relatively high.
After obtaining the feature vector for each predicted bounding box using the feature extractor, we construct a neural network with three fully connected layers to predict the confidence score of each bounding box predictions, which measures the probability of each bounding box predictions belonging to a ground truth. We utilize a predefined threshold (of 0.7) to filter out the bounding box predictions with low confidence score.
Bounding Box Fusion Module The filtered bounding box predictions is aligned with the non-filtered intensity Kalman filter and event Kalman filter predictions, and the maximum IoU value is computed. If the maximum IoU is greater than or equal to the threshold of 0.5, both Kalman filter predictions are considered to detect this filtered bounding box object, and, we have the option of utilizing three fusion strategies to fuse the Bounding Box predictions together: Intersection (bounding box as the intersection region), Union (bounding box as the union region), and, Confidence (bounding box as the one with highest confidence), as shown below in Fig.  8. Otherwise, if the maximum IoU value is less than 0.5, the filtered bounding box prediction is retained. Thus, we obtain the fused Bounding Box predictions. However, here we make use of the spatial information only. In order to exploit additional temporal information, we develop a post processing algorithm to filter out the false positive predictions. We assume the object movements during the successive frames to be relatively small, so the fused bounding box predictions in frame t is assumed to be correlated with the fused bounding box predictions in the previous frame t − 1. We compare the IoU value with all the fused Bounding Box predictions at frame t with those at frame t − 1. If the IoU is ≥ 0.5, the fused Bounding Box prediction at frame t follows the temporal correlation and we keep this Bounding Box prediction as the output. Otherwise, the fused bounding box predictions are a false positives, and are filter out. The workflow of the whole Fusion Model is shown in Fig. 9.

C. Synchronization and Timing Diagram
In this proposed system, the time synchronization of the different sub-processes need to be completed sequentially before the subsequent process can begin. The timing diagram is shown in Fig. 10. For every intensity frame at times t and t + 1, the events are acquired on the chip asynchronously. However, the Viterbi optimization algorithm starting at time t must be synchronized in such a way that the optimization can be performed on the frame acquired at time t, alongwith the events acquired on the chip between time t − 1 and t. The Viterbi optimization ends at time t + 1 − 3∆t and data is transferred from chip to host. The edge reconstruction computation on the host starts once the host receives the compressed intensity and event data, and generates enhanced framef edge t , at time t + 1 − 2∆t. The intensity based object detector operates on the enhanced intensity images and passes the bounding boxes to the intensity based Kalman Filter tracker as its observations. The intensity based Kalman Filter generates predicted bounding boxes for time t + 1,bb i t+1 at time t + 1 − ∆t. On the other hand, the event based object detector computes the bounding boxes and updates the event based Kalman filter tracker F e /F i times. This computation needs to be completed before time t + 1 − ∆t such that the fusion model can take the predicted intensity and event bounding boxes at time t + 1 − ∆t and finish computation at t + 1 such that the predicted bounding boxbb f use t+1 is available for the Viterbi optimization at t + 1 on the chip. It must be highlighted that for illustration purposes we have neglected the time required for transmission of data between the chip to the host and vice-versa. In practice, depending on the network congestion, some delay may be introduced which can lead to minor changes in the timing diagram of Fig. 10.

D. Peformance Evaluation Metric
The performance of the complete host-chip tracking system on resource-constrained chip device has been evaluated in terms of the Multiple Object Tracking Accuracy (MOTA) evaluation metric [49]. The MOTA metric is defined as where m t represents the number of missed detections, f p t the number of false positives, mme t the number of mismatch (track switching) errors, and, g t the number of ground truth objects, all at time t. A high M OT A score implies a high tracking accuracy of the objects and vice-versa.

A. Dataset
The proposed host-chip system requires intensity frames and asynchronous events from the same scene during evaluation. In order to do so, our framework requires intensity frames and events from the same dataset for training, validation and testing various parts of the system. The lack of large dataset for intensity and events is a key issue in literature, and we use abundantly available intensity datasets to generate events. We generate event data using Super SloMo algorithm [50] and ESIM [51] as in [52]. Our algorithm can work with any object detection and tracking video datasets with one or multiple classes of tracking objects. However, in this work, for illustration purposes, we use the Airplane, Watercraft and Car classes from the ImageNet (ILSVRC) VID dataset [53] to demonstrate results of our algorithm. A two-step approach is followed. Firstly, we interpolate the intensity to 240 fps using Super SloMo algorithm [50]. We use Super SloMo algorithm [50], since this popular algorithm allows intensity frame interpolation to any arbitrary frame rate. We choose an upsampling factor of around 8× as not being too high or too low. Too high of a factor may be a computational burden while too low of a factor might cause aliasing of the intensity signal [52]. Additionally, we also interpolate the bounding box annotations along with the class labels to 240 fps from the bounding boxes at the frame rate in the dataset (typically 25/30 fps). Secondly, we use event simulation ESIM [51] for generating events from the interpolated intensity frames, keeping positive and negative thresholds at 0.15. In this twostep process, interpolating of intensity frames is critical, as the event frames generated without interpolated frames tend to be quite "thick" and appears visually as artificial edges, while the event frames generated with frame interpolation are quite "thin", and appears visually to be close to the actual edges. Such a sample of an event frame is shown in Fig.  11. We show the experimental performance of the system by testing the model on these ILSVRC VID sequences: (i) a video of airplanes, ILSVRC2015 val 00007010.mp4; (ii) a video of watercraft, ILSVRC2015 val 00020006.mp4; and, (iii) a video of cars, ILSVRC2015 val 00144000.mp4, which we refer to as Airplane, Boat and Car sequences, respectively. The uncompressed bit rate considering the intensity frames only is 62.91 Mbps. We show the system performance by performing experiments at 1 Mbps and 1.5 Mbps, which results in compression ratios of 62.91 and 41.94, respectively.

B. Performance with and without Edge Enhancement only
In order to evaluate the contribution of the edge enhancement network in the overall system performance, we use the host-chip system with only edge enhancement without the use of events for object detection and tracking. We compare the system performance without edge enhancement. Original events have been used in these experiments with no distortion. The system performance metric (MOTA) is shown in Fig. 12. The pristine object detector trained with undistorted frames of ILSVRC VID dataset, as described in [10] is used as the base detector and edge enhanced intensity frames are detected using this pristine detector. Fig. 12 shows the system performance MOTA as a function of λ. A higher value of λ in Equation 4 implies higher distortion and lower bit rate. It is seen that for the pristine object detector with no edge enhancement, MOTA reduces as λ increases. We compare the edge enhancement results with the edge enhancement network trained by slightly two different event data: (a) event frames generated with simple intensity frame difference, and, (b) edge enhancement network trained on event frames generated using frame interpolation and ESIM successively as described in Section IV-A (referred to as Pristine Events and Pristine ESIM, respectively, in Fig. 12). The system is tested with actual events. Clearly, the edge enhancement improves system performance. Additionally, it is seen that the performance of the system with Pristine ESIM is better than Pristine Events for the airplane and car sequences than with the boat sequence. However, the MOTA metrics using Pristine Events and Pristine ESIM are comparable, with Pristine ESIM performing at least or as good as Pristine Events for 61% of the cases in the airplane, boat and car sequences. In the subsequent experiments, unless mentioned otherwise, we use the ESIM version of edge reconstruction network due to its better performance, in addition to the fact that the training and testing with event data are identical for ESIM edge reconstruction network.

C. Performance with Edge Enhancement at different bit rates
It is clearly seen from Section IV-B that edge enhancement improves the performance of the system especially for higher distortions. In this section, we compare the performance of the system at different bit rates, with Pristine and MixedU+ object detectors, which are trained with no distortion and using system generated distortions in a 2-step method respectively, as described in [10]. As in Section IV-B, we use the events only for edge reconstruction without object detection on the events and fusion network. We compare the MOTA metric for different bit rates as shown in Fig. 13. The % bit rate allocation of the intensity modality out of the total bit rate is varied from 10% to 100%, with the rest of the bit rate allocated for the events. The MOTA metric improves with the % bit rate being allocated to the intensity modality, thereby implying better performance of the system towards higher intensity bit rates. Additionally, the system performance is better with MixedU+ detector compared to the Pristine detector for almost all experimental test cases. Moreover, with increasing bit rate to 1.5 Mbps, system performance improves, especially at lower % allocated bit rates to the intensity modality, implying better system performance with more bits. For the airplane sequence, additional experiments have been carried out with 0.6 Mbps which confirm the trend. In the subsequent sections, the experiments are done with the MixedU+ object detector.

D. Performance with fusion network
It this section we evaluate the system performance of the events in object detection and tracking along with the fusion network in the system. The events are used to not only perform edge reconstruction as in Sections IV-B and IV-C, but also to detect and track objects from the event frames and fuse the information from the event and intensity modalities. In Fig. 14, the Original Fusion Model implies that the events are used only for edge enhancement, while the Updated Fusion Model implies that the events are used for edge enhancement, object detection, tracking and finally fusion. It is observed in Fig. 14 that the updated fusion network helps in improving the MOTA tracking performance of the system for all the allocated intensity bit rates as a fraction of the total bit rate of 1.5 Mbps. MixedU+ object detector [10] has been used in these experiments. It clearly shows that the events in the system help in improving the MOTA performance metric.

E. Performance comparison with joint distortion optimization
In this section, we compare the performance of the system with prefixed bit allocation for a particular bit rate and the joint optimal allocation of the bits for intensity and event modalities.
1) Variation of Bit Rates per frame: The variation of the fraction of the allocated bit rate for events out of the total bit rate over the frames is shown in Fig. 15. We compare the allocated fraction of bits for the events for two cases: (a) constant r, and, (b) variable r in Eqn. 4. For the constant r case, r 4 = 1, while for the variable r case, r 4 ∈ {1, 2, 3}. For both the constant and variable r cases, r 8 = 2r 4 , r 16 = 4r 4 , r 32 = 4r 4 , and so on for higher sized QT blocks. It is seen that the fraction of the bits allocated to the events is lower for the variable r case than the constant r case (shown as r = var and r = const in Fig. 15). This is primarily due to the fact that for the variable r case, the dynamic optimization can optimize over different r, hence providing better optimized bit rates.
2) Performance variation: Performance of the system in terms of MOTA is computed for pre-fixed allocated fraction of bit rate for the intensity out of the total bit rate, and compared with the MOTA for the system jointly optimized for the various bit rates using Eqn. 4. Both a constant and variable r are used in the joint optimization of the Intenisty-Event modalities. The results are shown in Fig. 16. Results of the jointly optimized system are shown as dashed lines, while the MOTA for the pre-fixed allocated bit rate is shown as solid lines.
Pre-fixed allocation of the bits between the intensity and event modalities are able to achieve slightly better MOTA than jointly optimized intensity and event bit rates. For the airplane sequence, the best MOTA is achieved for intensity:event bit rate ratio of 100:0, while for the car and boat sequences, the best MOTA is achieved for some other intensity:event bit rate ratio. The MOTA plots for the jointly optimized intensity-event modalities indicate that the system performance can reach close to the highest MOTA value (corresponding to the prefixed bit allocation). Moreover, the MOTA for the variable r cases has marginally higher values than for the fixed r cases for most of the experimental results. This is primarily due to the fact that the variable r has better optimized intensity-event split owing to relaxation in the optimization parameter space. Additionally, we can clearly see the trade-off between computational requirements and MOTA from the plots in Fig. 16. While the pre-fixed allocation of bits for the best MOTA has to be obtained by computing different intensity:events allocation ratios, for instance 50 : 50, 70 : 30, 90 : 10, 30 : 70, 10 : 90, in the joint optimization algorithm, the computation for allocating the bits has to be performed only once. Still, the jointly optimized intensity-events provide us with MOTA which is close to the best possible MOTA.

F. Performance Comparison with Varying Weights for Event Distortion
In this section, we show the results of experiments in which we vary the weight of the distortion, w e in Eqn. 12, for w e = 256, 500, 750 for variable r (r = var) as described in Section IV-E2. Figure 17 (a) and (b) shows the MOTA performance for the airplane sequence at 1.5 Mbps, and car sequence at 1 Mbps respectively. For w e = 500, the MOTA performance metric of the system is marginally better than for other w e values for most of the cases, as shown in Fig. 17. Similar improvement in MOTA is seen for these sequences at other bit rates as well. However, the MOTA improvement is not significant as it basically implies one or two fewer false positives. For instance, in the car sequence at 1 Mbps, the MOTA is 0.5883 at w e = 500, implying 2 fewer positives compared to w e = 750 for the same sequence with 107 frames. For this sequence each false positive increases or decreases the MOTA by 0.0025.

G. System performance with Different Event Compressions
In this section, we perform experiments by varying the search space of the parameter r, which is the PDR for event encoding in the joint intensity-event optimization algorithm. We compare the system performance by keeping r constant, and additionally varying r over 3 and 9 values in order to find out the optimal choice of r for maximizing MOTA. From Fig. 18, it is evident that the improvements in MOTA by increasing r from 3 to 9 is marginal for both the airplane and car sequences at 1 and 1.5 Mbps. Although, we increase the PDR r values such that a higher r would remove more events near the vicinity of each event, we constraint the PDR from removing events in the adjacent blocks of the QT.

H. Performance with Degraded and Actual Events
In this section we test the system performance with original and compressed events. The intensity bit rate is varied as a fraction of the total bit rate with the events used as original and compressed as shown in Fig. 19. For the compressed events, the bit rate is the remaining % of the bit rate after allocating the desired bit rate for intensity. For instance, when 70% bit rate is allocated to intensity, the compressed event bit rate is 30%. For majority of cases, the MOTA performance of the system for compressed events is better or the same as that of the performance with original undistorted events. It must be noted that the event based processing networks: the edge enhancement network and the event object detector have been trained on original events only. However, the results, indicate that training these networks with compressed events is not essential from the system performance point of view. This is an interesting observation. We reason that this behavior is due to the fact that the interpolated ILSVRC VID frames have both small and large motion of the objects and scene, which results in generation of dense and sparse events using ESIM [51]. The compression step is in a way a sparsifying step, which results in sparse events with similar characteristics to the events generated from the interpolated ILSVRC VID dataset.

I. Experiments with blurry sequences
It is evident in literature such as [42], [43] that events are quite essential during processing of blurred and/or high speed motion. We perform experiments with blurred sequences using the car drifting sequence from publicly available Need for Speed (NFS) dataset [54], which contains frames at 240 fps and motion blurred frames at 30 fps. In order to generate events, we first interpolate frames to 960 fps using Super SloMo [50], while we generate events from these frames using ESIM [51]. The blurred frames and events are used for testing. The maximum MOTA for the system is at intensity : event bit rate allocation of 90 : 10 of the bit rate at 1.5 Mbps as shown in Fig. 20. The jointly optimized intensity-event modality has been done with variable r over 9 possible candidate values with event distortion weight w e = 500. The MOTA for the jointly optimized intensity-event is approximately 80% of the maximum MOTA achieved with pre-fixed allocated bit rate.

V. DISCUSSION
The MOTA metric primarily indicates the tracking performance of this system. We have shown the system performance in terms of MOTA with and without events. The improvement of MOTA is dependent on the sequence and the operating bit rate. For instance, at low bit rates the events contribute more towards improving the MOTA score. On the other hand, at high bit rates, events do not seem to make a difference. For blurry sequences, the events contribute in improving the MOTA score. Additionally, it is observed that with pre-fixed allocated intensity and event bit rates, the MOTA performance  of the system reaches its maximum value. In our experiments, the joint allocation of bits based on distortion between the intensity and event modalities provide us with MOTA score which is close to the maximum value but still does not provide the highest possible MOTA value. This is due to the fact that we jointly optimize for the rate-distortion trade-off between the intensity and event modalities and not directly between the rate and MOTA trade-off. The experiments do not establish a linear relation between distortion and MOTA values. Higher distortion does not necessarily indicate a lower MOTA score. Secondly, due to the lower computational power available on the chip, the MOTA metric cannot be computed on the chip, and therefore we resort to computing rate-distortion optimization on it. Additionally, the camera motion in the scene generates several background events which can lead to the joint optimization of the intensity-event to converge to a different point than without scene motion. This is particularly evident in the car drifting sequence, as shown in Section IV-I. Nevertheless, despite these shortcomings, the MOTA score from jointly optimized event-intensity bit rate is close to the maximum MOTA obtained from the pre-fixed bit rate allocation. The joint optimization allows for the use of a less computationally powerful chip compared to the one required for generating distorted data with different pre-fixed intensity:event ratios.

VI. CONCLUSIONS
This paper proposes a novel tracking algorithm using the intensity and event modalities for a computationally constrained chip device. A novel intensity -event joint dynamic optimization framework is proposed which minimizes the ratedistortion equation jointly. The distorted events and intensity frames are used on the host for object tracking which is evaluated using the MOTA metric. Tracking and detection of objects are done in the intensity and event mode separately before they are fused together in a late fusion strategy. The events are also used for edge enhancement of the distorted intensity frames. The paper provides an in-depth study of the different system parameters, ablation studies, and comparison of joint bit allocation and pre-fixed allocation of intensity and event modalities.