matlab 256灰度图像,MATLAB实现256色灰度图像的Arnold置乱

news/2024/11/22 21:50:01/

MATLAB实现256色灰度图像的Arnold置乱

下面的程序实现256色灰度图像的Arnold置乱。以前用VC做很麻烦,但在matlab中却显得非常简洁。matlab不愧是一款很受欢迎的辅助研究工具。

-------------------------------------------------

% 文件名:Arnold.m

% 编 写:向德生 7/31/2010

% 功 能:MATLAB实现256色灰度图像的Arnold置乱

clc;

clear all;

data=imread('lena.bmp');

% 显示原图像

subplot(3,3,1);

imshow(uint8(data));

title('原图像');

% 进行Arnold置乱,i为置乱加密次数;

% Arnold变换参数: a=1,b=1,c=1,d=2;

% x0=0,y0=0;

[M,N]=size(data);

data=double(data);

data0=data;

for i=1:8

x0=0;

y0=0;

for x=1:M

for

y=1:N

x1=x+y+x0;

y1=x+2*y+y0;

x1=mod(x1,M);

y1=mod(y1,N);

if x1==0

x1=M;

end

if y1==0

y1=N;

end

data1(x1,y1)=data0(x,y);

end

end

subplot(3,3,i+1);

imshow(uint8(data1));

title(strcat('Arnold置乱',num2str(i),'次后'));

% ------Arnold置乱图像以文件形式存入指定路径------begin

if ~exist('d:\outfile')

mkdir('d:\outfile')

end

t1=num2str(i); ss=strcat('d:\outfile\file',t1); ss=strcat(ss,'.bmp');

dataw=uint8(data1);

imwrite(dataw,ss,'bmp');

% ------Arnold置乱图像以文件形式存入指定路径------end

data0=data1;

end

-------------------------------------------------

在MATLAB 7.1中的运行结果如下图所示:

a4c26d1e5885305701be709a3d33442f.png

-------------------------------------------------

a4c26d1e5885305701be709a3d33442f.png


http://www.ppmy.cn/news/556353.html

相关文章

用C++实现RGB转256色

前言 RGB图片转256色,我知道的有两种方法: ①用Windows系统自带的画图工具打开图片,再另存为256色bmp图片 ②用Photoshop打开图片,然后图像→模式→索引颜色,选择局部(可感知)→确定→存储为…

256色图像不一定是灰度图像。

256色图像属于伪彩色图像,但是他也是8位的呀,他和256灰度图有什么差别?256色图像是如何表示颜色的? 灰度图像:每个像素由一个字节,即是八位,共256种色,且红绿蓝三原色分量相等。&…

32位色彩的真实含义 -- 24位色彩, 8位透明度

http://itbbs.pconline.com.cn/diy/9142730.html ----------------------------------------------------------------- 32位色彩的真实含义 -- 24位色彩, 8位透明度 32位色比24位色的色彩没有区别, 多出来的8位是用来体现半透明的程度的, GUI系统称之为Alpha Blending的.如…

诊断测试工具CANoe.DiVa从入门到精通系列——开门见山

我是穿拖鞋的汉子,魔都中坚持长期主义的工程师。 老规矩,分享一段喜欢的文字,避免自己成为高知识低文化的工程师: 人们会在生活中不断攻击你。他们的主要武器是向你灌输对自己的怀疑:你的价值、你的能力、你的潜力。他们往往会将此伪装成客观意见,但无一例外的是,他们想…

Nginx 的学习与实战【一】

Nginx 的学习与实战【一】 一、Nginx 简介 1.、概述 Nginx 是俄罗斯人编写的十分轻量级的 HTTP 服务器,Nginx,它的发音为“engine X”,是一个高性能的HTTP和反向代理服务器,同时也是一个 IMAP/POP3/SMTP 代理服务器。 Nginx是开源、高性能…

密码破解全能工具:Hashcat密码破解攻略

来源 https://www.freebuf.com/sectool/164507.html Hashcat密码破解 hashcat号称世界上最快的密码破解,世界上第一个和唯一的基于GPGPU规则引擎,免费多GPU(高达128个GPU),多哈希,多操作系统(L…

密码破解—Hashcat

一、Hashcat简介 hashcat号称世界上最快的密码破解,世界上第一个唯一的基于GPU、CPU规则引擎,免费多GPU(高达128个GPU),多哈希,多操作系统(Linux和Windows本地二进制文件)&#xff…

Centos 7系统密码破解

我们有的机器可能经过好几个人手之后,密码忘记了,需要破解密码 话不多说,开始 破解CentOS7密码详细过程 一、开机重启,按任意键停住,有时没停住,是鼠标键未在服务器中,点一下就好 二、按e键进…