Esta página está en construcción: perdonen
los errores, repeticiones y temas inacabados.
This page is being developed: I am sorry for
errors, duplications and unfinished subjects.
Proyecto Danzante.
Algoritmo completo en Tiempo Real II. JCISER (incluido en
Danzante)
Vimos el
Esquema general de la aplicación. Veamos ahora cómo llevarlo a
cabo, mediante el algoritmo o secuencia de operaciones a realizar para conseguir
esa optimización. Y acudimos cuando es necesario a
Optimización II.Desglose de
operaciones.JCISER
En tiempo no real, necesariamente:
Esquema general de la aplicacion. Optimización. Algoritmo.JCISER bis.
Ya escribimos las secuencia
prevista en
Algoritmo completo en tiempo real I. JCISER.htm
Ahora completamos la secuencia
completa de operaciones en tiempo real, que hasta ahora se ha realizado
en simulación, es decir, operando sobre un archivo completo, en
diferido, pues.
GRABACIÓN Y CALIBRACIÓN
Operación única
0. Se colocan las dos cámaras
an alturas de 1.80 a 2 metros.; en ángulo rectos aproximado mirando
al humano.
1. Se inician las dos cámaras
y su modo de tomar muestras (desfase relativo en milisegundos).
2. Se toma y graba en memoria
un bloque de M cuadros (unos 50)
2'. Se graba en disco la
moción correspondiente (No Indispensable, sólo para comprobación
posterior)
3. Se inhibe la recepción de
esqueletos en ambas cámaras, y se inhibe salida de información, para
acelerar proceso
4. Se calibra la pareja de
cámaras mediante la reunión múltiple (Giro, Escalado y
Desplazamiento) vista anteriormente.
OPTIMZACION Ciclo indefinido
5. Se reanuda la toma de
cuadros (pareja de esqueletos)
6. Opcionalmente el cuadro captado se
almacena en memoria, a continuación del bloque de calibración
(51 en adelante).
7. Se optimiza la pareja,
según de describe en
Optimización. Algoritmo.JCISER, que repetimos aquí abajo
8. Opcionalmente de representa
el esqueleto optimizado.
9. Opcionalmente de toma ese
esqueleto para otra aplicaciómn. tal como un su inclusión como
avatar en un espacio virtual.
10. Se va al pareja siguiente
y se repiten indefinidamente las etapas 6 a 9.
9. Puede interrumpirse este
ciclo y reanudarse cuantas veces se desee con los mismos parámetros
obtenidos en la calibración.
OPTIMIZACIÓN en DETALLE
Cada pareja de esqueletos p y q, cuasi simultáneos,
correspondientes a dos cámaras cuasi perpendiculares, llega de la cámara en tiempo real.
('O bien, en diferido
corresponde a una moción doble cargada de disco, de la que elegimos
la de motor o pulso deseado.)
Para
cada pareja correspondiente a un momento:
Inicio
0. Reunimos
pi , qi
mediante R, t
obtenidos en la
calibración, y obtenemos, por promedio simple
pi* = ( pi
+ Rqi + t ) / 2
0'. Sobre este esqueleto
promedio calculamos las longitudes de los huesos Li,j
1. Calculamos
wiA , wiB
en función de pi
, qi
2. Calculamos
M, j0i
, J0
en función de
pi*, pi
, qi , wiA , wiB ,
Li,j
3.
Elegimos un vector incremento dp-increm
(vector epsilon, 1 mm en
media por articulación) y
para ese incremento:
4, Calculamos
H, Λ , bp , bλ
en función de
M, j0i
, J0
eligiendo
incrementos que minimizan dp
(minimizan J e intentan que M=0)
5. Obtenemos
λ
en función de H, Λ, bp , bλ
6. Obtenemos
dp
en
función de H, Λ, bp ,
λ
Ciclo pequeño
7. Elegimos un múltiplo del salto
incremental (unas 60 veces, valor empírico que minimiza
aproximadamente el numero necesario de iteraciones en la Line
Search (búsqueda del mínimoa funcion monovariable
por Newton).
8. Actualizamos { pi*}new
= { pi*} + dp
9. Aproximación lineal
X <-- X + τ d
con d optimizado
10. Repetimos pasos 3.5 a
3.7 para la nueva posición del esqueleto en proceso de
optimización.
11. Si ||dp||
-||dp||
> cota1
Reduzco el múltiplo en 7
12 Si numero de interaciones <cora
3 Repetimos 7 a 12
13 . Si NO, acabamos la
Busqueda Lineal
14. Aceptamos { pi*}
como posiciones definitivas
para esqueleto optimizado.
15. Opcionalmente Representamos y Empleamos el esqueleto optimizado
en otras tareas durante el tiempo entre tomas de esqueleto:
33 ms como mínimo menos la duración de optimización (menor que 5 ms).
16. Se almacena el esqueleto optimizado en moción 2 del mismo cuadro
17. Se repiten indefinidamente
las etapas 5 a 15
18. Se detiene el proceso,
bien por mandato de Boton, Gesto de Control o Final de la aplicación.
19, Opcionalmente se almacena en disco Mocion la Ampliada (bloque de
calibración más Cuadros en riempo deal añadidos
20. Opcionalmente se repite el proceso en diferido si se almaceno la
Moción Ampliada . Podemos activar ahora la información para
Comprobación , Estudio y Publicación.
redactado el 23 de
noviembre de 2016
Vuelta al Principio Última
actualización:
jueves, 01 de diciembre de 2016
Visitantes: