Skip to main content

LUP Student Papers

LUND UNIVERSITY LIBRARIES

FPGA Implementation of an Anonymization Algorithm

Kjellman, Niklas LU and Tarannum, Rehenuma (2020) EITM01 20201
Department of Electrical and Information Technology
Abstract
With the large amount of surveillance cameras in our public spaces there has been much discussion about their effects on privacy.
Axis communications has an algorithm that tries to remedy this by making it hard to see who is in an image but still have it possible for a neural network to detect that there is a person present. This thesis explores how this algorithm needs to be adapted to be implementable on an FPGA that operates on the image stream directly from the sensor. Resulting in an anonymization that is much harder to turn off or bypass. The anonymization is performed by blurring the image with a box filter and edges are highlighted with a Sobel operator. These operations is performed in parallel and the edges from the Sobel... (More)
With the large amount of surveillance cameras in our public spaces there has been much discussion about their effects on privacy.
Axis communications has an algorithm that tries to remedy this by making it hard to see who is in an image but still have it possible for a neural network to detect that there is a person present. This thesis explores how this algorithm needs to be adapted to be implementable on an FPGA that operates on the image stream directly from the sensor. Resulting in an anonymization that is much harder to turn off or bypass. The anonymization is performed by blurring the image with a box filter and edges are highlighted with a Sobel operator. These operations is performed in parallel and the edges from the Sobel operator is overlaid the blurred image from the box filter. The alterations made to the algorithm is tested in regards to how they affect the performance of Axis communications person detector.

The detector requires the images to look similar to the result from the reference algorithm. The implementation then need to replicate parts of the Image Processing pipeline in the camera system and its inverse. This is done by adding a demosaic and remosaic stage before and after the algorithm, so that both the in and out image is on Bayer form but the anonymization is performed on images in RGB form. The change from floating point calculations to fixed point arithmetic is also done to improve how implementable the design would be and to reduce area consumption. Down sampling is suggested and implemented, to reduce the size of the largest block the box filter. The amount of decimal points needed in the overlaying stage is also tested and the block is simplified. The problem of not retraining the detector is discussed and some solution that could improve hardware utilization without loosing detector performance is suggested. (Less)
Popular Abstract
Despite of the wide use of surveillance camera for security purpose, over the time it has turned more controversial as a threat to privacy. If a privacy breach is abused it can even threaten people's security.

In our daily life we are constantly close to a camera. We use them in our phones and laptops to communicate and record memories, or in the watchful eye of a surveillance cameras to improve our security. In recent years a new usage of cameras have been popularized, where they are used as sensors in a computer-vision system. These can for instance, be used for counting the lengths of queues or detecting how many people enters and exits a room. With these sensor cameras, however, it is not always strictly necessary to be able to... (More)
Despite of the wide use of surveillance camera for security purpose, over the time it has turned more controversial as a threat to privacy. If a privacy breach is abused it can even threaten people's security.

In our daily life we are constantly close to a camera. We use them in our phones and laptops to communicate and record memories, or in the watchful eye of a surveillance cameras to improve our security. In recent years a new usage of cameras have been popularized, where they are used as sensors in a computer-vision system. These can for instance, be used for counting the lengths of queues or detecting how many people enters and exits a room. With these sensor cameras, however, it is not always strictly necessary to be able to recognize a person, instead only to observe their presence. This thesis have aimed to improve and safeguard the privacy of the people being observed, the video stream from the camera is anonymized, which signifies the removal of details and feature of the person. This was done by blurring the entire image in the stream and re-highlighting the strongest edges. The blur is performing the anonymization by hiding the finer features of a person. The edges is re-highlighted to make it easier for a computer vision system to detect a person. This idea was implemented on an FPGA. An FPGA is a Digital hardware circuit and is therefore harder to re-configure compared to if it was implemented in software. The FPGA implementation is therefore a stronger anonymization, that people can trust as it will be hard to deactivate. This have the benefit of making it easier to have a computer vision system that complies with the European GDPR law, or that would make it more likely to get the required permissions to install a stationary camera.
When developing the anonymization filter it was discovered that the filter that adds the blur is a very large operation and requires a lot of hardware to be implemented. The level of blurring and the width of the image was the factor that scaled the hardware utilization the most. A solution for this, is to perform downsampling around the block. Downsampling is a method were the number of data points are reduced. The amount of hardware reduction was proportional to fraction of an image that was skipped. (Less)
Please use this url to cite or link to this publication:
author
Kjellman, Niklas LU and Tarannum, Rehenuma
supervisor
organization
course
EITM01 20201
year
type
H2 - Master's Degree (Two Years)
subject
keywords
FPGA anonymization privacy anonymization filter spacial filter
report number
LU/LTH-EIT 2020-777
language
English
id
9024402
date added to LUP
2020-08-18 16:04:14
date last changed
2020-08-18 16:04:14
@misc{9024402,
  abstract     = {{With the large amount of surveillance cameras in our public spaces there has been much discussion about their effects on privacy. 
Axis communications has an algorithm that tries to remedy this by making it hard to see who is in an image but still have it possible for a neural network to detect that there is a person present. This thesis explores how this algorithm needs to be adapted to be implementable on an FPGA that operates on the image stream directly from the sensor. Resulting in an anonymization that is much harder to turn off or bypass. The anonymization is performed by blurring the image with a box filter and edges are highlighted with a Sobel operator. These operations is performed in parallel and the edges from the Sobel operator is overlaid the blurred image from the box filter. The alterations made to the algorithm is tested in regards to how they affect the performance of Axis communications person detector.

The detector requires the images to look similar to the result from the reference algorithm. The implementation then need to replicate parts of the Image Processing pipeline in the camera system and its inverse. This is done by adding a demosaic and remosaic stage before and after the algorithm, so that both the in and out image is on Bayer form but the anonymization is performed on images in RGB form. The change from floating point calculations to fixed point arithmetic is also done to improve how implementable the design would be and to reduce area consumption. Down sampling is suggested and implemented, to reduce the size of the largest block the box filter. The amount of decimal points needed in the overlaying stage is also tested and the block is simplified. The problem of not retraining the detector is discussed and some solution that could improve hardware utilization without loosing detector performance is suggested.}},
  author       = {{Kjellman, Niklas and Tarannum, Rehenuma}},
  language     = {{eng}},
  note         = {{Student Paper}},
  title        = {{FPGA Implementation of an Anonymization Algorithm}},
  year         = {{2020}},
}