{'fraction_non_alphanumeric': 0.017013232514177693, 'fraction_numerical': 0.002520478890989288, 'mean_word_length': 4.947565543071161, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
Object based video with progressive foreground

A novel algorithm is described for coding objects in video compression systems which gives complete control over the bit allocation to the video objects. The method is evaluated by application to a two layer codec, with background and foreground objects. Images in a sequence are divided into macroblocks, which are compared to a stored background model. Those whose mean square difference (MSD) exceeds a noise threshold are considered as foreground, and may be split into successively finer partitions described by a quadtree data structure. This defines more precisely the outline of the foreground object within each macroblock and gives a set of microblocks of variable size. The microblocks are transformed by the 2D DCT, and the DCT coefficients are coded bitplane by bitplane over the selected object using a zigzag masked (ZZM) technique. For robustness, data is then transmitted macroblock by macroblock, and intraframe or interframe coding of blocks can be selected adaptively at frame, macroblock or microblock level. The scheme is designed to stop sending bits when a certain bit allocation or PSNR is reached for any object, leading to fully controllable bit rates. The relationship between the average PSNR of the sequence and the average bits per pixel in a frame shows that the codec gives good performance over a range of peak bit rates from 0.1 bpp to 1 bpp. Over the whole range, the quality of the reconstructed sequence is significantly better than 'motion JPEG', while the codec is much simpler and faster than MPEG.