Chapter 8: Information, Entropy, and Coding
Total Page:16
File Type:pdf, Size:1020Kb
Load more
Recommended publications
-
Compilers & Translator Writing Systems
Compilers & Translators Compilers & Translator Writing Systems Prof. R. Eigenmann ECE573, Fall 2005 http://www.ece.purdue.edu/~eigenman/ECE573 ECE573, Fall 2005 1 Compilers are Translators Fortran Machine code C Virtual machine code C++ Transformed source code Java translate Augmented source Text processing language code Low-level commands Command Language Semantic components Natural language ECE573, Fall 2005 2 ECE573, Fall 2005, R. Eigenmann 1 Compilers & Translators Compilers are Increasingly Important Specification languages Increasingly high level user interfaces for ↑ specifying a computer problem/solution High-level languages ↑ Assembly languages The compiler is the translator between these two diverging ends Non-pipelined processors Pipelined processors Increasingly complex machines Speculative processors Worldwide “Grid” ECE573, Fall 2005 3 Assembly code and Assemblers assembly machine Compiler code Assembler code Assemblers are often used at the compiler back-end. Assemblers are low-level translators. They are machine-specific, and perform mostly 1:1 translation between mnemonics and machine code, except: – symbolic names for storage locations • program locations (branch, subroutine calls) • variable names – macros ECE573, Fall 2005 4 ECE573, Fall 2005, R. Eigenmann 2 Compilers & Translators Interpreters “Execute” the source language directly. Interpreters directly produce the result of a computation, whereas compilers produce executable code that can produce this result. Each language construct executes by invoking a subroutine of the interpreter, rather than a machine instruction. Examples of interpreters? ECE573, Fall 2005 5 Properties of Interpreters “execution” is immediate elaborate error checking is possible bookkeeping is possible. E.g. for garbage collection can change program on-the-fly. E.g., switch libraries, dynamic change of data types machine independence. -
Marshall Mcluhan
Marshall McLuhan: Educational Implications* W.J. Gushue He received the Governor General's award for his work in literature, the Albert Schweitzer Chair at Fordham for his work in communications, and the Moison Award from the Canada Council as "explorer and interpreter of our age." He appeared on the covers of N eW8week, Saturday Review and Canada's largest weekend supplement. NBC made a one-hour docu mentary of his message and later repeated it, and the CBC gave him prime Sunday night viewing time on two occasions. He is one of the most publicized intellectuals of recent times. Ralph Thomas wrote in the Torfmto Star: "He has been explained, knocked and praised in just about every magazine in the EngIish, French, German and Italian languages." 1 As to newspaper coverage, which newspapers have not written about him? He has lectured city planners, advertising men, TV executives, university professors, students, and scientists; business men have sought his message from a yacht in the Aegean Sea, a hotel in the Laurentians, a former firehouse in San Francisco, and in the board rooms of IBM, General Electric, and Bell Telephone. Although "a torrent of criticism" has been heaped upon him by ':' Research for this paper was undertaken while Prof. Gushue was at the .ontario Institute for Studies in Education during the 1967-68 acad emic year. A slightly modified version was delivered at the C.A.P.E. conference in Calgary, June, 1968. - Ed. 3 4 Marshall McLuhan the old dogies of academe and the literary establishment, he has been eulogized in dozens of scholarly magazines and studied serious ly by thousands of intellectuals.2 The best indication of his worth is the fact that among his followers are to be found people (artists, really) who are part of what Susan Sontag calls "the new sensibility." 3 They are, to use Louis Kronenberger's phrase, "the symbol manipulators," the peo ple who are calling the shots - painters, sculptors, publishers, pub lic relations men, architects, film-makers, musicians, designers, consultants, editors, T.V. -
MPEG Video in Software: Representation, Transmission, and Playback
High Speed Networking and Multimedia Computing, IS&T/SPIE Symp. on Elec. Imaging Sci. & Tech., San Jose, CA, February 1994. MPEG Video in Software: Representation, Transmission, and Playback Lawrence A. Rowe, Ketan D. Patel, Brian C Smith, and Kim Liu Computer Science Division - EECS University of California Berkeley, CA 94720 ([email protected]) Abstract A software decoder for MPEG-1 video was integrated into a continuous media playback system that supports synchronized playing of audio and video data stored on a file server. The MPEG-1 video playback system supports forward and backward play at variable speeds and random positioning. Sending and receiving side heuristics are described that adapt to frame drops due to network load and the available decoding capacity of the client workstation. A series of experiments show that the playback system adds a small overhead to the stand alone software decoder and that playback is smooth when all frames or very few frames can be decoded. Between these extremes, the system behaves reasonably but can still be improved. 1.0 Introduction As processor speed increases, real-time software decoding of compressed video is possible. We developed a portable software MPEG-1 video decoder that can play small-sized videos (e.g., 160 x 120) in real-time and medium-sized videos within a factor of two of real-time on current workstations [1]. We also developed a system to deliver and play synchronized continuous media streams (e.g., audio, video, images, animation, etc.) on a network [2].Initially, this system supported 8kHz 8-bit audio and hardware-assisted motion JPEG compressed video streams. -
XAPP616 "Huffman Coding" V1.0
Product Obsolete/Under Obsolescence Application Note: Virtex Series R Huffman Coding Author: Latha Pillai XAPP616 (v1.0) April 22, 2003 Summary Huffman coding is used to code values statistically according to their probability of occurence. Short code words are assigned to highly probable values and long code words to less probable values. Huffman coding is used in MPEG-2 to further compress the bitstream. This application note describes how Huffman coding is done in MPEG-2 and its implementation. Introduction The output symbols from RLE are assigned binary code words depending on the statistics of the symbol. Frequently occurring symbols are assigned short code words whereas rarely occurring symbols are assigned long code words. The resulting code string can be uniquely decoded to get the original output of the run length encoder. The code assignment procedure developed by Huffman is used to get the optimum code word assignment for a set of input symbols. The procedure for Huffman coding involves the pairing of symbols. The input symbols are written out in the order of decreasing probability. The symbol with the highest probability is written at the top, the least probability is written down last. The least two probabilities are then paired and added. A new probability list is then formed with one entry as the previously added pair. The least symbols in the new list are then paired. This process is continued till the list consists of only one probability value. The values "0" and "1" are arbitrarily assigned to each element in each of the lists. Figure 1 shows the following symbols listed with a probability of occurrence where: A is 30%, B is 25%, C is 20%, D is 15%, and E = 10%. -
Image Compression Through DCT and Huffman Coding Technique
International Journal of Current Engineering and Technology E-ISSN 2277 – 4106, P-ISSN 2347 – 5161 ©2015 INPRESSCO®, All Rights Reserved Available at http://inpressco.com/category/ijcet Research Article Image Compression through DCT and Huffman Coding Technique Rahul Shukla†* and Narender Kumar Gupta† †Department of Computer Science and Engineering, SHIATS, Allahabad, India Accepted 31 May 2015, Available online 06 June 2015, Vol.5, No.3 (June 2015) Abstract Image compression is an art used to reduce the size of a particular image. The goal of image compression is to eliminate the redundancy in a file’s code in order to reduce its size. It is useful in reducing the image storage space and in reducing the time needed to transmit the image. Image compression is more significant for reducing data redundancy for save more memory and transmission bandwidth. An efficient compression technique has been proposed which combines DCT and Huffman coding technique. This technique proposed due to its Lossless property, means using this the probability of loss the information is lowest. Result shows that high compression rates are achieved and visually negligible difference between compressed images and original images. Keywords: Huffman coding, Huffman decoding, JPEG, TIFF, DCT, PSNR, MSE 1. Introduction that can compress almost any kind of data. These are the lossless methods they retain all the information of 1 Image compression is a technique in which large the compressed data. amount of disk space is required for the raw images However, they do not take advantage of the 2- which seems to be a very big disadvantage during dimensional nature of the image data. -
Chapter 2 Basics of Scanning And
Chapter 2 Basics of Scanning and Conventional Programming in Java In this chapter, we will introduce you to an initial set of Java features, the equivalent of which you should have seen in your CS-1 class; the separation of problem, representation, algorithm and program – four concepts you have probably seen in your CS-1 class; style rules with which you are probably familiar, and scanning - a general class of problems we see in both computer science and other fields. Each chapter is associated with an animating recorded PowerPoint presentation and a YouTube video created from the presentation. It is meant to be a transcript of the associated presentation that contains little graphics and thus can be read even on a small device. You should refer to the associated material if you feel the need for a different instruction medium. Also associated with each chapter is hyperlinked code examples presented here. References to previously presented code modules are links that can be traversed to remind you of the details. The resources for this chapter are: PowerPoint Presentation YouTube Video Code Examples Algorithms and Representation Four concepts we explicitly or implicitly encounter while programming are problems, representations, algorithms and programs. Programs, of course, are instructions executed by the computer. Problems are what we try to solve when we write programs. Usually we do not go directly from problems to programs. Two intermediate steps are creating algorithms and identifying representations. Algorithms are sequences of steps to solve problems. So are programs. Thus, all programs are algorithms but the reverse is not true. -
Roth Book Notes--Mcluhan.Pdf
Book Notes: Reading in the Time of Coronavirus By Jefferson Scholar-in-Residence Dr. Andrew Roth Mediated America Part Two: Who Was Marshall McLuhan & What Did He Say? McLuhan, Marshall. The Mechanical Bride: Folklore of Industrial Man. (New York: Vanguard Press, 1951). McLuhan, Marshall and Bruce R. Powers. The Global Village: Transformations in World Life and Media in the 21st Century. (New York: Oxford University Press, 1989). McLuhan, Marshall. The Gutenberg Galaxy: The Making of Typographic Man. (Toronto: University of Toronto Press, 1962). McLuhan, Marshall. Understanding Media: The Extensions of Man. (Cambridge, MA: MIT Press, 1994. Originally Published 1964). The Mechanical Bride: The Gutenberg Galaxy Understanding Media: The Folklore of Industrial Man by Marshall McLuhan Extensions of Man by Marshall by Marshall McLuhan McLuhan and Lewis H. Lapham Last week in Book Notes, we discussed Norman Mailer’s discovery in Superman Comes to the Supermarket of mediated America, that trifurcated world in which Americans live simultaneously in three realms, in three realities. One is based, more or less, in the physical world of nouns and verbs, which is to say people, other creatures, and things (objects) that either act or are acted upon. The second is a world of mental images lodged between people’s ears; and, third, and most importantly, the mediasphere. The mediascape is where the two worlds meet, filtering back and forth between each other sometimes in harmony but frequently in a dissonant clanging and clashing of competing images, of competing cultures, of competing realities. Two quick asides: First, it needs to be immediately said that Americans are not the first ever and certainly not the only 21st century denizens of multiple realities, as any glimpse of Japanese anime, Chinese Donghua, or British Cosplay Girls Facebook page will attest, but Americans first gave it full bloom with the “Hollywoodization,” the “Disneyfication” of just about anything, for when Mae West murmured, “Come up and see me some time,” she said more than she could have ever imagined. -
The Strengths and Weaknesses of Different Image Compression Methods Samuel Teare and Brady Jacobson Lossy Vs Lossless
The Strengths and Weaknesses of Different Image Compression Methods Samuel Teare and Brady Jacobson Lossy vs Lossless Lossy compression reduces a file size by permanently removing parts of the data that may be redundant or not as noticeable. Lossless compression guarantees the original data can be recovered or decompressed from the compressed file. PNG Compression PNG Compression consists of three parts: 1. Filtering 2. LZ77 Compression Deflate Compression 3. Huffman Coding Filtering Five types of Filters: 1. None - No filter 2. Sub - difference between this byte and the byte to its left a. Sub(x) = Original(x) - Original(x - bpp) 3. Up - difference between this byte and the byte above it a. Up(x) = Original(x) - Above(x) 4. Average - difference between this byte and the average of the byte to the left and the byte above. a. Avg(x) = Original(x) − (Original(x-bpp) + Above(x))/2 5. Paeth - Uses the byte to the left, above, and above left. a. The nearest of the left, above, or above left to the estimate is the Paeth Predictor b. Paeth(x) = Original(x) - Paeth Predictor(x) Paeth Algorithm Estimate = left + above - above left Distance to left = Absolute(estimate - left) Distance to above = Absolute(estimate - above) Distance to above left = Absolute(estimate - above left) The byte with the smallest distance is the Paeth Predictor LZ77 Compression LZ77 Compression looks for sequences in the data that are repeated. LZ77 uses a sliding window to keep track of previous bytes. This is then used to compress a group of bytes that exhibit the same sequence as previous bytes. -
An Optimized Huffman's Coding by the Method of Grouping
An Optimized Huffman’s Coding by the method of Grouping Gautam.R Dr. S Murali Department of Electronics and Communication Engineering, Professor, Department of Computer Science Engineering Maharaja Institute of Technology, Mysore Maharaja Institute of Technology, Mysore [email protected] [email protected] Abstract— Data compression has become a necessity not only the 3 depending on the size of the data. Huffman's coding basically in the field of communication but also in various scientific works on the principle of frequency of occurrence for each experiments. The data that is being received is more and the symbol or character in the input. For example we can know processing time required has also become more. A significant the number of times a letter has appeared in a text document by change in the algorithms will help to optimize the processing processing that particular document. After which we will speed. With the invention of Technologies like IoT and in assign a variable string to the letter that will represent the technologies like Machine Learning there is a need to compress character. Here the encoding take place in the form of tree data. For example training an Artificial Neural Network requires structure which will be explained in detail in the following a lot of data that should be processed and trained in small paragraph where encoding takes place in the form of binary interval of time for which compression will be very helpful. There tree. is a need to process the data faster and quicker. In this paper we present a method that reduces the data size. -
Scripting: Higher- Level Programming for the 21St Century
. John K. Ousterhout Sun Microsystems Laboratories Scripting: Higher- Cybersquare Level Programming for the 21st Century Increases in computer speed and changes in the application mix are making scripting languages more and more important for the applications of the future. Scripting languages differ from system programming languages in that they are designed for “gluing” applications together. They use typeless approaches to achieve a higher level of programming and more rapid application development than system programming languages. or the past 15 years, a fundamental change has been ated with system programming languages and glued Foccurring in the way people write computer programs. together with scripting languages. However, several The change is a transition from system programming recent trends, such as faster machines, better script- languages such as C or C++ to scripting languages such ing languages, the increasing importance of graphical as Perl or Tcl. Although many people are participat- user interfaces (GUIs) and component architectures, ing in the change, few realize that the change is occur- and the growth of the Internet, have greatly expanded ring and even fewer know why it is happening. This the applicability of scripting languages. These trends article explains why scripting languages will handle will continue over the next decade, with more and many of the programming tasks in the next century more new applications written entirely in scripting better than system programming languages. languages and system programming -
Arithmetic Coding
Arithmetic Coding Arithmetic coding is the most efficient method to code symbols according to the probability of their occurrence. The average code length corresponds exactly to the possible minimum given by information theory. Deviations which are caused by the bit-resolution of binary code trees do not exist. In contrast to a binary Huffman code tree the arithmetic coding offers a clearly better compression rate. Its implementation is more complex on the other hand. In arithmetic coding, a message is encoded as a real number in an interval from one to zero. Arithmetic coding typically has a better compression ratio than Huffman coding, as it produces a single symbol rather than several separate codewords. Arithmetic coding differs from other forms of entropy encoding such as Huffman coding in that rather than separating the input into component symbols and replacing each with a code, arithmetic coding encodes the entire message into a single number, a fraction n where (0.0 ≤ n < 1.0) Arithmetic coding is a lossless coding technique. There are a few disadvantages of arithmetic coding. One is that the whole codeword must be received to start decoding the symbols, and if there is a corrupt bit in the codeword, the entire message could become corrupt. Another is that there is a limit to the precision of the number which can be encoded, thus limiting the number of symbols to encode within a codeword. There also exist many patents upon arithmetic coding, so the use of some of the algorithms also call upon royalty fees. Arithmetic coding is part of the JPEG data format. -
The Complexity of Richness: Media, Message, and Communication Outcomes
View metadata, citation and similar papers at core.ac.uk brought to you by CORE provided by The University of North Carolina at Greensboro The complexity of richness: Media, message, and communication outcomes By: Robert F. Otondo, James R. Van Scotter, David G. Allen, Prashant Palvia Otondo, R.F., Van Scotter, J.R., Allen, D.G., and Palvia, P. ―The Complexity of Richness: Media, Message, and Communication Outcomes.‖ Information & Management. Vol. 40, 2008, pp. 21-30. Made available courtesy of Elsevier: http://www.elsevier.com ***Reprinted with permission. No further reproduction is authorized without written permission from Elsevier. This version of the document is not the version of record. Figures and/or pictures may be missing from this format of the document.*** Abstract: Dynamic web-based multimedia communication has been increasingly used in organizations, necessitating a better understanding of how it affects their outcomes. We investigated factor structures and relationships involving media and information richness and communication outcomes using an experimental design. We found that these multimedia contexts were best explained by models with multiple fine-grained constructs rather than those based on one- or two-dimensions. Also, media richness theory poorly predicted relationships involving these constructs. Keywords: Media richness theory; Information richness; Communication theory Article: 1. Introduction Investigation of relationships between the media and communication effectiveness has not provided consistent results. However, lack of understanding has not deterred organizations from investing heavily in new and dynamic forms of web-based multimedia for their marketing, public relations, training, and recruiting activities. Few studies have examined the effects of media channels and informational content on decision-making and other organizational outcomes.