Andrea Frome, German Cheung, Ahmad Abdulkader, Marco Zennaro, Bo Wu,
Alessandro Bissacco, Hartwig Adam, Hartmut Neven, Luc Vincent,
"Large-scale Privacy Protection in Google Street View",
12th IEEE International Conference on Computer Vision, Kyoto, 2009.
The last two years have witnessed the introduction and rapid expansion of
products based upon large, systematically-gathered, street-level image
collections, such as Google Street View, EveryScape, and Mapjack. In the
process of gathering images of public spaces, these projects also capture
license plates, faces, and other information considered sensitive from a
privacy standpoint. In this work, we present a system that addresses the
challenge of automatically detecting and blurring faces and license
plates for the purpose of privacy protection in Google Street View. Though
some in the field would claim face detection is “solved”, we show that
state-of-the-art face detectors alone are not sufficient to achieve the
recall desired for large-scale privacy protection. In this paper we
present a system that combines a standard sliding-window detector tuned
for a high recall, low-precision operating point with a fast post-processing
stage that is able to remove additional false positives by incorporating
domain-specific information not available to the sliding-window detector.
Using a completely automatic system, we are able to sufficiently blur more
than 89% of faces and 94 – 96% of license plates in evaluation sets sampled
from Google Street View imagery.
Joshua Love, Jerry Jariyasunant, Eloi Pereira, Marco Zennaro, Karl Hedrick,
Christoph Kirsch, Raja Sengupta,
"CSL: A Language to Specify and Re-specify Mobile Sensor Network Behaviors",
RTAS, pp.67-76, 2009 15th IEEE Real-Time and Embedded Technology and Applications Symposium, 2009.
The Collaborative Sensing Language (CSL) is a high-level feedback control
language for mobile sensor networks (MSN). It specifies MSN controllers
to accomplish network objectives with a dynamically changing ad-hoc resource
Furthermore, CSL is designed to allow the updating of controllers
during execution (patching). This enables hierarchical control
with simpler controllers at lower levels. The CSL Execution
Engine contains the intelligence to allocate resources to tasks
dynamically and adjust in real time to resource motion, this
enables CSL controllers to be simple, intuitive and scalable.
Experimental results show that the CSL Execution Engine
performs these services with the addition of very little overhead.
Marco Zennaro, Raja Sengupta,
"CHAL - Control logic / hardware abstraction layer",
University of California at Berkeley, Center for Future Urban Transport, UCB-ITS-VWP-2007-6, October 2007.
Traffic control systems have reached a high level of sophistication: they are general purpose machines that can, in principle, run any traffic control software. The firmware they are running turns them into special purpose machines able to operate only according to some pre-defined rules. The firmware usually allows limited customizations through parameters, but it does not support the introduction of new control schemes. As a result, implementing a new traffic control scheme requires the re-implementation of the firmware, a complex task given the low-level programming required. The complexity of the task has created a rift between the academic community and the roadside equipment manufacturers’ community. As a result, the traffic control firmware does not benefit from the work and novel ideas of the academic community and it is often suboptimal when it comes to issue of interoperability, integration and cost-effectiveness. At the same time the efforts of the academic research are often wasted by an incorrect understanding of the underlying system: many sophisticated control schemes proposed by the researcher are never used because they are not implementable over the existing hardware. This paper introduces a software suite, the Tools for the development of Traffic Control Systems (TTCS), meant to bridge the gap between these two communities. The key concept is the introduction of the Control logic / Hardware Abstraction Layer (CHAL) between the control logic and the hardware, reducing the complexity of developing a new traffic control scheme. It enables the control designer to re-use the code developed in the design, testing and simulation phases directly on the traffic controller. Conforming to the CHAL architecture ensures that the design is implementable over the target hardware. Moreover CHAL decouples the control logic and the hardware (ensuring software portability), easing both hardware and software upgrades (avoiding the need to update the software when the hw changes and vice versa). A software library for the integration of Quadstone Paramics 5.4 into the CHAL architecture is presented.
Raja Sengupta, Marco Zennaro,
"Embedded Computing: Enabling Control in Surface Transportation",
Proceedings of the VREF Workshop, IIT Delhi, Agra, India, 2007
Marco Zennaro, Raja Sengupta,
"Modular Composition of Synchronous Programs: Applications to Traffic Signal Control ",
University of California at Berkeley, Intelligent Transportation Studies, UCB-ITS-VWP-2006-1, June 2006
This paper describes a modular compilation scheme for distributed synchronous programming. The approach
is first described mathematically and then implemented as a library to distribute Simulink (59). Application
of the scheme is illustrated by developing a control system to coordinate traffic signals.
The purpose of the research is to advance programming tools for control of large networked systems. For
example, USDOT’s Vehicle Infrastructure Integration Initiative (54) is rolling out an ad-hoc wireless infrastructure
to create the networked roadway. This will enable distributed operation of the traffic control
infrastructure. Hence our study of the signal controls application. Typically, these are large-scale systems
with a centralized computing architecture controlling thousands of devices connected to a traffic management
center over leased telephone lines. For example, the LADOT ATCS system integrates 1300 signals and multiple
changeable message signs. The Caltrans I-5/I-405 freeway management system integrates a vast sensor
system containing thousands of inductive loops and hundreds of cameras (49). Other areas familiar to the
authors that motivate this paper are control for collaborating unmanned air vehicle systems (43) and roadside
vehicle systems for crash avoidance (50). The control engineers working on these systems are almost always
familiar with Simulink and typically write the first compilable specification of control in the language. We
try to extend Simulink through the compilation scheme in this paper to program networked control systems
because it is well established as a high-level specification language in the control community.
Jack Tisdale, Allison Ryan, Marco Zennaro, Xiao Xiao, Dick Caveney, Sivakumar Rathinam, Raja Sengupta, Karl Hedrick
"The Software Architecture of the Berkeley UAV Platform",
IEEE Control Systems Society Conference, 2006
This paper details the software architecture of the Berkeley unmanned
aerial vehicle (UAV) platform. Developed over the course of three years,
this platform has successfully demonstrated autonomous vision-based navigation
and obstacle avoidance. A software architecture has been developed to allow
for collaborative control concepts to be examined. This modular architecture
has been shown to be effective for use in allowing a team of UAVs to
collaboratively perform a set of missions. The performance of the
architecture was demonstrated using 3 UAVs to perform autonomous collaborative
patrolling and vision-based navigation.
Allison Ryan, Xiao Xiao, Sivakumar Rathinam, Jack Tisdale, Marco Zennaro, Dick Caveney, Raja Sengupta, Karl Hedrick
"A modular software infrastructure for distributed control of collaborating UAVs",
Proceedings of the AIAA Conference on Guidance, Navigation, and Control, Keystone, CO, 2006.
Collaborating unmanned aerial vehicles can efficiently perform surveillance, mapping,
and other tasks without human risk. Currently deployed unmanned aerial vehicles demonstrate
a need for increased autonomy and cooperation. We present a software architecture
and UAV hardware platform that have demonstrated single-user control of a fleet of aircraft,
distributed task assignment, and vision-based navigation. This is the only such
system known to the authors to have demonstrated in-the-air task allocation and collaboration.
A modular software infrastructure has been developed to coordinate distributed control,
communications, and vision-based control. Along with the onboard control architecture, a
set of user interfaces has been developed to allow a single user to efficiently control the fleet
of aircraft. Distributed and vision-based control are enabled by powerful onboard computing
capability and an aircraft-to-aircraft ad-hoc wireless network. Custom modifications to
the Sig Rascal airframe were required to support this capability.
We describe original elements of the system that provide unique capabilities for collaboration,
followed by results of a milestone flight demonstration of three collaborating
Marco Zennaro, Raja Sengupta, "Distributing Synchronous Programs Using Bounded Queues",
5th ACM International Conference on Embedded Software (EMSOFT'05), December 2005
This paper is about the modular compilation and distribution of a sub-class of
Simulink programs across networks using bounded FIFO queues. The problem
is first addressed mathematically. Then, based on these formal results,
a software library for the modular compilation and distribution of Simulink
programs is given. The performance of the library is given. The value of
synchronous programming for the next generation of traffic control is discussed.
The adoption of these tools seems to be the natural candidate to address the
needs of traffic engineers. As a case study we present an implementation in
Simulink of a controller for coordinated traffic signals in an asymmetric peak
hour traffic scenario and we evaluate its computational performance in a
Marco Zennaro, Raja Sengupta,
"Distributing Synchronous Programs Using Bounded Queues, a coordinated traffic signal application",
University of California at Berkeley, Intelligent Transportation Studies, UCB-ITS-RR-2005-4, May 2005
This paper is about the modular compilation and distribution of a sub-class of Simulink programs across
networks using bounded FIFO queues. The problem is first addressed mathematically. Then, based on these formal
results, a software library for the modular compilation and distribution of Simulink program is given. The performance
the library is given. The value of synchronous programming for the next generation of traffic control value is discussed.
The adoption of these tools seems to be the natural candidate to address the needs of the traffic engineers. As a case
study we present an implementation in Simulink of a controller for coordinated traffic signal in an asymmetric peak
hour traffic scenario and we evaluate its computational performances in a distributed environment.
Marco Zennaro, Raja Sengupta,
"Distributing Synchronous Systems with Modular Structure",
IEEE 2004 44th Conference on Decision and Control, December 2004
Synchronous Programs were introduced to simplify
the development of reactive systems hiding the complexity
and indeterminism of the interleaving while taking
full advantage of possible concurrency. The introduction of
communication networks enabled the creation of distributed
systems presenting to the programmer with a new burden
of interleaving and indeterminism due to the asynchronous
communication medium. Again this complexity should be
hidden from the user while taking full advantage of the possible
concurrency to improve performances. Many algorithms
have been proposed so far for the automatic distributions of
synchronous programs but they are not suitable for large scale
system because they do not preserve the compositionality of
the original code: the modularity of the synchronous program
is lost. As a result the subsystems are not re-usable and
a small local change results in the recompilation and redistribution
of the overall system. This solution is cumbersome
and unpractical in many real-world applications. In this paper
we introduce an algorithm for the distribution of synchronous
programs that preserve the modularity and allow separate
compilation and subsystem re-use.
Allison Ryan, Marco Zennaro, Adam Howell, Raja Sengupta, Karl Hedrick,
"An overview of emerging results in cooperative UAV control",
IEEE 2004 44th Conference on Decision and Control, December 2004
Inexpensive fixed wing UAV are increasingly useful in remote sensing operations. They are a cheaper alternative to manned vehicles, and are ideally suited for dangerous or monotonous missions that would be inadvisable for a human pilot. Groups of UAV are of special interest for their abilities to coordinate simultaneous coverage of large areas, or cooperate to achieve goals such as mapping. Cooperation and coordination in UAV groups also allows increasingly large numbers of aircraft to be operated by a single user. Specific applications under consideration for groups of cooperating UAV are border patrol, search and rescue, surveillance, communications relaying, and mapping of hostile territory. The capabilities of small UAV continue to grow with advances in wireless communications and computing power. Accordingly, research topics in cooperative UAV control include efficient computer vision for real-time navigation and networked computing and communication strategies for distributed control, as well as traditional aircraft-related topics such as collision avoidance and formation flight. Emerging results in cooperative UAV control are presented via discussion of these topics, including particular requirements, challenges, and some promising strategies relating to each area. Case studies from a variety of programs highlight specific solutions and recent results, ranging from pure simulation to control of multiple UAV. This wide range of case studies serves as an overview of current problems of Interest, and does not present every relevant result.
Sivakumar Rathinam, Marco Zennaro, Tony Mak, Raja Sengupta,
"An architecture for UAV team control",
IAV Conference, IFAC symposium on intelligent autonomous vehicles, 2004
Recent years has seen a widespread interest in the use of Unmanned aircraft
vehicles for military applications. These UAV's can be used in many applications
such as surveillance, information gathering, suppression of enemy defenses,
air to air combat, mapping building and facilities etc. In this paper, we
present an architecture with the necessary algorithms that we have
implemented to control a team of UAVs to search for targets such as SAMs,
ground troops, artillery, tanks etc in a given region.
Lee, Huang, Vaughn, Xiao Xiao, Karl Hedrick, Marco Zennaro, Raja Sengupta,
"Startegies of Path-Planning for a UAV to Track a Ground Vehicle", AINS Conference 2003
In this paper, we present a strategy of path-planning
for an unmanned aerial vehicle (UAV) to follow a ground vehicle.
The ground vehicle may change its heading and vary its speed
from a standstill up to the velocity of the UAV, while the UAV
will maintain a fixed airspeed and will maneuver itself to track
the ground vehicle. The algorithm also allows the UAV to track
the ground vehicle with an offset vector (i.e. the user may wish
the UAV to stay ahead of the ground vehicle or to its sides). Since
the ground vehicle may operate in a range of velocities, the
algorithm must plan the UAV’s path with the appropriate
schemes for the various ground vehicle speeds. The natural effect
of wind injects a disturbance into the system, and so wind
compensation techniques had to be developed. In order to
maintain the focus of this project on path-planning strategies, the
path-planning algorithm was implemented on top of a system that
already controls the dynamics of the UAV. Simulation of aircraft
and ground vehicles was performed with a hardware-in-the-loop
simulation environment to test for mission feasibility. After
attaining satisfactory simulation results, an experiment was
conducted to confirm the path-planning strategy.
Tony Mak, Paul Xu, Marco Zennaro,
"Wireless Communication Enabling Technologies for Intersection Decision Support System", PATH Report 2003
Marco Zennaro, Jim Misener,
"A State Map Architecture for Safe Intelligent Intersections",
ITS America 2003 13th annual meeting, May 2003
The frequency and the severity of the crashes at intersections as well as the introduction
of new cheap and precise sensing and communication technology led to the development
of new smart safety systems at intersection. Any such system must have an architecture
in order to work; moreover, to work generally, with a variety of alignments, traffic
conditions and traffic types, the need for such an architecture is paramount.
In this paper we introduce a system architecture general enough to encompass all
intersection collision warning and gap advisory scenarios. We propose to use our
architecture along with standardization of the subsystem interfaces in order to achieve
efficiency, fast design and development, high subsystem reusability and high
The kernel of the proposed architecture is a “State Map”, a data base of knowledge of all
the dynamic components within and, to a reasonable range, approaching the intersection.
A “state map generator” processes the inputs from a heterogeneous set of sensors into a
standardized “state map”. The introduction of this subsystem makes faster and easier the
development of safety application programs. At the same time it makes easier to reuse
and upgrade applications.
Marco Zennaro, Jeff Ko, Raja Sengupta, Stavros Tripakis
"A service network architecture for a multivehicle search mission",
IEEE 2001 40th Conference on Decision and Control, December 2001
Multi-vehicle applications rely on the dynamic allocation of resources, and must exhibit robustness to failures or to service degradation in general. We present a model for such applications, called the service network model. The entities of this model are services and service providers. Services are defined by standard names and interfaces, and are described by attributes. Service providers export services with certain quality of service guarantees. They may also need to import services from other providers. An application is modeled as a directed graph, where nodes represent service providers and edges represent services imported by the source node and exported by the destination node. The problem is then to build such application graphs dynamically. We provide a middleware and an algorithm that solves the above problem. Functions of the middleware include publishing, finding and using service providers, as well as completing an incomplete application graph with the missing services. We illustrate our approach with a case study involving a multi-vehicle search mission.
Marco Zennaro, "Corso introduttivo a Realpix", Extensible.it 2003
Marco Zennaro, "Corso introduttivo a Realtext", Extensible.it 2003
Marco Zennaro, "I principi di funzionamento di SMIL", Extensible.it 2003
Marco Zennaro, "La storia di SMIL", Extensible.it 2003