FPGA Implementation of an Anonymization Algorithm
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.
AT THIS PAGE YOU CAN DOWNLOAD THE WHOLE ESSAY. (follow the link to the next page)