is Arnold transform for color image and for grey/binary image different?

5 views (last 30 days)
i need to scramble a rgb color image. now i want to know is Arnold transform for color image and for grey/binary image different? it will be great if any one can refer the appropriate code from file exchange

Answers (1)

Walter Roberson
Walter Roberson on 5 Oct 2015
However you could reshape() your color image to be rows by (cols * 3), and then pad the result out to square and apply the arnold transform to that.
  3 Comments
Walter Roberson
Walter Roberson on 5 Oct 2015
There is no such thing as a 2D rgb color image in MATLAB. In MATLAB, 2D images can be pseudocolor ("color mapped"), or you can have 3D arrays which are RGB "true color". If you have a 2D array of data that represents color then you should just do a normal arnold transform on it and apply the colormap any time you want to display the result. If you have a 3D truecolor array, then you could divide it into channels and apply the arnold map to each, or you could reshape to have 3 times as many columns and apply the arnold map to that, or you could apply the 3D cat map.
anika hossain
anika hossain on 6 Oct 2015
okay,i first divided the image in red,green, blue channel so i have 2D array now and then apply arnold cat map in individual three channels with same iteration. if the key is correct the reverse should be found identical to the real one right? and it is identical when i don't do any other things between the arnold apply and inverse arnold.but when i do some processing (embed watermark which only modify 1/4 of the image's pixel value with less then 1) and then apply inverse the image it too much destroyed to be accepted. why? and should i try 3D cat map instead of that?

Sign in to comment.

Categories

Find more on Modify Image Colors in Help Center and File Exchange

Products

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!