Effective Programming in C and UNIX Lab 5 Image Encryption with BMP Images Due Date: Saturday March 28th, 2009 by 11:59pm

Size: px
Start display at page:

Download "Effective Programming in C and UNIX Lab 5 Image Encryption with BMP Images Due Date: Saturday March 28th, 2009 by 11:59pm"

Transcription

1 Effective Programming in C and UNIX Lab 5 Image Encryption with BMP Images Due Date: Saturday March 28th, 2009 by 11:59pm Background: Encryption is a method used to protect data from intruders during transmission. The idea of data encryption is to scramble data using a specific key, so attackers would need to know the key to decrypt the data. The reverse of data encryption is called decryption. Decryption algorithm will recreate the original data file. For example, a naïve encryption of an ASCII file is to encrypt each character just by adding 1 to each character. That is replacing each character by its successor in the ASCII table. So a b, b c,, t u. So the word bat would be encrypted as cbu. Now applying the decryption algorithm (or just subtracting one from each of the encrypted characters cbu or by replacing with its predecessor will produce the original word bat. Although there are number of research results available on image encryption, our goal in this assignment is not to use one of the more advanced algorithms, but try out number of simple algorithms, some of your choosing, that would allow us to work with binary files, do some bit manipulations, encode and decode image files. For simplicity we will consider only the uncompressed image formats like BMP (jpeg and gif are compressed forms of images). Here is some background information about BMP s. The BMP file format: The images we are planning to encrypt are in the BMP file format, which is one of the most popular uncompressed file formats for images. Note that you will need to find a way to view the images for this assignment. I recommend writing and testing the program on Andrew Unix and using SSH File Transfer Client to view the files on the local machine using MS Paint to see if the encryption is working. If you are working on a Linux cluster machine, you can also use the command display ($ display image.bmp) to view the image assuming x terminal is installed. Your program should be able to encrypt any bitmap file of size n by m pixels. The actual size of a BMP image of n by m pixels is given by (3 n m some extra bytes) bytes. Each BMP file allocates 54 bytes for header information, and each pixel takes up 3 bytes for Red, Green and Blue (RGB). Extra bytes may be used for padding purposes. We should not encrypt the BMP header or the extra bytes. You should just read the first 54 bytes into an array, and when you write it out again, you should just write the header bytes unchanged. The pixels of a color image are stored in RGB format, which means that each pixel is represented by three bytes, one for red, one for green, and one for blue. One byte can store numbers in the range So the color red is (255, 0, 0) and green is (0, 255, 0). And (128, 0, 0) make dark red, and (255, 0, 255) makes purple since purple is red + blue. It is important to note that the pixels are stored from left to right and from bottom to top (upside down!). So the first m groups of three bytes (3 m bytes) in the file (after the 54-byte header) correspond to the bottom row of the image, and the last m groups of three bytes correspond to the top row. Also make sure that you figure out whether image has extra bytes or not.

2 The form of a bit map image are given as follows. You can simply think of the file structure as Header 54 bytes R G B R G B R G B extra bytes The left most RGB is the lower right pixel of the image and last RGB is the upper left pixel of the image. Suggested Data Structure: We really do not need any special data structure to do this program. Just a simple array of characters is good enough to store all the bytes in the file. However, maintaining some of the image attributes in a struct such as typedef struct { char* data; char* header; int height; int width; int size; } Bitmap; will help us perform the necessary operations on the image. For example, we can invert the image or shift pixel rows of the image etc. The data field inside the bmp struct will contain the array of bytes that make up the image. The header field will contain the header information and will not change in any operations. Each field requires allocation of dynamic memory as needed. The structure of the 54 byte header of a BMP file is as follows. The first 14 bytes are allocated for

3 typedef struct { unsigned short int type; /* BMP type identifier */ unsigned int size; /* size of the file in bytes*/ unsigned short int reserved1, reserved2; unsigned int offset; /* starting address of the byte */ } HEADER; The next 40 bytes are reserved for a structure as follows. typedef struct { unsigned int size; /* Header size in bytes */ int width,height; /* Width and height in pixels */ unsigned short int planes; /* Number of color planes */ unsigned short int bits; /* Bits per pixel */ unsigned int compression; /* Compression type */ unsigned int imagesize; /* Image size in bytes */ int xresolution,yresolution; /* Pixels per meter */ unsigned int ncolors; /* Number of colors */ unsigned int importantcolors; /* Important colors */ } INFOHEADER; The Assignment In this assignment we plan to complete number of functions so that we can read, write, encrypt and decrypt images. Part 1 In this part of the assignment you are simply trying to read, store and write a BMP image file. You are to complete the following functions. //Read the image into mybmp. You must allocate just enough memory to hold the image bytes. This can be done by first reading the header and figuring out what the size of the image is void readimage(char* infile, Bitmap* mybmp); // writes the encrypted image to outfile void writeimage(char* outfile, Bitmap* mybmp); You also need to complete the main program so that when the command $./lab5 file1 file2 It will simply read BMP file1 and write to BMP file2. When you open file2 using an image viewer, you should see the same image as in file 1. This will allow us to make sure, we can read and write BMP images. Part 2 In this part of the assignment you are to write a non-trivial encryption algorithm to encrypt your image. You should also write a decryption algorithm to recover the original image. See Suggested Algorithms area below to see some suggestions. A trivial algorithm is one

4 that just negate the bits or uses a flag to mask the bits. A non-trivial algorithm will try to distort the image while keeping some attributes. You are to write at least the following functions: // encrypt the image using a non-trivial algorithm. void encrypt(bitmap* mybmp); // decrypt the image. You are free to use the inverse of the encrypt void decrypt(bitmap* mybmp); You also need to complete the main program to handle -e and -d flags $./lab5 e file1 file2 //encrypt file1 and write to file2 $./lab5 -d file2 file1 // decrypt file2 and write to file1 Part 3 In this part of the assignment you are to write a simple rotate function that will rotate the current image by 180. This is not difficult if you really think about how the image is stored. //rotate makes the image upside down or rotation by 180 degrees void rotate(bitmap *bitmap); You also need to complete the main program to handle -r flags $./lab5 -r file1 file2 // rotate file1 and write to file2 Part 4 In this part of the assignment you are to implement a known algorithm that allows us to hide a message inside an image. Steganography is the art and science of writing hidden messages in such a way that no-one, apart from the sender and intended recipient, suspects the existence of the message, a form of security through obscurity[source: Wikipedia] In this part we will only test the following two images. //This will apply the following algorithm to an image. Remove all but last two bits of each color component. Make the resulting image 85 times brighter void coolalgorithm(bitmap* mybmp); This algorithm will take this image and convert to this image when you apply the above algorithm. That is, remove all but last 2 bits of each color component. Then multiply (or bit shift) the color component by 85. [source: Wikipedia]

5 You also need to complete the main program to handle -r flags $./lab5 -c file1 file2 // tree is converted to a cat really cool!! Style Points Proper use of functions (passing/returning arguments etc), commenting, style, handin, compile, indenting, and efficiency of the solution are worth an additional 10 points. Algorithms for Part 2: You need to use a non-trivial algorithm to decrypt the bytes of the file. A trivial algorithm is one that negates each bit of the image. The decryption algorithm then will negate the bits again to get the original image back. Here is what happens to Prof. Guna when we applied that algorithm to his image. Here is a series of other encryption algorithms by manipulating the color depth of the original image. Be creative and come up with an encryption algorithm that does something really cool (like complete distortion). Ideally, after you apply your encryption algorithm, we should not be to tell what the original image was but has a shadow of the image. Shifting the bit patterns to encrypt may not be a good idea. Be careful! You encryption algorithm cannot afford to lose any bits! Masking is a good way to turn off some bits and then unmasking can recover those bits. We will discuss masking techniques in class. Here are some more examples of encrypted images using a simple mask:

6 More examples Running the program: Use the Makefile to test your program. Your program should run by typing files names and command line options as follows. $./lab5 e file1 file2 //encrypt file1 and write to file2 $./lab5 -d file2 file1 // decrypt file2 and write to file1 $./lab5 -r file1 file2 // rotate file1 and write to file2 $./lab5 -c file1 file2 // apply cool algorithm Extra Credit: There is some opportunity to get extra credit in this assignment. TA s will consider giving up to +5 points for really cool algorithms. You should write why it is a really cool algorithm in a readme.txt file in the handin folder. For more advanced users, you can also think of how to implement an edge detection algorithm. Edges can be detected, in theory, by observing changes in depth of color intensity, variations in scene illumination, change in material properties etc. Your algorithm can generalize to images say, passport images of people, so you can mark the outline. If you are completing this part, give a link to an image folder you tested with so TA s can try things out. Mark the outline with a red pixels. Commenting your code: Please comment your code to show what you are doing. The least amount of comments is a short description at the beginning of each function that explains what it does, what parameters it takes, and what the expected output or return value is. Downloading your code: You can download code from /afs/andrew.cmu.edu/course/15/123/downloads/lab5 All updates will be available from FAQ.txt from the Bb Submitting your code: submit main.c to /afs/andrew/course/15/123/handin/lab5/yourid. DO NOT submit any image files you are using to test the program.

Simple Image File Formats

Simple Image File Formats Chapter 2 Simple Image File Formats 2.1 Introduction The purpose of this lecture is to acquaint you with the simplest ideas in image file format design, and to get you ready for this week s assignment

More information

Cyber Security Workshop Encryption Reference Manual

Cyber Security Workshop Encryption Reference Manual Cyber Security Workshop Encryption Reference Manual May 2015 Basic Concepts in Encoding and Encryption Binary Encoding Examples Encryption Cipher Examples 1 P a g e Encoding Concepts Binary Encoding Basics

More information

Safer data transmission using Steganography

Safer data transmission using Steganography Safer data transmission using Steganography Arul Bharathi, B.K.Akshay, M.Priy a, K.Latha Department of Computer Science and Engineering Sri Sairam Engineering College Chennai, India Email: arul.bharathi@yahoo.com,

More information

STEGANOGRAPHY: TEXT FILE HIDING IN IMAGE YAW CHOON KIT CA10022

STEGANOGRAPHY: TEXT FILE HIDING IN IMAGE YAW CHOON KIT CA10022 STEGANOGRAPHY: TEXT FILE HIDING IN IMAGE YAW CHOON KIT CA10022 FACULTY OF COMPUTER SYSTEM AND SOFTWARE ENGINEERING 2012/2013 1 ABSTRACT Steganography is the art or science in hiding. It is origin from

More information

Email Username: Lab date and time: CSC 101: Lab #11 Manual and Report: Cryptography Due date: 5:00pm, day after lab session

Email Username: Lab date and time: CSC 101: Lab #11 Manual and Report: Cryptography Due date: 5:00pm, day after lab session Name: Email Username: Lab date and time: CSC 101: Lab #11 Manual and Report: Cryptography Due date: 5:00pm, day after lab session Purpose: The purpose of this lab is to reinforce the key ideas behind cryptography

More information

Data Storage 3.1. Foundations of Computer Science Cengage Learning

Data Storage 3.1. Foundations of Computer Science Cengage Learning 3 Data Storage 3.1 Foundations of Computer Science Cengage Learning Objectives After studying this chapter, the student should be able to: List five different data types used in a computer. Describe how

More information

A Robust and Lossless Information Embedding in Image Based on DCT and Scrambling Algorithms

A Robust and Lossless Information Embedding in Image Based on DCT and Scrambling Algorithms A Robust and Lossless Information Embedding in Image Based on DCT and Scrambling Algorithms Dr. Mohammad V. Malakooti Faculty and Head of Department of Computer Engineering, Islamic Azad University, UAE

More information

A Concept of Digital Picture Envelope for Internet Communication

A Concept of Digital Picture Envelope for Internet Communication A Concept of Digital Picture Envelope for Internet Communication Eiji Kawaguchi, Koichi Nozaki, Michiharu Niimi, Hideki Noda and Richard O. Eason Kyushu Institute of Technology 1-1 Sensui-cho, Tobata,

More information

Extracting, Storing And Viewing The Data From Dicom Files

Extracting, Storing And Viewing The Data From Dicom Files Extracting, Storing And Viewing The Data From Dicom Files L. Stanescu, D.D Burdescu, A. Ion, A. Caldare, E. Georgescu University of Kraiova, Romania Faculty of Control Computers and Electronics www.software.ucv.ro/en.

More information

ASSEMBLY PROGRAMMING ON A VIRTUAL COMPUTER

ASSEMBLY PROGRAMMING ON A VIRTUAL COMPUTER ASSEMBLY PROGRAMMING ON A VIRTUAL COMPUTER Pierre A. von Kaenel Mathematics and Computer Science Department Skidmore College Saratoga Springs, NY 12866 (518) 580-5292 pvonk@skidmore.edu ABSTRACT This paper

More information

Comparison of different image compression formats. ECE 533 Project Report Paula Aguilera

Comparison of different image compression formats. ECE 533 Project Report Paula Aguilera Comparison of different image compression formats ECE 533 Project Report Paula Aguilera Introduction: Images are very important documents nowadays; to work with them in some applications they need to be

More information

PowerPoint Interface Menu Bars Work Area Slide and Outline View TASK PANE Drawing Tools

PowerPoint Interface Menu Bars Work Area Slide and Outline View TASK PANE Drawing Tools Microsoft PowerPoint is used for creating slide presentations to be used on a PC or even printed out as overheads and handouts. You can combine text, graphics, even audio and video to create exciting and

More information

UNIVERSITY OF CALICUT

UNIVERSITY OF CALICUT UNIVERSITY OF CALICUT SCHOOL OF DISTANCE EDUCATION CCSS UG (SDE) V SEMESTER OPEN COURSE INTRODUCTION TO MULTIMEDIA (For the UG candidates with core course other than BMMC) QUESTION BANK 1. Compression

More information

Fast Arithmetic Coding (FastAC) Implementations

Fast Arithmetic Coding (FastAC) Implementations Fast Arithmetic Coding (FastAC) Implementations Amir Said 1 Introduction This document describes our fast implementations of arithmetic coding, which achieve optimal compression and higher throughput by

More information

Digital Image Fundamentals. Selim Aksoy Department of Computer Engineering Bilkent University saksoy@cs.bilkent.edu.tr

Digital Image Fundamentals. Selim Aksoy Department of Computer Engineering Bilkent University saksoy@cs.bilkent.edu.tr Digital Image Fundamentals Selim Aksoy Department of Computer Engineering Bilkent University saksoy@cs.bilkent.edu.tr Imaging process Light reaches surfaces in 3D. Surfaces reflect. Sensor element receives

More information

A Proposal for OpenEXR Color Management

A Proposal for OpenEXR Color Management A Proposal for OpenEXR Color Management Florian Kainz, Industrial Light & Magic Revision 5, 08/05/2004 Abstract We propose a practical color management scheme for the OpenEXR image file format as used

More information

File transfer clients manual File Delivery Services

File transfer clients manual File Delivery Services File transfer clients manual File Delivery Services Publisher Post CH Ltd Information Technology Webergutstrasse 12 CH-3030 Berne (Zollikofen) Contact Post CH Ltd Information Technology Webergutstrasse

More information

Microsoft Picture Manager. Picture Manager

Microsoft Picture Manager. Picture Manager Picture Manager Picture Manager allows you to easily edit and organize the pictures on your computer. Picture Manager is an application that was included with Microsoft Office suite for Windows 2003 and

More information

PaperlessPrinter. Version 3.0. User s Manual

PaperlessPrinter. Version 3.0. User s Manual Version 3.0 User s Manual The User s Manual is Copyright 2003 RAREFIND ENGINEERING INNOVATIONS All Rights Reserved. 1 of 77 Table of Contents 1. 2. 3. 4. 5. Overview...3 Introduction...3 Installation...4

More information

Data Storage. Chapter 3. Objectives. 3-1 Data Types. Data Inside the Computer. After studying this chapter, students should be able to:

Data Storage. Chapter 3. Objectives. 3-1 Data Types. Data Inside the Computer. After studying this chapter, students should be able to: Chapter 3 Data Storage Objectives After studying this chapter, students should be able to: List five different data types used in a computer. Describe how integers are stored in a computer. Describe how

More information

REFERENCE GUIDE 1. INTRODUCTION

REFERENCE GUIDE 1. INTRODUCTION 1. INTRODUCTION Scratch is a new programming language that makes it easy to create interactive stories, games, and animations and share your creations with others on the web. This Reference Guide provides

More information

Adobe Illustrator CS5 Part 1: Introduction to Illustrator

Adobe Illustrator CS5 Part 1: Introduction to Illustrator CALIFORNIA STATE UNIVERSITY, LOS ANGELES INFORMATION TECHNOLOGY SERVICES Adobe Illustrator CS5 Part 1: Introduction to Illustrator Summer 2011, Version 1.0 Table of Contents Introduction...2 Downloading

More information

encoding compression encryption

encoding compression encryption encoding compression encryption ASCII utf-8 utf-16 zip mpeg jpeg AES RSA diffie-hellman Expressing characters... ASCII and Unicode, conventions of how characters are expressed in bits. ASCII (7 bits) -

More information

plc numbers - 13.1 Encoded values; BCD and ASCII Error detection; parity, gray code and checksums

plc numbers - 13.1 Encoded values; BCD and ASCII Error detection; parity, gray code and checksums plc numbers - 3. Topics: Number bases; binary, octal, decimal, hexadecimal Binary calculations; s compliments, addition, subtraction and Boolean operations Encoded values; BCD and ASCII Error detection;

More information

Smithsonian Institution Archives Guidance Update SIA. ELECTRONIC RECORDS Recommendations for Preservation Formats. November 2004 SIA_EREC_04_03

Smithsonian Institution Archives Guidance Update SIA. ELECTRONIC RECORDS Recommendations for Preservation Formats. November 2004 SIA_EREC_04_03 SIA Smithsonian Institution Archives Guidance Update November 2004 ELECTRONIC RECORDS Recommendations for s SIA_EREC_04_03 Highlights Highlights of SIA_EREC_04_03, an update on electronic record preservation

More information

How To Write Portable Programs In C

How To Write Portable Programs In C Writing Portable Programs COS 217 1 Goals of Today s Class Writing portable programs in C Sources of heterogeneity Data types, evaluation order, byte order, char set, Reading period and final exam Important

More information

FontEditor V1.0 manual

FontEditor V1.0 manual FontEditor V1.0 manual Dezember 2009 ELECTRONIC ASSEMBLY GmbH Zeppelinstrasse 19, D-82205 Gilching Phone +49-8105-778090, Fax +49-8105-778099 http://www.lcd-module.de ELECTRONIC ASSEMBLY reserves the right

More information

Viewing and editing of Typhoon scanner images from 1D, 2D, and DiGE experiments at CIAN

Viewing and editing of Typhoon scanner images from 1D, 2D, and DiGE experiments at CIAN Viewing and editing of Typhoon scanner images from 1D, 2D, and DiGE experiments at CIAN Note: This document summarizes some background information and short protocols for image manipulation of Typhoon

More information

ART 170: Web Design 1

ART 170: Web Design 1 Banner Design Project Overview & Objectives Everyone will design a banner for a veterinary clinic. Objective Summary of the Project General objectives for the project in its entirety are: Design a banner

More information

Chapter 3 Graphics and Image Data Representations

Chapter 3 Graphics and Image Data Representations Chapter 3 Graphics and Image Data Representations 3.1 Graphics/Image Data Types 3.2 Popular File Formats 3.3 Further Exploration 1 Li & Drew c Prentice Hall 2003 3.1 Graphics/Image Data Types The number

More information

Lab 4.4 Secret Messages: Indexing, Arrays, and Iteration

Lab 4.4 Secret Messages: Indexing, Arrays, and Iteration Lab 4.4 Secret Messages: Indexing, Arrays, and Iteration This JavaScript lab (the last of the series) focuses on indexing, arrays, and iteration, but it also provides another context for practicing with

More information

Digital Versus Analog Lesson 2 of 2

Digital Versus Analog Lesson 2 of 2 Digital Versus Analog Lesson 2 of 2 HDTV Grade Level: 9-12 Subject(s): Science, Technology Prep Time: < 10 minutes Activity Duration: 50 minutes Materials Category: General classroom National Education

More information

CSIS Security Research and Intelligence Advisory Microsoft GDI+ Integer division by zero flaw handling.ico files VU#290961 CVE-2007-2237

CSIS Security Research and Intelligence Advisory Microsoft GDI+ Integer division by zero flaw handling.ico files VU#290961 CVE-2007-2237 CSIS Security Research and Intelligence Advisory Microsoft GDI+ Integer division by zero flaw handling.ico files VU#290961 CVE-2007-2237 Discovered by Dennis Rand rand@csis.dk http://www.csis.dk Table

More information

A deeper look at Inline functions

A deeper look at Inline functions A deeper look at Inline functions I think it s safe to say that all Overload readers know what C++ inline functions are. When we declare a function or member function as inline we are trying to avoid the

More information

Third Southern African Regional ACM Collegiate Programming Competition. Sponsored by IBM. Problem Set

Third Southern African Regional ACM Collegiate Programming Competition. Sponsored by IBM. Problem Set Problem Set Problem 1 Red Balloon Stockbroker Grapevine Stockbrokers are known to overreact to rumours. You have been contracted to develop a method of spreading disinformation amongst the stockbrokers

More information

DNA Data and Program Representation. Alexandre David 1.2.05 adavid@cs.aau.dk

DNA Data and Program Representation. Alexandre David 1.2.05 adavid@cs.aau.dk DNA Data and Program Representation Alexandre David 1.2.05 adavid@cs.aau.dk Introduction Very important to understand how data is represented. operations limits precision Digital logic built on 2-valued

More information

TRUSTED DOWNLOAD. Background

TRUSTED DOWNLOAD. Background TRUSTED DOWNLOAD Background Scope NISPOM Requirements Definitions File Type/Formatting Issues Legacy Operating Systems Slack Space Issues DSS Authorized File Type/Formats DSS File Transfer Procedures DSS

More information

Package png. February 20, 2015

Package png. February 20, 2015 Version 0.1-7 Title Read and write PNG images Package png February 20, 2015 Author Simon Urbanek Maintainer Simon Urbanek Depends R (>= 2.9.0)

More information

Fixplot Instruction Manual. (data plotting program)

Fixplot Instruction Manual. (data plotting program) Fixplot Instruction Manual (data plotting program) MANUAL VERSION2 2004 1 1. Introduction The Fixplot program is a component program of Eyenal that allows the user to plot eye position data collected with

More information

MassArt Studio Foundation: Visual Language Digital Media Cookbook, Fall 2013

MassArt Studio Foundation: Visual Language Digital Media Cookbook, Fall 2013 INPUT OUTPUT 08 / IMAGE QUALITY & VIEWING In this section we will cover common image file formats you are likely to come across and examine image quality in terms of resolution and bit depth. We will cover

More information

Instructions for Creating a Poster for Arts and Humanities Research Day Using PowerPoint

Instructions for Creating a Poster for Arts and Humanities Research Day Using PowerPoint Instructions for Creating a Poster for Arts and Humanities Research Day Using PowerPoint While it is, of course, possible to create a Research Day poster using a graphics editing programme such as Adobe

More information

ANALYSIS OF THE COMPRESSION RATIO AND QUALITY IN MEDICAL IMAGES

ANALYSIS OF THE COMPRESSION RATIO AND QUALITY IN MEDICAL IMAGES ISSN 392 24X INFORMATION TECHNOLOGY AND CONTROL, 2006, Vol.35, No.4 ANALYSIS OF THE COMPRESSION RATIO AND QUALITY IN MEDICAL IMAGES Darius Mateika, Romanas Martavičius Department of Electronic Systems,

More information

paragraph(s). The bottom mark is for all following lines in that paragraph. The rectangle below the marks moves both marks at the same time.

paragraph(s). The bottom mark is for all following lines in that paragraph. The rectangle below the marks moves both marks at the same time. MS Word, Part 3 & 4 Office 2007 Line Numbering Sometimes it can be helpful to have every line numbered. That way, if someone else is reviewing your document they can tell you exactly which lines they have

More information

MMGD0203 Multimedia Design MMGD0203 MULTIMEDIA DESIGN. Chapter 3 Graphics and Animations

MMGD0203 Multimedia Design MMGD0203 MULTIMEDIA DESIGN. Chapter 3 Graphics and Animations MMGD0203 MULTIMEDIA DESIGN Chapter 3 Graphics and Animations 1 Topics: Definition of Graphics Why use Graphics? Graphics Categories Graphics Qualities File Formats Types of Graphics Graphic File Size Introduction

More information

Fireworks CS4 Tutorial Part 1: Intro

Fireworks CS4 Tutorial Part 1: Intro Fireworks CS4 Tutorial Part 1: Intro This Adobe Fireworks CS4 Tutorial will help you familiarize yourself with this image editing software and help you create a layout for a website. Fireworks CS4 is the

More information

A Basic Summary of Image Formats

A Basic Summary of Image Formats A Basic Summary of Image Formats Merciadri Luca Luca.Merciadri@student.ulg.ac.be Abstract. We summarize here the most used image formats, and their respective principal applications. Keywords: image formats,

More information

1 Abstract Data Types Information Hiding

1 Abstract Data Types Information Hiding 1 1 Abstract Data Types Information Hiding 1.1 Data Types Data types are an integral part of every programming language. ANSI-C has int, double and char to name just a few. Programmers are rarely content

More information

OpenEXR Image Viewing Software

OpenEXR Image Viewing Software OpenEXR Image Viewing Software Florian Kainz, Industrial Light & Magic updated 07/26/2007 This document describes two OpenEXR image viewing software programs, exrdisplay and playexr. It briefly explains

More information

ACTIVE CONTENT MANAGER (ACM)

ACTIVE CONTENT MANAGER (ACM) ITServices SSC007-3333 University Way Kelowna, BC V1V 1V7 250.807.9000 www.ubc.ca/okanagan/itservices ACTIVE CONTENT MANAGER (ACM) Managing the Digital Asset Library March 8, 2007 digital assets.ppt 1

More information

Lesson 10: Video-Out Interface

Lesson 10: Video-Out Interface Lesson 10: Video-Out Interface 1. Introduction The Altera University Program provides a number of hardware controllers, called cores, to control the Video Graphics Array (VGA) Digital-to-Analog Converter

More information

The use of binary codes to represent characters

The use of binary codes to represent characters The use of binary codes to represent characters Teacher s Notes Lesson Plan x Length 60 mins Specification Link 2.1.4/hi Character Learning objective (a) Explain the use of binary codes to represent characters

More information

Plain-paper digital Fax/Copier/Printer/Scanner Scanner and Fax Guide

Plain-paper digital Fax/Copier/Printer/Scanner Scanner and Fax Guide Plain-paper digital Fax/Copier/Printer/Scanner Scanner and Fax Guide Please read this guide before operating this machine. After you finish reading this guide, keep it handy for easy reference. Chapter

More information

The Hexadecimal Number System and Memory Addressing

The Hexadecimal Number System and Memory Addressing APPENDIX C The Hexadecimal Number System and Memory Addressing U nderstanding the number system and the coding system that computers use to store data and communicate with each other is fundamental to

More information

LEAGUE OF WOMEN VOTERS NAME & LOGO GUIDELINES

LEAGUE OF WOMEN VOTERS NAME & LOGO GUIDELINES Updated 3/15/2013 4:07 PM LEAGUE OF WOMEN VOTERS NAME & LOGO GUIDELINES The League of Women Voters logo, like our name, is our identity. It conveys the full collective power of the LWV mission to the public,

More information

Seeing in black and white

Seeing in black and white 1 Adobe Photoshop CS One sees differently with color photography than black and white...in short, visualization must be modified by the specific nature of the equipment and materials being used Ansel Adams

More information

Chapter 4: Computer Codes

Chapter 4: Computer Codes Slide 1/30 Learning Objectives In this chapter you will learn about: Computer data Computer codes: representation of data in binary Most commonly used computer codes Collating sequence 36 Slide 2/30 Data

More information

Chair for Network Architectures and Services Department of Informatics TU München Prof. Carle. Network Security. Chapter 13

Chair for Network Architectures and Services Department of Informatics TU München Prof. Carle. Network Security. Chapter 13 Chair for Network Architectures and Services Department of Informatics TU München Prof. Carle Network Security Chapter 13 Some More Secure Channel Issues Outline In the course we have yet only seen catastrophic

More information

Freescale Embedded GUI Converter Utility 2.0 Quick User Guide

Freescale Embedded GUI Converter Utility 2.0 Quick User Guide Freescale Semiconductor User Guide Document Number: EGUICUG Rev. 1, 08/2010 Freescale Embedded GUI Converter Utility 2.0 Quick User Guide 1 Introduction The Freescale Embedded GUI Converter Utility 2.0

More information

MASKS & CHANNELS WORKING WITH MASKS AND CHANNELS

MASKS & CHANNELS WORKING WITH MASKS AND CHANNELS MASKS & CHANNELS WORKING WITH MASKS AND CHANNELS Masks let you isolate and protect parts of an image. When you create a mask from a selection, the area not selected is masked or protected from editing.

More information

Computer Organization

Computer Organization Basics Machine, software, and program design JPC and JWD 2002 McGraw-Hill, Inc. Computer Organization CPU - central processing unit Where decisions are made, computations are performed, and input/output

More information

Using Image J to Measure the Brightness of Stars (Written by Do H. Kim)

Using Image J to Measure the Brightness of Stars (Written by Do H. Kim) Using Image J to Measure the Brightness of Stars (Written by Do H. Kim) What is Image J? Image J is Java-based image processing program developed at the National Institutes of Health. Image J runs on everywhere,

More information

Steganography Detection for Digital Forensics

Steganography Detection for Digital Forensics Sage LaTorra Digital Forensics Steganography Detection for Digital Forensics Steganography is the pursuit of cryptography that doesn't appear to be cryptography. In essence, steganography is hiding a message

More information

Cryptography: Motivation. Data Structures and Algorithms Cryptography. Secret Writing Methods. Many areas have sensitive information, e.g.

Cryptography: Motivation. Data Structures and Algorithms Cryptography. Secret Writing Methods. Many areas have sensitive information, e.g. Cryptography: Motivation Many areas have sensitive information, e.g. Data Structures and Algorithms Cryptography Goodrich & Tamassia Sections 3.1.3 & 3.1.4 Introduction Simple Methods Asymmetric methods:

More information

w w w. g e o s o f t. c o m

w w w. g e o s o f t. c o m SEG-Y Reader Convert SEG-Y files to: Windows BMP, Geosoft Grid, Geosoft Database, Geosoft Voxel USER GUIDE w w w. g e o s o f t. c o m SEG-Y Reader SEG-Y Reader reads 2D and 3D SEG-Y format data files

More information

Sprites in Block ROM

Sprites in Block ROM Sprites in Block ROM 1 Example 37 Sprites in Block ROM In Example 36 we made a sprite by storing the bit map of three initials in a VHDL ROM. To make a larger sprite we could use the Core Generator to

More information

Secure Network Communication Based on Text-to-Image Encryption

Secure Network Communication Based on Text-to-Image Encryption Secure Network Communication Based on Text-to-Image Encryption Ahmad Abusukhon 1, Mohamad Talib 2, Issa Ottoum 3 1 IT Faculty, - Computer Network Department Al-Zaytoonah University of Jordan Amman, JORDAN

More information

Cardless Cash Access Using Biometric ATM Security System Neenu Preetam. I 1, Harsh Gupta 2

Cardless Cash Access Using Biometric ATM Security System Neenu Preetam. I 1, Harsh Gupta 2 Cardless Cash Access Using Biometric ATM Security System Neenu Preetam. I 1, Harsh Gupta 2 1, 2 M.Tech. (Microelectronics), Department of ECE, SEEC, Manipal University Jaipur (MUJ), Rajasthan, India Abstract:

More information

How to Send Video Images Through Internet

How to Send Video Images Through Internet Transmitting Video Images in XML Web Service Francisco Prieto, Antonio J. Sierra, María Carrión García Departamento de Ingeniería de Sistemas y Automática Área de Ingeniería Telemática Escuela Superior

More information

First Bytes Programming Lab 2

First Bytes Programming Lab 2 First Bytes Programming Lab 2 This lab is available online at www.cs.utexas.edu/users/scottm/firstbytes. Introduction: In this lab you will investigate the properties of colors and how they are displayed

More information

designed and prepared for california safe routes to school by circle design circledesign.net Graphic Standards

designed and prepared for california safe routes to school by circle design circledesign.net Graphic Standards Graphic Standards Table of Contents introduction...2 General Usage...2 Logo lockups: color...3 LOGO LOCKUPS: GRAYSCALE...4 Minimum Staging Area...5 Minimum Logo Size...6 Type Family...7 Color Palettes...8

More information

Petrel TIPS&TRICKS from SCM

Petrel TIPS&TRICKS from SCM Petrel TIPS&TRICKS from SCM Knowledge Worth Sharing Histograms and SGS Modeling Histograms are used daily for interpretation, quality control, and modeling in Petrel. This TIPS&TRICKS document briefly

More information

Lab 5: BitTorrent Client Implementation

Lab 5: BitTorrent Client Implementation Lab 5: BitTorrent Client Implementation Due: Nov. 30th at 11:59 PM Milestone: Nov. 19th during Lab Overview In this lab, you and your lab parterner will develop a basic BitTorrent client that can, at minimal,

More information

MULTIMEDIA INSTALLING THE MULTIMEDIA UPGRADE

MULTIMEDIA INSTALLING THE MULTIMEDIA UPGRADE 26 MULTIMEDIA With the PastPerfect MultiMedia Upgrade, you will be able to attach digital images and link multimedia files to your catalog records. This is an optional feature and may be purchased for

More information

Course Project Lab 3 - Creating a Logo (Illustrator)

Course Project Lab 3 - Creating a Logo (Illustrator) Course Project Lab 3 - Creating a Logo (Illustrator) In this lab you will learn to use Adobe Illustrator to create a vector-based design logo. 1. Start Illustrator. Open the lizard.ai file via the File>Open

More information

Choosing a digital camera for your microscope John C. Russ, Materials Science and Engineering Dept., North Carolina State Univ.

Choosing a digital camera for your microscope John C. Russ, Materials Science and Engineering Dept., North Carolina State Univ. Choosing a digital camera for your microscope John C. Russ, Materials Science and Engineering Dept., North Carolina State Univ., Raleigh, NC One vital step is to choose a transfer lens matched to your

More information

Barcodes principle. Identification systems (IDFS) Department of Control and Telematics Faculty of Transportation Sciences, CTU in Prague

Barcodes principle. Identification systems (IDFS) Department of Control and Telematics Faculty of Transportation Sciences, CTU in Prague Barcodes principle Identification systems (IDFS) Department of Control and Telematics Faculty of Transportation Sciences, CTU in Prague Contents How does it work? Bulls eye code PostNet 1D Bar code 2D

More information

What Resolution Should Your Images Be?

What Resolution Should Your Images Be? What Resolution Should Your Images Be? The best way to determine the optimum resolution is to think about the final use of your images. For publication you ll need the highest resolution, for desktop printing

More information

Written examination in Computer Networks

Written examination in Computer Networks Written examination in Computer Networks February 14th 2014 Last name: First name: Student number: Provide on all sheets (including the cover sheet) your last name, rst name and student number. Use the

More information

Practical Attacks on Digital Signatures Using MD5 Message Digest

Practical Attacks on Digital Signatures Using MD5 Message Digest Practical Attacks on Digital Signatures Using Message Digest Ondrej Mikle Department of Software Engineering at Faculty of Mathematics and Physics, Charles University, Prague, Czech Republic Ondrej.Mikle@Gmail.com

More information

Credit Card Processing

Credit Card Processing Credit Card Processing Overview... 1 New Feature Implementation...1 Specific Data and Image Encryption and Redaction... 1 Using the Command Buttons... 3 Implementation of the Credit Card Workflow... 4

More information

Silverlight for Windows Embedded Graphics and Rendering Pipeline 1

Silverlight for Windows Embedded Graphics and Rendering Pipeline 1 Silverlight for Windows Embedded Graphics and Rendering Pipeline 1 Silverlight for Windows Embedded Graphics and Rendering Pipeline Windows Embedded Compact 7 Technical Article Writers: David Franklin,

More information

University of Pennsylvania Department of Electrical and Systems Engineering Digital Audio Basics

University of Pennsylvania Department of Electrical and Systems Engineering Digital Audio Basics University of Pennsylvania Department of Electrical and Systems Engineering Digital Audio Basics ESE250 Spring 2013 Lab 9: Process CPU Sharing Friday, March 15, 2013 For Lab Session: Thursday, March 21,

More information

Firefox, Opera, Safari for Windows BMP file handling information leak. September 2008. Discovered by: Mateusz j00ru Jurczyk, Hispasec Labs

Firefox, Opera, Safari for Windows BMP file handling information leak. September 2008. Discovered by: Mateusz j00ru Jurczyk, Hispasec Labs Firefox, Opera, Safari for Windows BMP file handling information leak September 2008 Discovered by: Mateusz j00ru Jurczyk, Hispasec Labs 1. Introduction The bitmap format implementations in Mozilla Firefox

More information

Introduction to UNIX and SFTP

Introduction to UNIX and SFTP Introduction to UNIX and SFTP Introduction to UNIX 1. What is it? 2. Philosophy and issues 3. Using UNIX 4. Files & folder structure 1. What is UNIX? UNIX is an Operating System (OS) All computers require

More information

Digital Preservation. Guidance Note: Graphics File Formats

Digital Preservation. Guidance Note: Graphics File Formats Digital Preservation 4 Guidance Note: Graphics File Formats Document Control Author: Adrian Brown, Head of Digital Preservation Research Document Reference: DPGN-04 Issue: 2 Issue Date: August 2008 THE

More information

Photoshop- Image Editing

Photoshop- Image Editing Photoshop- Image Editing Opening a file: File Menu > Open Photoshop Workspace A: Menus B: Application Bar- view options, etc. C: Options bar- controls specific to the tool you are using at the time. D:

More information

Gear View Basic. User Help. Version 2.2.0. Written by: Product Documentation and R&D Date: August 2015 LX-DOC-GVB-2.2.0-UH-EN-REVA

Gear View Basic. User Help. Version 2.2.0. Written by: Product Documentation and R&D Date: August 2015 LX-DOC-GVB-2.2.0-UH-EN-REVA Gear View Basic User Help Version 2.2.0 Written by: Product Documentation and R&D Date: August 2015 2015 Lexmark International Technology, S.A. All rights reserved. No part of this publication may be reproduced,

More information

FIRST Robotics Competition (FRC) Application Programming Interface (API) Specification For Machine Vision

FIRST Robotics Competition (FRC) Application Programming Interface (API) Specification For Machine Vision FIRST Robotics Competition (FRC) Application Programming Interface (API) Specification For Machine Vision Rev 0.7 December 20, 2008 Beth Finn FIRST 2009 FRC API Specification for Machine Vision Page 1

More information

Using MATLAB to Measure the Diameter of an Object within an Image

Using MATLAB to Measure the Diameter of an Object within an Image Using MATLAB to Measure the Diameter of an Object within an Image Keywords: MATLAB, Diameter, Image, Measure, Image Processing Toolbox Author: Matthew Wesolowski Date: November 14 th 2014 Executive Summary

More information

Digital Forensics. Tom Pigg Executive Director Tennessee CSEC

Digital Forensics. Tom Pigg Executive Director Tennessee CSEC Digital Forensics Tom Pigg Executive Director Tennessee CSEC Definitions Digital forensics Involves obtaining and analyzing digital information as evidence in civil, criminal, or administrative cases Analyze

More information

The following is an overview of lessons included in the tutorial.

The following is an overview of lessons included in the tutorial. Chapter 2 Tutorial Tutorial Introduction This tutorial is designed to introduce you to some of Surfer's basic features. After you have completed the tutorial, you should be able to begin creating your

More information

Reviewer s Guide. Morpheus Photo Animation Suite. Screenshots. Tutorial. Included in the Reviewer s Guide:

Reviewer s Guide. Morpheus Photo Animation Suite. Screenshots. Tutorial. Included in the Reviewer s Guide: Morpheus Photo Animation Suite Reviewer s Guide The all-in-one animation suite includes Morpheus Photo Morpher, Morpheus Photo Warper, Morpheus Photo Mixer, as well as all 15 sample morphs, warps, and

More information

A Guide to Microsoft Paint (Windows XP)

A Guide to Microsoft Paint (Windows XP) A Guide to Microsoft Paint (Windows XP) Introduction Microsoft Paint allows you to produce your own pictures (or edit existing ones). In Windows XP, you can no longer access Paint directly from the Microsoft

More information

Microsoft Word 2010. Quick Reference Guide. Union Institute & University

Microsoft Word 2010. Quick Reference Guide. Union Institute & University Microsoft Word 2010 Quick Reference Guide Union Institute & University Contents Using Word Help (F1)... 4 Window Contents:... 4 File tab... 4 Quick Access Toolbar... 5 Backstage View... 5 The Ribbon...

More information

A Secure Data Transmission By Integrating Cryptography And Video Steganography

A Secure Data Transmission By Integrating Cryptography And Video Steganography A Secure Data Transmission By Integrating Cryptography And Video Steganography Shafna P K Computer Science Department KMEA Engineering College Ernakulam, India shabanapk9999@gmail.com Abstract Advances

More information

Scanning Scanning images. cover

Scanning Scanning images. cover Return to cover 3 Scanning Scanning images Scanning with the [Scan] key...2 Setting the scanning method for the [Scan] key...3 Scanning with the MP Toolbox...5 MP Toolbox settings...7 Scanning an image

More information

Chapter 11 Security+ Guide to Network Security Fundamentals, Third Edition Basic Cryptography

Chapter 11 Security+ Guide to Network Security Fundamentals, Third Edition Basic Cryptography Chapter 11 Security+ Guide to Network Security Fundamentals, Third Edition Basic Cryptography What Is Steganography? Steganography Process of hiding the existence of the data within another file Example:

More information

How to Make the Most of Excel Spreadsheets

How to Make the Most of Excel Spreadsheets How to Make the Most of Excel Spreadsheets Analyzing data is often easier when it s in an Excel spreadsheet rather than a PDF for example, you can filter to view just a particular grade, sort to view which

More information