Browse Source

README-es.md edited on August 3, 2016 at 2:00pm

Jose R Ortiz Ubarri 8 years ago
parent
commit
d4767f9c6d
1 changed files with 10 additions and 15 deletions
  1. 10
    15
      README-es.md

+ 10
- 15
README-es.md View File

@@ -1,4 +1,4 @@
1
-# Recursión - Revolvedor de imágenes
1
+# Recursión - Revolvedor de Imágenes
2 2
 
3 3
 ![main1.png](images/main1-small.png)
4 4
 ![main2.png](images/main2-small.png)
@@ -6,7 +6,7 @@
6 6
 
7 7
 [Verano 2016 - Ive - Coralys]
8 8
 
9
-La recursión es una técnica muy utilizada en programación. Con esta técnica se resuelven problemas resolviendo un problema similar, pero para casos más pequeños. Podemos construir conjuntos de objetos o procesos utilizando *reglas recursivas* y *valores iniciales*. Las *funciones recursivas* son funciones que se auto-invocan, utilizando cada vez conjuntos o elementos más pequeños, hasta llegar a un punto en donde se utiliza la condición inicial en lugar de auto-invocarse. En esta experiencia de laboratorio, practicarás la definición e implementación de funciones recursivas para revolver una imagen y hacerla incomprensible.
9
+La recursión es una técnica muy utilizada en programación. Con esta técnica se resuelven problemas resolviendo un problema similar, pero para casos más pequeños. Podemos construir conjuntos de objetos o procesos utilizando *reglas recursivas* y *valores iniciales*. Las *funciones recursivas* son funciones que se auto-invocan, utilizando cada vez conjuntos o elementos más pequeños, hasta llegar a un punto en donde se utiliza la condición inicial en lugar de auto-invocarse. En esta experiencia de laboratorio practicarás la definición e implementación de funciones recursivas para revolver una imagen y hacerla incomprensible.
10 10
 
11 11
 ## Objetivos:
12 12
 
@@ -30,7 +30,6 @@ Antes de llegar al laboratorio debes haber:
30 30
 ---
31 31
 
32 32
 
33
-
34 33
 ## Revolver imágenes digitalmente
35 34
 
36 35
 Al revolver las imágenes digitalmente reordenamos los píxeles de las imágenes para romper la relación entre píxeles adyacentes y así hacer que la imagen original sea incomprensible. Esta técnica se usa mucho para cifrar imágenes y esconder datos. [1]
@@ -53,7 +52,7 @@ El método que utilizarás para revolver las imágenes funciona intercambiando r
53 52
 
54 53
 ![figure2.png](images/figure2.png)
55 54
 
56
-**Figura 2.** Revoltillo de nivel 1: (a) es la imagen original dividida en cuadrantes, (b) es la imagen luego de revolverla el primer nivel intercambiando cuadrantes diagonales.
55
+**Figura 2.** Revoltillo de nivel 1: (a) es la imagen original dividida en cuadrantes, (b) es la imagen luego de revolverla con el primer nivel intercambiando cuadrantes diagonales.
57 56
 
58 57
 ---
59 58
 
@@ -82,8 +81,7 @@ Si continuamos el patrón, un revoltillo de *nivel 3* comienza intercambiando lo
82 81
 
83 82
 Para revolver una imagen hacemos este proceso para un cierto *nivel N*. ¿Cuál es el patrón? ¿Cómo comenzaría el revoltillo de *nivel 4*? ¿En cuántos cuadrantes habremos dividido la figura original al completar el revoltillo?
84 83
 
85
-El algoritmo para revolver que se acaba de describir es su propio inverso. Esto es, si le aplicas el mismo algoritmo a la imagen revuelta debes obtener la imagen original.
86
-
84
+El algoritmo para revolver que se acaba de describir es su propio inverso. Esto es, si le aplicas el mismo algoritmo a la imagen revuelta, debes obtener la imagen original.
87 85
 
88 86
 
89 87
 Las siguientes figuras ilustran los intercambios que hacen los revoltillos de nivel 1, 2 y 3.
@@ -135,7 +133,7 @@ El proyecto en el que trabajarás hoy contiene la función `cropSwap` que implem
135 133
 
136 134
 Sus parámetros son:
137 135
 * `img`: referencia a la imagen que se desea modificar (un objeto de clase `QImage`)
138
-* `x0`, `y0`,`x1`, `y1`: coordenadas de las esquinas superior izquierda del los rectángulos.
136
+* `x0`, `y0`,`x1`, `y1`: coordenadas de las esquinas superior izquierda de los rectángulos.
139 137
 * `width`, `height`: ancho y altura (en píxeles) de los rectángulos.
140 138
 
141 139
 Por ejemplo, si deseamos intercambiar los píxeles de la mitad superior e inferior de una imagen *P* de ancho 100 y alto 150, invocamos la función así:
@@ -155,17 +153,14 @@ Por ejemplo, si deseamos intercambiar los píxeles de la mitad superior e inferi
155 153
 El proyecto `ImageScrambler` contiene el esqueleto de una aplicación para revolver y "des-revolver" imágenes. En la experiencia de laboratorio de hoy trabajarás con el archivo `Filter.cpp` para completar la aplicación.
156 154
 
157 155
 
158
-
159
-
160
-### Ejercicio 1: Pseudocódigo de la función para revolver
156
+### Ejercicio 1 - Pseudocódigo de la función para revolver
161 157
 
162 158
 Escribe el pseudocódigo para expresar el algoritmo de revolver descrito arriba como una función recursiva.
163 159
 
164 160
 
161
+### Ejercicio 2 - Función recursiva para revolver la imagen
165 162
 
166
-### Ejercicio 2: Función recursiva para revolver la imagen
167
-
168
-**Instrucciones**
163
+#### Instrucciones
169 164
 
170 165
 1.	Carga a `QtCreator` el proyecto `ImageScrambler`. Hay dos maneras de hacer esto:
171 166
 
@@ -199,13 +194,13 @@ Escribe el pseudocódigo para expresar el algoritmo de revolver descrito arriba
199 194
 
200 195
 1. Utiliza "Entrega 1" en Moodle para entregar el archivo con el pseudocódigo de la función para revolver.
201 196
 
202
-2. Utiliza "Entrega 2" en Moodle para entregar el archivo `Filter.cpp` que contiene las funciones que implementaste en esta experiencia de laboratorio. Recuerda utilizar buenas prácticas de programación, al incluir el nombre de los programadores y documentar tu programa.
197
+2. Utiliza "Entrega 2" en Moodle para entregar el archivo `Filter.cpp` que contiene las funciones que implementaste en esta experiencia de laboratorio. Recuerda utilizar buenas prácticas de programación, incluye el nombre de los programadores y documenta tu programa.
203 198
 
204 199
 ---
205 200
 
206 201
 ---
207 202
 
208
-##Referencias
203
+## Referencias
209 204
 
210 205
 [1]  F. Maleki et al., ‘‘An Image Encryption System by
211 206
 Cellular Automata with Memory,’’ Proc. 3rd Int’l