##
**Multimedia Data Compression Techniques research papers 2020/2021**

**Welcome Dears, In light of the pandemic that the whole world has gone through, many or most countries have decided to suspend studies and to replace evaluation with research instead of exams. So, Today We give you an Multimedia research papers that maybe help you in your study.**

This research was prepared by me; [Mostafa Fawzi (CSI,Egypt)]

This research was prepared by me; [Mostafa Fawzi (CSI,Egypt)]

###
**Abstract**

**Based on what has been studied and the research requirements, and moreover the importance of studying Multimedia Subject, So the research seeks to highlight in general on data compression techniques, including a review kind of data compression techniques. The community generally uses data compression because we can save storage through compression. Compression of data may also accelerate data transfers between individuals. A compression method that can be used requires a compression method, which can then be used for compressing a data, Data that not only compress text, but also images and video can be compressed. The compression technique for data is divided into 2 called loss-free compression, But often used to compress without loss of compression, The ability of each method to make a different compression is different, This paper describes how a compression method works and which method is good for the compression of data in text, A compression file size, less than the original file, can be used to know the output generated.**

###
**Introduction**

**With the rapid development of software and hardware technology that increasingly facilitates the world's wide knowledge through the Internet, For information technology experts, knowledge gathered can be easily forwarded through the Internet as a communication medium, Both knowledge cannot, however, be easily submitted. There is a large volume that can quickly prevent data transfer and save existing storage on the computer. A compression to save storage and transmission of data can be quickly performed to overcome the problem of information or information to be transmitted and transmitted, Compression is the method of transforming a collection of data into a language to help save data storage and data transmission.**

**Moreover, today libraries, museums, film studios and governments turn more and more data and collected materials into digital formats. This is the latest evolution of multimedia technology. All data will also be stored without loss ( e.g. precious books and paintings). The sole problem is that this "great idea" requires too much of it. In addition, many coding techniques reduce the total number of bits required for the above information effectively. The system in question is usually called compression.**

**Figure 1 depicts a general data compression scheme, in which compression is performed by an encoder and decompression is performed by a decoder.**

###
**Basics of Information Theory**

**According to Shannon, the entropy of an information source S is defined as:**

**Indicates the amount of information contained in Si, i.e., the number of bits needed to code S_i .**

**For instance, in a picture with uniform distribution of gray-level intensity,**

**i.e. p_i= 1/256, then the number of bits needed to code each gray level is 8 bits.**

**The entropy of this image is 8. [1 ,2]**

**The more entropy the greater the disturbances in science, the greater the entropy. Normally we add negative entropy to a system if we give it more order.**

**First of all, we sorted a deck of the card. We send 1 bit of information to the cart system and pass 1 bit of negative entropy to the card deck for each swap decision or not.**

**In relation to the Entropy definition, symbols in the data stream are marked as appropriate candidates for a short codeword in the compact bit stream.**

**As already mentioned, for entropy coding we are using a vector coding system with regular symbols that easily include codes that seldom have longer codes.**

###
**Run-Length Coding**

**Instead of accepting a lower source memory, run-length encoding (RLC) exploits the information source memory. This is probably the least complex datum pressure structures. The major rule is that if the wellspring of data we need to smaller has the property that images will in general structure constant gatherings, at that point one image and the length of the gathering can be coded as opposed to coding every image independently inside the gathering.**

**Consider, for instance, a bipicenter picture, of tedious areas like a FX (one with just 1-piece highly contrasting pixels). This data source can be successfully encoded with run-length coding. Furthermore, we don't need to code any image toward the beginning of each run since just two images exist. Or maybe, we can expect that the beginning run is consistently a specific shading (both high contrast) and that the length of each run is basically code.**

**The above definition is a one-dimensional coding calculation for running. A two-dimensional variation for encoding bi-level pictures is normally utilized. This calculation utilizes the information in the last line to speak to the execution in the current line.**

**Variable-Length Coding**

**As the entropy shows the information quality of the information source S, it refers to a class of coding methods usually known as entropy coding methods. As described above, variable-length coding (VLC) is one of the best known methods of this kind. Here, we 're going to research the Shannon – Fano algorithm, Huffman coding. [3]**

####
**5.1 Shannon–Fano Algorithm**

**This is a basic information theoretic algorithm.A basic model will be utilized to show the calculation:**

**Symbol A B C D E**

**----------------------------------**

**Count 15 7 6 6 5**

**Encoding for the Shannon-Fano Algorithm:**

**A top-down approach**

**1. Sort symbols according to their frequencies/probabilities, e.g., ABCDE.**

**2. Recursively separate into two sections, each with approx. same number of tallies.**

**Symbol Count log(1/p) Code Subtotal (# of bits)**

**------ ----- -------- --------- --------------------**

**A 15 1.38 00 30**

**B 7 2.48 01 14**

**C 6 2.70 10 12**

**D 6 2.70 110 18**

**E 5 2.96 111 15**

**TOTAL (# of bits): 89**

**The encoding steps of the Shannon–Fano calculation can be introduced in the accompanying top-down way:**

**1. Sort the images as per the recurrence tally of their events.**

**2. Recursively partitions the images into two sections, each with roughly a similar number of tallies, until all parts contain just a single image.**

**A natural way of implementing the above procedure is to build a binary tree.**

**As a show, let us allocate bit 0 to one side branches and 1 to the correct branches. At first, the images are arranged as LHEO.**

**As the following Fig shows, the first division yields two parts: L with a count of 2, denoted as L:(2); and H, E and O with a total count of 3, denoted as H, E, O:(3). The second division yields H:(1) and E, O:(2). [1, 4]**

####
**5.2 Huffman Coding**

**Huffman coding depends on the recurrence of event of an information thing (pixel in pictures). The guideline is to utilize a lower number of pieces to encode the information that happens all the more regularly. Codes are taken care of in a Code Book which may be produced for each image or a great deal of pictures. In all cases the code book notwithstanding encoded data must be sent to engage unraveling. [1, 5]**

**The Huffman algorithm is presently quickly summed up:**

**1. Initialization: Put all nodes in an OPEN list, keep it sorted at all times (e.g., ABCDE).**

**2. Repeat until the OPEN list has only one node left:**

**From OPEN pick two nodes having the lowest frequencies/probabilities, create a parent node of them.**

**Place the parent node into the OPEN and add the number of the child frequencies / chances.**

**Assign code 0, 1 to the two branches of the tree, and delete the children from OPEN**

**Symbol Count log(1/p) Code Subtotal (# of bits)**

**------ ----- -------- --------- --------------------**

**A 15 1.38 0 15**

**B 7 2.48 100 21**

**C 6 2.70 101 18**

**D 6 2.70 110 18**

**E 5 2.96 111 15**

**TOTAL (# of bits): 87**

**The following points are worth noting about the above algorithm:**

**Decoding for the above two algorithms is trivial as long as the coding table (the statistics) is sent before the data.**

**Unique Prefix Property: no code is a prefix to any other code (all symbols are at the leaf nodes) -> great for decoder, unambiguous.**

**on the off chance that earlier insights are accessible and exact, at that point huffman coding is excellent.**

**In that example the Number of bits needed for Huffman Coding is: 87 / 39 = 2.23**

###
**Dictionary-Based Coding**

**A dictionary compression technique adaptive is used in the Lempel Ziv-Welch (LZW) algorithm. In contrast with the variable-length coding, in which the code word lengths are different, LZW uses code words of fixed lengths to depict variable length strings of common symbols / characters, such as words in English text.**

**The LZW decoder and encoder dynamically build up the same dictionary as with the other adaptive compression techniques as you receive the data – the encoder or decoder both develop the same dictionary. As more than one symbol / character can now be represented by a single code, data compression takes place. [1, 6]**

###
**LZW algorithm details **

**The Lempel-Ziv-Welch (LZW) algorithm employs an adaptive, dictionary-based compression technique. Not at all like variable-length coding, in which the lengths of the code words are extraordinary, LZW utilizes fixed-length code words to speak to variable-length series of images/characters that can just happen together, for example, words in English content.**

**For example, the encoder will output 4 after the ABABB sequence and create a code 6 dictionary for the new ABB string.**

**On the decoder hand, the output is AB and the dictionary is modified to 5 with a new string, BA, after receipt of code 4. It takes place several times in the example above, such as code 4, code 6 after encoder output. [1]**

**LZW Compression for String ABABBABCABABBA :**

**How about we start with an extremely basic word reference (additionally alluded to as a string table), at first containing just three characters, with codes as follows:**

**Algorithm of LZW Decompression:**

**BEGIN**

**s = NIL:**

**while not EOF**

**{**

**k = next input code:**

**entry = dictionary entry for k;**

**output entry;**

**if (s != NIL)**

**add string s + entry[OJ to dictionary**

**with a new code;**

**s = entry:**

**}**

**END**

###
**Lossless image compression**

**Differential coding is one of the most widely recognized procedures of pressure for interactive media information pressure. The consistency of progressive images in a DataStream is the establishment of information decreases for differential coding.**

**We will now look at two basic methods in this technique and they are:**

**Differential Coding of Images****Lossless JPEG**

**a) Differential Coding of Images**

**Let us think about differential coding with regards to advanced pictures. It might be said, we move from signals with area in one measurement to signals filed by numbers in two measurements (x, y)— the lines and segments of a picture.**

**Afterward, we will see video signals. These are significantly more unpredictable, in that they are recorded by reality (x, y, t).**

**The gradually shifting existence of images creates a significant probability of seeing identical intensity values in the neighboring pixels.**

**Given an original image I(x, y), using a simple difference operator we can define a difference image d(x, y) as follows: d(x, y) = I(x, y) − I(x − 1, y). [7]**

**It's an approximation of a partial differential operator, the same as the x and y, applied to the image.**

**Another approach is to use the discrete version of the 2D Laplacian operator to define a difference image d(x, y) as**

**d(x, y) = 4 I(x, y)− I(x, y −1)− I(x, y +1)− I(x +1, y)− I(x −1, y) (7.10) .**

**b) Lossless JPEG**

**Lossless JPEG is a JPEG image compression special case.**

**The algorithm does not have loss measures. It varies significantly from other JPEG mode.**

**Lossless JPEG is invoked when a 100 % quality factor is selected in a picture tool.**

**And, essentially, JPEG lossless is used simply for completeness in the JPEG compression format.**

**On the natural unique picture (or each color strip in the original color image), the following predictive approach is used.**

**It consists essentially of 2 steps: creating and coding a differential forecast.**

**The values of up to three adjacent pixels are combined as the expected value of the current pixel, as shown in Fig. X. 07/17. Any of the seven plans listed in table 7.6 can be used. The predictor When a P1-prognosis is used, the next pixel intensity A is taken as the expected actual pixel intensity; when a P4-prognosis is used, it comes as A + B-C; and so on, the current pixel-value.**

**Lossless JPEG produces a fairly low compression ratio, meaning that most multimedia applications do not have it.**

**An observational analysis of about 20 images shows that the compression ratio for JPEGs without loss ranges between 1.0 and 3.0, with an average of approximately 2.0. Predictors 4–7 which take neighboring node nodes into consideration both horizontal and vertical provide slightly higher compression (about 0.2–0.5 higher) than predictors 1–3. [1]**

###
**Conclusion**

**This Research shows the basic compression methods and concludes that all the multimedia compression techniques are helpful in their fields and that new methods of compression are developed every day to provide a better compression ratio. This review paper offers clear insights into and types of basic compression techniques. Based on the review of various types of multimedia data and their algorithms for compression.**

**In addition , the number of file sizes can be reduced with the compression method. Data of large size in a smaller size, which can save on the computer storage. On text, photo, and video data, the compression of data may be implemented. The advantages and disadvantages of various compression algorithm techniques are compression.**

###
**References**

**Li, Ze-Nian & Drew, Mark & Liu, Jiangchuan,Fundamentals of multimedia. 2nd ed,(2014)**

**Dave Marshall,Basics of Information Theory,https://cs.cf.ac.uk,(10/4/2001)**

**Variable Length Codes,https://cs.williams.edu,(2006)**

**Dave Marshall,The Shannon-Fano Algorithm,cs.cf.ac.uk,(10/4/2001)**

**Dave Marshall,Huffman Coding,https://cs.cf.ac.uk,(10/4/2001)**

**T.A. Welch, A technique for high performance data compression. IEEE Comput. 17(6), 8–19 (1984)**

**JE Fowler Jr, An Algorithm for Image Compression Using Differential Coding of Images,http://citeseerx.ist.psu.edu,(1995)**

## تعليقات

## إرسال تعليق