An Investigation for Steganography using Different Color System

Steganographic techniques are generally used to maintain the confidentiality of valuable information and to protect it from any possible theft or unauthorized use especially over the internet. In this paper, Least Significant Bit LSB-based Steganographic techniques is used to embed large of data in different color space models, such as (RGB, HSV, YCbCr, YIQ, YUV). The idea can be summarized by transforming the RGB value of the secret image pixels into three separate components into the pixels of the cover image. The measures (MSE, SNR, PSNR) were used to compare between the color space models, the comparisons proved that steganography with color systems (RGB and HIS) shown a best results.


1-Introduction
Colors are specified for an image by using a color model.The color model's components must be mapped to values (to generate a color space) and these values combined in a meaningful way for each pixel in the image.In English, this means for an image represented by the RGB color model, each pixel needs a red, green and blue value assignment.
The purpose of color models is to organize colors in a standard form.Different models are used according to the user's need.These models are divided in two models: hardware oriented and color manipulation.The color models include RGB, HSI, HSV, YCbCr, YIQ, CMY, CMYK Color is what you perceive when light within a certain wavelength range hits your eyes.This definition may sound a bit trite, but there is an important implication contained within: color does not exist in the physical world.Indeed, color is entirely subjective and dependent on the observer's eyes, brain and connecting hardware; color is truly in the brain of the beholder.In other words, color is not an absolute characteristic of an object, but a human perception.The color stimulants registered by the retina of the eye are made up of the energy distribution and spectral properties of the visible light passing through or reflected by an object.
color model is a mathematically consistent way of expressing colors.The mathematics of a color model allow you to express any perceived color as a combination of the components of the model.For example, a color represented in the RGB color model is a mixture of three values: a value for red, green, and blue.[1][2]

2-Color Model types 2-1 RGB color model
[ The RGB color model is an additive color model in which Red, Green, and Blue light are added together in various ways to reproduce a broad array of colors.The name of the model comes from the initials of the three additive primary colors, Red, Green, and Blue.The main purpose of the RGB color model is for the sensing, representation, and display of images in electronic systems, such as televisions and computers, though it has also been used in conventional photography.Before the electronic age, the RGB color model already had a solid theory behind it, based in human perception of colors, See figure (1).
RGB is a device-dependent color space: different devices detect or reproduce a given RGB value differently, since the color elements (such as phosphors or dyes) and their response to the individual R, G, and B levels vary from manufacturer to manufacturer, or even in the same device over time.Thus an RGB value does not define the same color across devices without some kind of color management.

2-2 HSL and HSV color model
In the HSB (Hue, Saturation , Brightness) and HSL (Hue , Saturation, Lightness) models, you specify Hue or color as an angle from 0 to 360 degrees on a color wheel, and Saturation , Brightness , and Lightness as percentages.
Saturation is the intensity of a color .at 100 percent Saturation, a color is pure; at 0 percent Saturation, the color is white , black or gray.Lightness or Brightness is the percentage of black or white that is mixed with a color.A Lightness of 100 percent will yield a white color; 0 percent is black; the pure color has a percent Lightness, See figure (2).٤٧٧ HSL stands for Hue, Saturation, and Lightness, and is often also called HLS.HSV stands for Hue, Saturation, and value, and is also often called HSB (B for Brightness).A third model, common in computer vision applications, is HSI, for Hue, Saturation, and Intensity.Unfortunately, while typically consistent, these definitions are not standardized, and any of these abbreviations might be used for any of these three or several other related cylindrical models.
HSL, HSV, HSI, or related models are often used in computer vision and image analysis for feature detection or image segmentation.The applications of such tools include object detection, for instance in robot vision; object recognition, for instance of faces, text, or license plates; content-based image retrieval; and analysis of medical images.[3][4] (     The YIQ system is intended to take advantage of human color-response characteristics.The eye is more sensitive to changes in the orange-blue (I) range than in the purple-green range (Q) , therefore less bandwidth is required for Q than for I.The YIQ representation is sometimes employed in color image processing transformations.For example, applying a histogram equalization directly to the channels in an RGB image would alter the colors in relation to one another, resulting in an image with colors that no longer make sense.Instead, the histogram equalization is applied to the Y channel of the YIQ representation of the image, which only normalizes the Brightness levels of the image.The formulae approximate the conversion between the RGB color space and YIQ is as follow:

2-5 CMYK color model
Unlike RGB, which is an additive color model, CMYK is a subtractive color model.Typically used in printing, CMYK assumes that the background is white, and thus subtracts the assumed Brightness of the white background from four colors: Cyan, Magenta, Yellow, and black (called "key").Black is used because the combination of the three primary colors (CMY) doesn't produce a fully saturated black.CMYK can produce the whole spectrum of visible colors thanks to the process of half-toning, whereby each color is assigned a Saturation level and miniscule dots of each of the three colors are printed in tiny patterns so that the human eye perceives a certain color.Like RGB, CMYK is device-dependent.There's no straightforward formula to convert CMYK color to RGB colors or vice versa, so conversion is typically dependent upon color management systems.ColoRotate easily converts one system to the other, See figure (5).The scope of the terms Y'UV, YUV, YCbCr, YPbPr, etc., is sometimes ambiguous and overlapping.Historically, the terms YUV and Y'UV were used for a specific analog encoding of color information in television systems, while YCbCr was used for digital encoding of color information suited for video and still-image compression and transmission such as MPEG and JPEG.Today, the term YUV is commonly used in the computer industry to describe file-formats that are encoded using YCbCr.
The Y'UV model defines a color space in terms of one luma (Y') and two chrominance (UV) components.The Y'UV color model is used in the NTSC, PAL, and SECAM composite color video standards.Previous black-and-white systems used only luma (Y') information.Color information (U and V) was added separately via a subcarrier so that a black-and-white receiver would still be able to receive and display a color picture transmission in the receiver's native black-and-white format.
Y' stands for the luma component (the Brightness) and U and V are the chrominance (color) components; luminance is denoted by Y and luma by Y' -the prime symbols (') denote gamma compression, with "luminance" meaning perceptual (color science) Brightness, while "luma" is electronic (voltage of display) Brightness.

3-RELATED WORK
Adnan Abdul-Aziz Gutub, he use an improved technique that takes the advantage of the 24 bits in each pixel in the RGB images using the two least significant bits of one channel to indicate existence of data in the other two channels.[6 ] Rajanikanth Reddy Koppola, he use LSB-based steganography technique to embed large amount of data in RGBA images while keeping the perceptual degradation to a minimum.And use the YIQ color space model to transform the RGB value of the secret image pixel into three separate components, which are then embedded into the least significant bits of each color pixel in the cover image.[5] Sos S. Agaian and Juan P. Perez, they propose a steganographic approach for palette-based images.That method had the advantage of embedding secure data, within the index, the palette or both, using special sorting scheme.In the index, information can be embedded using a double pseudo random key that selects blocks and pixels within the image randomly.
A stego-bit is embedded at each pixel of the selected blocks.Embedding is accomplished by selecting the closest color using a weighted distance measure that contains the desired modulus-bit.This algorithm also gives you the option of selecting the best color models (i.e.YCbCr and HSV) for embedding purposes.[7]

4-STEGANOGRAPHY
Steganography is the art of hiding communication.The idea is to hide a message inside some cover media without modifying the perception of the media.As an example, many image files contain redundant information.Altering this information does not affect the visual appearance of the image.This fact can be used to create a steganographic system.By embedding a message into the redundant bits of an image, we can send secret messages by posting the images on the web.Different types of steganographic techniques have been used that employ invisible inks, microdots, character arrangement, digital signatures, covert channel, and spread spectrum communications.Electronic steganography techniques use digital ways of hiding and detecting processes.Steganography is different than cryptography and watermarking although they all have overlapping usages in the information hiding processes.Steganography security hides the knowledge that there is information in the cover medium.Watermarking is different from steganography in its main goal.Watermarking aim is to protect the cover medium from any modification with no real emphasis on secrecy.

٤٨٣
It can be observed as steganography that concentrates onhigh robustness and very low or almost no security .Steganography, in general, may have different applications.For example, steganography can be utilized for posting secret communications on the Web to avoid transmission or to hide data on the network in case of a violation.It can be useful for copyright protection, which is, in reality, digital watermarking.Copyright protection is to protect the cover medium from claiming its credit be others, with no real emphasis on secrecy.Stego Applications can involve "ownership evidence, fingerprinting, authentication and integrity verification, content labeling and protection, and usage control".[1][2] [8]

5-The Proposed Hiding Algorithm
In this paper ,a steganographic algorithm was designed and implemented.Besides, different color models were implemented and programmed to improve the steganographic technique that deals with all these models .The algorithm can be summarized as: Step 1: Read color cover_image like C.
Step 6: Choose the best slide image from C to hide the secret image in it, and call it Z.Step 8: Convert Z back to RGB using equation ( 2), ( 4), ( 6), (8).
Step 9: Store the steg image.

6-The Proposed Extraction Algorithm
As mensioned in the previous paragraph, here the operation working in reverse manner, so to get the secret message the steps should be in the following sequence : Step 1: Read steg image to Xc.
Step 2: For converting from RGB to any of these color model, We use the equations Number ( 1),( 3),( 5), (7) Step 3: Select the slide where the secret message was hide , and call it Xz.From testing we discover that best slide to hide for each model is: For i=1 to r // r = row For j=1 to c // c = column Extract LSB of Xz(i,j) and put it A(i,j) end end Step 6: Store the secret image

7-Performance Measurements
To know the amount of difference between the original image and the target image(Stego-image),three kinds for performance measurements between the two images are used,which are [4][5]: 1-Mean square error or MSE is one of many ways to quantify the difference between an estimator and the true value of the quantity being estimated and it's equation is: : An image along with its R, G, and B components.
): An image along with its H , S and V components.

3
YCbCr color modelYCbCr is sometimes abbreviated to YCC.Y′CbCr is often called YPbPr when used for analog component video, although the term Y′CbCr is commonly used for both systems, with or without the prime.Y′CbCr is often confused with the YUV color space, and typically the terms YCbCr and YUV are used interchangeably, leading to some confusion; when referring to signals in video or digital form, the term "YUV" mostly means "Y′CbCr", See figure(3).Y C B C R Figure(3): An image along with its Y, C B , and C R components YCbCr or Y′CbCr, sometimes written YC B C R or Y′C B C R , is a family of color spaces used as a part of the color image pipeline in video and digital photography systems.Y′ is the Luma component and C B and C R are the Blue-difference and Reddifference Chroma components.Y′ (with prime) is distinguished from Y which is luminance, meaning that light intensity is non-linearly encoded using gamma correction.Y′CbCr is not an absolute color space, it is a way of encoding RGB information.The actual color displayed depends on the actual RGB colorants used to display the signal.[2][4]٤٧٨ ( ) ‫ﻟﻌﻠﻮﻡ‬ ‫ﺍﻟﺮﺍﻓﺪﻳﻦ‬ ‫ﳎﻠﺔ‬ ٢٠١٠ 29-30/Nov./2010‫ﺍﳌﻌﻠﻮﻣﺎﺕ‬ ‫ﺗﻘﺎﻧـﺔ‬ ‫ﰲ‬ ‫ﺍﻟﺜﺎﻟﺚ‬ ‫ﺍﻟﻌﻠﻤﻲ‬ ‫ﺍﳌﺆﲤﺮ‬ ‫ﻭﻗﺎﺋﻊ‬ ‫ﻋ‬ ‫ﻛﻠﻴﺔ‬ ‫ﻭﺍﻟﺮﻳﺎﺿﻴﺎﺕ‬ ‫ﺍﳊﺎﺳﻮﺏ‬ ‫ﻠﻮﻡ‬ -‫ﺍﳌﻮﺻﻞ‬ ‫ﺟﺎﻣﻌﺔ‬ ٤٧٩ 2-4 YIQ color model YIQ is the color space used by the NTSC color TV system, employed mainly in North and Central America, and Japan.The Y component represents the luma information, and is the only component used by black-and-white television receivers.I and Q represent the chrominance information, See figure (4).[1][4][5] Y I Q Figure(4): An image along with its Y, I, and Q components.
: An image along with its C, M, Y and K components 2-6 YUV color model YUV is a color space typically used as part of a color image pipeline.It encodes a color image or video taking human perception into account, allowing reduced bandwidth for chrominance components, thereby typically enabling transmission errors or ‫ﻟﺴﻨﺔ‬ ‫ﻭﺍﻟﺮﻳﺎﺿﻴﺎﺕ‬ ‫ﺍﳊﺎﺳﻮﺏ‬ ‫ﻟﻌﻠﻮﻡ‬ ‫ﺍﻟﺮﺍﻓﺪﻳﻦ‬ ‫ﳎﻠﺔ‬ ٢٠١٠ 29-30/Nov./2010‫ﺍﳌﻌﻠﻮﻣﺎﺕ‬ ‫ﺗﻘﺎﻧـﺔ‬ ‫ﰲ‬ ‫ﺍﻟﺜﺎﻟﺚ‬ ‫ﺍﻟﻌﻠﻤﻲ‬ ‫ﺍﳌﺆﲤﺮ‬ ‫ﻭﻗﺎﺋﻊ‬ ‫ﻋ‬ ‫ﻛﻠﻴﺔ‬ ‫ﻭﺍﻟﺮﻳﺎﺿﻴﺎﺕ‬ ‫ﺍﳊﺎﺳﻮﺏ‬ ‫ﻠﻮﻡ‬ -‫ﺍﳌﻮﺻﻞ‬ ‫ﺟﺎﻣﻌﺔ‬ ٤٨١ compression artifacts to be more efficiently masked by the human perception than using a "direct" RGB-representation, See figure (6).Y U V Figure(6): An image along with its Y, U, and V components.Other color spaces have similar properties, and the main reason to implement or investigate properties of Y'UV would be for interfacing with analog or digital television or photographic equipment that conforms to certain Y'UV standards.

Step 4 :Step 5 :
Convert color made of C to one of the following color model.For converting from RGB to any of these color model, We use the equations Number (1),(

From testing we discoverStep 7 :
that the best slide to hide for each model is:IF RGB then Z=R IF Ycbcr then Z= Cb IF HSV then Z=V IF YIQ then Z=Y IF YUV then Z=Y [r, c] = size (Z)For i=1 to r // r = row For j=1 to c // c = column ‫ﻟﺴﻨﺔ‬ ‫ﻭﺍﻟﺮﻳﺎﺿﻴﺎﺕ‬ ‫ﺍﳊﺎﺳﻮﺏ‬ ‫ﻟﻌﻠﻮﻡ‬ ‫ﺍﻟﺮﺍﻓﺪﻳﻦ‬ ‫ﳎﻠﺔ‬ ٢٠١٠ 29-30/Nov./2010‫ﺍﳌﻌﻠﻮﻣﺎﺕ‬ ‫ﺗﻘﺎﻧـﺔ‬ ‫ﰲ‬ ‫ﺍﻟﺜﺎﻟﺚ‬ ‫ﺍﻟﻌﻠﻤﻲ‬ ‫ﺍﳌﺆﲤﺮ‬ ‫ﻭﻗﺎﺋﻊ‬ ‫ﻋ‬ ‫ﻛﻠﻴﺔ‬ ‫ﻭﺍﻟﺮﻳﺎﺿﻴﺎﺕ‬ ‫ﺍﳊﺎﺳﻮﺏ‬ ‫ﻠﻮﻡ‬ -‫ﺍﳌﻮﺻﻞ‬ ‫ﺟﺎﻣﻌﺔ‬ hide S(i,j) pixel in the LSB of Z (i,j) end end

Table ( 1
): comparisons between the different color models

Table ( 2
): comparisons between the different color models

Table ( 3
(4)comparisons between the different color models Table(4): comparisons between the different color models