Está en la página 1de 30

MANEJO BASICO DE

IMGENES CON MATLAB


PROCESAMIENYO DIGITAL DE SEALES
NOMBRE:
CAMARENA HIDALGO JONATHAN JAIME

CARRERA:
INGENIERA ELECTRNICA Y TEL.

CICLO:
IX

PROFESOR:
PAZ PURIZACA

2015
INTRODUCCION

La amplitud y duracin de la respuesta transitoria deben mantenerse


dentro de lmites tolerables definidos En sistemas de control lineales la
caracterizacin del transitorio comnmente se realiza utilizando un
escaln unitario a la entrada

Para determinar la respuesta en el tiempo para una entrada


escaln unitario de este sistema se usa el comandos step
indicando el vector del numerador y del denominador entre
parntesis. step(num,den).

INTRODUCCION

MATLAB.-

MATLAB (abreviatura de MATrix LABoratory, "laboratorio de matrices") es un


software matemtico que ofrece un entorno de desarrollo integrado (IDE) con
un lenguaje de programacin propio (lenguaje M). Est disponible para las
plataformas Unix, Windows y Mac OS X.
Entre sus prestaciones bsicas se hallan: la manipulacin de matrices, la
representacin de datos y funciones, la implementacin de algoritmos, la
creacin de interfaces de usuario (GUI) y la comunicacin con programas en
otros lenguajes y con otros dispositivos hardware. El paquete MATLAB dispone
de dos herramientas adicionales que expanden sus prestaciones, a saber,
Simulink (plataforma de simulacin multidominio) y GUIDE (editor de interfaces
de usuario - GUI). Adems, se pueden ampliar las capacidades de MATLAB con
las cajas de herramientas (toolboxes); y las de Simulink con los paquetes de
bloques (blocksets).

Tipos de imgenes (segn tipo de dato de sus elementos)


El tipo de dato matriz, que contendr una imagen puede ser de varios tipos
(segn el tipo de dato de cada pixel):
double Doble precisin, nmeros en punto flotante que varan en un rango
aproximado de -10308 a 10308 (8 bytes por elmento)
uint8 Enteros de 8 bits en el rango de [0,255] (1 byte por elemento)
uint16 Enteros de 16 bits en el rango de [0, 65535] (2 bytes por elemento)
uint32 Enteros de 32 bits en el rango de [0, 4294967295]
elemento)

(4 bytes por

int8 Enteros de 8 bits en el rango de [-128, 127] (1 byte por elemento)


int16 Enteros de 16 bits en el rango de [- 32768, 32767] (2 bytes por
elemento)
int32 Enteros de 32 bits en el rango de [- 2147483648,2147483647] (4 bytes
por elemento)
logical Los valores son 0 1 (1 bit por elemento)

Leer y escribir imgenes


Para leer una imagen en matlab:
imread(nombrefichero)
im = imread(foto.tif);

Para escribir (guardar) una matriz en fichero:


imwrite(var, nombrefichero)

Visualizar una imagen


Para visualizar una imagen:
imshow(imagen_var);

Para que se cree una nueva figura:


figure; imshow(imagen_var);

Permite ver los valores de cada uno de los pixeles en la imagen:


figure; imshow(imagen_var);pixval on;

Visualizar segn tipo de dato


La funcin imshow permite visualizar una imagen del tipo uint8 ([0,255])
como distintos niveles de gris:
La funcin imshow visualiza una imagen del tipo double([0,1]) como distintos
niveles de gris

Funciones para definir matrices bsicas


Existen en MATLAB varias funciones orientadas a definir con gran facilidad
matrices de tipos particulares.

Algunas de estas funciones son las siguientes:


eye(n) forma la matriz unidad de tamao (nxn)
zeros(n,m) forma una matriz de ceros de tamao (nxm)
zeros(n) dem de tamao (nxn)
ones(n) forma una matriz de unos de tamao (nxn)
ones(n,m) idem de tamao (nxm)
linspace(x1,x2,n) genera un vector con n valores igualmente espaciados
entre x1 y x2
rand(n) forma una matriz de nmeros aleatorios entre 0 y 1,
con distribucin uniforme, de tamao (nxn)
rand(n,m) idem de tamao (nxm)

PROCEDIMIENTO.-

1. GENERAR MATRICES
A. Generar un vector v ascendente de 1 a 10 (v=[1:1:10])
>> v=[1:1:10]
v=
1

10

B. Generar un vector w descendente de 10 a 1 (w=[1:1:10])


>> w=[10:-1:1]
w=
10

C. Generar una matriz diagonal con el vector v como diagonal.


(diag)
>> X = diag(v)
X=
10

D. Generar una matriz simtrica de diagonal constante con v


como primera fila y primera columna. (toeplitz)
>> t=toeplitz(v)
t=
1

10

10

E. Generar una matriz simtrica de diagonal constante con w


como primera columna y v como primera fila. (toeplitz)
> t1=toeplitz(w)
t1 =
10

10

10

10

10

10

10

10

10

10

10

F. Generar una matriz de 10 x 10 con todos los valores iguales a


uno. (ones)
>> Y = ones(10,10)
Y=
1

G. Generar una matriz de 10 x 10 con todos los valores iguales a


cero. (zeros)
>> U = zeros(10,10)
U=
0

H. Generar una matriz identidad de 10 x 10. (eye)


>> Y = eye(10,10)
Y=
1

I. Matriz de 3 x 3 con valores comprendidos entre 52 y 71.


(52+(71-52)*rand(3))
>> U=(52+(71-52)*rand(3))
U=
70.3329 70.1862 54.6958
54.9946 61.2221 60.0135
70.4413 67.2053 69.3990

J. Medir el tamao de la matriz anterior con la funcin size ().

>> size(U)
ans =
3

2. GENEREAR MATRICES DE FORMA LINEAL

a) Matriz de 8 x 8 con todas las filas iguales y valores


crecientes de 0 a 150.

>> v=[0:150/7:160 ; 0:150/7:160;0:150/7:160 ;0:150/7:160 ;0:150/7:160 ;


0:150/7:160 ;0:150/7:160 ;0:150/7:160 ]
v=
0 21.4286 42.8571 64.2857 85.7143 107.1429 128.5714 150.0000
0 21.4286 42.8571 64.2857 85.7143 107.1429 128.5714 150.0000
0 21.4286 42.8571 64.2857 85.7143 107.1429 128.5714 150.0000
0 21.4286 42.8571 64.2857 85.7143 107.1429 128.5714 150.0000
0 21.4286 42.8571 64.2857 85.7143 107.1429 128.5714 150.0000
0 21.4286 42.8571 64.2857 85.7143 107.1429 128.5714 150.0000
0 21.4286 42.8571 64.2857 85.7143 107.1429 128.5714 150.0000
0 21.4286 42.8571 64.2857 85.7143 107.1429 128.5714 150.0000

b) Matriz de 8 x 8 con el elemento de la esquina superior


izquierda = 10, el elemento de la esquina inferior
derecha = 100 y crecimiento lineal.
>>v=[10:90/7:100;10:90/7:100;10:90/7:100;10:90/7:100;10:90/7:100;10:90/7:
100;10:90/7:100;10:90/7:100;]
v=

10.0000 22.8571 35.7143 48.5714 61.4286 74.2857 87.1429


100.0000
10.0000 22.8571 35.7143 48.5714 61.4286 74.2857 87.1429
100.0000
10.0000 22.8571 35.7143 48.5714 61.4286 74.2857 87.1429
100.0000
10.0000 22.8571 35.7143 48.5714 61.4286 74.2857 87.1429
100.0000
10.0000 22.8571 35.7143 48.5714 61.4286 74.2857 87.1429
100.0000
10.0000 22.8571 35.7143 48.5714 61.4286 74.2857 87.1429
100.0000
10.0000 22.8571 35.7143 48.5714 61.4286 74.2857 87.1429
100.0000
10.0000 22.8571 35.7143 48.5714 61.4286 74.2857 87.1429
100.0000

c) Redondear la matriz anterior, tomar la parte entera y


comparar ambas.
>> x=round(v)
x=
10

23

36

49

61

74

87 100

10

23

36

49

61

74

87 100

10

23

36

49

61

74

87 100

10

23

36

49

61

74

87 100

10

23

36

49

61

74

87 100

10

23

36

49

61

74

87 100

10

23

36

49

61

74

87 100

10

23

36

49

61

74

87 100

3. GENERAR MATRICES DE FORMA ALEATORIA


a) Matriz de 5 x 5 con valores aleatorios entre 0 y 20.
>> x=(0+(20-0)*rand(5))
x=
13.0751 17.8185 14.8815 12.3533
9.8835

4.7986

6.6833 10.0004 17.1888 17.7302

15.5810 13.9749

9.5984 16.1098

0.5735

14.3007

3.9562 18.0944 11.5344

9.7980

18.0744

0.6108 12.1973

3.6584

3.3585

b) Matriz de 6 x 6 con valores aleatorios entre 5 y 25.


>> y=(5+(25-5)*rand(6))
y=
24.5736

5.8486 19.4488 21.0066

19.2539

6.4289

8.4678 15.5375

7.9973 14.0760 12.8188 13.3360

15.0094 15.4330 18.1921 13.6478 21.6276 18.1372


14.4218

6.9346 15.3719 21.5063 21.0673 17.5595

6.1924 21.3630 24.4595


18.6394 21.3509 17.9798

6.6694

6.2094 10.8397

7.6634 12.9852 13.6330

c) Repetir los dos apartados anteriores redondeando valores.


>> x1=round(x)

x1 =
13

18

15

12

10

16

14

14

18

12

18

12

10

17

10

5
18

16

1
10
3

>> y1=round(y)
y1 =
25

19

19

15

15

14

15

22

21

24

6
19

21
14

18

21

18

14

16

13

13

22
21
6
13

18
18
11
14

4. GENERAR MATRICES MAYORES


MATRICES MAS PEQUEAS

BASANDOSE

EN

a) Partiendo de una matriz de 3 x 4, y colocando esta en la


esquina superior izquierda, generar una nueva de
tamao 5 x 6, rellenando el resto con ceros.

>> y=ones(3,4)
y=
1

>> d=blkdiag(y,0,0)
d=

b) Crear una matriz A de 3 x 4, otra b de 3 x 10, otra C de 5


x 6 y otra D de 5 x 8, para finalmente componer una
matriz de A B
CD
>> Y=[A B; C D]
Y=
Columns 1 through 10
0.2551
0.3804

0.8909

0.1386

0.8407

0.2435

0.1966

0.4733

0.5853

0.2858

0.5060
0.5678

0.9593

0.1493

0.2543

0.9293

0.2511

0.3517

0.5497

0.7572

0.6991
0.0759

0.5472

0.2575

0.8143

0.3500

0.6160

0.8308

0.9172

0.7537

0.5285
0.1839

0.6892

0.9133

0.0782

0.7749

0.2599

0.2638

0.5499

0.5132

0.1656
0.2400

0.7482

0.1524

0.4427

0.8173

0.8001

0.1455

0.1450

0.4018

0.6020
0.4173

0.4505

0.8258

0.1067

0.8687

0.4314

0.1361

0.8530

0.0760

0.2630
0.0497

0.0838

0.5383

0.9619

0.0844

0.9106

0.8693

0.6221

0.2399

0.6541
0.9027

0.2290

0.9961

0.0046

0.3998

0.1818

0.5797

0.3510

0.1233

Columns 11 through 14
0.0540

0.9340

0.4694

0.1622

0.5308

0.1299

0.0119

0.7943

0.7792

0.5688

0.3371

0.3112

0.9448

0.3692

0.4039

0.5752

0.4909

0.1112

0.0965

0.0598

0.4893

0.7803

0.1320

0.2348

0.3377

0.3897

0.9421

0.3532

0.9001

0.2417

0.9561

0.8212

5. EXTRAER UNA MATRIZ MAS PEQUEA DE OTRA


MAS GRANDE
Partiendo de una matriz de 8 x 8, extraer las cuatro matrices de
4 x 4 que se pueden formar dentro de ella.

>> f=rand(8,8)
f=
0.0729

0.1175

0.7350

0.7894

0.2290

0.5309

0.9644

0.1875

0.0885

0.6407

0.9706

0.3677

0.6419

0.0915

0.4325

0.2662

0.7984

0.3288

0.8669

0.2060

0.4845

0.4053

0.6948

0.7978

0.9430

0.6538

0.0862

0.0867

0.1518

0.1048

0.7581

0.4876

0.6837

0.7491

0.3664

0.7719

0.7819

0.1123

0.4326

0.7690

0.1321

0.5832

0.3692

0.2057

0.1006

0.7844

0.6555

0.3960

0.7227

0.7400

0.6850

0.3883

0.2941

0.2916

0.1098

0.2729

0.1104

0.2348

0.5979

0.5518

0.2374

0.6035

0.9338

0.0372

>> X=f(1:4,1);Y=f(1:4,2);W=f(1:4,3);Z=f(1:4,4);
>> Q=[X Y W Z]
Q=
0.0729

0.1175

0.7350

0.7894

0.0885

0.6407

0.9706

0.3677

0.7984

0.3288

0.8669

0.2060

0.9430

0.6538

0.0862

0.0867

>> X1=f(1:4,5);Y1=f(1:4,6);W1=f(1:4,7);Z1=f(1:4,8);
>> Q1=[X1 Y1 W1 Z1]
Q1 =
0.2290

0.5309

0.9644

0.1875

0.6419

0.0915

0.4325

0.2662

0.4845

0.4053

0.6948

0.7978

0.1518

0.1048

0.7581

0.4876

>> X2=f(5:8,1);Y2=f(5:8,2);W2=f(5:8,3);Z2=f(5:8,4);
>> U2=[X2 Y2 W2 Z2]
Q2 =
0.6837

0.7491

0.3664

0.7719

0.1321

0.5832

0.3692

0.2057

0.7227

0.7400

0.6850

0.3883

0.1104

0.2348

0.5979

0.5518

>> X3=f(5:8,5);Y3=f(5:8,6);W3=f(5:8,7);Z3=f(5:8,8);
>> U3=[X3 Y3 W3 Z3]
Q3 =
0.7819

0.1123

0.4326

0.7690

0.1006

0.7844

0.6555

0.3960

0.2941

0.2916

0.1098

0.2729

0.2374

0.6035

0.9338

0.0372

6. EFECTUAR OPERACIONES CON MATRICES


Tomando como referencia las matrices del punto 5, realizar
las siguientes operaciones: A+D, C+B, A-C, A-B, 3B y
calcular la matriz inversa de las cuatro matrices A, B, C y D.

>> a1
a1 =
0.4574

0.9436

0.2407

0.6718

0.8754

0.6377

0.6761

0.6951

0.5181

0.9577

0.2891

0.0680

>> b1
b1 =
0.2548
0.7384

0.8444

0.6753

0.3868

0.4624

0.7702

0.4714

0.7218

0.3411

0.2240
0.2428

0.3445

0.0067

0.9160

0.4243

0.3225

0.0358

0.4735

0.6074

0.6678
0.9174

0.7805

0.6022

0.0012

0.4609

0.7847

0.1759

0.1527

0.1917

>> c1
c1 =
0.2691

0.5762

0.6476

0.7093

0.4587

0.4162

0.7655

0.6834

0.6790

0.2362

0.6619

0.8419

0.1887

0.5466

0.6358

0.1194

0.7703

0.8329

0.2875

0.4257

0.9452

0.6073

0.3502

0.2564

0.0911

0.6444

0.2089

0.4501

0.6620

0.6135

0.1192

0.5447

0.9937

0.4046

0.7720

0.6963

>> d1
d1 =
0.5822
0

0.4849

0.5407

0.9398

0.6473

0.2187

0.4484

0.9329

0.0938

0.3935

0.8699

0.6456

0.5439

0.1058

0.3658

0.9727

0.5254

0.6714

0.2648

0.4795

0.7210

0.1097

0.7635

0.1920

0.5303

0.7413

0.3181

0.6393

0.5225

0.0636

0.6279

0.1389

0.8611

0.5201

1.0397

1.0628

0.7854

1.6655

0.4046

0.7720

0.6963

0.4849

1.4161

1.5775

1.3234

0.9138

0.4484

0.9329

0.0938

0.3935

1.3880

1.6032

0.8330

0.1738

0.3658

0.9727

0.5254

0.6714

0.2648

0.4795

0.7210

0.1097

0.7635

0.1920

0.5303

0.7413

0.3181

0.6393

0.5225

0.0636

0.6279

0.1389

0.8611

0.5201

0.5239
0.7384

1.4206

1.3229

1.0961

0.9212

1.1863

0.4714

0.7218

0.3411

0.9895
0.2428

1.0278

0.6857

1.1522

1.0863

1.1644

0.0358

0.4735

0.6074

0.8565
0.9174

1.3271

1.2380

0.1205

1.2312

1.6177

0.1759

0.1527

0.1917

0.2875

0.4257

0.9452

0.6073

0.3502

0.2564

0.0911

0.6444

0.2089

0.4501

0.6620

0.6135

0.3674 -0.4069 -0.0375 -0.4587 -0.4162

0
>> a1+d1
ans =

0
>> c1+b1
ans =

>> a1-c1
ans =
0.1884

0.1099 -0.0457 -0.0029

0.4589 -0.6619 -0.8419

0.4111 -0.3467 -0.0514 -0.7703 -0.8329

-0.2875 -0.4257 -0.9452 -0.6073 -0.3502 -0.2564

-0.0911 -0.6444 -0.2089 -0.4501 -0.6620 -0.6135

0.3294

>> a1-b1
ans =
0.2026
-0.7384

0.0992 -0.4346

0.6513
-0.2428

0.2932

-0.1498
-0.9174

0.1772 -0.3131

0.2850 -0.4624 -0.7702 -0.4714 -0.7218 -0.3411

0.6694 -0.2209 -0.4243 -0.3225 -0.0358 -0.4735 -0.6074

0.0668 -0.4609 -0.7847 -0.1759 -0.1527 -0.1917

>> 3*b1
ans =
0.7644
2.2153

2.5332

2.0260

1.1603

1.3873

2.3105

1.4141

2.1653

1.0234

0.6721
0.7285

1.0334

0.0201

2.7480

1.2730

0.9674

0.1073

1.4205

1.8222

2.0035
2.7523

2.3416

1.8065

0.0035

1.3827

2.3542

0.5276

0.4582

0.5752

7. VISUALIZAR UNA MATRIZ COMO SI FUESE UNA


IMAGEN
a) Crear una matriz de tamao 8 x 8 con valores enteros
comprendidos entre 0 y 255, y luego visualizarla:
- image(x);colormap(gray(255))
- imshow(x,
[]).
Con
esto
se
ajustan
niveles
automticamente.

- Especificar directamente el escalado de ejes (axis)


b) Colocar textos sobre los ejes coordenados (xlabel, ylabel)
>> y=(0+(255-0)*rand(8))
y=
81.2885 186.2344 59.0566 225.7178 183.9130 85.2116 155.5160

7.3119

108.1625 124.5953 124.6689 232.8881 27.2243 178.1802 157.5049 124.9249


129.5039 147.5239 159.1353 203.0269 166.7081 50.4415 219.1578 42.8214
21.8065 60.5073 173.1796 25.1716 126.0144

7.7879 205.3998 249.5636

66.9330 117.0065 100.8564 66.7772 198.6582 189.7389 147.0640 181.7371


204.2587 245.5876 93.6963 85.5160 182.3345 127.5057 46.6452 127.6203
7.4512 139.4355 251.9354 173.3306 230.4487 122.3801 61.1827 120.1275
236.8578 132.8896
>> image(y)

9.6234 34.8211 227.1852 230.7042 226.0605 15.2028

>> v=axis
v=
0

8. OBTENER UNA MATRIZ A PARTIR DE UNA IMAGEN


a) Preparar previamente una imagen en formato bmp en
D:\...
b) Utilizar para leer la imagen el comando imread.
c) Comprobar que la matriz obtenida al leer una imagen es
formato uint8.
d) Pasarlo a formato doubl.
e) Visualizar el contenido de la matriz como si fuese una
imagen.
f = imread('futbol.bmp')
f = imread('D:\clase\futbol.bmp')

255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255

255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255

Columns 673 through 680

255 255 255 255 255 255 255 255


255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255

255 255 255 255 255 255 255 255


255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255
255 255 255 255 255 255 246 246
255 255 255 255 255 246 246 246
255 255 255 246 246 246 255 255
255 255 255 246 246 246 255 255
255 246 246 246 255 255 246 246
246 246 255 246 246 246 246 255
246 246 246 246 246 255 255 255
246 246 255 255 255 255 255 255
255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255

255 255 255 255 255 255 255 255


255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255

255 255 255 255 255 255 255 255


255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255

9. CREAR UNA IMAGEN *bmp A PARTIR DE UNA


MATRIZ DE DATOS
a) Reutilizar la matriz del apartado 2.a, y emplear el comando
imwrite, comprobando todas sus variantes.
a=[10:(20-10)/7:20;20:(31.4286-20)/7:31.4286;31.4286:(42.857131.4286)/7:42.8571;42.8571:(54.2857-42.8571)/7:54.2857;54.2857:(65.714354.2857)/7:65.7143;65.7143:(77.1429-65.7143)/7:77.1429;77.1429:(88.571477.1429)/7:88.5714;88.5714:(100-88.5714)/7:100]
round(a)
imwrite(a,'dibujo1.bmp')
image(a)
a=
10.0000 11.4286 12.8571 14.2857 15.7143 17.1429 18.5714 20.0000
20.0000 21.6327 23.2653 24.8980 26.5306 28.1633 29.7959 31.4286
31.4286 33.0612 34.6939 36.3265 37.9592 39.5918 41.2245 42.8571
42.8571 44.4898 46.1224 47.7551 49.3877 51.0204 52.6530 54.2857
54.2857 55.9184 57.5510 59.1837 60.8163 62.4490 64.0816 65.7143
65.7143 67.3470 68.9796 70.6123 72.2449 73.8776 75.5102 77.1429
77.1429 78.7755 80.4082 82.0408 83.6735 85.3061 86.9388 88.5714
88.5714 90.2041 91.8367 93.4694 95.1020 96.7347 98.3673 100.0000
ans =
10

11

13

14

16

17

19

20

20

22

23

25

27

28

30

31

31

33

35

36

38

40

41

43

43

44

46

48

49

51

53

54

54

56

58

59

61

62

64

66

66

67

69

71

72

74

76

77

77

79

80

82

84

85

87

89

89

90

92

93

95

97

98 100

b)Verificar que la imagen grabada se puede visualizar con un


programa comercial por ejemplo Adobe Photoshop.

TAREA
1. Programar las derivadas de las siguientes
funciones en matlab.

A:
>> syms x;
>> f=(exp(-x)-exp(x))^3
f=
(1/exp(x) - exp(x))^3
>> diff(f,x)
ans =
(-3)*(1/exp(x) + exp(x))*(1/exp(x) - exp(x))^2
B:
>> syms x;
>> f=(2/3)*(sin(x)^(3/2))-(2/7)*(sin(x)^(7/2))
f=
(2*sin(x)^(3/2))/3 - (2*sin(x)^(7/2))/7
>> diff(f,x)
ans =
cos(x)*sin(x)^(1/2) - cos(x)*sin(x)^(5/2)
C:
>> syms t;
>> f=sin(cos(t)^-1)
f=
sin(1/cos(t))
>> diff(f,t)
ans =
0

2. Programar las integrales de las siguientes


funciones en matlab.

A: >> syms x;
>> y=sin(x)/(1+cos(x)^2)
y=
sin(x)/(cos(x)^2 + 1)
>> iy=int(y)
iy =
-atan(cos(x))
B: >> syms x;
>> y=x*(csch((x^2)/2)^2)
y=
x/sinh(x^2/2)^2
>> iy=int(y)
iy =
-2/(exp(x^2) - 1)
C: >> syms x;
>> y=1/(25-(x^2))
y=
-1/(x^2 - 25)
>> iy=int(y,x,0,4)
iy =
log(3)/5

CONCLUSIONES

El presente laboratorio muestra los comandos bsicos para pixelado de imgenes a


representadas matemticamente con matrices.

A travez de matrices podemos representar una imagen digitalmente.

A travez de una imagen podemos obtener una matriz para poder modificarla.

Matlab es un programa optimo para efectuar matrices por lo tanto es el mejor para
procesamiento de imgenes.

Matlab facilita la elaboracin de desarrollo y diagnostico de imgenes.

Matlab ofrece una amplia gama de lcomandos para el desarrollo de procesamiento


de imgenes.

También podría gustarte